From 61c9a9b2d21d64c1e2bc910a2f9e1ac0c017bddd Mon Sep 17 00:00:00 2001
From: Admin <978517621@qq.com>
Date: 星期六, 23 七月 2022 17:58:48 +0800
Subject: [PATCH] 添加修改页面

---
 src/views/IntelligentXjSys/inspectionTaskManagement/inspectionTask/index.vue |  130 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 103 insertions(+), 27 deletions(-)

diff --git a/src/views/IntelligentXjSys/inspectionTaskManagement/inspectionTask/index.vue b/src/views/IntelligentXjSys/inspectionTaskManagement/inspectionTask/index.vue
index 156c37e..fe2c82e 100644
--- a/src/views/IntelligentXjSys/inspectionTaskManagement/inspectionTask/index.vue
+++ b/src/views/IntelligentXjSys/inspectionTaskManagement/inspectionTask/index.vue
@@ -4,8 +4,7 @@
 		<el-row class="homeCard">
 			<el-col :span="12">
 				<div class="grid-content topInfo">
-					<el-select v-model="searchType" @change="changeSearch">
-						<el-option label="任务名称" value="任务名称" />
+					<el-select v-model="searchType" @change="changeSearch" placeholder="任务名称">
 						<el-option label="巡检任务类型" value="巡检任务类型" />
 						<el-option label="创建人" value="创建人" />
 						<el-option label="巡检人" value="巡检人" />
@@ -111,43 +110,80 @@
 		</el-scrollbar>
 		<el-dialog v-model="dialogDetails" title="巡检任务">
 			<el-form :model="details" label-width="120px">
-				<el-form-item label="名称">
+				<el-form-item label="任务名称">
 					<el-input
 							v-model="details.name"
 							readonly
 					/>
 				</el-form-item>
-				<el-form-item label="排班类型">
+				<el-form-item label="任务类型">
 					<el-input
 							v-model="details.type"
 							readonly
 					/>
 				</el-form-item>
-				<el-form-item label="自定义循环班" v-if="JSON.parse(JSON.stringify(details.type)) == '循环班'">
-					<div>
+				<el-form-item label="执行巡检人员">
+					<el-input
+							v-model="details.inspector"
+							readonly
+					/>
+				</el-form-item>
+				<el-form-item label="检查频次">
+					<el-input
+							v-model="details.inspector"
+							readonly
+					/>
+				</el-form-item>
+				<el-form-item label="检查频次" prop="frequency">
+					<el-input
+							v-model="details.frequency"
+							readonly
+					>
+						<template #append>
+							<el-input
+									v-model="details.unit"
+									readonly
+							/>
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item label="周期开始时间">
+					<el-input
+							v-model="details.startTime"
+							readonly
+					/>
+				</el-form-item>
+				<el-form-item label="周期有效时间">
+					<el-input
+							v-model="details.validTime"
+							readonly
+					/>
+				</el-form-item>
+				<el-form-item label="巡检链">
+					<div style="width: 100%;margin-left: -30px">
 						<div v-for="(item,index) in details.shiftSteps" class="stepItem">
 							<div class="stepNum">{{index+1}}</div>
 							<div class="stepCard">
 								<el-card class="box-card" shadow="hover">
 									<template #header>
 										<div class="card-header">
-											<div>第<span>{{index+1}}</span>班</div>
+											<div>{{item.name}}</div>
 										</div>
 									</template>
-									<div class="text item">排班名称:<span>{{item.name}}</span></div>
-									<div class="text item">工作天数:<span>{{item.days}}</span></div>
-									<div class="text item">休息天数:<span>{{item.rest}}</span></div>
-									<div class="text item">工作时段:<span>{{item.timeRange}}</span></div>
+									<div>
+										<el-table :data="item.inspectorData" style="width: 100%" :default-sort="{ prop: 'sort', order: 'ascending'}" :header-cell-style="{background: '#fafafa',padding: '5px'}">
+											<el-table-column property="sort" sortable label="排序"/>
+											<el-table-column property="name" label="巡检点名称"/>
+											<el-table-column property="section" label="所属设备区域"/>
+											<el-table-column property="rfid" label="关联RFID"/>
+											<el-table-column property="norm" label="巡检指标"/>
+											<el-table-column property="reference" label="数据参考值"/>
+										</el-table>
+									</div>
 								</el-card>
 							</div>
 						</div>
 					</div>
-				</el-form-item>
-				<el-form-item label="工作时段" prop="timeRange" v-if="JSON.parse(JSON.stringify(details.type)) == '固定班'">
-					<el-input
-							v-model="details.timeRange"
-							readonly
-					/>
 				</el-form-item>
 				<el-form-item>
 					<el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button>
@@ -237,8 +273,9 @@
 											<el-table-column property="rfid" label="关联RFID"/>
 											<el-table-column property="norm" label="巡检指标"/>
 											<el-table-column property="reference" label="数据参考值"/>
-											<el-table-column fixed="right" label="操作" align="center" width="80">
+											<el-table-column fixed="right" label="操作" align="center" width="100">
 												<template #default="scope">
+													<el-button link type="primary" size="small" :icon="Edit" @click="editInspection(index,scope.$index ,scope.row)">修改</el-button>
 													<el-button link type="danger" size="small" :icon="Delete" @click="deleteInspection(index,scope.$index)">删除</el-button>
 												</template>
 											</el-table-column>
@@ -298,6 +335,9 @@
 		</el-dialog>
 		<el-dialog v-model="dialogAddInspection" title="新增巡检点" @close="closeAddInspection">
 			<el-form :model="addInspection" label-width="120px" ref="addInspectionRef" :rules="addInspectionRules">
+				<el-form-item label="输入巡检点排序" prop="sort">
+					<el-input-number v-model="addInspection.sort" :min="1" :max="999" placeholder="巡检点排序"/>
+				</el-form-item>
 				<el-form-item label="选择巡检点" prop="name">
 					<el-select v-model="addInspection.name">
 						<el-option label="73011" value="73011" />
@@ -305,8 +345,13 @@
 						<el-option label="73013" value="73013" />
 					</el-select>
 				</el-form-item>
-				<el-form-item label="输入巡检点排序" prop="sort">
-					<el-input-number v-model="addInspection.sort" :min="1" :max="999" placeholder="请输入用于确定该巡检点位置的序号"/>
+				<el-form-item label="选择巡检指标" prop="norm">
+					<el-select v-model="addInspection.norm">
+						<el-option label="风机声音" value="风机声音" />
+						<el-option label="设备温度" value="设备温度" />
+						<el-option label="压力" value="压力" />
+						<el-option label="震动" value="震动" />
+					</el-select>
 				</el-form-item>
 				<el-form-item>
 					<el-button type="warning" @click="dialogAddInspection = false" size="default" plain>取消</el-button>
@@ -515,6 +560,7 @@
 			})
 			const addInspectionRules = reactive<FormRules>({
 				name:[{required: true, message: '该内容不能为空',trigger:'blur'}],
+				norm:[{required: true, message: '该内容不能为空',trigger:'blur'}],
 				sort:[{required: true, message: '该内容不能为空',trigger:'blur'}]
 			})
 			const dialogDetails = ref(false)
@@ -547,9 +593,20 @@
 						if(chosenIndex.value == -1){
 							if(!addRecord.value.shiftSteps || addRecord.value.shiftSteps.length == 0){
 								ElMessage({
-									message: '请先设置自定义排班后再提交',
+									message: '请先设置巡检链后再提交',
 									type: 'warning',
 								})
+								return
+							// 判断每个区域是否都设置了至少一个巡检点,没有的话提示设置
+							}else if(addRecord.value.shiftSteps.some(i => !i.inspectorData || i.inspectorData.length==0)){
+								for(let i =0;i<addRecord.value.shiftSteps.length;i++){
+									if(!addRecord.value.shiftSteps[i].inspectorData||addRecord.value.shiftSteps[i].inspectorData.length==0){
+										ElMessage({
+											message: '请为'+ addRecord.value.shiftSteps[i].name +'设置巡检点',
+											type: 'warning',
+										})
+									}
+								}
 								return
 							}else{
 								addRecord.value.createTime = new Date().toLocaleString('zh', timeForm).replace(/\//g,'-')
@@ -560,13 +617,22 @@
 						}else{
 							if(addRecord.value.shiftSteps.length == 0){
 								ElMessage({
-									message: '请先设置自定义排班后再提交',
+									message: '请先设置巡检链后再提交',
 									type: 'warning',
 								})
 								return
+							// 判断每个区域是否都设置了至少一个巡检点,没有的话提示设置
+							}else if(addRecord.value.shiftSteps.some(i => !i.inspectorData || i.inspectorData.length==0)){
+								for(let i =0;i<addRecord.value.shiftSteps.length;i++){
+									if(!addRecord.value.shiftSteps[i].inspectorData||addRecord.value.shiftSteps[i].inspectorData.length==0){
+										ElMessage({
+											message: '请为'+ addRecord.value.shiftSteps[i].name +'设置巡检点',
+											type: 'warning',
+										})
+									}
+								}
+								return
 							}else{
-								if(addRecord.value.type == '固定班'){delete addRecord.value.shiftSteps}
-								console.log(addRecord.value,'addRecord')
 								tableData[chosenIndex.value] = addRecord.value
 							}
 						}
@@ -650,8 +716,13 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						if(addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData){
-							addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.unshift(addInspection.value)
-							addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.sort(compare('sort'))
+							if(chosenInspectionIndex.value == -1){
+								addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.unshift(addInspection.value)
+								addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.sort(compare('sort'))
+							}else{
+								addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData[chosenInspectionIndex.value] = addInspection.value
+								addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.sort(compare('sort'))
+							}
 						}else{
 							addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData = []
 							addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.unshift(addInspection.value)
@@ -667,7 +738,12 @@
 				chosenShiftIndex.value = i
 				chosenInspectionIndex.value = index
 				deleteInspectionDialog.value = true
-				console.log(chosenShiftIndex.value,chosenInspectionIndex.value)
+			}
+			const editInspection =(i,index, row)=>{
+				chosenShiftIndex.value = i
+				chosenInspectionIndex.value = index
+				dialogAddInspection.value = true
+				addInspection.value = JSON.parse(JSON.stringify(row))
 			}
 			const conFirmInspectionDelete=()=>{
 				addRecord.value.shiftSteps[chosenShiftIndex.value].inspectorData.splice( chosenInspectionIndex.value,1)

--
Gitblit v1.9.2