From c64c8f43ec1a3d88feb1f915fd488040b6358e7d Mon Sep 17 00:00:00 2001
From: shj <1790240199@qq.com>
Date: 星期二, 09 八月 2022 19:04:12 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqtOut

---
 src/components/equipmentDailog/DailogS.vue |  555 ++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 349 insertions(+), 206 deletions(-)

diff --git a/src/components/equipmentDailog/DailogS.vue b/src/components/equipmentDailog/DailogS.vue
index 6da1e53..b3008e1 100644
--- a/src/components/equipmentDailog/DailogS.vue
+++ b/src/components/equipmentDailog/DailogS.vue
@@ -1,11 +1,11 @@
 <template>
-	<el-dialog :fullscreen="full" v-model="isShowDialog" :title="titles" width="60%">
-			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-		<el-form :model="form" label-width="130px" :disabled="disabled">
+	<el-dialog :fullscreen="full" v-model="dialogVisible" draggable :title="titles" width="60%" @close="resetForm(ruleFormRef)">
+		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+		<el-form :model="form" ref="ruleFormRef" label-width="130px" :rules="rules" :disabled="disabled">
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="类型/类别外键" size="default">
-						<el-input v-model="form.equipmentTypeId" placeholder="请选择">
+					<el-form-item label="类型/类别外键" size="default" prop="equipmentTypeId">
+						<el-input v-model="form.equipmentTypeName" placeholder="请选择">
 							<template #append>
 								<el-button :icon="Search" @click="opencategory"></el-button>
 							</template>
@@ -14,17 +14,15 @@
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="装置/部位名称" size="default">
-						<el-input v-model="form.name" placeholder="请选择" />
+						<el-input v-model="form.name" placeholder="请填写装置/部位名称" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="所属部门" size="default">
-						<el-select v-model="form.departmentId" placeholder="请选择" style="width: 100%">
-							<el-option label="Zone one" value="shanghai" />
-							<el-option label="Zone two" value="beijing" />
-						</el-select>
+						<el-tree-select v-model="form.departmentId" :data="data" check-strictly="true" placeholder="请选择" :props="propse" style="width: 100%">
+						</el-tree-select>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
@@ -41,10 +39,10 @@
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="联系人" size="default">
-						<el-input v-model="form.connectPersonId" placeholder="请选择">
+					<el-form-item label="联系人" size="default" prop="connectPersonName">
+						<el-input v-model="form.connectPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser"></el-button>
+								<el-button :icon="Search" @click="openUser(1)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
@@ -52,19 +50,19 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="录入人" size="default">
-						<el-input v-model="form.inputPersonId" placeholder="请选择">
+					<el-form-item label="录入人" size="default" prop="inputPersonName">
+						<el-input v-model="form.inputPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser"></el-button>
+								<el-button :icon="Search" @click="openUser(2)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="责任人" size="default">
-						<el-input v-model="form.responsibilityPersonId" placeholder="请选择">
+					<el-form-item label="责任人" size="default" prop="responsibilityPersonName">
+						<el-input v-model="form.responsibilityPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser"></el-button>
+								<el-button :icon="Search" @click="openUser(3)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
@@ -74,21 +72,21 @@
 				<el-col :span="11">
 					<el-form-item label="装置部位分类" size="default">
 						<el-select v-model="form.partType" placeholder="请选择" style="width: 100%">
-							<el-option label="Zone one" value="shanghai" />
-							<el-option label="Zone two" value="beijing" />
+							<el-option label="关键装置" value="1" />
+							<el-option label="重点部位" value="2" />
 						</el-select>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="检查周期" size="default">
-						<el-input v-model="form.checkCycle" placeholder="请选择检查周期" />
+						<el-input v-model="form.checkCycle" placeholder="请填写检查周期" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="相关应急预案" size="default">
-						<el-input v-model="form.emergencePlanId" placeholder="请选择">
+						<el-input v-model="form.emergencePlanName" placeholder="请选择">
 							<template #append>
 								<el-button :icon="Search" @click="openPlan"></el-button>
 							</template>
@@ -97,21 +95,20 @@
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="主要危险有害因素" size="default">
-						<el-input v-model="form.dangerousElement" placeholder="请选择" />
+						<el-input v-model="form.dangerousElement" placeholder="请填写主要危险有害因素" />
 					</el-form-item>
 				</el-col>
 			</el-row>
-
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="易导致风险" size="default">
-						<el-input v-model="form.toDangerous" placeholder="请选择易导致风险" />
+						<el-input v-model="form.toDangerous" placeholder="请填写易导致风险" />
 					</el-form-item>
 				</el-col>
 
 				<el-col :span="11" :offset="2">
 					<el-form-item label="应急处置措施" size="default">
-						<el-input v-model="form.treatment" placeholder="请选择应急处置措施" />
+						<el-input v-model="form.treatment" placeholder="请填写应急处置措施" />
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -120,7 +117,7 @@
 				<el-col :span="24">
 					<el-form-item label="现场图片">
 						<el-upload
-              v-model="form.scenePic"
+							v-model="form.scenePic"
 							class="avatar-uploader"
 							action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
 							:show-file-list="false"
@@ -135,61 +132,67 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="备注信息" size="default"> <el-input v-model="form.name" placeholder="请选择应急处置措施" /> </el-form-item>
+					<el-form-item label="备注信息" size="default"> <el-input v-model="form.name" placeholder="请填写备注信息" /> </el-form-item>
 				</el-col>
 			</el-row>
 		</el-form>
 		<el-tabs v-model="activeName" class="demo-tabs">
 			<el-tab-pane label="设备保养" name="first">
-				<el-button type="primary" size="default" @click="openMaintenance">新增</el-button>
-				<el-table :data="tableData" style="width: 100%">
+				<el-button type="primary" size="default" @click="openMaintenance('新增', '')">新增</el-button>
+				<el-table :data="form.takecareDetailList" style="width: 100%">
 					<el-table-column align="center" prop="takecareMemo" label="保养情况" />
 					<el-table-column align="center" prop="leadingPersonId" label="保养负责人" />
-					<el-table-column align="center" prop="takecareDate" label="保养日期" />
+					<el-table-column align="center" prop="takecareDate" :formatter="timeDate" label="保养日期" />
 					<el-table-column align="center" prop="leadingPersonDepartmentId" label="保养负责人单位" />
 					<el-table-column align="center" label="操作">
-						<template #default>
-							<el-button link type="primary" size="small">查看</el-button>
+						<template #default="scope">
+							<el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small">查看</el-button>
+							<el-button link type="primary" @click="openMaintenance('修改', scope.row)" size="small">修改</el-button>
+							<el-button link type="primary" @click="deleteA(scope.row)" size="small">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="设备检测" name="second">
-				<el-button type="primary" size="default" @click="openDetect">新增</el-button>
-				<el-table :data="tableData" style="width: 100%">
+				<el-button type="primary" size="default" @click="openDetect('新增', '')">新增</el-button>
+				<el-table :data="form.testDetailList" style="width: 100%">
 					<el-table-column align="center" prop="testPersonId" label="检测人" />
-					<el-table-column align="center" prop="testDate" label="检测日期" />
+					<el-table-column align="center" prop="testDate" :formatter="timeDate" label="检测日期" />
 					<el-table-column align="center" prop="testPersonDepartmentId" label="检测人单位" />
 					<el-table-column align="center" prop="testMemo" label="检测内容" />
 					<el-table-column align="center" prop="testResult" label="检测结果" />
 					<el-table-column align="center" prop="testStatus" label="检测状态" />
 					<el-table-column align="center" label="操作">
-						<template #default>
-							<el-button link type="primary" size="small">查看</el-button>
+						<template #default="scope">
+							<el-button link type="primary" @click="openDetect('查看', scope.row)" size="small">查看</el-button>
+							<el-button link type="primary" @click="openDetect('修改', scope.row)" size="small">修改</el-button>
+							<el-button link type="primary" @click="deleteB(scope.row)" size="small">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="设备维修" name="third">
-				<el-button type="primary" size="default" @click="openRepair">新增</el-button>
-				<el-table :data="tableData" style="width: 100%">
+				<el-button type="primary" size="default" @click="openRepair('新增', '')">新增</el-button>
+				<el-table :data="form.repaireDetailList" style="width: 100%">
 					<el-table-column align="center" prop="exceptionInfo" label="设施异常项" />
 					<el-table-column align="center" prop="repairStatus" label="维修状态" />
 					<el-table-column align="center" prop="repairMemo" label="维修情况" />
 					<el-table-column align="center" prop="repairPersonId" label="维修负责人" />
 					<el-table-column align="center" prop="repairPersonDepartmentId" label="维修负责人单位" />
-					<el-table-column align="center" prop="repairStartDate" label="维修开始日期" />
-					<el-table-column align="center" prop="repairEndDate" label="维修结束日期" />
+					<el-table-column align="center" prop="repairStartDate" :formatter="timeDate" label="维修开始日期" />
+					<el-table-column align="center" prop="repairEndDate" :formatter="timeDate" label="维修结束日期" />
 					<el-table-column align="center" label="操作">
-						<template #default>
-							<el-button link type="primary" size="small">查看</el-button>
+						<template #default="scope">
+							<el-button link type="primary" @click="openRepair('查看', scope.row)" size="small">查看</el-button>
+							<el-button link type="primary" @click="openRepair('修改', scope.row)" size="small">修改</el-button>
+							<el-button link type="primary" @click="deleteC(scope.row)" size="small">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
-			<el-tab-pane label="检查标准设置" name="fourth">checkContent
-				<el-button type="primary" size="default" @click="openStandard">新增</el-button>
-				<el-table :data="tableData" style="width: 100%">
+			<el-tab-pane label="检查标准设置" name="fourth">
+				<el-button type="primary" size="default" @click="openStandard('新增', '')">新增</el-button>
+				<el-table :data="form.checkStandardeDetailList" style="width: 100%">
 					<el-table-column align="center" type="indexNum" label="序号" width="75" />
 					<el-table-column align="center" prop="checkContent" label="检查内容" />
 					<el-table-column align="center" prop="checkTarget" label="检查指标" />
@@ -197,20 +200,22 @@
 					<el-table-column align="center" prop="checkPart" label="巡检部位" />
 					<el-table-column align="center" prop="rate" label="频次" />
 					<el-table-column align="center" label="操作">
-						<template #default>
-							<el-button link type="primary" size="small">查看</el-button>
+						<template #default="scope">
+							<el-button link type="primary" @click="openStandard('查看', scope.row)" size="small">查看</el-button>
+							<el-button link type="primary" @click="openStandard('修改', scope.row)" size="small">修改</el-button>
+							<el-button link type="primary" @click="deleteD(scope.row)" size="small">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="巡检记录" name="five">
-				<el-table :data="tableData" style="width: 100%">
+				<el-table :data="name" style="width: 100%">
 					<el-table-column align="center" type="selection" width="75" />
 					<el-table-column align="center" sortable prop="name" label="任务编号" />
 					<el-table-column align="center" sortable prop="address" label="任务名称" />
 					<el-table-column align="center" sortable prop="address" label="点位类型" />
 					<el-table-column align="center" sortable prop="address" label="检查频次" />
-					<el-table-column align="center" sortable prop="address" label="巡检时间" />
+					<el-table-column align="center" sortable prop="address" :formatter="timeDate" label="巡检时间" />
 					<el-table-column align="center" sortable prop="address" label="巡检人" />
 				</el-table>
 			</el-tab-pane>
@@ -236,176 +241,215 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<el-button @click="resetForm(ruleFormRef)">关闭</el-button>
-				<el-button type="primary" v-if="disabled == true ? false : true" @click="submitForm(titles, ruleFormRef)">确定</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
-	<categoryDailog ref="categoryShow"></categoryDailog>
-	<planDailog ref="planShow"></planDailog>
-	<DailogSearchUser ref="UserShow"></DailogSearchUser>
-	<maintenanceDailog ref="maintenanceShow"></maintenanceDailog>
-	<detectDailog ref="detectShow"></detectDailog>
-	<repairDailog ref="repairShow"></repairDailog>
-	<standardDailog ref="standardShow"></standardDailog>
+	<categoryDailog ref="categoryShow" @typeId="Tid"></categoryDailog>
+	<RegionsDialog ref="planShow" @SearchUser="onUser"></RegionsDialog>
+	<DailogSearchUser ref="UserShow" @SearchUser="userId"></DailogSearchUser>
+	<maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog>
+	<detectDailog ref="detectShow" @onDelect="delect"></detectDailog>
+	<repairDailog ref="repairShow" @onRepair="Repair"></repairDailog>
+	<standardDailog ref="standardShow" @onStand="Stand"></standardDailog>
 </template>
 <script lang="ts">
-import { defineComponent, ref, reactive } from 'vue';
-import { Search,Plus,FullScreen, FormInstance, } from '@element-plus/icons-vue';
+import { defineComponent, ref ,reactive} from 'vue';
+import { Search, Plus, FullScreen } from '@element-plus/icons-vue';
+import { timeDate } from '/@/assets/index.ts';
 import categoryDailog from './categoryDailog.vue';
-import planDailog from './planDailog.vue';
+import RegionsDialog from '../../views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue';
 import maintenanceDailog from './maintenanceDailog.vue';
 import detectDailog from './detectDailog.vue';
 import repairDailog from './repairDailog.vue';
 import standardDailog from './standardDailog.vue';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
-import { ElMessage, ElMessageBox } from 'element-plus';
+import { ElMessage, ElMessageBox ,FormInstance ,FormRules,} from 'element-plus';
 import type { UploadProps, UploadUserFile } from 'element-plus';
-import {releaseDrillPlanApi} from "/@/api/emergencyDrillPlan";
-import {facilityManagementApi} from "/@/api/facilityManagement";
+import { facilityManagementApi } from '/@/api/facilityManagement';
+import { goalManagementApi } from '/@/api/goalManagement';
+import {deepClone} from '/@/utils/other'
 export default defineComponent({
-	components: { categoryDailog, planDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
-	setup() {
-		const isShowDialog = ref(false);
-		const form = reactive({
-      equipmentTypeId: '',
-      treatment: '',
-      inputPersonId: '',
-      departmentId: '',
-      delRepaireDetailList: [],
-      delTestDetailList: [],
-      takecareDetailList: [{
-        leadingPersonId:'',
-        takecareDate:'',
-        leadingPersonDepartmentId:'',
-        equipmentId: '',
-        takecareMemo: '',
-      }],
-      checkDetailList:[],
-      responsibilityPersonId: '',
-      delTakecareStardardeDetailList: [],
-      connectPersonId:'',
-      scenePic:'',
-      partType:'',
-      toDangerous:'',
-      dangerousElement:'',
-      takecareStardardeDetailList: [
-        {
-          filePath: '',
-        }
-      ],
-      testDetailList:[{
-        testMemo:'',
-        testPersonDepartmentId:'',
-        testPersonId:'',
-        testStatus:'',
-        testResult:'',
-        testDate:'',
-      }],
-      checkCycle: '',
-      repaireDetailList:[{
-        repairStatus:'',
-        repairPersonDepartmentId:'',
-        repairMemo:'',
-        infoTpe:'',
-        repairPersonId:'',
-        repairEndDate:'',
-        repairStartDate:'',
-        exceptionInfo:'',
-      }],
-      delCheckStandardeDetailList:[],
-      leadingPersonName: '',
-      name: '',
-      delTakecareDetailList:[],
-      position:'',
-      emergencePlanId: '',
-      checkStandardeDetailList: [{
-        checkContent:'',
-        checkTarget:'',
-        unit:'',
-        checkPart:'',
-        rate:'',
-        indexNum:'',
-      }],
-      delCheckStandardeDetails: '',
-      delTakecareStardardeDetails: '',
-      delTakecareDetails: '',
-      delRepaireDetails: '',
-      delTestDetails: '',
-		});
-		const Dailogtype = ref(false);
-		const openDailog = (type: boolean) => {
-      isShowDialog.value = true;
-			Dailogtype.value = type;
-		};
-    const ruleFormRef = ref<FormInstance>()
-		const activeName = ref('first');
-    const titles = ref();
-    const disabled = ref();
-    // 打开弹窗
-    const openDialog = (title: string, id: number, type: boolean) => {
-      isShowDialog.value = true;
-      titles.value = title;
-      disabled.value = type;
-      if (title == '查看仪器仪表' || title == '修改仪器仪表') {
-        facilityManagementApi()
-            .getkeypointEquipmentInfoDetail(id)
-            .then((res) => {
-              if (res.data.code == 200) {
-                form.value = res.data.data;
-              }
-            });
-      }
-    };
+	components: { categoryDailog, RegionsDialog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
+	setup(props, { emit }) {
+		const dialogVisible = ref(false);
+		const form = ref({
+			equipmentTypeId: 1,
+      equipmentTypeName:"",
+			treatment: '',
 
-		const tableData = [
-			{
-				date: '2016-05-03',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-02',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-04',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-01',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-		];
+			inputPersonId: '',
+      inputPersonName: '',
+			departmentId: '',
+
+			delRepaireDetailList: [],
+
+			delTestDetailList: [],
+
+			takecareDetailList: [],
+			checkDetailList: [],
+
+			responsibilityPersonId: '',
+      responsibilityPersonName: '',
+			delTakecareStardardeDetailList: [],
+
+			connectPersonId: '',
+      connectPersonName: '',
+
+			scenePic: '',
+
+			partType: '',
+
+			toDangerous: '',
+
+			dangerousElement: '',
+
+			takecareStardardeDetailList: [
+				{
+					filePath: '',
+				},
+			],
+			testDetailList: [],
+			checkCycle: '',
+			repaireDetailList: [],
+			delCheckStandardeDetailList: [],
+
+			leadingPersonName: '',
+
+			name: '',
+
+			delTakecareDetailList: [],
+
+			position: '',
+
+      emergencePlanId: '',
+      emergencePlanName:'',
+
+			checkStandardeDetailList: [],
+			infoTpe: '',
+			delCheckStandardeDetails: '',
+
+			delTakecareStardardeDetails: '',
+
+			delTakecareDetails: '',
+
+			delRepaireDetails: '',
+
+			delTestDetails: '',
+		});
+    const ruleFormRef = ref<FormInstance>();
+		const titles = ref();
+		const disabled = ref(false);
+		const Dailogtype = ref(false);
+		const openDailog = (title: string, type: boolean, id: number, num: any) => {
+			dialogVisible.value = true;
+			department();
+			Dailogtype.value = type;
+			if (num == 0) {
+				titles.value = `${title}仪表信息`;
+				form.value.infoTpe = num;
+			} else if (num == 1) {
+				titles.value = `${title}设备设施`;
+				form.value.infoTpe = num;
+			} else if (num == 2) {
+				titles.value = `${title}设备设施`;
+				form.value.infoTpe = num;
+			}
+
+			disabled.value = title == '查看' ? true : false;
+			if (title == '查看' || title == '修改')
+				facilityManagementApi()
+					.getkeypointEquipmentInfoDetail(id)
+					.then((res) => {
+						if (res.data.code == 200) {
+							form.value = res.data.data;
+						} else {
+							ElMessage.error(res.data.msg);
+						}
+					});
+		};
+		// 提交
+		const submitForm = () => {
+			form.value.delTakecareDetails = deleteAId.value.toString();
+			form.value.delTestDetails = deleteBId.value.toString();
+			form.value.delRepaireDetails = deleteCId.value.toString();
+			form.value.delCheckStandardeDetails = deleteDId.value.toString();
+			dialogVisible.value = false;
+			facilityManagementApi()
+				.getkeypointEquipmentInfoAddOrUpdate(form.value)
+				.then((res) => {
+					if (res.data.code == 200) {
+						ElMessage({
+							message: res.data.msg,
+							type: 'success',
+						});
+						emit('navAddorUpdata');
+					} else {
+						ElMessage.error(res.data.msg);
+					}
+				});
+			// form.value = null;
+		};
+		//   取消
+		const resetForm = () => {
+			dialogVisible.value = false;
+		};
+		const activeName = ref('first');
+		const index = ref<any>();
 		const categoryShow = ref();
 		const opencategory = () => {
 			categoryShow.value.openDailog();
 		};
+
+		// 应急预案弹窗
 		const planShow = ref();
 		const openPlan = () => {
 			planShow.value.openDailog();
 		};
-		const UserShow = ref();
-		const openUser = () => {
-			UserShow.value.openDailog();
+		const onUser = (e: any) => {
+			form.value.emergencePlanId = e.id;
+      form.value.emergencePlanName=e.name
 		};
+
+		const UserShow = ref();
+		const openUser = (type: any) => {
+      UserShow.value.openDailog(type);
+		};
+		const userId = (val: any, type: number) => {
+			if (type == 1) {
+				form.value.connectPersonId = val.uid;
+				form.value.connectPersonName = val.realName;
+			} else if (type == 2) {
+				form.value.inputPersonId = val.uid;
+				form.value.inputPersonName = val.realName;
+			} else if (type == 3) {
+				form.value.responsibilityPersonId = val.id;
+				form.value.responsibilityPersonName = val.realName;
+			}
+		};
+    const Tid=(data:any)=>{
+      form.value.equipmentTypeId=data.id
+      form.value.equipmentTypeName=data.typeName
+    }
 		const maintenanceShow = ref();
-		const openMaintenance = () => {
-			maintenanceShow.value.openDailog();
+		const openMaintenance = (title: string, data: any) => {
+			index.value = form.value.takecareDetailList.indexOf(data);
+			maintenanceShow.value.openDailog(title, data);
 		};
 		const detectShow = ref();
-		const openDetect = () => {
-			detectShow.value.openDailog();
+		const openDetect = (title: string, data: any) => {
+			index.value = form.value.testDetailList.indexOf(data);
+			detectShow.value.openDailog(title, data);
 		};
 		const repairShow = ref();
-		const openRepair = () => {
-			repairShow.value.openDailog();
+		const openRepair = (title: string, data: any) => {
+			index.value = form.value.repaireDetailList.indexOf(data);
+			repairShow.value.openDailog(title, data);
 		};
 		const standardShow = ref();
-		const openStandard = () => {
-			standardShow.value.openDailog();
+		const openStandard = (title: string, data: any) => {
+			index.value = form.value.checkStandardeDetailList.indexOf(data);
+			standardShow.value.openDailog(title, data);
 		};
 		// 上传
 		const fileList = ref<UploadUserFile[]>([
@@ -437,6 +481,64 @@
 				() => false
 			);
 		};
+		const deleteAId = ref([]);
+		const deleteBId = ref([]);
+		const deleteCId = ref([]);
+		const deleteDId = ref([]);
+		// 删除
+		const deleteA = (tag: any) => {
+			form.value.takecareDetailList.splice(form.value.takecareDetailList.indexOf(tag), 1);
+			deleteAId.value.push(tag.id);
+		};
+		const deleteB = (tag: any) => {
+			form.value.testDetailList.splice(form.value.testDetailList.indexOf(tag), 1);
+			deleteBId.value.push(tag.id);
+		};
+		const deleteC = (tag: any) => {
+			form.value.repaireDetailList.splice(form.value.repaireDetailList.indexOf(tag), 1);
+			deleteCId.value.push(tag.id);
+		};
+		const deleteD = (tag: any) => {
+			form.value.checkStandardeDetailList.splice(form.value.checkStandardeDetailList.indexOf(tag), 1);
+			deleteDId.value.push(tag.id);
+		};
+		// 回传
+		const main = (data: any) => {
+      let val=deepClone(data)
+			if (index.value == -1) {
+				form.value.takecareDetailList.push(val);
+			} else {
+				form.value.takecareDetailList[index.value] = val;
+			}
+		};
+		const delect = (data: any) => {
+      let val=deepClone(data)
+			if (index.value == -1) {
+				form.value.testDetailList.push(val);
+			} else {
+				form.value.testDetailList[index.value] = val;
+			}
+		};
+		const Repair = (data: any) => {
+      let val=deepClone(data)
+			if (index.value == -1) {
+				form.value.repaireDetailList.push(val);
+			} else {
+				form.value.repaireDetailList[index.value] = val;
+			}
+		};
+		const Stand = (data: any) => {
+      let val=deepClone(data)
+			if (index.value == -1) {
+				form.value.checkStandardeDetailList.push(val);
+			} else {
+				form.value.checkStandardeDetailList[index.value] = val;
+			}
+		};
+    const rules = reactive<FormRules>({
+      equipmentTypeId: [],
+      equipmentTypeName:[],
+    })
 		//图片提交
 		const imageUrl = ref('');
 
@@ -454,29 +556,58 @@
 			}
 			return true;
 		};
-			//全屏
+
+		//部门树
+		const department = () => {
+			goalManagementApi()
+				.getTreedepartment()
+				.then((res) => {
+					if (res.data.code == 200) {
+						data.value = res.data.data;
+					} else {
+						ElMessage.error(res.data.msg);
+					}
+				});
+		};
+		const propse = {
+			label: 'depName',
+			children: 'children',
+			value: 'depId',
+		};
+		const data = ref();
+		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
 			if (full.value == false) {
 				full.value = true;
-			}else{
-        full.value = false;
-      }
+			} else {
+				full.value = false;
+			}
 		};
 		return {
-      isShowDialog,
+			propse,
+			data,
+			submitForm,
+			dialogVisible,
 			Dailogtype,
 			form,
 			openDailog,
 			Search,
+			main,
+			delect,
+			Repair,
+			Stand,
+      ruleFormRef,
+			index,
 			activeName,
-			tableData,
 			categoryShow,
 			opencategory,
 			planShow,
+			onUser,
 			openPlan,
-			UserShow,
+      UserShow,
 			openUser,
+      rules,
 			maintenanceShow,
 			openMaintenance,
 			detectShow,
@@ -484,29 +615,41 @@
 			repairShow,
 			openRepair,
 			standardShow,
+			userId,
 			openStandard,
 			fileList,
 			handleRemove,
 			handlePreview,
 			handleExceed,
+			disabled,
+			titles,
 			beforeRemove,
 			imageUrl,
 			handleAvatarSuccess,
 			beforeAvatarUpload,
 			Plus,
-				full,
+			full,
 			toggleFullscreen,
 			FullScreen,
-      ruleFormRef,
-      openDialog,
+      Tid,
+			resetForm,
+			deleteAId,
+			deleteBId,
+			deleteCId,
+			deleteDId,
+			deleteA,
+			deleteB,
+			deleteC,
+			deleteD,
+			timeDate,
 		};
 	},
 });
 </script>
 <style scoped>
- .el-row{
-	 padding: 0 0 20px 0;
- }
+.el-row {
+	padding: 0 0 20px 0;
+}
 .avatar-uploader .avatar {
 	width: 178px;
 	height: 178px;
@@ -514,7 +657,7 @@
 }
 </style>
 <style>
-	.avatar-uploader .el-upload {
+.avatar-uploader .el-upload {
 	border: 1px dashed var(--el-border-color);
 	border-radius: 6px;
 	cursor: pointer;

--
Gitblit v1.9.2