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