From 5a72942254d0a4cae77c2980b014a5cf55a52cf9 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期五, 24 二月 2023 16:49:31 +0800
Subject: [PATCH] 更新

---
 src/views/basic/unit/components/unitDialog.vue |  100 +++++++++++++++++++++++++++++--------------------
 1 files changed, 59 insertions(+), 41 deletions(-)

diff --git a/src/views/basic/unit/components/unitDialog.vue b/src/views/basic/unit/components/unitDialog.vue
index 00341fe..93a4dcd 100644
--- a/src/views/basic/unit/components/unitDialog.vue
+++ b/src/views/basic/unit/components/unitDialog.vue
@@ -1,40 +1,48 @@
 <template>
     <div class="system-menu-dialog-container">
-        <el-dialog :title="unitDialogState.title" v-model="unitDialogState.unitDialogVisible" width="600px">
+        <el-dialog :title="unitDialogState.title" v-model="unitDialogState.unitDialogVisible" :close-on-click-modal="false" width="600px">
             <el-form ref="UnitFormRef" :rules="unitDialogState.unitFormRules" :model="unitDialogState.unitForm" size="default" label-width="120px">
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="设备编号" prop="deviceCode">
-                            <el-input v-model="unitDialogState.unitForm.deviceCode" placeholder="设备编号" clearable class="input-length"></el-input>
+                        <el-form-item label="风险单元编号" prop="riskCode">
+                            <el-input v-model="unitDialogState.unitForm.riskCode" placeholder="风险单元编号" clearable class="input-length"></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="deviceName">
-                            <el-input v-model="unitDialogState.unitForm.deviceName" placeholder="设备名称" clearable class="input-length"></el-input>
+                        <el-form-item label="风险单元名称" prop="riskName">
+                            <el-input v-model="unitDialogState.unitForm.riskName" placeholder="风险单元名称" clearable class="input-length"></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="devicePower">
-                            <el-input v-model="unitDialogState.unitForm.devicePower" placeholder="设备功率" clearable class="input-length"></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="deviceUnit">
-                            <el-select v-model="unitDialogState.unitForm.deviceUnit" placeholder="计量单位" clearable class="input-length">
-                                <el-option v-for="item in unitDialogState.deviceUnitList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        <el-form-item label="风险源风险类型" prop="riskSourceType">
+                            <el-select v-model="unitDialogState.unitForm.riskSourceType" @change="unitDialogState.unitForm.riskSourceId = null" placeholder="风险源风险类型" clearable class="input-length">
+                                <el-option v-for="item in unitDialogState.riskSourceTypeList" :key="item.id" :label="item.name" :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="是否特种设备">
-                            <el-select v-model="unitDialogState.unitForm.specialDevice" placeholder="是否特种设备" clearable class="input-length">
-                                <el-option v-for="item in unitDialogState.specialDeviceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        <el-form-item label="风险源" prop="riskSourceId">
+                            <el-select v-model="unitDialogState.unitForm.riskSourceId" placeholder="风险源" clearable class="input-length">
+                                <el-option v-if="unitDialogState.unitForm.riskSourceType === 2"  v-for="item in unitDialogState.allEquipmentList" :key="item.id" :label="item.deviceName" :value="item.id"></el-option>
+                                <el-option v-if="unitDialogState.unitForm.riskSourceType === 1" v-for="item in unitDialogState.allRoomList" :key="item.id" :label="item.room" :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="安全防护">
-                            <el-input type="textarea" :rows="3" v-model="unitDialogState.unitForm.safeProtect" placeholder="安全防护" clearable class="input-length"></el-input>
+                        <el-form-item label="负责人" prop="liabilityUserId">
+                            <el-select v-model="unitDialogState.unitForm.liabilityUserId" placeholder="负责人" clearable class="input-length">
+                                <el-option v-for="item in unitDialogState.allPersonList" :key="item.id" :label="item.personName" :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="liabilityDep">
+                            <el-input v-model="unitDialogState.unitForm.liabilityDep" placeholder="负责部门" clearable class="input-length"></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="风险单元描述">
+                            <el-input type="textarea" :rows="3" v-model="unitDialogState.unitForm.description" placeholder="风险单元描述" clearable class="input-length"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -60,18 +68,19 @@
     title: '',
     unitDialogVisible: false,
     unitForm: {
-        id: null,
-        deviceCode: '',
-        deviceName: '',
-        devicePower: '',
-        deviceUnit: null,
-        safeProtect: '',
+        riskCode: '',
+        riskName: '',
+        riskSourceId: null,
+        riskSourceType: null,
+        liabilityUserId: null,
+        liabilityDep: '',
+        description: '',
     },
     unitFormRules: {
-        deviceCode: [{ required: true, message: '请填写设备编号', trigger: 'blur' }],
-        deviceName: [{ required: true, message: '请填写设备名称', trigger: 'blur' }],
-        devicePower: [{ required: true, message: '请填写设备功率', trigger: 'blur' }],
-        deviceUnit: [{ required: true, message: '请选择计量单位', trigger: 'change' }]
+        riskCode: [{ required: true, message: '请填写风险单元编号', trigger: 'blur' }],
+        riskName: [{ required: true, message: '请填写风险单元名称', trigger: 'blur' }],
+        riskSourceId: [{ required: true, message: '请选择风险源风险类型', trigger: 'change' }],
+        riskSourceType: [{ required: true, message: '请选择风险源', trigger: 'change' }],
     },
     riskSourceTypeList: [
         {id: 1, name: '区域、实验场所'},
@@ -81,33 +90,42 @@
     evaluateStatusList: [
         {id: 1, name: '未评价'},
         {id:2, name: '已评价'},
-    ]
+    ],
+    allRoomList: [],
+    allEquipmentList: [],
+    allPersonList: [],
 })
 
-const showUnitDialog = (title: string, value: UnitType) => {
+const showUnitDialog = (title: string, value: UnitType, allEquipmentList: AllEquipmentListType [], allRoomList: RoomType [], allPersonList: AllPersonListType []) => {
     unitDialogState.unitDialogVisible = true;
+    unitDialogState.allRoomList = allRoomList
+    unitDialogState.allEquipmentList = allEquipmentList
+    unitDialogState.allPersonList = allPersonList
     setTimeout(() => {
         UnitFormRef.value.clearValidate();
     });
     if(title === '新增'){
         unitDialogState.title = '新增';
         unitDialogState.unitForm = {
-            id: null,
-            deviceCode: '',
-            deviceName: '',
-            devicePower: '',
-            deviceUnit: null,
-            safeProtect: '',
+            riskCode: '',
+            riskName: '',
+            riskSourceId: null,
+            riskSourceType: null,
+            liabilityUserId: null,
+            liabilityDep: '',
+            description: '',
         };
     }else{
         unitDialogState.title = '编辑'
         unitDialogState.unitForm = {
             id: value.id,
-            deviceCode: value.deviceCode,
-            deviceName: value.deviceName,
-            devicePower: value.devicePower,
-            deviceUnit: value.deviceUnit,
-            safeProtect: value.safeProtect,
+            riskCode: value.riskCode,
+            riskName: value.riskName,
+            riskSourceId: value.riskSourceId,
+            riskSourceType: value.riskSourceType,
+            liabilityUserId: value.liabilityUserId,
+            liabilityDep: value.liabilityDep,
+            description: value.description,
         };
     }
 };

--
Gitblit v1.9.2