From b313c045929385696563e7bbcf9983561e441405 Mon Sep 17 00:00:00 2001 From: Dayu <1010@qq.com> Date: Fri, 12 Jul 2024 16:19:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A1=E6=A3=80=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/inspection/inspectionresult.js | 16 +- src/api/inspection/inspectiontasks.js | 5 +- src/views/inspection/inspectiontasks.vue | 118 ++++++++++---- .../inspection/inspectiontasksDetail.vue | 146 ++++++++++++------ 4 files changed, 209 insertions(+), 76 deletions(-) diff --git a/src/api/inspection/inspectionresult.js b/src/api/inspection/inspectionresult.js index b304a4c..7535a15 100644 --- a/src/api/inspection/inspectionresult.js +++ b/src/api/inspection/inspectionresult.js @@ -22,7 +22,7 @@ export const getDetail = (id) => { }) } -export const remove = (ids) => { +export const result_remove = (ids) => { return request({ url: '/api/inspection/inspectionresult/remove', method: 'post', @@ -40,11 +40,21 @@ export const add = (row) => { }) } -export const update = (row) => { +export const result_update = (row) => { return request({ - url: '/api/inspection/inspectionresult/submit', + url: '/api/inspection/inspectionresult/update', method: 'post', data: row }) } +export const getListByTaskNo = (taskNo) => { + return request({ + url: '/api/inspection/inspectionresult/getList', + method: 'get', + params: { + taskNo + } + }) +} + diff --git a/src/api/inspection/inspectiontasks.js b/src/api/inspection/inspectiontasks.js index 4a0b876..cb03e19 100644 --- a/src/api/inspection/inspectiontasks.js +++ b/src/api/inspection/inspectiontasks.js @@ -42,7 +42,7 @@ export const add = (row) => { export const update = (row) => { return request({ - url: '/api/inspection/inspectiontasks/submit', + url: '/api/inspection/inspectiontasks/update', method: 'post', data: row }) @@ -58,12 +58,13 @@ export const action = (ids) => { }) } -export const stop = (ids) => { +export const stop = (ids, reason) => { return request({ url: '/api/inspection/inspectiontasks/stop', method: 'post', params: { ids, + reason } }) } diff --git a/src/views/inspection/inspectiontasks.vue b/src/views/inspection/inspectiontasks.vue index 5d6f6e1..d480ec8 100644 --- a/src/views/inspection/inspectiontasks.vue +++ b/src/views/inspection/inspectiontasks.vue @@ -57,7 +57,8 @@ + width="480px" + @close="handleClose"> 确 定 + + + + + 取 消 + 确 定 + + @@ -82,13 +98,34 @@ export default { data() { + var validateStartTime = (rule, value, callback) => { + if (value === '') { + callback(new Error('请输入任务执行开始时间')); + } else if(this.currStartDate > value.replaceAll('/','').slice(0, 8)) { + callback(new Error('输入的任务执行开始时间小于任务开始日期')); + } else { + callback(); + } + }; + var validateEndTime = (rule, value, callback) => { + if (value === '') { + callback(new Error('请输入任务执行结束时间')); + } else if(this.resultForm.executeStartDate.trim().replaceAll('/','') >= value.trim().replaceAll('/','')) { + callback(new Error('输入的任务执行结束时间小于任务执行开始时间')); + } else { + callback(); + } + }; return { form: {}, query: {}, search:{}, loading: true, resultBox: false, + stopBox: false, currTaskNo: null, + currStartDate: null, + currEndDate: null, page: { pageSize: 10, currentPage: 1, @@ -105,6 +142,8 @@ index: false, viewBtn: true, selection: true, + searchBtnText: '查询', + emptyBtnText: '重置', column: [ { label: "任务编号", @@ -143,12 +182,15 @@ }] }, { - label: "任务生成日期", + label: "任务开始日期", prop: "taskStartDate", search: true, + type: "date", + format: 'yyyy年MM月dd日', + valueFormat: "yyyyMMdd", rules: [{ required: true, - message: "请输入任务生成日期", + message: "请输入任务开始日期", trigger: "blur" }] }, @@ -156,6 +198,9 @@ label: "任务完成日期", prop: "taskEndDate", search: true, + type: "date", + format: 'yyyy年MM月dd日', + valueFormat: "yyyyMMdd", rules: [{ required: true, message: "请输入任务完成日期", @@ -297,34 +342,26 @@ { label: "任务执行开始时间", prop: "executeStartDate", - type: "date", - format: 'yyyy年MM月dd日', - valueFormat: "yyyyMMdd", + type: "datetime", + format: 'yyyy年MM月dd日 HH时mm分', + valueFormat: "yyyy/MM/dd HH:mm", span:22, labelWidth: 150, - rules: [{ - required: true, - message: "请输入任务执行开始时间", - trigger: "blur" - }] + rules: [{required: true, validator: validateStartTime, trigger: 'blur' }] }, { label: "任务执行结束时间", prop: "executeEndDate", - type: "date", - format: 'yyyy年MM月dd日', - valueFormat: "yyyyMMdd", + type: "datetime", + format: 'yyyy年MM月dd日 HH时mm分', + valueFormat: "yyyy/MM/dd HH:mm", span:22, labelWidth: 150, row: true, - rules: [{ - required: true, - message: "请输入任务执行结束时间", - trigger: "blur" - }] + rules: [{required: true, validator: validateEndTime, trigger: 'blur' }] }, { - label: "处理结果", + label: "巡检结果", prop: "inspectiontResult", span:22, row: true, @@ -347,6 +384,24 @@ }] }, ] + }, + stopForm: {}, + optionStop: { + submitBtn: false, + emptyBtn: false, + column: [ + { + label: "取消原因", + prop: "cancelReason", + type: "textarea", + span:22, + rules: [{ + required: true, + message: "请输入取消原因", + trigger: "blur" + }] + }, + ] } }; }, @@ -372,6 +427,11 @@ } }, methods: { + handleClose() { + this.resultBox = false //关闭对话框 + //重置表单 + }, + rowDel(row) { this.$confirm("确定将选择数据删除?", { confirmButtonText: "确定", @@ -402,26 +462,25 @@ path: "/inspection/inspectiontasksDetail", query: { frameMode:"search", - id: row.id + id: row.id, + taskNo:row.taskNo, }, }); }, resultAdd(row) { this.resultBox = true; + this.$refs.resultForm.resetFields(); this.currTaskNo = row.taskNo; + this.currStartDate = row.taskStartDate; + this.currEndDate = row.taskEndDate; }, submitResult(row, done, loading) { this.resultForm.taskNo = this.currTaskNo; - console.log(this.currTaskNo) const form = this.$refs.resultForm; form.validate((valid) => { if (valid) { add(this.resultForm).then(() => { this.resultBox = false; - this.resultForm.executeStartDate= ''; - this.resultForm.executeEndDate= ''; - this.resultForm.inspectiontResult= ''; - this.resultForm.inspectionReport= ''; this.onLoad(this.page); this.$message({ type: "success", @@ -489,15 +548,20 @@ this.$message.warning("请选择至少一条数据"); return; } + this.stopBox = true; + }, + submitStop(){ this.$confirm("是否将选择巡检任务停止?", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning" }) .then(() => { - return stop(this.ids); + return stop(this.ids, this.stopForm.cancelReason); }) .then(() => { + this.stopForm.cancelReason = ''; + this.stopBox = false; this.onLoad(this.page); this.$message({ type: "success", diff --git a/src/views/inspection/inspectiontasksDetail.vue b/src/views/inspection/inspectiontasksDetail.vue index f256525..4ccff1a 100644 --- a/src/views/inspection/inspectiontasksDetail.vue +++ b/src/views/inspection/inspectiontasksDetail.vue @@ -5,8 +5,8 @@ + ref="information_crud" + :class="information_class"> @@ -43,7 +43,7 @@