From bbe9904216e417fa2691a061018e2c3e99dd2aa8 Mon Sep 17 00:00:00 2001 From: zhaojiale <631455805@qq.com> Date: 星期五, 05 八月 2022 16:46:55 +0800 Subject: [PATCH] 多选人员弹窗修改 --- src/components/equipmentDailog/Dailog.vue | 481 ++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 348 insertions(+), 133 deletions(-) diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue index 5135ac7..249d42e 100644 --- a/src/components/equipmentDailog/Dailog.vue +++ b/src/components/equipmentDailog/Dailog.vue @@ -1,5 +1,5 @@ <template> - <el-dialog v-model="dialogVisible" :fullscreen="full" draggable :title="titles" width="60%"> + <el-dialog v-model="dialogVisible" :fullscreen="full" :before-close="resetForm" draggable :title="titles" width="60%"> <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button> <el-form :model="form" :disabled="disabled" label-width="120px" class="formType"> <el-form-item label="装置设施名称" size="default"> @@ -29,30 +29,22 @@ </el-input> </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" - 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"> @@ -60,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="0" /> - <el-option label="Zone two" value="1" /> + <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"> @@ -103,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="请填写供应商" /> @@ -121,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"> @@ -133,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"> @@ -145,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="请填写检查指标" /> @@ -179,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> @@ -235,7 +230,7 @@ <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="scope"> @@ -250,7 +245,7 @@ <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="检测结果" /> @@ -272,8 +267,8 @@ <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="scope"> <el-button link type="primary" @click="openRepair('查看', scope.row)" size="small">查看</el-button> @@ -308,7 +303,7 @@ <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> @@ -340,7 +335,7 @@ </el-dialog> <categoryDailog ref="categoryShow"></categoryDailog> <regionDailog ref="regionShow"></regionDailog> - <DailogSearchUser ref="UserShow"></DailogSearchUser> + <DailogSearchUser ref="UserShow" @SearchUser="userId"></DailogSearchUser> <maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog> <detectDailog ref="detectShow" @onDelect="delect"></detectDailog> <repairDailog ref="repairShow" @onRepair="Repair"></repairDailog> @@ -354,11 +349,13 @@ import maintenanceDailog from './maintenanceDailog.vue'; import detectDailog from './detectDailog.vue'; import repairDailog from './repairDailog.vue'; +import {timeDate} from '/@/assets/index.ts' import standardDailog from './standardDailog.vue'; import DailogSearchUser from '/@/components/DailogSearchUser/index.vue'; 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 }, @@ -367,47 +364,37 @@ const form = ref({ supplyName: '', - nextTestDate: "", + nextTestDate: '', qUsage: '', - departmentId: "", + departmentId: '', - produceTime: "", + produceTime: '', - actualStopDate: "", + actualStopDate: '', - takecareDetailList: [ - { - leadingPersonDepartmentId: "", + takecareDetailList: [], - takecareDate: "", + infoType: '', - leadingPersonId: "", - - takecareMemo: '', - }, - ], - - infoType: "", - - leadingDepartmentId: "", + leadingDepartmentId: '', useEndDay: '', - previousTakecareDate: "", + previousTakecareDate: '', - previousCheckDate: "", + previousCheckDate: '', model: '', - stopStatus: "", + stopStatus: '', testWarn: '', - stopSubmitDate: "", + stopSubmitDate: '', - repairStatus: "", + repairStatus: '', takecareStardardeDetailList: [ { @@ -415,39 +402,25 @@ }, ], - nextCheckDate: "", + nextCheckDate: '', checkCycle: '', checkPoint: '', - leadingPersonId: "", + leadingPersonId: '', qName: '', - nextTakecareDate: "", + nextTakecareDate: '', setPart: '', - checkStandardeDetailList: [ - { - checkTarget: '', + checkStandardeDetailList: [], - checkPart: '', + actualDestoryDate: '', - checkContent: '', - - indexNum: '', - - unit: '', - - rate: '', - }, - ], - - actualDestoryDate: "", - - isNeedTest: "", + isNeedTest: '', alertNum: '', @@ -455,9 +428,9 @@ useMemo: '', - previousTestDate: "", + previousTestDate: '', - isNeedTakecare: "", + isNeedTakecare: '', destoryReason: '', @@ -469,65 +442,35 @@ recoveryReason: '', - isNeedCheck: "", + isNeedCheck: '', - actualRecoveryDate: "", + actualRecoveryDate: '', - leadingPersonDepartmentId: "", + leadingPersonDepartmentId: '', stopReason: '', - destorySubmitDate: "", + destorySubmitDate: '', - testDetailList: [ - { - testMemo: '', - - testPersonDepartmentId: "", - - testStatus: '', - - testPersonId: "", - - testResult: "", - - testDate: "", - }, - ], + testDetailList: [], checkWarn: '', - repaireDetailList: [ - { - repairStatus: "", + repaireDetailList: [], - repairPersonDepartmentId: "", + equipmentTypeId: 1, - repairMemo: '', + useDate: '', - repairPersonId: "", - - repairEndDate: "", - - repairStartDate: "", - - exceptionInfo: '', - }, - ], - - equipmentTypeId: "", - - useDate: "", - - recoverySubmitDate: "", + recoverySubmitDate: '', lockNum: '', - stopSubmitPersonId: "", + stopSubmitPersonId: '', afterStopStep: '', - lifeCycle: "", + lifeCycle: '', delCheckStandardeDetails: '', @@ -544,6 +487,7 @@ 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}仪表信息`; @@ -570,10 +514,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() + 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) @@ -588,12 +532,252 @@ ElMessage.error(res.data.msg); } }); - // form.value = null; + form.value = { + supplyName: '', + + nextTestDate: '', + + qUsage: '', + + departmentId: '', + + produceTime: '', + + actualStopDate: '', + + takecareDetailList: [], + + infoType: '', + + leadingDepartmentId: '', + + useEndDay: '', + + previousTakecareDate: '', + + previousCheckDate: '', + + model: '', + + stopStatus: '', + + testWarn: '', + + stopSubmitDate: '', + + repairStatus: '', + + takecareStardardeDetailList: [ + { + filePath: '123', + }, + ], + + nextCheckDate: '', + + checkCycle: '', + + checkPoint: '', + + leadingPersonId: '', + + qName: '', + + nextTakecareDate: '', + + setPart: '', + + checkStandardeDetailList: [], + + actualDestoryDate: '', + + isNeedTest: '', + + alertNum: '', + + checkContent: '', + + useMemo: '', + + previousTestDate: '', + + isNeedTakecare: '', + + destoryReason: '', + + checkDetailList: [], + + positionNum: '', + + testCycle: '', + + recoveryReason: '', + + isNeedCheck: '', + + actualRecoveryDate: '', + + leadingPersonDepartmentId: '', + + stopReason: '', + + destorySubmitDate: '', + + testDetailList: [], + + checkWarn: '', + + repaireDetailList: [], + + equipmentTypeId: 1, + + useDate: '', + + recoverySubmitDate: '', + + lockNum: '', + + stopSubmitPersonId: '', + + afterStopStep: '', + + lifeCycle: '', + + delCheckStandardeDetails: '', + + delTakecareStardardeDetails: '', + + delTakecareDetails: '', + + delRepaireDetails: '', + + delTestDetails: '', + }; }; // 取消 const resetForm = () => { dialogVisible.value = false; - // form.value = null; + form.value = { + supplyName: '', + + nextTestDate: '', + + qUsage: '', + + departmentId: '', + + produceTime: '', + + actualStopDate: '', + + takecareDetailList: [], + + infoType: '', + + leadingDepartmentId: '', + + useEndDay: '', + + previousTakecareDate: '', + + previousCheckDate: '', + + model: '', + + stopStatus: '', + + testWarn: '', + + stopSubmitDate: '', + + repairStatus: '', + + takecareStardardeDetailList: [ + { + filePath: '123', + }, + ], + + nextCheckDate: '', + + checkCycle: '', + + checkPoint: '', + + leadingPersonId: '', + + qName: '', + + nextTakecareDate: '', + + setPart: '', + + checkStandardeDetailList: [], + + actualDestoryDate: '', + + isNeedTest: '', + + alertNum: '', + + checkContent: '', + + useMemo: '', + + previousTestDate: '', + + isNeedTakecare: '', + + destoryReason: '', + + checkDetailList: [], + + positionNum: '', + + testCycle: '', + + recoveryReason: '', + + isNeedCheck: '', + + actualRecoveryDate: '', + + leadingPersonDepartmentId: '', + + stopReason: '', + + destorySubmitDate: '', + + testDetailList: [], + + checkWarn: '', + + repaireDetailList: [], + + equipmentTypeId: 1, + + useDate: '', + + recoverySubmitDate: '', + + lockNum: '', + + stopSubmitPersonId: '', + + afterStopStep: '', + + lifeCycle: '', + + delCheckStandardeDetails: '', + + delTakecareStardardeDetails: '', + + delTakecareDetails: '', + + delRepaireDetails: '', + + delTestDetails: '', + }; }; const activeName = ref('first'); const index = ref<any>(); @@ -606,8 +790,8 @@ regionShow.value.openDailog(); }; const UserShow = ref(); - const openUser = () => { - UserShow.value.openDailog(); + const openUser = (type: any) => { + UserShow.value.openDailog(type); }; const maintenanceShow = ref(); const openMaintenance = (title: string, data: any) => { @@ -709,6 +893,14 @@ 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 = () => { @@ -718,7 +910,29 @@ 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, @@ -764,6 +978,7 @@ full, toggleFullscreen, FullScreen, + timeDate, }; }, }); -- Gitblit v1.9.2