From d91fd1557ebed3e9bcb8c051c71b9d41c0e36eef Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期二, 02 四月 2024 16:50:07 +0800
Subject: [PATCH] Default Changelist

---
 src/views/newSpecialWorkSystem/workTicket/zysq/index.vue |  209 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 158 insertions(+), 51 deletions(-)

diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
index 2b44843..fba0b5c 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
@@ -1,32 +1,50 @@
 <template>
 	<div class="home-container">
-		<el-tabs type="border-card" @tab-change="switchTab" v-model="activeName" @tab-click="handleClick">
-			<el-tab-pane label="动火作业" name="fire">
-				<fire-form ref="fire" :workerList = allWorkers :deviceList = allDevices :departList=departmentList :departList2=departmentList2></fire-form>
+		<el-tabs type="border-card" v-model="activeName" @tab-click="handleClick" v-loading="loading">
+			<el-tab-pane :lazy="true" label="动火作业" name="fire">
+				<fire-form ref="fire" :lists="lists"></fire-form>
 			</el-tab-pane>
-			<el-tab-pane label="受限空间作业" name="space">
-				<space-form ref="space" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></space-form>
+			<el-tab-pane :lazy="true" label="受限空间作业" name="space">
+				<space-form ref="space" :lists="lists"></space-form>
 			</el-tab-pane>
-			<el-tab-pane label="吊装作业" name="hoist">
-				<hoist-form ref="hoist" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></hoist-form>
+			<el-tab-pane :lazy="true" label="吊装作业" name="hoist">
+				<hoist-form ref="hoist" :lists="lists"></hoist-form>
 			</el-tab-pane>
-			<el-tab-pane label="动土作业" name="ground">
-				<ground-form ref="ground" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></ground-form>
+			<el-tab-pane :lazy="true" label="动土作业" name="ground">
+				<ground-form ref="ground" :lists="lists"></ground-form>
 			</el-tab-pane>
-			<el-tab-pane label="断路作业" name="broken">
-				<broken-form ref="broken" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></broken-form>
+			<el-tab-pane :lazy="true" label="断路作业" name="broken">
+				<broken-form ref="broken" :lists="lists"></broken-form>
 			</el-tab-pane>
-			<el-tab-pane label="高处作业" name="height">
-				<height-form ref="height" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></height-form>
+			<el-tab-pane :lazy="true" label="高处作业" name="height">
+				<height-form ref="height" :lists="lists"></height-form>
 			</el-tab-pane>
-			<el-tab-pane label="临时用电作业" name="power">
-				<power-form ref="power" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></power-form>
+			<el-tab-pane :lazy="true" label="临时用电作业" name="power">
+				<power-form ref="power" :lists="lists"></power-form>
 			</el-tab-pane>
-			<el-tab-pane label="盲板抽堵作业" name="plate">
-				<plate-form ref="plate" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices></plate-form>
+			<el-tab-pane :lazy="true" label="盲板抽堵作业" name="plate">
+				<plate-form ref="plate" :lists="lists"></plate-form>
 			</el-tab-pane>
 		</el-tabs>
 <!--    <material-dialog ref="material"></material-dialog>-->
+<!--    <el-radio-group v-model="activeName" size="large" @change="(value)=>handleClick(value)">-->
+<!--      <el-radio-button :label=0>动火作业</el-radio-button>-->
+<!--      <el-radio-button :label=1>受限空间作业</el-radio-button>-->
+<!--      <el-radio-button :label=2>吊装作业</el-radio-button>-->
+<!--      <el-radio-button :label=3>动土作业</el-radio-button>-->
+<!--      <el-radio-button :label=4>断路作业</el-radio-button>-->
+<!--      <el-radio-button :label=5>高处作业</el-radio-button>-->
+<!--      <el-radio-button :label=6>临时用电作业</el-radio-button>-->
+<!--      <el-radio-button :label=7>盲板抽堵作业</el-radio-button>-->
+<!--    </el-radio-group>:-->
+<!--    <fire-form v-if="activeName == 0" ref="fire" :workerList = allWorkers :deviceList = allDevices :departList=departmentList :departList2=departmentList2 :otherWorks="otherWorks" :spList="spList"></fire-form>-->
+<!--    <space-form v-if="activeName == 1" ref="space" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></space-form>-->
+<!--    <hoist-form v-if="activeName == 2" ref="hoist" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></hoist-form>-->
+<!--    <ground-form v-if="activeName == 3" ref="ground" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></ground-form>-->
+<!--    <broken-form v-if="activeName == 4" ref="broken" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></broken-form>-->
+<!--    <height-form v-if="activeName == 5" ref="height" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></height-form>-->
+<!--    <power-form v-if="activeName == 6" ref="power" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></power-form>-->
+<!--    <plate-form v-if="activeName == 7" ref="plate" :workerList = allWorkers :departList = departmentList :departList2=departmentList2 :deviceList = allDevices :otherWorks="otherWorks" :spList="spList"></plate-form>-->
 	</div>
 </template>
 
@@ -47,7 +65,10 @@
 		allWorkers: Array<any>
 		departmentList: Array<any>
     departmentList2: Array<any>
+    otherWorks: Array<any>
     allDevices: Array<any>
+    loading: boolean
+    lists: {}
 	}
 	export default defineComponent({
 		name: 'apply',
@@ -65,11 +86,22 @@
 			const userInfo = useUserInfo()
 			const { userInfos } = storeToRefs(userInfo);
 			const state  = reactive<stateType>({
+        loading: false,
+        lists: {
+          workerList: [],
+          departList: [],
+          departList2: [],
+          deviceList: [],
+          otherWorks: [],
+          spList: [],
+          riskList: []
+        },
         activeName: 'fire',
 				allWorkers: [],
 				departmentList: [],
         departmentList2:[],
-        allDevices: []
+        otherWorks: [],
+        allDevices: [],
 			});
       const fire = ref()
       const space = ref()
@@ -81,20 +113,47 @@
       const plate = ref()
 
       const handleClick = (tab: TabsPaneContext, event: Event) => {
-        if(tab.index == 0){fire.value.getBasicData()}
-        if(tab.index == 1){space.value.getBasicData()}
-        if(tab.index == 2){hoist.value.getBasicData()}
-        if(tab.index == 3){ground.value.getBasicData()}
-        if(tab.index == 4){broken.value.getBasicData()}
-        if(tab.index == 5){height.value.getBasicData()}
-        if(tab.index == 6){power.value.getBasicData()}
-        if(tab.index == 7){plate.value.getBasicData()}
+        state.loading = true
+        setTimeout(()=>{
+          state.loading = false
+        },1000)
+        // if(tab.index == 0){fire.value.getBasicData()}
+        // if(tab.index == 1){space.value.getBasicData()}
+        // if(tab.index == 2){hoist.value.getBasicData()}
+        // if(tab.index == 3){ground.value.getBasicData()}
+        // if(tab.index == 4){broken.value.getBasicData()}
+        // if(tab.index == 5){height.value.getBasicData()}
+        // if(tab.index == 6){power.value.getBasicData()}
+        // if(tab.index == 7){plate.value.getBasicData()}
       }
+
+      // const handleClick = (value: number) => {
+      //   if(value == 0){fire.value.getBasicData()}
+      //   if(value == 1){space.value.getBasicData()}
+      //   if(value == 2){hoist.value.getBasicData()}
+      //   if(value == 3){ground.value.getBasicData()}
+      //   if(value == 4){broken.value.getBasicData()}
+      //   if(value == 5){height.value.getBasicData()}
+      //   if(value == 6){power.value.getBasicData()}
+      //   if(value == 7){plate.value.getBasicData()}
+      // }
+
+      // 页面载入时执行方法
+      onMounted(() => {
+        getAll()
+        getAllDepartment()
+        getAllDevice()
+        getOtherWork()
+        spWorker()
+        getAllRisks()
+      });
+
 			// 获取用户列表
 			const getAll = async ()=>{
 				const res = await workApplyApi().getAllUsers()
 				if (res.data.code === '200') {
 					state.allWorkers = JSON.parse(JSON.stringify(res.data.data))
+          state.lists.workerList = JSON.parse(JSON.stringify(res.data.data))
 				} else {
 					ElMessage({
 						type: 'warning',
@@ -102,13 +161,51 @@
 					});
 				}
 			};
+
+      const spWorker = async ()=>{
+        for(let id of ['17','18','19']){
+          const res = await workApplyApi().getSpList({roleId: id})
+          if(id == '17'){
+            if (res.data.code === '200') {
+              state.lists.spList.opList = JSON.parse(JSON.stringify(res.data.data))
+            } else {
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
+            }
+          }
+          if(id == '18'){
+            if (res.data.code === '200') {
+              state.lists.spList.jhList = JSON.parse(JSON.stringify(res.data.data))
+            } else {
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
+            }
+          }
+          if(id == '19'){
+            if (res.data.code === '200') {
+              state.lists.spList.sfList = JSON.parse(JSON.stringify(res.data.data))
+            } else {
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
+            }
+          }
+        }
+      }
 
 			// 获取部门列表
 			const getAllDepartment = async () => {
 				let res = await teamManageApi().getAllDepartment();
 				if (res.data.code === '200') {
-					state.departmentList = JSON.parse(JSON.stringify(res.data.data))
-          state.departmentList2 = state.departmentList[0].children
+					// state.departmentList = JSON.parse(JSON.stringify(res.data.data))
+          // state.departmentList2 = state.departmentList[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50)
+          state.lists.departList = JSON.parse(JSON.stringify(res.data.data))
+          state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50)
 				} else {
 					ElMessage({
 						type: 'warning',
@@ -117,11 +214,12 @@
 				}
 			};
 
-      // 获取设备列表
-      const getAllDevice = async ()=>{
-        const res = await workApplyApi().getAllDevices()
+      // 获取相关作业列表
+      const getOtherWork = async () => {
+        let res = await workApplyApi().getOtherWork({workPermitNo: '',workType: null});
         if (res.data.code === '200') {
-          state.allDevices = JSON.parse(JSON.stringify(res.data.data))
+          state.otherWorks = JSON.parse(JSON.stringify(res.data.data))
+          state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data))
         } else {
           ElMessage({
             type: 'warning',
@@ -130,24 +228,33 @@
         }
       };
 
-      const switchTab = (name)=>{
-        // if(name == 'fire'){fire.value.getBasicData()}
-        // if(name == 'space'){space.value.getBasicData()}
-        // if(name == 'hoist'){hoist.value.getBasicData()}
-        // if(name == 'ground'){ground.value.getBasicData()}
-        // if(name == 'broken'){broken.value.getBasicData()}
-        // if(name == 'height'){height.value.getBasicData()}
-        // if(name == 'power'){power.value.getBasicData()}
-        // if(name == 'plate'){plate.value.getBasicData()}
-      }
+      // 获取设备列表
+      const getAllDevice = async ()=>{
+        const res = await workApplyApi().getAllDevices()
+        if (res.data.code === '200') {
+          state.allDevices = JSON.parse(JSON.stringify(res.data.data))
+          state.lists.deviceList = JSON.parse(JSON.stringify(res.data.data))
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg
+          });
+        }
+      };
 
-
-			// 页面载入时执行方法
-			onMounted(() => {
-				getAll();
-				getAllDepartment();
-        getAllDevice();
-			});
+      // 获取设备列表
+      const getAllRisks = async ()=>{
+        const res = await workApplyApi().getAllRiskIdentity()
+        if (res.data.code === '200') {
+          // state.allDevices = JSON.parse(JSON.stringify(res.data.data))
+          state.lists.riskList = JSON.parse(JSON.stringify(res.data.data))
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg
+          });
+        }
+      };
 
 			return {
 				...toRefs(state),
@@ -159,8 +266,8 @@
         hoist,
         plate,
         power,
-        switchTab,
-        handleClick
+        handleClick,
+        getOtherWork
 			};
 		},
 	});

--
Gitblit v1.9.2