From 1fa449130ec7518333e5dfbd8c7c7926ad457d54 Mon Sep 17 00:00:00 2001 From: tk Date: Wed, 10 Jul 2024 23:41:18 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E7=B1=BB=09=E5=9E=8B=E3=80=91?= =?UTF-8?q?=EF=BC=9Arefactor=20=E3=80=90=E4=B8=BB=09=E9=A2=98=E3=80=91?= =?UTF-8?q?=EF=BC=9A=E6=8F=90=E4=BA=A4=E4=BB=BB=E5=8A=A1=20=E6=94=B9?= =?UTF-8?q?=E5=BC=82=E6=AD=A5=20=E3=80=90=E6=8F=8F=09=E8=BF=B0=E3=80=91?= =?UTF-8?q?=EF=BC=9A=20=09[=E5=8E=9F=E5=9B=A0]=EF=BC=9A=E5=85=88=E5=AE=8C?= =?UTF-8?q?=E6=88=90=E8=AE=A2=E5=8D=95=E7=8A=B6=E6=80=81=E6=9B=B4=E6=94=B9?= =?UTF-8?q?=20=E5=86=8D=E5=90=91=E9=A3=9E=E6=9C=BA=E5=8F=91=E9=80=81?= =?UTF-8?q?=E8=88=AA=E7=82=B9=E6=96=87=E4=BB=B6=20=20=20=E9=98=B2=E6=AD=A2?= =?UTF-8?q?=E9=A3=9E=E6=9C=BA=E9=A3=9E=E8=B5=B0=E4=BA=86=20=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=8A=B6=E6=80=81=E8=BF=98=E6=B2=A1=E6=94=B9=20=09[?= =?UTF-8?q?=E8=BF=87=E7=A8=8B]=EF=BC=9A=20=09[=E5=BD=B1=E5=93=8D]=EF=BC=9A?= =?UTF-8?q?=20=E3=80=90=E7=BB=93=09=E6=9D=9F=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # 类型 包含: # feat:新功能(feature) # fix:修补bug # docs:文档(documentation) # style: 格式(不影响代码运行的变动) # refactor:重构(即不是新增功能,也不是修改bug的代码变动) # test:增加测试 # chore:构建过程或辅助工具的变动 --- src/components/ControllerTabs.vue | 25 ++++++++++++++++--------- src/utils/api/table.js | 24 ++++++++++++------------ 2 files changed, 28 insertions(+), 21 deletions(-) diff --git a/src/components/ControllerTabs.vue b/src/components/ControllerTabs.vue index 84e4bc4..1739987 100644 --- a/src/components/ControllerTabs.vue +++ b/src/components/ControllerTabs.vue @@ -456,7 +456,7 @@ export default { /** * @description: 执行订单任务 */ - runQuest () { + async runQuest () { /* 插入日志 */ this.$store.dispatch('fetchLog', { content: `${this.plane.name} 开始执行 订单ID:${this.currentOrder.id}、叫餐号:${this.currentOrder.food_sn}号。` }) /* 执行写在这里 */ @@ -479,7 +479,7 @@ export default { if (!foundEmpty) { this.$message({ type: 'warning', - message: '站点所有航线都已被占用!' + message: '此站点所有航线均被占用,等航线空闲再试!' }) return // 退出外层函数 } @@ -489,20 +489,27 @@ export default { routeData = JSON.parse(routeData)// 反序列化 // 处理声音航点 航点里面的表达式 如$food_sn$ 正则替换成订单对应的字段 this.currentOrder.telTail = this.currentOrder.tel.substr(-4)// 手动加一个手机尾号telTail字段 从 tel字段截取后四位 - routeData.tasks.forEach((x, index) => { + routeData.questAss.tasks.forEach((x, index) => { if (x.sound) { const str = this.voiceRouteParse(this.currentOrder, x.sound) - routeData.tasks[index].sound = str// 重新写入声音航点 + routeData.questAss.tasks[index].sound = str// 重新写入声音航点 } }) routeData = JSON.stringify(routeData)// 重新序列化 } catch (error) { - this.$message.error('操作失败,请重新尝试') + this.$message.error('操作失败,航线异常') + return } - this.publishFun(`{"questAss":${routeData}}`)// 发送航点信息主题 - this.questAss(this.currentOrder.id, 'shipment_status', '已发货')// 订单改为发货状态 并更新订单列表 - this.$store.dispatch('fetchLockSite', { id: this.currentOrder.receive_site_id, runing: newRuning })// 航线注册飞机 锁定送餐点 - this.speakText('提交任务,锁定航线。') + let res = await this.questAss(this.currentOrder.id, 'shipment_status', '已发货')// 订单改为发货状态 并更新订单列表 + if (res.data.status === 1) { + res = await this.$store.dispatch('fetchLockSite', { id: this.currentOrder.receive_site_id, runing: newRuning })// 航线注册飞机 锁定送餐点 + if (res.data.status === 1) { + this.publishFun(`{"questAss":${routeData}}`)// 发送航点信息主题 + this.speakText('提交任务,注册航线。') + } + } + // 主动获取飞机状态 + this.publishFun('{getPlaneState:1}') }, /** * @description: 匹配声音航点字符串 比如$food_sn$ food_sn匹配成 送餐订单里面的对应字段 diff --git a/src/utils/api/table.js b/src/utils/api/table.js index 4496519..86d822c 100644 --- a/src/utils/api/table.js +++ b/src/utils/api/table.js @@ -22,23 +22,23 @@ export async function apiCrosFrequency (params) { /** * @description: 向改变订单承接任务api 提交数据 () ,并更新订单列表 * @param {*} id 订单id - * @param {*} state 主状态"main_status" 货物状态"shipment_status" 退款状态"refund_status" + * @param {*} statusType 主状态"main_status" 货物状态"shipment_status" 退款状态"refund_status" * @param {*} val 修改字段的值 */ -export function questAss (id, state, val) { +export async function questAss (id, statusType, val) { const params = new URLSearchParams()// post对象参数 转成 字符串连接 params.append('id', id) - params.append('state', state) + params.append('state', statusType) params.append('val', val) - api.post('questAss', params).then(res => { - if (res.data.status === 1) { - Message.success(res.data.msg) - store.dispatch('fetchPaidOrderList')// 更新订单列表 - } else { - Message.error(res.data.msg) - store.dispatch('fetchPaidOrderList')// 更新订单列表 - } - }) + const res = await api.post('questAss', params) + if (res.data.status === 1) { + Message.success(res.data.msg) + store.dispatch('fetchPaidOrderList')// 更新订单列表 + } else { + Message.error(res.data.msg) + store.dispatch('fetchPaidOrderList')// 更新订单列表 + } + return res } /** * @description: 获取订单列表