From 49f500464b6363b92e9877f6c4fc6d0e9ea72ff1 Mon Sep 17 00:00:00 2001 From: xy <271556543@qq.com> Date: Fri, 14 Mar 2025 11:45:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E4=BB=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/order/component/createDispatch.vue | 5 +- src/views/order/component/quickCreate.vue | 37 +- src/views/order/handle.vue | 369 ++++++++++++++----- src/views/order/orderPlan.vue | 15 +- src/views/order/orderSummary.vue | 18 +- 5 files changed, 331 insertions(+), 113 deletions(-) diff --git a/src/views/order/component/createDispatch.vue b/src/views/order/component/createDispatch.vue index 8253fa2..eb39d54 100644 --- a/src/views/order/component/createDispatch.vue +++ b/src/views/order/component/createDispatch.vue @@ -863,6 +863,7 @@ export default { kaiqishuliang1: i.kaiqishuliang1, diaolingleixing: i.diaolingleixing, leibie: i.leibie, + yinpaishui: i.yinpaishui, situations: this.equipmentList.find((j) => j.id === i.equipment_id)?.id_equip_situation_relations_equipment_id_relation })) || []; @@ -880,6 +881,7 @@ export default { diaolingleixing: "", kaiqishuliang1: 0, leibie: "", + yinpaishui: "", situations: i.id_equip_situation_relations_equipment_id_relation })) || []; @@ -958,7 +960,8 @@ export default { kaiqishuliang: i.kaiqishuliang, kaiqishuliang1: i.kaiqishuliang1, diaolingleixing: i.diaolingleixing, - leibie: i.leibie + leibie: i.leibie, + yinpaishui: i.yinpaishui, })) ), }).then((_) => { diff --git a/src/views/order/component/quickCreate.vue b/src/views/order/component/quickCreate.vue index d979947..3393056 100644 --- a/src/views/order/component/quickCreate.vue +++ b/src/views/order/component/quickCreate.vue @@ -43,6 +43,7 @@ import { uuid } from "@/utils"; import { index, save } from "@/api/system/baseForm"; import LxHeader from "@/components/LxHeader"; import {show} from "@/api/system/customFormField"; +import {checkTransfer} from "@/api/other"; export default { components: { LxHeader @@ -320,7 +321,8 @@ export default { leibie: this.abilities.find(j => j.key === dataArr[6])?.value, diaolingleixing: this.diaolingleixing.find(j => j.key === dataArr[7])?.value, level: 1, - status: 1 + status: 1, + is_adjust: -1 }) } console.log(this.data) @@ -358,27 +360,40 @@ export default { // }).catch(_ => {}) }, - submit () { + async submit () { console.log(this.data) - let promiseAll = this.data.map(form => { - return save({ - table_name: 'transfers', - ...form, - },false) - }) + let promiseAll = [] let loadingInstance = this.$loading({ lock:true, background:"rgba(0,0,0,0.4)", text:"正在加载中..." }) + + for (let i = 0;i < this.data.length;i++) { + const item = this.data[i] + try { + const res = await checkTransfer({ + start_time: item.start_time, + end_time: item.end_time, + equipment_id: item.equipment_id, + diaolingleixing: item.diaolingleixing + }) + promiseAll.push(save({ + table_name: 'transfers', + ...item, + },false)) + } catch (err) { + console.error(err) + } + } + Promise.all(promiseAll).then(res => { this.data = []; - loadingInstance.close(); this.$message({ type: 'success', - message: '添加成功' + message: `添加成功${res.length}条` }) - }).catch(_ => { + }).finally(_ => { loadingInstance.close() }) } diff --git a/src/views/order/handle.vue b/src/views/order/handle.vue index 716b36f..7f1ea92 100644 --- a/src/views/order/handle.vue +++ b/src/views/order/handle.vue @@ -47,7 +47,24 @@ >导出 - 克隆调令 + 克隆调令 + + 点位筛选 + + + + + 勾选当日未下发 批量下发 @@ -57,107 +74,192 @@ - - - - - - - - { $router.push({ path: $route.path + '/detail/' + row.id, }); } " - @editor=" + @editor=" (row) => { $refs['dialog'].setId(row.id); $refs['dialog'].setType('editor'); $refs['dialog'].show(); } " - > - - - + + + 调整 - - - - 调整 + + + + 反馈 - - - 发起流程 - - - 下发 - - - 取消 - - - - + >反馈 + + + 发起流程 + + + 下发 + + + 取消 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -179,6 +281,24 @@ > + + + + + + + + @@ -223,6 +343,61 @@ export default { }, data() { return { + dialogVisible: false, + clones: [], + cloneTable: [ + { + label: '范围', + prop: 'equipment_area', + width: 140, + formatter:(data,row,val) => { + return this.areas.find(i => i.value === val)?.key + } + }, + { + label: '点位', + prop: 'equipment_name', + width: 140 + }, + { + label: '调令类型', + prop: 'diaolingleixing', + width: 140, + customFn: row => this.table?.find(i => i.prop === 'diaolingleixing')?.customFn(row) + }, + { + label: '闸门开启数量', + prop: 'kaiqishuliang', + width: 100 + }, + { + label: '水泵开启数量', + prop: 'kaiqishuliang1', + width: 100 + }, + { + label: '类别', + prop: 'leibie', + width: 100, + customFn: row => this.table?.find(i => i.prop === 'leibie')?.customFn(row) + }, + { + label: '开始时间', + prop: 'start_time', + width: 100 + }, + { + label: '结束时间', + prop: 'end_time', + width: 100 + }, + { + label: '内容', + prop: 'content', + minWidth: 140 + }, + ], + equipments: [], areas: [], abilities: [], @@ -434,21 +609,28 @@ export default { this.$refs['xyTable'].getTableData() }, + showClone() { + this.clones = this.$refs['xyTable'].getSelection().map(i => ({ + equipment_area: i.equipment_id_equipments_id_relation?.area, + equipment_name: i.equipment_id_equipments_id_relation?.name, + equipment_id: i.equipment_id, + start_time: this.$moment(i.start_time).format('HH:mm'), + end_time: this.$moment(i.end_time).format('HH:mm'), + kaiqishuliang: i.kaiqishuliang, + kaiqishuliang1: i.kaiqishuliang1, + yinpaishui: i.yinpaishui, + diaolingleixing: i.diaolingleixing, + content: i.content, + level: i.level, + leibie: i.leibie + })) + this.dialogVisible = true + }, cloneTransfer () { this.$router.push({ name: 'menu_14', params: { - cloneTransfer: this.$refs['xyTable'].getSelection().map(i => ({ - equipment_id: i.equipment_id, - start_time: this.$moment(i.start_time).format('HH:mm'), - end_time: this.$moment(i.end_time).format('HH:mm'), - kaiqishuliang: i.kaiqishuliang, - kaiqishuliang1: i.kaiqishuliang1, - yinpaishui: i.yinpaishui, - diaolingleixing: i.diaolingleixing, - content: i.content, - level: i.level, - })) + cloneTransfer: this.clones } }) }, @@ -778,6 +960,7 @@ export default { ) } }) + console.log(this.table) }, }, diff --git a/src/views/order/orderPlan.vue b/src/views/order/orderPlan.vue index 6026a0a..7f46a30 100644 --- a/src/views/order/orderPlan.vue +++ b/src/views/order/orderPlan.vue @@ -12,7 +12,7 @@ - + {{ item[1] }} @@ -40,7 +40,7 @@ !i.children)?.map(i => i.name).toString() this.equipmentIds = this.$refs['elTree'].getCheckedNodes(true)?.filter(i => !i.children)?.map(i => i.id) @@ -176,10 +183,6 @@ }, async getData () { - this.weekRange = [this.$moment(this.weekSelect).startOf('week').format('YYYY-MM-DD')] - for (let i = 1;i <= 6;i++) { - this.weekRange.push(this.$moment(this.weekRange[0]).add(i,'day').format('YYYY-MM-DD')) - } const res = await index({ table_name: 'transfers', page: 1, diff --git a/src/views/order/orderSummary.vue b/src/views/order/orderSummary.vue index 28df9cd..a805e9d 100644 --- a/src/views/order/orderSummary.vue +++ b/src/views/order/orderSummary.vue @@ -11,8 +11,14 @@ - - + + 开始日期 + + 结束日期 + + 搜索 + + @@ -570,4 +576,12 @@ export default { } } +.search-bar { + display: flex; + align-items: center; + + & > * + * { + margin-left: 10px; + } +}