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/safetyRiskAnalyseUnit/components/safetyRiskAnalyseUnitDialog.vue | 334 ++++++++++++++++++++++++++++--------------------------- 1 files changed, 170 insertions(+), 164 deletions(-) diff --git a/src/views/doublePreventSystem/riskLevelManage/safetyRiskAnalyseUnit/components/safetyRiskAnalyseUnitDialog.vue b/src/views/doublePreventSystem/riskLevelManage/safetyRiskAnalyseUnit/components/safetyRiskAnalyseUnitDialog.vue index 5117a2e..117e9b5 100644 --- a/src/views/doublePreventSystem/riskLevelManage/safetyRiskAnalyseUnit/components/safetyRiskAnalyseUnitDialog.vue +++ b/src/views/doublePreventSystem/riskLevelManage/safetyRiskAnalyseUnit/components/safetyRiskAnalyseUnitDialog.vue @@ -1,26 +1,45 @@ <template> <div class="system-add-menu-container"> <el-dialog :title="title" v-model="isSafetyRiskAnalyseUnitDialog" width="600px"> - <el-form :model="safetyRiskAnalyseUnitForm" :rules="safetyRiskAnalyseUnitFormRules" ref="safetyRiskAnalyseUnitFormRef" size="default" label-width="180px"> + <el-form + :model="safetyRiskAnalyseUnitForm" + :rules="safetyRiskAnalyseUnitFormRules" + 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="riskCode"> - <el-input class="input-length" v-model="safetyRiskAnalyseUnitForm.riskCode" placeholder="请输入安全风险分析对象编码"></el-input> + <el-input + class="input-length" + v-model="safetyRiskAnalyseUnitForm.riskCode" + placeholder="请输入安全风险分析对象编码" + ></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="安全风险分析单元名称" prop="riskUnitName"> - <el-input class="input-length" v-model="safetyRiskAnalyseUnitForm.riskUnitName" placeholder="请输入安全风险分析单元名称"></el-input> + <el-input + class="input-length" + v-model="safetyRiskAnalyseUnitForm.riskUnitName" + placeholder="请输入安全风险分析单元名称" + ></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="生产装置名称" prop="produceDeviceId"> - <el-select class="input-length" v-model="safetyRiskAnalyseUnitForm.produceDeviceId" placeholder="请输入生产装置名称" clearable> + <el-select + class="input-length" + v-model="safetyRiskAnalyseUnitForm.produceDeviceId" + placeholder="请输入生产装置名称" + clearable + > <el-option - v-for="item in allProduceDeviceData" - :key="item.id" - :label="item.produceDeviceName" - :value="item.id" + v-for="item in allProduceDeviceData" + :key="item.id" + :label="item.produceDeviceName" + :value="item.id" ></el-option> </el-select> </el-form-item> @@ -28,13 +47,13 @@ <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="责任部门" prop="liableDepId"> <el-cascader - @change="achiveUserList" + @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'id', label: 'name' }" placeholder="请选择部门" clearable filterable - style="width:85%" + style="width: 85%" v-model="safetyRiskAnalyseUnitForm.liableDepId" > </el-cascader> @@ -42,190 +61,177 @@ </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="责任人" prop="liablePersonId"> - <el-select class="input-length" v-model="safetyRiskAnalyseUnitForm.liablePersonId" placeholder="请选择责任人" clearable filterable> - <el-option - v-for="item in userList" - :key="item.uid" - :label="item.realName" - :value="item.uid" - ></el-option> + <el-select + class="input-length" + v-model="safetyRiskAnalyseUnitForm.liablePersonId" + placeholder="请选择责任人" + clearable + filterable + > + <el-option v-for="item in userList" :key="item.uid" :label="item.realName" :value="item.uid"></el-option> </el-select> </el-form-item> </el-col> </el-row> </el-form> <template #footer> - <span class="dialog-footer"> - <el-button @click="isSafetyRiskAnalyseUnitDialog = !isSafetyRiskAnalyseUnitDialog" size="default">取 消</el-button> - <el-button type="primary" @click="submitSafetyRiskAnalyseUnitDialog" size="default">确 实</el-button> - </span> + <span class="dialog-footer"> + <el-button @click="isSafetyRiskAnalyseUnitDialog = !isSafetyRiskAnalyseUnitDialog" size="default">取 消</el-button> + <el-button type="primary" @click="submitSafetyRiskAnalyseUnitDialog" v-throttle size="default">确 实</el-button> + </span> </template> </el-dialog> </div> </template> <script lang="ts"> - interface stateType{ - isSafetyRiskAnalyseUnitDialog:Boolean, - safetyRiskAnalyseUnitForm:{ - riskCode: string | null, - riskUnitName: string | null, - liablePersonId: number | null, - liableDepId: number | null, - produceDeviceId: number | null, - }, - title: string, - userList:[], - departmentList: [], - allProduceDeviceData: [], - safetyRiskAnalyseUnitFormRules:{} - } - interface levelListState { - - } - import { reactive, toRefs, ref} from 'vue' - import { safetyRiskAnalyseUnitApi } from '/@/api/doublePreventSystem/safetyRiskAnalyseUnit'; - import { ElMessage } from 'element-plus'; +interface stateType { + isSafetyRiskAnalyseUnitDialog: Boolean; + safetyRiskAnalyseUnitForm: { + riskCode: string | null; + riskUnitName: string | null; + liablePersonId: number | null; + liableDepId: number | null; + produceDeviceId: number | null; + }; + title: string; + userList: []; + departmentList: []; + allProduceDeviceData: []; + safetyRiskAnalyseUnitFormRules: {}; +} +import { reactive, toRefs, ref } from 'vue'; +import { safetyRiskAnalyseUnitApi } from '/@/api/doublePreventSystem/safetyRiskAnalyseUnit'; +import { ElMessage } from 'element-plus'; import { userApi } from '/@/api/user'; - export default { - name: "productionDeviceDialog", - setup(props, context) { - const safetyRiskAnalyseUnitFormRef = ref(); - const state = reactive<stateType>({ - title:'', - userList:[], - departmentList: [], - allProduceDeviceData: [], - isSafetyRiskAnalyseUnitDialog: false, - safetyRiskAnalyseUnitForm: { +export default { + name: 'productionDeviceDialog', + setup(props: any, context: any) { + const safetyRiskAnalyseUnitFormRef = ref(); + const state = reactive<stateType>({ + title: '', + userList: [], + departmentList: [], + allProduceDeviceData: [], + isSafetyRiskAnalyseUnitDialog: false, + safetyRiskAnalyseUnitForm: { + riskCode: null, + riskUnitName: null, + liablePersonId: null, + liableDepId: null, + produceDeviceId: null + }, + safetyRiskAnalyseUnitFormRules: { + riskCode: [{ required: true, message: '请填写安全风险分析对象编码', trigger: 'blur' }], + riskUnitName: [{ required: true, message: '请填写安全风险分析单元名称', trigger: 'blur' }], + liableDepId: [{ required: true, message: '请选择责任部门', trigger: 'change' }], + liablePersonId: [{ required: true, message: '请选择责任人', trigger: 'change' }], + produceDeviceId: [{ required: true, message: '请选择生产装置', trigger: 'change' }] + } + }); + + //打开模态框 + const openSafetyRiskAnalyseUnitDialog = (type: string, value: object, department: [], allProduceDeviceData: []) => { + // console.log(jsonBig.stringify(123124124124214123131)) + state.isSafetyRiskAnalyseUnitDialog = true; + state.allProduceDeviceData = JSON.parse(JSON.stringify(allProduceDeviceData)); + state.departmentList = department; + setTimeout(() => { + safetyRiskAnalyseUnitFormRef.value.clearValidate(); + }); + if (type === '新增') { + state.title = '新增风险分析单元'; + state.safetyRiskAnalyseUnitForm = { riskCode: null, riskUnitName: null, liablePersonId: null, liableDepId: null, - produceDeviceId: null, - }, - safetyRiskAnalyseUnitFormRules:{ - riskCode: [ - { required: true, message: '请填写安全风险分析对象编码', trigger: 'blur' }, - ], - riskUnitName: [ - { required: true, message: '请填写安全风险分析单元名称', trigger: 'blur' }, - ], - liableDepId: [ - { required: true, message: '请选择责任部门', trigger: 'change' }, - ], - liablePersonId: [ - { required: true, message: '请选择责任人', trigger: 'change' }, - ], - produceDeviceId: [ - { required: true, message: '请选择生产装置', trigger: 'change' }, - ], - } + produceDeviceId: null + }; + } else { + state.title = '修改风险分析单元'; + state.safetyRiskAnalyseUnitForm = JSON.parse(JSON.stringify(value)); + } + }; - }); - - //打开模态框 - const openSafetyRiskAnalyseUnitDialog = (type: string, value: object, department: [], allProduceDeviceData : []) => { - // console.log(jsonBig.stringify(123124124124214123131)) - state.isSafetyRiskAnalyseUnitDialog = true; - state.allProduceDeviceData = JSON.parse(JSON.stringify(allProduceDeviceData)); - state.departmentList = department; - setTimeout(() => { - safetyRiskAnalyseUnitFormRef.value.clearValidate() - }) - if(type === '新增'){ - state.title = '新增风险分析单元'; - state.safetyRiskAnalyseUnitForm = { - riskCode: null, - riskUnitName: null, - liablePersonId: null, - liableDepId: null, - produceDeviceId: null, - }; - }else{ - state.title = '修改风险分析单元'; - state.safetyRiskAnalyseUnitForm = JSON.parse(JSON.stringify(value)); - } - }; - - //新增修改提交 - const submitSafetyRiskAnalyseUnitDialog = async () => { - safetyRiskAnalyseUnitFormRef.value.validate( async (valid: Boolean) => { - if(valid){ - if(state.title === '新增风险分析单元'){ - let res = await safetyRiskAnalyseUnitApi().addSafetyRiskAnalyseUnit(state.safetyRiskAnalyseUnitForm); - if(res.data.code === '200'){ - ElMessage({ - type:'success', - message:'风险分析单元新增成功', - duration:2000 - }); - state.isSafetyRiskAnalyseUnitDialog = false; - context.emit('refreshSafetyRiskAnalyseUnit'); - }else{ - ElMessage({ - type:'warning', - message:res.data.msg - }); - } - }else{ - let res = await safetyRiskAnalyseUnitApi().modSafetyRiskAnalyseUnit(state.safetyRiskAnalyseUnitForm); - if(res.data.code === '200'){ - ElMessage({ - type:'success', - message:'风险分析单元修改成功', - duration:2000 + //新增修改提交 + const submitSafetyRiskAnalyseUnitDialog = async () => { + safetyRiskAnalyseUnitFormRef.value.validate(async (valid: Boolean) => { + if (valid) { + if (state.title === '新增风险分析单元') { + let res = await safetyRiskAnalyseUnitApi().addSafetyRiskAnalyseUnit(state.safetyRiskAnalyseUnitForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '风险分析单元新增成功', + duration: 2000 }); state.isSafetyRiskAnalyseUnitDialog = false; context.emit('refreshSafetyRiskAnalyseUnit'); - }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 safetyRiskAnalyseUnitApi().modSafetyRiskAnalyseUnit(state.safetyRiskAnalyseUnitForm); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + message: '风险分析单元修改成功', + duration: 2000 + }); + state.isSafetyRiskAnalyseUnitDialog = false; + context.emit('refreshSafetyRiskAnalyseUnit'); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } } - }) - }; - - const achiveUserList = () => { - state.safetyRiskAnalyseUnitForm.liablePersonId = null; - state.userList = []; - getUserData(); - }; - - //获取用户列表 - const getUserData = async () => { - let res = await userApi().getUserLByDepartment(state.safetyRiskAnalyseUnitForm.liableDepId); - if(res.data.code === '200'){ - state.userList = res.data.data; - }else{ + } else { ElMessage({ - type:'warning', - message:res.data.msg + type: 'warning', + message: '请完善基本信息' }); } - } + }); + }; - return{ - ...toRefs(state), - achiveUserList, - safetyRiskAnalyseUnitFormRef, - submitSafetyRiskAnalyseUnitDialog, - openSafetyRiskAnalyseUnitDialog, - }; - } + const achieveUserList = () => { + state.safetyRiskAnalyseUnitForm.liablePersonId = null; + state.userList = []; + getUserData(); + }; + + //获取用户列表 + const getUserData = async () => { + let res = await userApi().getUserLByDepartment(state.safetyRiskAnalyseUnitForm.liableDepId); + if (res.data.code === '200') { + state.userList = res.data.data; + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + }; + + return { + ...toRefs(state), + achieveUserList, + safetyRiskAnalyseUnitFormRef, + submitSafetyRiskAnalyseUnitDialog, + openSafetyRiskAnalyseUnitDialog + }; } +}; </script> <style scoped> -.input-length{ - width:85%; +.input-length { + width: 85%; } </style> -- Gitblit v1.9.2