From 99035941964810509e5037c7d9627b1801213335 Mon Sep 17 00:00:00 2001
From: Admin <978517621@qq.com>
Date: 星期三, 26 十月 2022 14:00:48 +0800
Subject: [PATCH] 默认更改列表
---
src/views/oneFromanotherN/index.vue | 494 +++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 430 insertions(+), 64 deletions(-)
diff --git a/src/views/oneFromanotherN/index.vue b/src/views/oneFromanotherN/index.vue
index 64723ba..1e454d1 100644
--- a/src/views/oneFromanotherN/index.vue
+++ b/src/views/oneFromanotherN/index.vue
@@ -2,14 +2,15 @@
<div class="app-container">
<el-form ref="form" :inline="true" class="inquire" :model="listQuery.form" label-width="80px">
<el-form-item label="隐患单位">
- <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择">
- <el-option
- v-for="item in XFDWList"
- :key="item.value"
- :label="item.value"
- :value="item.value">
- </el-option>
- </el-select>
+ <el-input v-model="listQuery.form.check_main_branch" style="width:202px"></el-input>
+<!-- <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择">-->
+<!-- <el-option-->
+<!-- v-for="item in XFDWList"-->
+<!-- :key="item.value"-->
+<!-- :label="item.value"-->
+<!-- :value="item.value">-->
+<!-- </el-option>-->
+<!-- </el-select>-->
</el-form-item>
<el-form-item label="检查类别">
<el-select v-model="listQuery.form.checktype" placeholder="请选择">
@@ -50,9 +51,8 @@
<el-form-item label="隐患内容">
<el-input v-model="listQuery.form.ht_content" style="width:202px" placeholder="请输入内容"></el-input>
</el-form-item>
-
- <el-form-item label="发送单位">
- <el-input v-model="listQuery.form.workGroupName" style="width:202px" placeholder="请输入内容"></el-input>
+ <el-form-item label="发送单位" v-if="listQuery.type=='1'">
+ <el-input v-model="listQuery.form.workGroupName" style="width:202px" placeholder="请输入内容"></el-input>
</el-form-item>
<el-form-item label="检查时间">
<el-col :span="11">
@@ -69,8 +69,6 @@
<el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询
</el-button>
<el-button type="primary" class="btns" size="small" @click="reset()">重置</el-button>
- <el-button type="primary" class="btns" size="small" icon="el-icon-upload2" @click="exportData">导出excel
- </el-button>
</el-form-item>
</el-form>
<el-row class="title-center">
@@ -79,27 +77,28 @@
<el-radio-button label="0">待发送</el-radio-button>
<el-radio-button label="1">已发送</el-radio-button>
</el-radio-group>
- <el-radio-group v-if="table2" >
+ <el-radio-group v-if="table2" v-model="listQuery.sendType" @change="sendTypeChange">
<el-radio-button label="0">待自查</el-radio-button>
<el-radio-button label="1">已自查</el-radio-button>
</el-radio-group>
- <el-button class="btns" type="primary" size="small" v-if="table1" @click="handoff(1)">进入自查(3)</el-button>
+ <el-button class="btns" type="primary" size="small" v-if="table1" @click="handoff(1)">进入自查({{selfTotal}})</el-button>
<el-button class="btns" type="primary" size="small" v-if="table2" @click="handoff(2)">返回填写</el-button>
</el-col>
<div v-if="table1">
<el-col :span="14" style="text-align:right;" v-if="listQuery.type==0">
- <el-button class="btns" type="primary" size="small" icon="el-icon-upload2" >发送</el-button>
- <el-button class="btns" type="primary" size="small" icon="el-icon-plus" @click="sendBath()">添加</el-button>
- <el-button size="small" >批量删除</el-button>
+ <el-button class="btns" type="primary" size="small" icon="el-icon-upload2" @click="openSend()">发送</el-button>
+ <el-button class="btns" type="primary" size="small" icon="el-icon-plus" @click="addDanger()">添加</el-button>
+ <el-button size="small" @click="deleteBatch()" >批量删除</el-button>
</el-col>
<el-col :span="14" style="text-align:right;" v-if="listQuery.type==1">
- <el-button class="btns" type="primary" size="small" >收回</el-button>
+ <el-button class="btns" type="primary" size="small" @click="tackBack()">收回</el-button>
</el-col>
</div>
</el-row>
<div v-if="table1">
<el-table ref="dataTable"
v-if="listQuery.type==0"
+ v-loading="loading"
:data="tableData"
style="width: 100%"
@selection-change="handleSelectionChange">
@@ -113,15 +112,25 @@
<el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
<el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
<!-- <el-table-column prop="measure" label="被检单位" align="center"></el-table-column> -->
- <el-table-column prop="ht_level" label="隐患类别" align="center"></el-table-column>
- <el-table-column prop="ht_typesub" label="隐患级别" align="center"></el-table-column>
+ <el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
+ <el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
<el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
- <el-table-column prop="ht_content" label="隐患内容" width="200" align="center"></el-table-column>
+ <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+ <template slot-scope="scope">
+ <el-popover trigger="hover" placement="top">
+ <p>{{ scope.row.ht_content }}</p>
+ <div slot="reference" class="name-wrapper">{{
+ scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+ }}
+ </div>
+ </el-popover>
+ </template>
+ </el-table-column>
<!-- <el-table-column prop="curWarningLevel" label="下发单位" align="center"></el-table-column> -->
<el-table-column prop="date" label="基本操作" align="center">
<template slot-scope="scope">
- <el-button @click="handleClick(scope.row)" type="text" size="small">编辑</el-button>
- <el-button @click="handleClick(scope.row)" type="text" size="small">删除</el-button>
+ <el-button @click="editDanger(scope.row)" type="text" size="small">编辑</el-button>
+ <el-button @click="deleteDanger(scope.row)" type="text" size="small">删除</el-button>
</template>
</el-table-column>
</el-table>
@@ -139,7 +148,17 @@
<el-table-column prop="ht_typesub" label="隐患类别" align="center"></el-table-column>
<el-table-column prop="ht_level" label="隐患级别" align="center"></el-table-column>
<el-table-column prop="address" label="隐患地点" align="center"></el-table-column>
- <el-table-column prop="ht_content" label="隐患内容" width="200" align="center"></el-table-column>
+ <el-table-column prop="ht_content" label="隐患内容" width="200" align="center">
+ <template slot-scope="scope">
+ <el-popover trigger="hover" placement="top">
+ <p>{{ scope.row.ht_content }}</p>
+ <div slot="reference" class="name-wrapper">{{
+ scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
+ }}
+ </div>
+ </el-popover>
+ </template>
+ </el-table-column>
<el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
<el-table-column prop="state" label="未自查单位" align="center"></el-table-column>
</el-table>
@@ -166,8 +185,9 @@
<el-table-column prop="workGroupName" label="发送单位" align="center"></el-table-column>
<el-table-column prop="date" label="自查结果" align="center">
<template slot-scope="scope">
- <el-button @click="handleClick(scope.row)" type="text" size="small">不存在</el-button>
- <el-button @click="handleClick(scope.row)" type="text" size="small">存在</el-button>
+ <el-button @click="handleClick(scope.row,'不存在')" type="text" size="small">不存在</el-button>
+ <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='0'" size="small">存在</el-button>
+ <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.sendType=='1'" size="small">追查结果</el-button>
</template>
</el-table-column>
</el-table>
@@ -185,11 +205,156 @@
</el-pagination>
</div>
+ <!-- 编辑弹窗 -->
+ <el-dialog
+ title="编辑"
+ :visible.sync="dialogVisible"
+ :close-on-click-modal="false"
+ width="40%">
+ <el-form ref="form" :rules="dangerRules" :model="dangerForm" label-width="100px">
+ <el-row>
+ <el-col :span="9">
+ <el-form-item label="检查时间" prop="check_date">
+ <el-date-picker
+ v-model="dangerForm.check_date"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="选择日期"
+ style="width: 100%"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="9" :offset="4">
+ <el-form-item label="检查类别" prop="checktype">
+ <el-select v-model="dangerForm.checktype" placeholder="请选择">
+ <el-option
+ v-for="item in JCLBList"
+ :key="item.value"
+ :label="item.value"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="9" >
+ <el-form-item label="检查单位" prop="check_main_branch">
+ <el-input v-model="dangerForm.check_main_branch" class="multiline"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col :span="9">
+ <el-form-item label="地点" prop="address">
+ <el-input v-model="dangerForm.address" rows="3" type="textarea" class="multiline"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="9" :offset="4">
+ <el-form-item label="隐患内容" prop="ht_content">
+ <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="9" >
+ <el-form-item label="隐患类别" prop="ht_typesub">
+ <el-select v-model="dangerForm.ht_typesub" placeholder="请选择">
+ <el-option
+ v-for="item in YHLBList"
+ :key="item.value"
+ :label="item.value"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="9" :offset="4">
+ <el-form-item label="隐患级别" prop="ht_level">
+ <el-select v-model="dangerForm.ht_level" placeholder="请选择">
+ <el-option
+ v-for="item in YHJBList"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="22">
+ <el-form-item style="text-align: center">
+ <el-button type="primary" class="btns" @click="submitDanger('form')">保存</el-button>
+ <el-button @click="dialogVisible=false">关闭</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-dialog>
+
+ <!-- 部门弹窗 -->
+ <el-dialog
+ title="责任单位"
+ :visible.sync="bmDialogVisible"
+ :close-on-click-modal="false"
+ width="40%">
+ <el-form>
+ <el-row>
+ <el-checkbox style="width: 80px;height: 30px"
+ v-for="item in YHBMList"
+ v-model="checked"
+ :label="item.branch_id"
+ :key="item.branch_name">
+ {{item.branch_name}}
+ </el-checkbox>
+ </el-row>
+ <el-row>
+ <el-col :span="22">
+ <el-form-item style="text-align: center;">
+ <el-button class="btn" size="small" type="primary" @click="submitForm()">
+ 保存
+ </el-button>
+ <el-button size="small" @click="bmDialogVisible = false">关闭</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ </el-dialog>
+
+ <!-- 不存在弹窗-->
+ <el-dialog :title="selfTitle" :visible.sync="selfInspectVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
+ <el-form ref="selfInspectForm" :rules="selfInspectFormRules" :model="selfInspectForm" label-position="right" label-width="80px">
+ <el-form-item label="自查人" prop="markUserName">
+ <el-input v-model="selfInspectForm.markUserName" class="analyseUnit_input"></el-input>
+ </el-form-item>
+ <el-form-item label="自查时间" prop="markDate">
+ <el-col :span="11">
+ <el-date-picker type="date" placeholder="选择日期" v-model="selfInspectForm.markDate"
+ style="width: 100%;" value-format="yyyy-MM-dd">
+ </el-date-picker>
+ </el-col>
+ </el-form-item>
+ <el-form-item label="备注" prop="remark">
+ <el-input v-model="selfInspectForm.remark" type="textarea" rows="5" class="analyseUnit_input"></el-input>
+ </el-form-item>
+ </el-form>
+ <div align="center">
+ <el-button type="primary" v-if="listQuery.sendType == '0'" @click="submitSelfInspect()">确认</el-button>
+ <el-button @click="selfInspectVisible = false">关闭</el-button>
+ </div>
+ </el-dialog>
+
</div>
</template>
<script>
- import { getPageList, analogy_export_do} from "@/api/sgyhpczl/oneFromanotherN"
- import {initJCBM, initYHLX, initJCLB, initYHJB} from "@/api/sgyhpczl/initSelect";
+import { getPageList, edit, del, send, revoke} from "@/api/sgyhpczl/oneFromanotherN"
+import {noExistSave,selfCheckNotInfo} from "@/api/sgyhpczl/oneFromanother"
+import {initJCBM, initYHLX, initJCLB, initYHJB,initYHBM} from "@/api/sgyhpczl/initSelect";
+import {deepClone} from '@/utils'
+
export default{
data(){
@@ -198,23 +363,27 @@
page:1,
limit:10,
type: 0,
+ sendType: 0,
form:{},
},
+ selfTotal: 0,
radio1:'待发送',
table1:true,
table2:false,
-
-
-
currentPage: 1,
pageSize: 10,
recordTotal: 0,
+ YHBMList: [],
+ bmDialogVisible: false,
+ checked:[],
+ requestData:{},//发送提交参数
XFDWList:[],
YHLBList:[],
YHJBList:[],
JCLBList:[],
tableData:[],
selectedList:[],
+ loading:false,
listLoading: false,
selfInspectVisible: false,
selfInspectForm:{
@@ -223,44 +392,106 @@
markDate:'',
remark:'',
},
+ selfTitle: '',
selfInspectFormRules:{
markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }],
markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }]
},
+ dialogVisible:false,
+ dangerForm:{},
+ dangerRules:{
+ check_date: [{ required: true, message: '不能为空', trigger: 'blur' },],
+ check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },],
+ checktype: [{ required: true, message: '不能为空', trigger: 'blur' },],
+ },
+
}
},
mounted() {
this.getPageList();
+ this.getSelfTotal();
+ this.initYHBM();
this.initJCLB();
this.initXFDW();
this.initYHJB();
this.initYHLB();
},
methods:{
- sendBath(){
+ addDanger(){
this.$router.push({
- path:'/existN'
+ path:'/addDanger',
})
},
handleClick(data,val){
- if(val=='存在'){
- this.$router.push({
- path:'/exist'
+ if(val=='不存在'){
+ this.$nextTick(() =>{
+ this.$refs["selfInspectForm"].clearValidate()
})
+ this.selfInspectForm={id:data.id}
+ this.selfInspectVisible = true
+ if (this.listQuery.sendType == '1'){
+ let params = {
+ id: data.id,
+ type: 1,
+ }
+ selfCheckNotInfo(params).then(res=>{
+ if (res.data.ok==1){
+ this.selfInspectForm=res.data.data[0]
+ } else{
+ this.$message({type:'error', message:res.data.msg, duration:3000})
+ }
+ })
+ }
+ return
}
+ let puType = '0';
+ this.$router.push({
+ path:'/existN',
+ query: {
+ data: data,
+ type: puType
+ }
+ })
+ },
+ //不存在提交
+ submitSelfInspect(){
+ this.$refs["selfInspectForm"].validate((valid) =>{
+ if (valid){
+ noExistSave(this.selfInspectForm).then((res)=>{
+ if (res.data.ok==1) {
+ this.$message({type:'success', message:"保存成功", duration:3000});
+ this.selfInspectVisible = false
+ }else{
+ this.$message({type:'error', message:res.data.msg, duration:3000})
+ }
+ })
+ }
+ })
},
handoff(index){
if(index==1){
this.table1=false
this.table2=true
this.listQuery.type = 2
- console.log(this.listQuery.type)
+ this.listQuery.sendType = 0
this.getPageList()
}else{
+ this.listQuery.type = 0
+ this.getPageList()
+ this.getSelfTotal();
this.table1=true
this.table2=false
}
+ },
+ initYHBM() {
+ initYHBM().then(res => {
+ if (res.data.ok == 1) {
+ this.YHBMList = res.data.data
+ } else {
+ this.$message({type: 'error', message: res.data.msg, duration: 3000})
+ }
+ })
},
initXFDW(){
initJCBM(1).then(res=>{
@@ -307,19 +538,14 @@
}
}
- if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){
- if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){
- }else {
- this.$message({type:'error', message:"请选择检查开始时间", duration:3000})
- return
- }
- }
},
//搜索
getPageList(){
this.listQuery.page=1
this.checkTime()
+ this.loading=true
getPageList(this.listQuery).then(res=>{
+ this.loading=false
if (res.data.ok==1) {
this.tableData = res.data.data.items
this.recordTotal=res.data.data.total
@@ -327,6 +553,24 @@
this.$message({type:'error', message:res.data.msg, duration:3000})
}
})
+ },
+ //获取待自查数量
+ getSelfTotal(){
+ if (this.listQuery.type != '2'){
+ let query = {
+ page: 1,
+ sendType: 0,
+ type: 2,
+ form:{},
+ };
+ getPageList(query).then(res=>{
+ if (res.data.ok==1) {
+ this.selfTotal=res.data.data.total
+ }else{
+ this.$message({type:'error', message:res.data.msg, duration:3000})
+ }
+ })
+ }
},
//重置
reset(){
@@ -356,29 +600,14 @@
this.listQuery.type = val;
this.getPageList()
},
+ sendTypeChange(val){
+ this.listQuery.sendType = val;
+ this.getPageList()
+ },
handleSelectionChange(val){
this.selectedList = []
val.forEach((item) => {
this.selectedList.push(item)
- })
- },
- exportData() {
- var requestData = this.listQuery;
- //删除分页参数
- this.$delete(requestData, 'page')
- this.$delete(requestData, 'limit')
- analogy_export_do(requestData).then(res => {
- var blob = new Blob([res.data])
- var downloadElement = document.createElement('a')
- var href = window.URL.createObjectURL(blob) //创建下载的链接
- downloadElement.href = href
- downloadElement.download = '内部举一反三.xlsx' //下载后文件名
- document.body.appendChild(downloadElement)
- downloadElement.click() //点击下载
- document.body.removeChild(downloadElement) //下载完成移除元素
- window.URL.revokeObjectURL(href) //释放掉blob对象
- }).catch(err => {
- console.log(err)
})
},
//日期格式转换
@@ -391,6 +620,143 @@
let dt = new Date(data)
return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' '
},
+ editDanger(row, index) {
+ this.dangerForm = deepClone(row);
+ this.rowIndex = index;
+ this.dialogVisible = true;
+ },
+ //编辑提交
+ submitDanger(formName){
+ this.$refs[formName].validate((valid) => {
+ if (valid) {
+ edit(this.dangerForm).then(res=>{
+ if (res.data.ok==1) {
+ this.dialogVisible=false
+ this.$message({type:'success', message:res.data.msg, duration:3000})
+ this.getPageList()
+ }else{
+ this.$message({type:'error', message:res.data.msg, duration:3000})
+ }
+ })
+ } else {
+ console.log("error submit!!");
+ return false;
+ }
+ });
+ },
+ deleteBatch() {
+ if (this.selectedList == null || this.selectedList.length == 0) {
+ this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000})
+ return
+ }
+ var ids = this.selectedList.map((obj) => {
+ return obj.id
+ }).join(",")
+ this.$confirm('确认删除吗', '提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(() => {
+ del(ids).then(() => {
+ this.getPageList()
+ this.$notify({
+ title: "成功",
+ message: "删除成功",
+ type: "success",
+ duration: 2000,
+ });
+ });
+ })
+ .catch(error => {
+ });
+ },
+ deleteDanger(row) {
+ this.$confirm('确认删除吗', '提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(() => {
+ console.log(row.id)
+ del(row.id).then(() => {
+ this.getPageList()
+ this.$notify({
+ title: "成功",
+ message: "删除成功",
+ type: "success",
+ duration: 2000,
+ });
+ });
+ }).catch(error => {
+ });
+ },
+ //发送提交
+ submitForm() {
+ if (this.checked.length == 0) {
+ this.$message({
+ type: 'warning',
+ message: '请勾选需要发送的部门!'
+ });
+ return;
+ }
+ this.requestData.branchIds = this.checked.join(";");
+ send(this.requestData).then(res => {
+ if (res.data.ok) {
+ this.$message({
+ type: 'success',
+ message: res.data.msg
+ });
+ this.bmDialogVisible = false;
+ this.getPageList();
+ } else {
+ this.$message({
+ type: 'error',
+ message: res.data.msg
+ });
+ }
+ })
+ },
+ openSend() {
+ if (this.selectedList.length != 1) {
+ this.$message({
+ type: 'warning',
+ message: '请选择一条数据!'
+ });
+ return false;
+ } else {
+ this.requestData.id = this.selectedList[0].id;
+ this.bmDialogVisible = true;
+ }
+ },
+ tackBack(){
+ if (this.selectedList.length != 1) {
+ this.$message({
+ type: 'warning',
+ message: '请选择一条数据!'
+ });
+ return false;
+ }else {
+ this.$confirm('确认收回吗', '提示', {
+ confirmButtonText: '确认',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(() => {
+ let data = {
+ id: this.selectedList[0].id
+ }
+ revoke(data).then(() => {
+ this.getPageList()
+ this.$notify({
+ title: "成功",
+ message: "收回成功",
+ type: "success",
+ duration: 2000,
+ });
+ });
+ }).catch(error => {
+ });
+ }
+ }
+
}
}
</script>
--
Gitblit v1.9.2