From c6b68c458af980e71c4a331ccd589d45c3652d93 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期一, 09 五月 2022 09:30:12 +0800
Subject: [PATCH] 风险部分搜索功能

---
 src/views/doublePreventAction/hiddenDanger/inspectionTask/index.vue |  102 +++++++++++++++++++++++++++++++--------------------
 1 files changed, 62 insertions(+), 40 deletions(-)

diff --git a/src/views/doublePreventAction/hiddenDanger/inspectionTask/index.vue b/src/views/doublePreventAction/hiddenDanger/inspectionTask/index.vue
index 943ddb6..ccebb06 100644
--- a/src/views/doublePreventAction/hiddenDanger/inspectionTask/index.vue
+++ b/src/views/doublePreventAction/hiddenDanger/inspectionTask/index.vue
@@ -12,11 +12,11 @@
             <div class="basic_search">
                 <span>巡检任务类型:</span>
                 <el-select v-model="listQuery.type">
-                    <el-option
-                        v-for="item in departmentList"
+                   <el-option
+                        v-for="item in typeList"
                         :key="item.id"
-                        :value="item.department"
-                        :label="item.department"
+                        :value="item.id"
+                        :label="item.name"
                     ></el-option>
                 </el-select>
             </div>
@@ -24,43 +24,43 @@
                 <span>巡检任务状态:</span>
                 <el-select v-model="listQuery.status">
                     <el-option
-                        v-for="item in departmentList"
+                        v-for="item in statusList"
                         :key="item.id"
-                        :value="item.department"
-                        :label="item.department"
+                        :value="item.id"
+                        :label="item.name"
                     ></el-option>
                 </el-select>
             </div>
             <div class="basic_search">
                 <span>巡检任务创建人员:</span>
-                <el-select v-model="listQuery.createUid">
+                <el-select v-model="listQuery.createUid" filterable clearable>
                     <el-option
-                        v-for="item in departmentList"
+                        v-for="item in userList"
                         :key="item.id"
-                        :value="item.department"
-                        :label="item.department"
+                        :value="item.id"
+                        :label="item.realname"
                     ></el-option>
                 </el-select>
             </div>
             <div class="basic_search">
                 <span>异常通知人员:</span>
-                <el-select v-model="listQuery.noticeUid">
-                    <el-option
-                        v-for="item in departmentList"
+                <el-select v-model="listQuery.noticeUid" filterable clearable>
+                   <el-option
+                        v-for="item in userList"
                         :key="item.id"
-                        :value="item.department"
-                        :label="item.department"
+                        :value="item.id"
+                        :label="item.realname"
                     ></el-option>
                 </el-select>
             </div>
             <div class="basic_search">
                 <span>执行巡检人员:</span>
-                <el-select v-model="listQuery.execUid">
+                <el-select v-model="listQuery.execUid" filterable clearable>
                     <el-option
-                        v-for="item in departmentList"
+                        v-for="item in userList"
                         :key="item.id"
-                        :value="item.department"
-                        :label="item.department"
+                        :value="item.id"
+                        :label="item.realname"
                     ></el-option>
                 </el-select>
             </div>
@@ -114,16 +114,16 @@
             <br>
             <el-pagination
                 v-show="recordTotal>0"
-                :current-page="currentPage"
+                :current-page="listQuery.page"
                 :page-sizes="[10, 20, 30, 50]"
-                :page-size="pageSize"
+                :page-size="listQuery.pageSize"
                 :total="recordTotal"
                 layout="total, sizes, prev, pager, next, jumper"
                 background
                 style="float:right;"
                 @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
-            />
+            />  
             <br>
         </div>
 
@@ -262,7 +262,7 @@
 
             <div class="inspectionTask_point">
                 <el-tabs class="active" v-model="activeName">
-                    <el-tab-pane label="巡检点信息" name="inspectionPoint">
+                    <el-tab-pane label="检查项信息" name="inspectionPoint">
                         <inspection-point @giveToForm="receiveToForm" ref="inspectionPoint" :title="title" :inspectionTaskForm="inspectionTaskForm"></inspection-point>
                     </el-tab-pane>
                 </el-tabs>
@@ -326,6 +326,7 @@
                 userList:[],
                 noticeUidList:[],
                 execUidList:[],
+                statusList:[{name:'任务开启',id:1},{id:2,name:'任务关闭'}],
                 intervalSecondsList:[{id:7200,name:'2小时'},{id:21600,name:'6小时'},{id:43200,name:'12小时'},{id:86400,name:'1天'},{id:17280,name:'2天'}],
                 noticeSecondsList:[{id:600,name:'10分'},{id:3600,name:'1小时'},{id:7200,name:'2小时'},{id:21600,name:'6小时'},{id:43200,name:'12小时'},{id:86400,name:'1天'}],
                 effectSecondsList:[{id:1800,name:'30分'},{id:3600,name:'1小时'},{id:7200,name:'2小时'},{id:21600,name:'6小时'},{id:43200,name:'12小时'},{id:86400,name:'1天'}],
@@ -342,10 +343,14 @@
                 execDepartment:'',
                 inspectionTaskVisible:false,
                 inspectionTaskFormRules:{
-                    hazardDep: [{ required: true, message: '责任部门不能为空', trigger: 'change' }],
-                    hazardLiablePerson: [{ required: true, message: '责任人不能为空', trigger: 'blur' }],
-                    hazardCode: [{ required: true, message: '安全风险分析对象编码不能为空', trigger: 'blur' }],
-                    riskUnitName: [{ required: true, message: '安全风险分析单元名称不能为空', trigger: 'blur' }],
+                    title: [{ required: true, message: '任务名称不能为空', trigger: 'blur' }],
+                    type: [{ required: true, message: '检查类型不能为空', trigger: 'change' }],
+                    intervalSeconds: [{ required: true, message: '检查频次不能为空', trigger: 'change' }],
+                    noticeSeconds: [{ required: true, message: '提前通知时间不能为空', trigger: 'change' }],
+                    startTime: [{ required: true, message: '周期开始时间不能为空', trigger: 'change' }],
+                    effectSeconds: [{ required: true, message: '任务有效时间不能为空', trigger: 'change' }],
+                    noticeUid: [{ required: true, message: '异常通知人员不能为空', trigger: 'change' }],
+                    execUid: [{ required: true, message: '执行巡检人员不能为空', trigger: 'change' }],
                 },
                 inspectionTaskForm:{
                     type:null,
@@ -368,8 +373,8 @@
                     startTime: "",
                     status:"",
                     type: "",
-                    page: 10,
-                    pageSize: 1,
+                    page: 1,
+                    pageSize: 10,
  
                 },
             }
@@ -384,10 +389,7 @@
                 this.listLoading = true
                 let res = await getInspectionTask(this.listQuery)
                 if(res.data.code === '200'){
-                    this.recordTotal = res.data.result.total
-                    this.pageSize = res.data.result.size
-                    this.pageTotal = computePageCount(res.data.result.total, res.data.result.size)
-                    this.currentPage = res.data.result.current
+                    this.recordTotal = JSON.parse(res.data.message).total
                     this.inspectionTaskData = res.data.result
                 }else if(res.data.code === '300'){
                     this.inspectionTaskData = []
@@ -461,6 +463,7 @@
                     }
                     setTimeout(() => {
                         this.$refs.inspectionPoint.inspectionPointData = []
+                        this.$refs.inspectionPoint.ifEdit = false
                     });
                 }else{
                     this.ifShow = true
@@ -468,12 +471,13 @@
                     this.noticeDepartment = this.handleDepartment(JSON.parse(JSON.stringify(value)).noticeUid)
                     this.changeNotice()
                     this.execDepartment = this.handleDepartment(JSON.parse(JSON.stringify(value)).execUid)
-                     this.changeExec()
+                    this.changeExec()
                     this.inspectionTaskForm = JSON.parse(JSON.stringify(value))
                     // this.inspectionTaskForm.execUid = value.execUname
                     // this.inspectionTaskForm.noticeUid = value.noticeUname
                      setTimeout(() => {
                         this.$refs.inspectionPoint.inspectionPointData =  this.inspectionTaskForm.checkContents
+                        this.$refs.inspectionPoint.ifEdit = true
                     });  
                 }
             },
@@ -499,6 +503,11 @@
                                 this.$message({
                                 type:'warning',
                                  message:'任务持续时间不能大于检查频次'
+                            })
+                        }else if(this.justifyTime(this.inspectionTaskForm.startTime,this.inspectionTaskForm.noticeSeconds)){
+                                this.$message({
+                                type:'warning',
+                                message:'周期开始时间减去当前时间和提前通知时间要大于等于半小时'
                             })
                         }else{
                             if(this.title === '新建巡检计划设定'){
@@ -558,6 +567,18 @@
                 })
 
             },
+            justifyTime(time,interval) {
+                debugger
+                let timeStr = new Date(time.replace(/-/g,'/'))
+                let date = parseInt(timeStr.getTime()/1000)
+                let newTimeStr = new Date()
+                let newDate = parseInt(newTimeStr.getTime()/1000)
+                if(date - newDate - interval - 1800 >= 0){
+                    return false
+                }else{
+                    return true
+                }
+            },
             deleteById(val){
                 this.$confirm('删除此条信息,是否继续','提示',{
                     confirmButtonText:'确定',
@@ -576,10 +597,11 @@
                 })
             },
             receiveToForm(value) {
-                this.inspectionTaskForm.riskControlMeasureIdList = []
-                this.inspectionTaskForm.riskControlMeasureIdList = value.map( item => {
-                    return item.id
-                })
+                // this.inspectionTaskForm.riskControlMeasureIdList = []
+                // this.inspectionTaskForm.riskControlMeasureIdList = value.map( item => {
+                //     return item.id
+                // })
+                this.inspectionTaskForm.riskControlMeasureIdList.push({id:value.id})
             },
             refreshHandle(){
                 this.getInspectionTaskData()
@@ -589,7 +611,7 @@
                 this.getInspectionTaskData()
             },
             handleCurrentChange(val){
-                this.listQuery.pageIndex = val
+                this.listQuery.page = val
                 this.getInspectionTaskData()
             },
         }

--
Gitblit v1.9.2