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

---
 src/components/equipmentDailog/Dailog.vue |  405 ++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 230 insertions(+), 175 deletions(-)

diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue
index b80cb5f..e91c2b4 100644
--- a/src/components/equipmentDailog/Dailog.vue
+++ b/src/components/equipmentDailog/Dailog.vue
@@ -21,39 +21,30 @@
 					</template>
 				</el-input>
 			</el-form-item>
-			<el-form-item label="区域名称" size="default">
+			<!-- <el-form-item label="区域名称" size="default">
 				<el-input v-model="form.name" placeholder="请选择">
 					<template #append>
 						<el-button :icon="Search" @click="openRegion"></el-button>
 					</template>
 				</el-input>
-			</el-form-item>
+			</el-form-item> -->
 			<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" class="w100" :props="propse" placeholder="请选择" />
 			</el-form-item>
 			<el-form-item label="设置部位" size="default">
 				<el-input v-model="form.setPart" placeholder="请填写设置部位" />
 			</el-form-item>
 			<el-form-item label="生产日期" size="default">
-				<el-date-picker
-					v-model="form.produceTime"
-					:size="large"
-					format="YYYY-MM-DD HH:mm:ss"
-					type="datetime"
-					placeholder="选择日期时间"
-					style="width: 100%"
-				/>
+				<el-date-picker v-model="form.produceTime" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="使用期限(天)" size="default">
 				<el-input v-model="form.useEndDay" placeholder="请填写使用期限" />
 			</el-form-item>
 			<el-form-item label="生命周期" size="default">
 				<el-select v-model="form.lifeCycle" 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-option label="报废" value="3" />
 				</el-select>
 			</el-form-item>
 			<el-form-item label="投用日期" size="default">
@@ -61,14 +52,16 @@
 			</el-form-item>
 			<el-form-item label="维修状态" size="default">
 				<el-select v-model="form.repairStatus" 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-form-item label="停用状态" size="default">
 				<el-select v-model="form.stopStatus" 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-option label="维修" value="3" />
+					<el-option label="报废" value="4" />
 				</el-select>
 			</el-form-item>
 			<el-form-item label="上次检查日期" size="default">
@@ -104,15 +97,19 @@
 			<el-form-item label="负责人" size="default">
 				<el-input v-model="form.leadingPersonId" placeholder="请选择">
 					<template #append>
-						<el-button :icon="Search" @click="openUser"></el-button>
+						<el-button :icon="Search" @click="openUser(0)"></el-button>
 					</template>
 				</el-input>
 			</el-form-item>
 			<el-form-item label="负责人部门" size="default">
-				<el-select v-model="form.leadingPersonDepartmentId" 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.leadingPersonDepartmentId"
+					:data="data"
+					check-strictly="true"
+					class="w100"
+					:props="propse"
+					placeholder="请选择"
+				/>
 			</el-form-item>
 			<el-form-item label="供应商" size="default">
 				<el-input v-model="form.supplyName" placeholder="请填写供应商" />
@@ -122,8 +119,8 @@
 			</el-form-item>
 			<el-form-item label="是否检查" size="default">
 				<el-select v-model="form.isNeedCheck" 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-form-item label="检查周期" size="default">
@@ -134,8 +131,8 @@
 			</el-form-item>
 			<el-form-item label="是否检测" size="default">
 				<el-select v-model="form.isNeedTest" 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-form-item label="检测周期" size="default">
@@ -146,18 +143,15 @@
 			</el-form-item>
 			<el-form-item label="是否保养" size="default">
 				<el-select v-model="form.isNeedTakecare" 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-form-item label="检查内容" size="default">
 				<el-input v-model="form.checkContent" placeholder="请填写检查内容" />
 			</el-form-item>
 			<el-form-item label="负责部门" size="default">
-				<el-select v-model="form.leadingDepartmentId" 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.leadingDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
 			</el-form-item>
 			<el-form-item label="检查指标" size="default">
 				<el-input v-model="form.checkPoint" placeholder="请填写检查指标" />
@@ -180,7 +174,7 @@
 			<el-form-item label="停用提交人" size="default">
 				<el-input v-model="form.stopSubmitPersonId" 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>
@@ -232,21 +226,23 @@
 		</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-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="leadingPersonDepartmentId" label="保养负责人单位" />
-					<el-table-column align="center" prop="address" label="操作">
-						<template #default>
-							<el-button link type="primary" size="small">查看</el-button>
+					<el-table-column align="center" label="操作">
+						<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-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="检测日期" />
@@ -255,14 +251,16 @@
 					<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-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="维修状态" />
@@ -272,24 +270,28 @@
 					<el-table-column align="center" prop="repairStartDate" label="维修开始日期" />
 					<el-table-column align="center" prop="repairEndDate" 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">
-				<el-button type="primary" size="default" @click="openStandard">新增</el-button>
+				<el-button type="primary" size="default" @click="openStandard('新增', '')">新增</el-button>
 				<el-table :data="form.checkStandardeDetailList" style="width: 100%">
-					<el-table-column align="center" type="index" label="序号" width="75" />
+					<el-table-column align="center" prop="indexNum" label="序号" width="75" />
 					<el-table-column align="center" prop="checkContent" label="检查内容" />
 					<el-table-column align="center" prop="checkTarget" label="检查指标" />
 					<el-table-column align="center" prop="unit" label="单位" />
 					<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>
@@ -333,11 +335,11 @@
 	</el-dialog>
 	<categoryDailog ref="categoryShow"></categoryDailog>
 	<regionDailog ref="regionShow"></regionDailog>
-	<DailogSearchUser ref="UserShow"></DailogSearchUser>
-	<maintenanceDailog ref="maintenanceShow"></maintenanceDailog>
-	<detectDailog ref="detectShow"></detectDailog>
-	<repairDailog ref="repairShow"></repairDailog>
-	<standardDailog ref="standardShow"></standardDailog>
+	<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';
@@ -352,54 +354,46 @@
 import { ElMessage, ElMessageBox } from 'element-plus';
 import type { UploadProps, UploadUserFile } from 'element-plus';
 import { facilityManagementApi } from '/@/api/facilityManagement';
+import { goalManagementApi } from '/@/api/goalManagement';
+import { number } from 'echarts';
 export default defineComponent({
 	components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
 	setup(props, { emit }) {
 		const dialogVisible = ref(false);
 		const form = ref({
-			supplyName: 'name1',
+			supplyName: '',
 
-			nextTestDate: 1658279204173,
+			nextTestDate: '',
 
-			qUsage: '23',
+			qUsage: '',
 
-			departmentId: 1,
+			departmentId: '',
 
-			produceTime: 1658279204173,
+			produceTime: '',
 
-			actualStopDate: 1658279204173,
+			actualStopDate: '',
 
-			takecareDetailList: [
-				{
-					leadingPersonDepartmentId: 2,
+			takecareDetailList: [],
 
-					takecareDate: 1658279204172,
+			infoType: '',
 
-					leadingPersonId: 4,
+			leadingDepartmentId: '',
 
-					takecareMemo: '',
-				},
-			],
+			useEndDay: '',
 
-			infoType: 2,
+			previousTakecareDate: '',
 
-			leadingDepartmentId: 2,
-
-			useEndDay: '1234',
-
-			previousTakecareDate: 1658279204173,
-
-			previousCheckDate: 1658279204173,
+			previousCheckDate: '',
 
 			model: '',
 
-			stopStatus: 0,
+			stopStatus: '',
 
 			testWarn: '',
 
-			stopSubmitDate: 1658279204173,
+			stopSubmitDate: '',
 
-			repairStatus: 0,
+			repairStatus: '',
 
 			takecareStardardeDetailList: [
 				{
@@ -407,142 +401,102 @@
 				},
 			],
 
-			nextCheckDate: 1658279204173,
+			nextCheckDate: '',
 
-			checkCycle: '发多少',
+			checkCycle: '',
 
-			checkPoint: '发多少',
+			checkPoint: '',
 
-			leadingPersonId: 0,
+			leadingPersonId: '',
 
-			qName: '发顺丰',
+			qName: '',
 
-			nextTakecareDate: 1658279204173,
+			nextTakecareDate: '',
 
-			setPart: '改好',
+			setPart: '',
 
-			checkStandardeDetailList: [
-				{
-					checkTarget: '3',
+			checkStandardeDetailList: [],
 
-					checkPart: '5',
+			actualDestoryDate: '',
 
-					checkContent: '2',
+			isNeedTest: '',
 
-					indexNum: '1',
+			alertNum: '',
 
-					unit: '4',
+			checkContent: '',
 
-					rate: '6',
-				},
-			],
+			useMemo: '',
 
-			actualDestoryDate: 1658279204173,
+			previousTestDate: '',
 
-			isNeedTest: 0,
+			isNeedTakecare: '',
 
-			alertNum: '321',
-
-			checkContent: '312',
-
-			useMemo: '312',
-
-			previousTestDate: 1658279204173,
-
-			isNeedTakecare: 1,
-
-			destoryReason: '312',
+			destoryReason: '',
 
 			checkDetailList: [],
 
-			positionNum: '34',
+			positionNum: '',
 
-			testCycle: '566',
+			testCycle: '',
 
-			recoveryReason: '89',
+			recoveryReason: '',
 
-			isNeedCheck: 0,
+			isNeedCheck: '',
 
-			actualRecoveryDate: 1658279204173,
+			actualRecoveryDate: '',
 
-			leadingPersonDepartmentId: 3,
+			leadingPersonDepartmentId: '',
 
-			stopReason: 'fdf',
+			stopReason: '',
 
-			destorySubmitDate: 1658279204173,
+			destorySubmitDate: '',
 
-			testDetailList: [
-				{
-					testMemo: '',
-
-					testPersonDepartmentId: 0,
-
-					testStatus: '',
-
-					testPersonId: 0,
-
-					testResult: 0,
-
-					testDate: 1658279204171,
-				},
-			],
+			testDetailList: [],
 
 			checkWarn: '',
 
-			repaireDetailList: [
-				{
-					repairStatus: 0,
+			repaireDetailList: [],
 
-					repairPersonDepartmentId: 0,
+			equipmentTypeId: 1,
 
-					repairMemo: '发生的',
+			useDate: '',
 
-					repairPersonId: 0,
+			recoverySubmitDate: '',
 
-					repairEndDate: 1658279204171,
+			lockNum: '',
 
-					repairStartDate: 1658279204171,
+			stopSubmitPersonId: '',
 
-					exceptionInfo: 'ddd对对对',
-				},
-			],
+			afterStopStep: '',
 
-			equipmentTypeId: 4,
+			lifeCycle: '',
 
-			useDate: 1658279204173,
+			delCheckStandardeDetails: '',
 
-			recoverySubmitDate: 1658279204173,
+			delTakecareStardardeDetails: '',
 
-			lockNum: '94',
+			delTakecareDetails: '',
 
-			stopSubmitPersonId: 2,
+			delRepaireDetails: '',
 
-			afterStopStep: '32',
-
-			lifeCycle: 1,
-
-			delCheckStandardeDetails: '1,2',
-
-			delTakecareStardardeDetails: '1,2',
-
-			delTakecareDetails: '1,2',
-
-			delRepaireDetails: '1,2',
-
-			delTestDetails: '1,2',
+			delTestDetails: '',
 		});
 		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}仪表信息`;
-			}else if(num==1){
+				form.value.infoType = num;
+			} else if (num == 1) {
 				titles.value = `${title}设备设施`;
-			}else if(num==2){
+				form.value.infoType = num;
+			} else if (num == 2) {
 				titles.value = `${title}设备设施`;
+				form.value.infoType = num;
 			}
 
 			disabled.value = title == '查看' ? true : false;
@@ -559,6 +513,10 @@
 		};
 		// 提交
 		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()
 				.getequipmentInfoAddOrUpdate(form.value)
@@ -581,7 +539,7 @@
 			// form.value = null;
 		};
 		const activeName = ref('first');
-
+		const index = ref<any>();
 		const categoryShow = ref();
 		const opencategory = () => {
 			categoryShow.value.openDailog();
@@ -591,24 +549,28 @@
 			regionShow.value.openDailog();
 		};
 		const UserShow = ref();
-		const openUser = () => {
-			UserShow.value.openDailog();
+		const openUser = (type: any) => {
+			UserShow.value.openDailog(type);
 		};
 		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[]>([
@@ -640,6 +602,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 = (val: any) => {
+			if (index.value == -1) {
+				form.value.takecareDetailList.push(val);
+			} else {
+				form.value.takecareDetailList[index.value] = val;
+			}
+		};
+		const delect = (val: any) => {
+			if (index.value == -1) {
+				form.value.testDetailList.push(val);
+			} else {
+				form.value.testDetailList[index.value] = val;
+			}
+		};
+		const Repair = (val: any) => {
+			if (index.value == -1) {
+				form.value.repaireDetailList.push(val);
+			} else {
+				form.value.repaireDetailList[index.value] = val;
+			}
+		};
+		const Stand = (val: any) => {
+			if (index.value == -1) {
+				form.value.checkStandardeDetailList.push(val);
+			} else {
+				form.value.checkStandardeDetailList[index.value] = val;
+			}
+		};
+		const userId = (val: any, type: number) => {
+			console.log(val, type);
+			if (type == 0) {
+				form.value.leadingPersonId = val.uid;
+			} else if (type == 1) {
+				form.value.stopSubmitPersonId = val.uid;
+			}
+		};
 		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
@@ -649,7 +669,42 @@
 				full.value = false;
 			}
 		};
+		//部门树
+		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();
 		return {
+			userId,
+			department,
+			propse,
+			data,
+			deleteAId,
+			deleteBId,
+			deleteCId,
+			deleteDId,
+			deleteA,
+			deleteB,
+			deleteC,
+			deleteD,
+			main,
+			index,
+			delect,
+			Repair,
+			Stand,
 			resetForm,
 			submitForm,
 			titles,

--
Gitblit v1.9.2