From 33362a4f7e8338e4af7d6ec7be6063a967be648d Mon Sep 17 00:00:00 2001 From: shj <1790240199@qq.com> Date: 星期二, 17 五月 2022 10:00:50 +0800 Subject: [PATCH] 编辑 --- src/permission.js | 2 src/views/safetyHazardAccount/index.vue | 2 src/router/index.js | 7 src/views/safetyHazardAccount/safetyedit.vue | 653 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 662 insertions(+), 2 deletions(-) diff --git a/src/permission.js b/src/permission.js index d18c503..215e9e0 100644 --- a/src/permission.js +++ b/src/permission.js @@ -16,7 +16,7 @@ if (!permissionRoles) return true return roles.some(role => permissionRoles.indexOf(role) >= 0) } -const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource']// no redirect whitelist +const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource','/safetyedit']// no redirect whitelist router.beforeEach((to, from, next) => { NProgress.start() // start progress bar diff --git a/src/router/index.js b/src/router/index.js index 2fbd1de..ee37f77 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -429,6 +429,13 @@ // meta: { title: '安全隐患台账-关联危险源', icon: '' } hidden: true }, + { + path: '/safetyedit', + // name: '安全隐患台账-编辑', + component: () => import('@/views/safetyHazardAccount/safetyedit'), + // meta: { title: '安全隐患台账-编辑', icon: '' } + hidden: true + }, ] } ] diff --git a/src/views/safetyHazardAccount/index.vue b/src/views/safetyHazardAccount/index.vue index f3087e1..e85b410 100644 --- a/src/views/safetyHazardAccount/index.vue +++ b/src/views/safetyHazardAccount/index.vue @@ -466,7 +466,7 @@ }, updateClick(row){ this.$router.push({ - path:"/hiddenDangerAdd?id="+row.id + path:"/safetyedit" }) }, jump(){ diff --git a/src/views/safetyHazardAccount/safetyedit.vue b/src/views/safetyHazardAccount/safetyedit.vue new file mode 100644 index 0000000..cc18391 --- /dev/null +++ b/src/views/safetyHazardAccount/safetyedit.vue @@ -0,0 +1,653 @@ +<template> + <div class="app-container"> + <div style=""> + <Titlename title="隐患单修改页面"></Titlename> + <div class="whole-form"> + <el-form + :model="ruleForm" + :rules="rules" + ref="ruleForm" + label-width="150px" + class="demo-ruleForm" + style="margin: 0 14% 0 16%" + > + <el-row> + <el-col :span="9"> + <el-form-item label="隐患编号" prop="check_date"> + <el-input v-model="ruleForm.check_man"></el-input> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="9"> + <el-form-item label="检查时间" prop="check_date"> + <el-date-picker + v-model="ruleForm.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="check_class"> + <el-select v-model="ruleForm.check_class" placeholder="请选择" style="width: 100%"> + <el-option + v-for="item in BCList" + :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="checktype"> + <el-select v-model="ruleForm.checktype" placeholder="请选择" style="width: 100%"> + <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-col :span="9" :offset="4"> + <el-form-item label="检查单位" prop="check_main_branch"> + <el-select v-model="ruleForm.check_main_branch" placeholder="请选择" @change="changeJCDW" style="width: 100%"> + <el-option + v-for="item in JCDWList" + :key="item.label" + :label="item.label" + :value="item.label" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="深入现场情况" prop="check_branch"> + <el-select v-model="ruleForm.check_branch" placeholder="请选择" style="width: 100%"> + <el-option + v-for="item in JCBMList" + :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="check_man"> + <el-input v-model="ruleForm.check_man"></el-input> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="9"> + <el-form-item label="检查人员" prop="check_man"> + <el-input v-model="ruleForm.check_man"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="陪检人员" prop="acc_man"> + <el-input v-model="ruleForm.acc_man"></el-input> + </el-form-item> + </el-col> + </el-row> + + + <el-row> + <el-col :span="22"> + <el-form-item label="行走路线"> + <el-input v-model="ruleForm.route" rows="3" type="textarea" class="multiline"></el-input> + </el-form-item> + </el-col> + </el-row> + + <el-row style="margin-bottom: 20px" v-if="addShow"> + <el-col :span="9"> + <el-button type="primary" class="btns" @click="addDanger">新增隐患</el-button> + </el-col> + </el-row> + + <el-row> + <el-table :data="tableData" style="width: 100%"> + <el-table-column type="index" width="55" align="center" label="序号"></el-table-column> + <!-- <el-table-column prop="ht_branch" align="center" label="隐患部门"></el-table-column> --> + <el-table-column prop="address" align="center" label="地点"></el-table-column> + <el-table-column prop="ht_content" align="center" label="隐患内容"></el-table-column> + <el-table-column prop="measure" align="center" label="整改措施"></el-table-column> + <el-table-column prop="ht_typesub" align="center" label="隐患类别"></el-table-column> + <el-table-column prop="dangerousSource" align="center" label="关联危险源"></el-table-column> + <el-table-column prop="DTRisk_level" align="center" label="风险等级"></el-table-column> + <el-table-column prop="ht_level" align="center" label="隐患级别"></el-table-column> + <el-table-column prop="alter_time" align="center" label="限改时间"></el-table-column> + <el-table-column prop="duty_officer" align="center" label="责任人"></el-table-column> + <el-table-column prop="alter_status" align="center" label="完成时间"></el-table-column> + <el-table-column prop="Review" align="center" label="复查时间"></el-table-column> + <el-table-column prop="Review" align="center" label="复查人"></el-table-column> + <el-table-column prop="Review" align="center" label="复查结果"></el-table-column> + <!-- <el-table-column prop="time" label="操作" align="center" width="140"> + <template slot-scope="scope"> + <div style="display: flex;align-items: center;flex-direction: row;"> + <el-button + size="mini" + @click="editDanger(scope.row, scope.$index)" + >编辑 + </el-button> + <el-button + size="mini" + v-if="addShow" + @click="deleteDanger(scope.row, scope.$index)" + >删除 + </el-button> + </div> + </template> + </el-table-column> --> + </el-table> + </el-row> + + + <el-row style="margin-top: 20px"> + <el-col :span="22"> + <el-form-item style="text-align: center"> + <el-button type="primary" class="btns" @click="submitForm('ruleForm')" + >保存</el-button + > + <el-button @click="returnIndex">关闭</el-button> + </el-form-item> + </el-col> + </el-row> + </el-form> + </div> + </div> + + <el-dialog + :title="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="ht_branch"> + <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="address"> + <el-input v-model="dangerForm.address" 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_content"> + <el-input v-model="dangerForm.ht_content" rows="3" type="textarea" class="multiline"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="整改措施" prop="measure"> + <el-input v-model="dangerForm.measure" 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 YHLXList" + :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="DTRisk_bankId"> + <el-select v-model="dangerForm.DTRisk_bankId" placeholder="请选择" @change="changeWxy" filterable> + <el-option + v-for="item in dangerList" + :key="item.id" + :label="item.mriskPoint" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="9"> + <el-form-item label="风险等级" prop="DTRisk_level"> + <el-input v-model="dangerForm.DTRisk_level" :disabled="true"></el-input> + </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="9"> + <el-form-item label="限改时间" prop="alter_time"> + <el-date-picker + v-model="dangerForm.alter_time" + 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="duty_officer"> + <el-input v-model="dangerForm.duty_officer"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="完成时间" prop="alter_time"> + <el-date-picker + v-model="dangerForm.alter_time" + 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="alter_time"> + <el-date-picker + v-model="dangerForm.alter_time" + type="date" + value-format="yyyy-MM-dd" + placeholder="选择日期" + style="width: 100%" + > + </el-date-picker> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="复查人" prop="repeatId"> + <el-input v-model="dangerForm.duty_officer"></el-input> + </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> + + </div> +</template> + +<script> +import Titlename from "../../components/Titlename/index.vue"; + +import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr,initReformStatus,initYwks,initWxy} from "@/api/sgyhpczl/initSelect"; +import {saveDanger,initDangerRebound,getDangerInfo,editDanger} from '@/api/sgyhpczl/hiddenDangerRegistration' +import {deepClone} from '@/utils' + +export default { + components: { Titlename }, + name: "hiddenDangerList", + data() { + return { + addShow:true, + id:'', + rowIndex:-1, + dangerList:[], + dangerForm:{}, + dangerRules:{ + ht_branch: [{ required: true, message: '不能为空', trigger: 'blur' },], + address: [{ required: true, message: '不能为空', trigger: 'blur' },], + ht_content: [{ required: true, message: '不能为空', trigger: 'blur' },], + ht_typesub: [{ required: true, message: '不能为空', trigger: 'blur' },], + DTRisk_bankId: [{ required: true, message: '不能为空', trigger: 'blur' },], + ht_level: [{ required: true, message: '不能为空', trigger: 'blur' },], + alter_time: [{ required: true, message: '不能为空', trigger: 'blur' },], + alter_status: [{ required: true, message: '不能为空', trigger: 'blur' },], + Review: [{ required: true, message: '不能为空', trigger: 'blur' },], + duty_officer:[{ required: true, message: '不能为空', trigger: 'blur' },] + }, + title:'新增', + dialogVisible:false, + BCList:[], + JCLBList:[], + JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}], + YHBMList:[], + YHLXList:[], + YHJBList:[], + JCBMList:[], + llrList:[], + statusList:[], + YWKSList:[], + reboundList:[], + ruleForm: {}, + rules: { + check_date: [{ required: true, message: '不能为空', trigger: 'blur' },], + check_class: [{ required: true, message: '不能为空', trigger: 'blur' },], + check_main_branch: [{ required: true, message: '不能为空', trigger: 'blur' },], + check_branch: [{ required: true, message: '不能为空', trigger: 'blur' },], + check_man: [{ required: true, message: '不能为空', trigger: 'blur' },], + checktype: [{ required: true, message: '不能为空', trigger: 'blur' },], + }, + tableData: [], + }; + }, + mounted(){ + this.initBC() + this.initJCLB() + this.initYHJB() + this.initYHLX() + //this.initLlr() + this.initReformStatus() + this.initYHBM() + this.initYWKS() + this.initWXY() + this.initDangerRebound() + this.id = this.$route.query.id; + if( this.id!=null && this.id!=''){ + this.initInfo(); + this.addShow=false + } + }, + methods: { + async initInfo(){ + var res=await getDangerInfo(this.id) + if (res.data.ok==1){ + this.ruleForm=res.data.data + this.changeJCDW(res.data.data.check_main_branch) + var obj=deepClone(res.data.data) + this.tableData.push(obj) + + } + }, + initDangerRebound(){ + initDangerRebound().then(res=>{ + if (res.data.ok==1){ + this.reboundList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + submitDanger(formName){ + this.$refs[formName].validate((valid) => { + if (valid) { + if(this.title=='新增'){ + this.tableData.push(this.dangerForm) + }else { + var arr = this.tableData; + arr.splice(this.rowIndex, 1, this.dangerForm); + this.tableData = arr; + } + this.dialogVisible=false + + } else { + console.log("error submit!!"); + return false; + } + }); + }, + deleteDanger(row, index) { + + + this.$confirm('确认删除吗', '提示', { + confirmButtonText: '确认', + cancelButtonText: '取消', + type: 'warning' + }) + .then(() => { + var arr = deepClone(this.tableData); + var brr = []; + for (var i = 0; i < arr.length; i++) { + if (i == index) { + } else { + brr.push(arr[i]); + } + } + this.tableData = deepClone(brr); + //this.tableData.splice(index) + + }) + .catch(error => { + }); + + + }, + editDanger(row, index) { + this.dangerForm = deepClone(row); + this.rowIndex = index; + this.dialogVisible = true; + this.title = '编辑'; + }, + + addDanger(){ + this.dangerForm={} + this.title="新增" + this.dialogVisible=true + }, + changeWxy(e){ + for(var i=0;i<this.dangerList.length;i++){ + if(e==this.dangerList[i].id){ + this.dangerForm.DTRisk_level=this.dangerList[i].mriskLevel + this.dangerForm.dangerousSource=this.dangerList[i].mriskPoint + } + } + }, + initWXY(){ + var param={ + page: 1, + limit: 1000 + } + initWxy(param).then(res=>{ + if (res.data.ok==1){ + this.dangerList=res.data.data.items + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initYWKS(){ + initYwks().then(res=>{ + if (res.data.ok==1){ + this.YWKSList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + 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}) + } + }) + }, + initLlr(){ + initLlr().then(res=>{ + if (res.data.ok==1){ + this.llrList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initReformStatus(){ + initReformStatus().then(res=>{ + if (res.data.ok==1){ + this.statusList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + changeJCDW(val){ + initJCBM(val).then(res=>{ + if (res.data.ok==1){ + this.JCBMList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initYHLX(){ + initYHLX().then(res=>{ + if (res.data.ok==1){ + this.YHLXList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initYHJB(){ + initYHJB().then(res=>{ + if (res.data.ok==1){ + this.YHJBList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initBC(){ + initBC().then(res=>{ + if (res.data.ok==1){ + this.BCList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initJCLB(){ + initJCLB().then(res=>{ + if (res.data.ok==1){ + this.JCLBList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + + + returnIndex(){ + this.$router.push({ + path:"/hiddenDangerRegistration" + }) + }, + submitForm(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + if(this.tableData==null || this.tableData.length==0){ + this.$message({type:'error', message:"请添加隐患", duration:2000}) + } + this.ruleForm.items=this.tableData + if(this.addShow){ + saveDanger(this.ruleForm).then(res=>{ + if (res.data.ok==1){ + this.$message({type:'success', message:"新增成功", duration:3000}) + this.$router.push({ + path:"/hiddenDangerRegistration" + }) + }else { + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }else { + var param=deepClone(this.ruleForm) + var obj=deepClone(this.tableData[0]) + param.ht_branch=obj.ht_branch + param.address=obj.address + param.ht_content=obj.ht_content + param.measure=obj.measure + param.ht_typesub=obj.ht_typesub + param.DTRisk_bankId=obj.DTRisk_bankId + param.DTRisk_level=obj.mriskLevel + param.dangerousSource=obj.mriskPoint + param.ht_level=obj.ht_level + param.alter_time=obj.alter_time + param.duty_officer=obj.duty_officer + param.alter_status=obj.alter_status + param.Review=obj.Review + param.repeatId=obj.repeatId + editDanger(param).then(res=>{ + if (res.data.ok==1){ + this.$message({type:'success', message:"编辑成功", duration:3000}) + this.$router.push({ + path:"/hiddenDangerRegistration" + }) + }else { + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + } + + + + } else { + console.log("error submit!!"); + return false; + } + }); + }, + }, +}; +</script> + +<style scoped> +.app-container { + padding: 20px; + height: 850px; + overflow-y: auto; +} + +.app-container /deep/ .box { + padding-top: 0; +} + +/* /deep/ .multiline .el-input__inner { + height: 62px; +} */ + .btns{ + background-color: #034ea2; + border: 1px solid #034ea2; + } +</style> -- Gitblit v1.9.2