From fd285d6245ddd54c2eef8237eb878f573d665f94 Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期四, 07 七月 2022 18:27:39 +0800 Subject: [PATCH] lct --- src/views/doublePreventSystem/riskLevelManage/safetyRiskEvent/components/safetyRiskEventDialog.vue | 234 ++++++++++++++++++++++++++++++---------------------------- 1 files changed, 120 insertions(+), 114 deletions(-) diff --git a/src/views/doublePreventSystem/riskLevelManage/safetyRiskEvent/components/safetyRiskEventDialog.vue b/src/views/doublePreventSystem/riskLevelManage/safetyRiskEvent/components/safetyRiskEventDialog.vue index 236734a..52b1bc3 100644 --- a/src/views/doublePreventSystem/riskLevelManage/safetyRiskEvent/components/safetyRiskEventDialog.vue +++ b/src/views/doublePreventSystem/riskLevelManage/safetyRiskEvent/components/safetyRiskEventDialog.vue @@ -1,154 +1,160 @@ <template> <div class="system-add-menu-container"> <el-dialog :title="title" v-model="isSafetyRiskEventDialog" width="600px"> - <el-form :model="safetyRiskEventForm" :rules="safetyRiskEventFormRules" ref="safetyRiskAnalyseUnitFormRef" size="default" label-width="180px"> + <el-form + :model="safetyRiskEventForm" + :rules="safetyRiskEventFormRules" + ref="safetyRiskAnalyseUnitFormRef" + size="default" + label-width="180px" + > <el-row :gutter="35"> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="安全风险分析单元名称" prop="riskUnitId"> <el-select class="input-length" v-model="safetyRiskEventForm.riskUnitId" placeholder="请输入安全风险分析单元名称"> <el-option - v-for="item in allSafetyRiskEventData" - :key="item.id" - :label="item.riskUnitName" - :value="item.id" + v-for="item in allSafetyRiskEventData" + :key="item.id" + :label="item.riskUnitName" + :value="item.id" ></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="安全风险事件名称" prop="riskEventName"> - <el-input class="input-length" v-model="safetyRiskEventForm.riskEventName" placeholder="请输入生产装置名称" clearable></el-input> + <el-input + class="input-length" + v-model="safetyRiskEventForm.riskEventName" + placeholder="请输入生产装置名称" + clearable + ></el-input> </el-form-item> </el-col> </el-row> </el-form> <template #footer> - <span class="dialog-footer"> - <el-button @click="isSafetyRiskEventDialog = !isSafetyRiskEventDialog" size="default">取 消</el-button> - <el-button type="primary" @click="submitSafetyRiskEventDialog" size="default">确 实</el-button> - </span> + <span class="dialog-footer"> + <el-button @click="isSafetyRiskEventDialog = !isSafetyRiskEventDialog" size="default">取 消</el-button> + <el-button type="primary" @click="submitSafetyRiskEventDialog" v-throttle size="default">确 实</el-button> + </span> </template> </el-dialog> </div> </template> <script lang="ts"> - interface stateType{ - isSafetyRiskEventDialog:Boolean, - safetyRiskEventForm:{ - riskEventName: string | null, - riskUnitId: number | null, - }, - title: string, - departmentList: [], - allSafetyRiskEventData: [], - safetyRiskEventFormRules: {}, - } - import { reactive, toRefs, ref} from 'vue' - import { safetyRiskEventApi } from '/@/api/doublePreventSystem/safetyRiskEvent'; - import { ElMessage } from 'element-plus'; - export default { - name: "productionDeviceDialog", - setup(props, context) { - const safetyRiskAnalyseUnitFormRef = ref(); - const state = reactive<stateType>({ - title:'', - departmentList: [], - allSafetyRiskEventData:[], - isSafetyRiskEventDialog: false, - safetyRiskEventForm: { - riskEventName: null, - riskUnitId: null, - }, - safetyRiskEventFormRules:{ - riskEventName: [ - { required: true, message: '请填写安全风险分析对象编码', trigger: 'blur' }, - ], - riskUnitId: [ - { required: true, message: '请填写安全风险分析单元名称', trigger: 'blur' }, - ], - } +interface stateType { + isSafetyRiskEventDialog: Boolean; + safetyRiskEventForm: { + riskEventName: string | null; + riskUnitId: number | null; + }; + title: string; + departmentList: []; + allSafetyRiskEventData: []; + safetyRiskEventFormRules: {}; +} +import { reactive, toRefs, ref } from 'vue'; +import { safetyRiskEventApi } from '/@/api/doublePreventSystem/safetyRiskEvent'; +import { ElMessage } from 'element-plus'; +export default { + name: 'productionDeviceDialog', + setup(props: any, context: any) { + const safetyRiskAnalyseUnitFormRef = ref(); + const state = reactive<stateType>({ + title: '', + departmentList: [], + allSafetyRiskEventData: [], + isSafetyRiskEventDialog: false, + safetyRiskEventForm: { + riskEventName: null, + riskUnitId: null + }, + safetyRiskEventFormRules: { + riskEventName: [{ required: true, message: '请填写安全风险分析对象编码', trigger: 'blur' }], + riskUnitId: [{ required: true, message: '请填写安全风险分析单元名称', trigger: 'blur' }] + } + }); + //打开模态框 + const openSafetyRiskEventDialog = (type: string, value: object, department: [], allSafetyRiskEventData: []) => { + state.isSafetyRiskEventDialog = true; + state.allSafetyRiskEventData = JSON.parse(JSON.stringify(allSafetyRiskEventData)); + state.departmentList = department; + setTimeout(() => { + safetyRiskAnalyseUnitFormRef.value.clearValidate(); }); + if (type === '新增') { + state.title = '新增风险事件'; + state.safetyRiskEventForm = { + riskEventName: null, + riskUnitId: null + }; + } else { + state.title = '修改风险事件'; + state.safetyRiskEventForm = JSON.parse(JSON.stringify(value)); + } + }; - //打开模态框 - const openSafetyRiskEventDialog = (type: string, value: object, department: [], allSafetyRiskEventData:[]) => { - state.isSafetyRiskEventDialog = true; - state.allSafetyRiskEventData = JSON.parse(JSON.stringify(allSafetyRiskEventData)); - state.departmentList = department; - setTimeout(() => { - safetyRiskAnalyseUnitFormRef.value.clearValidate() - }) - if(type === '新增'){ - state.title = '新增生产装置'; - state.safetyRiskEventForm = { - riskEventName: null, - riskUnitId: null, - }; - }else{ - state.title = '修改生产装置'; - state.safetyRiskEventForm = JSON.parse(JSON.stringify(value)); - } - }; - - //新增修改提交 - const submitSafetyRiskEventDialog = async () => { - safetyRiskAnalyseUnitFormRef.value.validate( async (valid: Boolean) => { - if(valid){ - if(state.title === '新增生产装置'){ - let res = await safetyRiskEventApi().addSafetyRiskEvent(state.safetyRiskEventForm); - if(res.data.code === '200'){ - ElMessage({ - type:'success', - message:'生产装置新增成功', - duration:2000 - }); - state.isSafetyRiskEventDialog = false; - context.emit('refreshSafetyRiskEvent'); - }else{ - ElMessage({ - type:'warning', - message:res.data.msg - }); - } - }else{ - let res = await safetyRiskEventApi().modSafetyRiskEvent(state.safetyRiskEventForm); - if(res.data.code === '200'){ - ElMessage({ - type:'success', - message:'生产装置修改成功', - duration:2000 + //新增修改提交 + const submitSafetyRiskEventDialog = async () => { + safetyRiskAnalyseUnitFormRef.value.validate(async (valid: Boolean) => { + if (valid) { + if (state.title === '新增风险事件') { + let res = await safetyRiskEventApi().addSafetyRiskEvent(state.safetyRiskEventForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '风险事件新增成功', + duration: 2000 }); state.isSafetyRiskEventDialog = false; context.emit('refreshSafetyRiskEvent'); - }else{ - ElMessage({ - type:'warning', - message:res.data.msg - }); - } + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); } - }else{ - ElMessage({ - type:'warning', - message:'请完善基本信息', - }); + } else { + let res = await safetyRiskEventApi().modSafetyRiskEvent(state.safetyRiskEventForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '风险事件修改成功', + duration: 2000 + }); + state.isSafetyRiskEventDialog = false; + context.emit('refreshSafetyRiskEvent'); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } } - }) - } + } else { + ElMessage({ + type: 'warning', + message: '请完善基本信息' + }); + } + }); + }; - return{ - ...toRefs(state), - safetyRiskAnalyseUnitFormRef, - submitSafetyRiskEventDialog, - openSafetyRiskEventDialog, - }; - } + return { + ...toRefs(state), + safetyRiskAnalyseUnitFormRef, + submitSafetyRiskEventDialog, + openSafetyRiskEventDialog + }; } +}; </script> <style scoped> -.input-length{ - width:85%; +.input-length { + width: 85%; } </style> -- Gitblit v1.9.2