From a8ef7c1a4b2ab6acd91a0520e6258bd753d17f20 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期三, 16 八月 2023 15:58:20 +0800
Subject: [PATCH] 人员证书类型

---
 src/views/specialWorkSystem/workTicket/zysq/components/broken.vue |   65 ++++++++++++++++++++------------
 1 files changed, 41 insertions(+), 24 deletions(-)

diff --git a/src/views/specialWorkSystem/workTicket/zysq/components/broken.vue b/src/views/specialWorkSystem/workTicket/zysq/components/broken.vue
index 8378a7c..65df3eb 100644
--- a/src/views/specialWorkSystem/workTicket/zysq/components/broken.vue
+++ b/src/views/specialWorkSystem/workTicket/zysq/components/broken.vue
@@ -61,6 +61,18 @@
 						/>
 					</el-form-item>
 				</el-col>
+        <el-col :span="12">
+          <el-form-item label="关联视频设备" prop="cameraIds">
+            <el-select v-model="form.cameraIds" multiple>
+              <el-option
+                  v-for="item in deviceList"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.id"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
 			</el-row>
 				<el-divider border-style="dashed"/>
 			<el-row>
@@ -108,7 +120,7 @@
 			<el-row>
 				<el-col :span="24">
 					<el-form-item label="图片上传" prop="workDetail.bcPath">
-						<el-upload accept="image/*" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='imgLimit' v-model:file-list="fileList" :http-request="upload" :action="uploadUrl" list-type="picture-card" :on-remove="handleRemove" :before-remove="beforeRemove" :before-upload="getUploadUrl">
+						<el-upload accept="image/*" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='imgLimit' v-model:file-list="fileList" :http-request="upload" :action="uploadUrl" list-type="picture-card" :before-remove="beforeRemove" :before-upload="getUploadUrl">
 							<el-icon><Plus /></el-icon>
 							<template #tip>
 								<div class="el-upload__tip">上传jpg/png图片尺寸小于500KB,最多可上传3张</div>
@@ -138,7 +150,7 @@
 </template>
 
 <script lang="ts">
-	import { toRefs, reactive, defineComponent, ref, defineAsyncComponent } from 'vue';
+import {toRefs, reactive, defineComponent, ref, defineAsyncComponent} from 'vue';
 	import { storeToRefs } from 'pinia';
 	import { initBackEndControlRoutes } from '/@/router/backEnd';
 	import {useUserInfo} from "/@/stores/userInfo";
@@ -169,19 +181,20 @@
 		components: {
       materialDialog: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workTicket/zysq/components/materialDialog.vue')),
     },
-		props:['workerList','departList'],
-		setup() {
+		props:['workerList','departList','deviceList'],
+		setup(props: any, context: any) {
 			const userInfo = useUserInfo()
 			const { userInfos } = storeToRefs(userInfo);
 			const state  = reactive<stateType>({
 				form: {
 					operatorUids: [],
 					workType: 5,
-					workLevel: null,
+					workLevel: 0,
 					workContent: '',
 					workLocation: '',
 					hazardIdentification: '',
-          maId: null,
+          cameraIds: [],
+          maBaseId: null,
 					workDetail:{
 						operationDepId: null,
 						bcReason: '',
@@ -189,7 +202,7 @@
 						bcPath: [],
 						involvedDepIds: []
 					},
-					wmAddReqDTOList: [],
+          receiveUids: [],
 					workTimeLine: [],
 					expStartTime: '',
 					expEndTime: ''
@@ -230,7 +243,8 @@
 					emitPath: false,
 					value: 'depId',
 					label: 'depName',
-					multiple: true
+					multiple: true,
+          expandTrigger: 'hover'
 				},
 				casProps2: {
 					emitPath: false,
@@ -249,6 +263,7 @@
 				workContent: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
 				workLocation: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
 				hazardIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
 				workTimeLine: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
 				"workDetail.operationDepId": [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
 				"workDetail.bcReason": [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
@@ -264,22 +279,24 @@
 			// }
 
       const openMaList = ()=>{
-        material.value.equipmentDialog = true
-        material.value.getMaList(state.form.workType,state.form.workLevel)
-      }
-
-      const conFirmMaterials = (addList: Array<any>,chosenId: number) =>{
-        state.form.maId = null
-        state.form.wmAddReqDTOList = []
-        if(addList.length > 0){
-          for(let i in addList){
-            if(addList[i].depId != null && addList[i].useCount != null){
-              state.form.wmAddReqDTOList.push(addList[i])
-            }
+        if(state.form.operatorUids == []){
+          ElMessage({
+            type: 'warning',
+            message: '请先选择作业人再获取相应物资配置'
+          });
+        }else{
+          if(material.value.receiveUids.length==0){
+            material.value.receiveUids = state.form.operatorUids
           }
+          material.value.getMaList(state.form.workType,state.form.workLevel)
+          material.value.workerList = props.workerList
         }
-        // state.form.wmAddReqDTOList = addList
-        state.form.maId = chosenId
+      }
+      const conFirmMaterials = (receiveUids: Array<number>,chosenId: number) =>{
+        state.form.maBaseId = null
+        state.form.receiveUids = []
+        state.form.receiveUids = receiveUids
+        state.form.maBaseId = chosenId
       }
 
 			const submitForm = async (formEl: FormInstance | undefined) => {
@@ -313,8 +330,8 @@
 								message: res.data.msg
 							});
 						}
-            state.form.maId = null
-            state.form.wmAddReqDTOList = []
+            material.value.maBaseId = null
+            material.value.receiveUids = []
 					} else {
 						console.log('error submit!', fields)
 					}

--
Gitblit v1.9.2