From 906ee0b02ab46892d3fa6490e73cdba4cd783e9c Mon Sep 17 00:00:00 2001 From: Double-_-Z <2492419643@qq.com> Date: Wed, 13 Aug 2025 09:10:53 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=AE=A1=E7=90=86=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aircraft/server/order/add.vue | 12 ++++++--- aircraft/server/order/detail.vue | 46 +++++++++++++++++++++++--------- aircraft/server/route/route.vue | 8 +++--- 3 files changed, 47 insertions(+), 19 deletions(-) diff --git a/aircraft/server/order/add.vue b/aircraft/server/order/add.vue index 080255c..42e885c 100644 --- a/aircraft/server/order/add.vue +++ b/aircraft/server/order/add.vue @@ -43,7 +43,7 @@ KG - + @@ -141,7 +141,7 @@ export default { }], surchargeAmount: [{ validator: (rule, value, callback) => { - return value&&/^-?\d*\.?\d+$/.test(value);; + return value===''||/^-?\d*\.?\d+$/.test(value); }, message: '附加费格式不正确', trigger: ['change','blur'] @@ -373,14 +373,20 @@ export default { saveOrder(){ try{ let that = this; - this.saveLoading = true; this.$refs.uForm.validate(async(valid) => { if (valid) { + that.saveLoading = true; const data = {...that.form,operatorIds:that.form.operatorIds.map(item=>item.id), routeIds:that.form.routeIds.map(item=>item.key), + surchargeAmount: that.form.surchargeAmount ? that.form.surchargeAmount : 0, orderCreateTime:that.$u.timeFormat(new Date().getTime(),'yyyy-mm-dd hh:MM:ss')} console.log('验证通过',that.form); let res = that.form.orderId ? await that.$api.editOrder(data) : await that.$api.addOrder(data); + console.log('res:',res); + if(res === undefined){ + that.$refs.uToast.show({type: 'error',title: "订单新增失败!"}); + return; + } that.saveLoading = false; uni.navigateBack({complete() { that.$u.toast(`订单${that.form.orderId?'编辑':'新增'}成功!`); diff --git a/aircraft/server/order/detail.vue b/aircraft/server/order/detail.vue index b6cd13c..3b8a723 100644 --- a/aircraft/server/order/detail.vue +++ b/aircraft/server/order/detail.vue @@ -99,11 +99,11 @@ {{ item.orderItemStatus }} - - 删除 - 更改状态 + + 删除 + 更改状态 @@ -115,8 +115,9 @@ - - + + 新增任务 item.key === this.stateForm.taskStatus)]||[0]; + }, + canAddAction(){ + return !this.orderDetail.orderTaskDetailList||!this.orderDetail.orderTaskDetailList.some( + item=>item.operatorId&&item.operatorId===this.userMessage.id&& + item.orderItemStatus === '未进行'); } }, data(){ @@ -289,6 +295,7 @@ export default { // 状态表单 stateForm: { orderTaskId: '', + oldStatus: '', taskStatus: 0, taskStatusName: '未进行' }, @@ -352,8 +359,10 @@ export default { { key: 0, value: '未进行' }, { key: 1, value: '进行中' }, { key: 2, value: '已完成' }, - { key: 3, value: '已取消' }, + { key: 3, value: '任务失败' }, ], + // 用户信息 + userMessage: this.$store.state.vuex_token === ''?{}:JSON.parse(this.$store.state.user_message), isPilot: this.$store.state.user_type == 1, } }, @@ -387,6 +396,16 @@ export default { this.$refs.uToast.show({type: 'error',title: "景区设备获取失败!"}); } }, + // 禁用删除飞行任务 + disabledDeleteAction(item){ + return !item.operatorId||this.userMessage.id!==item.operatorId|| + item.orderItemStatus !== '未进行'; + }, + // 禁止更改状态 + disabledChangeState(item){ + return !item.operatorId||this.userMessage.id!==item.operatorId|| + ['已完成', '任务失败'].includes(item.orderItemStatus); + }, // 预览 preview(url){ this.$util.tools.methods.lookImage(0,[url]); @@ -398,7 +417,8 @@ export default { }, // 打开新增任务弹窗 addAction(){ - this.showAddAction = true; + if(this.canAddAction) + this.showAddAction = true; }, // 获取订单详情 async getOrderDetail(id){ @@ -477,17 +497,18 @@ export default { // 修改任务状态 async handleChangeState(){ try { - const { orderTaskId, taskStatus } = this.stateForm; + const { orderTaskId, taskStatus, oldStatus } = this.stateForm; let res = await this.$api.editOrderStatus(orderTaskId, taskStatus); this.showChangeState = false; if(res === undefined){ - this.$refs.uToast.show({type: 'error',title: '无法更改该飞行任务状态!'}); + this.$refs.uToast.show({type: 'error',title: `订单任务状态不能进行状态变更,当前状态为:${oldStatus}`}); return; } this.$refs.uToast.show({type: 'success',title: `飞行任务状态更改成功!`}); await this.getOrderDetail(this.form.orderId); this.stateForm = { orderTaskId: '', + oldStatus: '', taskStatus: 0, taskStatusName: '未进行' }; @@ -524,7 +545,7 @@ export default { let res = await that.$api.deleteOrderTask(item.id); console.log(res); if(res === undefined){ - that.$refs.uToast.show({type: 'error',title: "飞行任务无法删除!"}); + that.$refs.uToast.show({type: 'error',title: `订单飞行任务处于[${item.orderItemStatus}]状态,不能进行删除`}); return; } that.getOrderDetail(this.form.orderId); @@ -541,6 +562,7 @@ export default { handleChangeAction({id, orderItemStatus}){ this.stateForm = { orderTaskId: id, + oldStatus: orderItemStatus, taskStatusName: orderItemStatus, taskStatus: this.stateList.find(item=>item.value===orderItemStatus).key }; diff --git a/aircraft/server/route/route.vue b/aircraft/server/route/route.vue index ba23ef2..08722e2 100644 --- a/aircraft/server/route/route.vue +++ b/aircraft/server/route/route.vue @@ -1,7 +1,7 @@