From cfb7abc64254c471a69c2586ec6221bb5bd5caf9 Mon Sep 17 00:00:00 2001
From: lct123456 <lucht>
Date: 星期日, 22 五月 2022 20:13:47 +0800
Subject: [PATCH] '巡检记录'
---
src/views/doublePreventAction/hiddenDanger/inspectionRecord/index.vue | 29 --------------
src/views/doublePreventAction/hiddenDanger/inspectionRecord/components/detail.vue | 71 ++++++++++++++++++++++++++---------
2 files changed, 53 insertions(+), 47 deletions(-)
diff --git a/src/views/doublePreventAction/hiddenDanger/inspectionRecord/components/detail.vue b/src/views/doublePreventAction/hiddenDanger/inspectionRecord/components/detail.vue
index fc79069..acd9920 100644
--- a/src/views/doublePreventAction/hiddenDanger/inspectionRecord/components/detail.vue
+++ b/src/views/doublePreventAction/hiddenDanger/inspectionRecord/components/detail.vue
@@ -70,7 +70,7 @@
<el-row>
<el-col :span="24">
<el-form-item label="巡检结果" prop="result">
- <el-select v-model="inspectionRecordDetailForm.result" :disabled="ifShow" class="input" @change="ifNormal = !ifNormal">
+ <el-select v-model="inspectionRecordDetailForm.result" :disabled="ifShow" class="input" @change="ifNormal = (inspectionRecordDetailForm.result === 2 ? true : false)">
<el-option
v-for="item in resultList"
:key="item.id"
@@ -84,8 +84,8 @@
<div v-if="ifNormal">
<el-row>
<el-col :span="24">
- <el-form-item label="异常通知部门" prop="execDepartment">
- <el-select v-model="inspectionRecordDetailForm.noticeDepId" filterable clearable class="analyseUnit_input" @change="changeExec">
+ <el-form-item label="异常通知部门" prop="noticeDepId">
+ <el-select v-model="inspectionRecordDetailForm.noticeDepId" filterable clearable class="input" @change="changeDepartment('notice')" :disabled="ifShow">
<el-option
v-for="item in departmentList"
:key="item.id"
@@ -101,7 +101,7 @@
<el-form-item label="异常通知人员" prop="noticeUid">
<el-select v-model="inspectionRecordDetailForm.noticeUid" clearable filterable :disabled="ifShow" class="input">
<el-option
- v-for="item in userList"
+ v-for="item in noticeUserList"
:key="item.id"
:value="item.id"
:label="item.realname"
@@ -119,8 +119,8 @@
</el-row>
<el-row>
<el-col :span="24">
- <el-form-item label="异常整改部门" prop="execDepartment">
- <el-select v-model="inspectionRecordDetailForm.fixDepId" filterable clearable class="analyseUnit_input" @change="changeExec">
+ <el-form-item label="异常整改部门" prop="fixDepId">
+ <el-select v-model="inspectionRecordDetailForm.fixDepId" filterable clearable class="input" :disabled="ifShow" @change="changeDepartment('fix')">
<el-option
v-for="item in departmentList"
:key="item.id"
@@ -136,7 +136,7 @@
<el-form-item label="整改人" prop="fixUid">
<el-select v-model="inspectionRecordDetailForm.fixUid" clearable filterable :disabled="ifShow" class="input">
<el-option
- v-for="item in userList"
+ v-for="item in fixUserList"
:key="item.id"
:value="item.id"
:label="item.realname"
@@ -155,7 +155,7 @@
</el-row>
<el-row>
<el-col :span="24">
- <el-form-item label="上报图片" prop="img">
+ <el-form-item label="上报图片" prop="imgInfoList">
<el-upload
accept=".pdf,.jpg,.png"
:action="fileRoad"
@@ -164,7 +164,7 @@
:headers="header"
:data="uploadForm"
list-type="picture-card"
- :file-list="inspectionRecordDetailForm.imgInfoList"
+ :file-list="fileList"
v-model="inspectionRecordDetailForm.imgInfoList"
:on-change="handleChangeFile"
:on-success="onFileSuccess"
@@ -243,7 +243,7 @@
imgInfoList: [],
info: null,
noticeUid: null,
- result: 1,
+ result: null,
taskId: null,
unitId: null,
fixDepId:null,
@@ -256,11 +256,16 @@
fixTime: [{ required: true, message: '整改时间不能为空', trigger: 'change' }],
fixUid: [{ required: true, message: '描整改人员不能为空', trigger: 'change' }],
info: [{ required: true, message: '巡检结果备注不能为空', trigger: 'blur' }],
+ fixDepId: [{ required: true, message: '异常整改部门不能为空', trigger: 'blur' }],
+ noticeDepId: [{ required: true, message: '异常通知部门不能为空', trigger: 'blur' }],
},
inspectionRecordDetailFormVisible:false,
ifShow:true,
ifNormal:false,
userList:[],
+ noticeUserList:[],
+ fixUserList:[],
+ departmentList:[],
fileList:[],
resultList:[{id:0,name:'未操作'},{id:1,name:'正常'},{id:2,name:'异常'}],
typeList:[{id:1,name:'日常检查'},{id:2,name:'周期检查'}],
@@ -275,9 +280,10 @@
this.inspectionRecordFormVisible = true
this.inspectionRecordForm = JSON.parse(JSON.stringify(value))
},
- showInspectionRecordDetailForm(value,type,userList) {
+ showInspectionRecordDetailForm(value,type,userList,departmentList) {
this.inspectionRecordDetailFormVisible = true
this.userList = userList
+ this.departmentList = departmentList
if(type === '查看'){
this.titleDetail = '巡检单元查看'
this.ifShow = true
@@ -290,32 +296,40 @@
}else{
this.titleDetail = '巡检单元上报'
this.ifShow = false
+ this.ifNormal = false
+ this.$nextTick(() =>{
+ this.$refs["inspectionRecordDetailForm"].clearValidate()
+ })
this.inspectionRecordDetailForm = {
execUid: Cookies.get('userId'),
fixTime: null,
fixUid: null,
- img: null,
+ imgInfoList: [],
info: null,
noticeUid: null,
- result: 1,
+ result: null,
+ fixDepId:null,
+ noticeDepId:null,
taskId: value.taskId,
unitId: value.id
}
}
},
submitInspectionRecordDetail() {
- if(this.ifNormal = false){
+ if(this.ifNormal === false){
this.inspectionRecordDetailForm.noticeUid = null
this.inspectionRecordDetailForm.fixTime = null
this.inspectionRecordDetailForm.fixUid = null
this.inspectionRecordDetailForm.info = null
- this.inspectionRecordDetailForm.img = []
+ this.inspectionRecordDetailForm.imgInfoList = []
+ this.inspectionRecordDetailForm.noticeDepId = null
+ this.inspectionRecordDetailForm.fixDepId = null
}
this.$refs["inspectionRecordDetailForm"].validate((valid) =>{
if(valid){
+ this.inspectionRecordDetailForm.imgInfoList = this.inspectionRecordDetailForm.imgInfoList.map(item =>{ return { url:item.url}})
submitUnitOne(this.inspectionRecordDetailForm).then( res =>{
if(res.data.code === '200'){
-
this.$message({
type:'success',
message:'上报成功',
@@ -329,7 +343,6 @@
type:'warning'
})
}
- this.inspectionRecordDetailFormVisible = false
})
}else{
this.$message({
@@ -339,12 +352,30 @@
}
})
},
+ changeDepartment(type){
+ if(type === 'notice'){
+ if(this.inspectionRecordDetailForm.noticeDepId === ''){
+ this.noticeUserList = []
+ }else{
+ let department = this.departmentList.find(item => item.id === this.inspectionRecordDetailForm.noticeDepId).department
+ this.noticeUserList = this.userList.filter ( item => item.department === department)
+ }
+ }else{
+ if(this.inspectionRecordDetailForm.fixDepId === ''){
+ this.fixUserList = []
+ }else{
+ let department = this.departmentList.find(item => item.id === this.inspectionRecordDetailForm.fixDepId).department
+ this.fixUserList = this.userList.filter ( item => item.department === department)
+ }
+ }
+ },
handleChangeFile(){
this.header.Authorization = Cookies.get('token')
},
onFileSuccess(response){
if(response.code === '200'){
- this.inspectionRecordDetailForm.img.push({url:process.env.IMG_API + response.result.path})
+ this.inspectionRecordDetailForm.imgInfoList.push({url:response.result.path,name:response.result.name,})
+ this.fileList.push({url:process.env.IMG_API + response.result.path,name:response.result.name,})
this.$notify({
type:'success',
duration:2000,
@@ -363,12 +394,14 @@
this.dialogVisible = true;
},
handleRemove(file){
+ debugger
return this.$confirm(`确定移除 ${ file.name }?`,'提示',{
confirmButtonText:'确定',
cancelButtonText:'取消',
type:'warning',
}).then(()=> {
-
+ this.inspectionRecordDetailForm.imgInfoList.splice(this.inspectionRecordDetailForm.imgInfoList.findIndex(item =>item.name === file.name),1)
+ this.fileList.splice(this.inspectionRecordDetailForm.imgInfoList.findIndex(item =>item.name === file.name),1)
})
},
}
diff --git a/src/views/doublePreventAction/hiddenDanger/inspectionRecord/index.vue b/src/views/doublePreventAction/hiddenDanger/inspectionRecord/index.vue
index 9a16baa..e40c8bd 100644
--- a/src/views/doublePreventAction/hiddenDanger/inspectionRecord/index.vue
+++ b/src/views/doublePreventAction/hiddenDanger/inspectionRecord/index.vue
@@ -140,32 +140,6 @@
/>
<br>
</div>
- <el-dialog :title="title" :visible.sync="inspectionRecordVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
- <el-form ref="inspectionRecordForm" :model="inspectionRecordForm" label-position="right" label-width="165px">
- <el-form-item label="责任部门" prop="hazardDep">
- <el-select v-model="inspectionRecordForm.hazardDep" class="analyseUnit_input">
- <el-option
- v-for="item in departmentList"
- :key="item.id"
- :value="item.department"
- :label="item.department"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="责任人" prop="hazardLiablePerson">
- <el-input v-model="inspectionRecordForm.hazardLiablePerson" class="analyseUnit_input"></el-input>
- </el-form-item>
- <el-form-item label="安全风险分析对象编码" prop="hazardCode">
- <el-input v-model="inspectionRecordForm.hazardCode" class="analyseUnit_input"></el-input>
- </el-form-item>
- <el-form-item label="安全风险分析单元名称" prop="riskUnitName">
- <el-input v-model="inspectionRecordForm.riskUnitName" class="analyseUnit_input"></el-input>
- </el-form-item>
- </el-form>
- <div align="right">
- <el-button @click="unitFormVisible = false">取消</el-button>
- </div>
- </el-dialog>
<detail ref="detail"></detail>
</div>
</template>
@@ -239,7 +213,6 @@
title:'',
company:'',
code:'',
- inspectionRecordVisible:false,
inspectionRecordForm:{
},
@@ -306,7 +279,7 @@
this.$refs.detail.showInspectionRecordForm(value)
},
showInspectionRecordDetailForm(value,type) {
- this.$refs.detail.showInspectionRecordDetailForm(value,type,this.userList)
+ this.$refs.detail.showInspectionRecordDetailForm(value,type,this.userList,this.departmentList)
},
async submitInspectionRecordForm(value){
if(value.unitList.find(item => item.status === 1) === undefined){
--
Gitblit v1.9.2