From 41c8926ebd9f056894017cc3ab4aa5b6e6a2bc70 Mon Sep 17 00:00:00 2001 From: donqi Date: Mon, 12 Sep 2022 00:21:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=B5=81=E7=A8=8B=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/js/request.js | 12 +- pages/order-manage/dispatch-order.vue | 9 +- .../order-manage/modal/edit-time-arrange.vue | 2 +- pages/order-manage/modal/time-arrange.vue | 2 +- pages/order-manage/order-manage.vue | 103 +++++++++++------- pages/order-manage/serv-detail.vue | 14 +-- 6 files changed, 88 insertions(+), 54 deletions(-) diff --git a/common/js/request.js b/common/js/request.js index 663bcbf..bc68785 100644 --- a/common/js/request.js +++ b/common/js/request.js @@ -13,8 +13,8 @@ export default { }) let userInfo = _this.getCurUserInfo(); // request 触发前拼接 url - args.url = 'https://www.opsoul.com' + args.url; - // args.url = 'http://127.0.0.1:80' + args.url; + // args.url = 'https://www.opsoul.com' + args.url; + args.url = 'http://127.0.0.1:80' + args.url; // args.url = 'http://192.168.2.42:80' + args.url; if (!args.data) { @@ -440,6 +440,14 @@ export default { }) return res[1].data; }, + async qryMixOrderList(params = {}) { + let res = await uni.request({ + url: '/order/app/mix/order/list', + method: 'POST', + data: params + }) + return res[1].data; + }, async updateOrder(params = {}) { let res = await uni.request({ url: '/order/master/editOrderMaster', diff --git a/pages/order-manage/dispatch-order.vue b/pages/order-manage/dispatch-order.vue index 64bbeca..967fa7c 100644 --- a/pages/order-manage/dispatch-order.vue +++ b/pages/order-manage/dispatch-order.vue @@ -19,7 +19,10 @@ - + + 本单任务金额:{{totalMoney}} + + 派单价格 @@ -90,6 +93,10 @@ orderNow: { type: Boolean, default: false + }, + totalMoney: { + type: Number, + default: null } }, data() { diff --git a/pages/order-manage/modal/edit-time-arrange.vue b/pages/order-manage/modal/edit-time-arrange.vue index c634d49..9bd1887 100644 --- a/pages/order-manage/modal/edit-time-arrange.vue +++ b/pages/order-manage/modal/edit-time-arrange.vue @@ -150,7 +150,7 @@ return; } // let datetime = this.date + ' ' + (this.time || this.timeRange) + ':00'; - this.$emit('editServTime', this.data.orderDetailId, [this.expectTimeStart, this.expectTimeEnd], this.ifRollback2WS); + this.$emit('editServTime', this.data.orderDetailId, [this.expectTimeStart, this.expectTimeEnd], this.ifRollback2WS, this.data); this.hideModal(e); }, changeReasonRadio(e) { diff --git a/pages/order-manage/modal/time-arrange.vue b/pages/order-manage/modal/time-arrange.vue index 15e4441..c3cb64a 100644 --- a/pages/order-manage/modal/time-arrange.vue +++ b/pages/order-manage/modal/time-arrange.vue @@ -128,7 +128,7 @@ return; } // let datetime = this.date + ' ' + this.time + ':00'; - this.$emit('editServTime', this.data.orderMasterId, [this.expectTimeStart, this.expectTimeEnd]); + this.$emit('editServTime', this.data.orderMasterId, [this.expectTimeStart, this.expectTimeEnd], false, this.data); this.hideModal(e); }, makePhoneCall(phoneNum) { diff --git a/pages/order-manage/order-manage.vue b/pages/order-manage/order-manage.vue index d63dd86..df41d35 100644 --- a/pages/order-manage/order-manage.vue +++ b/pages/order-manage/order-manage.vue @@ -100,7 +100,7 @@ 服务时间:{{order.expectTimeStart + '~' + order.expectTimeEnd}} - + 上门时间:{{order.workBeginTime}} @@ -114,7 +114,7 @@ :second="$dateUtil.countDownDiff(order.expectTimeEnd).seconds"> - + 完成时间:{{order.workFinishTime}} @@ -134,27 +134,29 @@ --> - + + + - - + + - - + + - + - - - + + + @@ -216,7 +218,8 @@ 备注:{{order.customerRemark}} - + + @@ -230,7 +233,7 @@ - + 无可指派的师傅 @@ -384,15 +387,13 @@ // } this.pageNum = 1; this.orderList = []; - this.$refs.loadStatusBar.showLoadMore(); + // this.$refs.loadStatusBar.showLoadMore(); this.loadMasterOrderPage(); // 订单统计 this.loadOrderStatistics(); }, async loadMasterOrderPage(params = {}) { params.pageSize = this.$globalData.initPageSize; - // params.orderStatus = this.subStateList[this.tabCur].code; - // params.pageNum = this.pageParams[this.tabCur].pageNum; params.pageNum = this.pageNum; params.goodsName = this.formData.orderKeywords; params.countryId = this.formData.area && this.formData.area.length > 2 ? this.formData.area[2].areaId : null; @@ -402,28 +403,32 @@ } else if (this.stateCur != null) { params.orderStatus = this.stateList[this.stateCur].code; } - this.$refs.loadStatusBar.showLoading(); try { let res = null; // 不同状态的单需要请求不同接口 - if (this.tabCur === 0 || this.stateCur != null) { - res = await this.$request.qryMasterOrderPage(params); - } else { + if (this.tabCur === 4) { + // 已完成状态只查询子单,需要进行分页处理 + this.$refs.loadStatusBar.showLoading(); res = await this.$request.qryDetailOrderPage(params); - } - if (res && res.rows) { - let rowsLength = res.rows.length; - if (rowsLength > 0) { - this.orderList = this.orderList.concat(res.rows); - // this.pageParams[this.tabCur].pageNum++; - this.pageNum++; - if (rowsLength === params.pageSize) { - this.$refs.loadStatusBar.showLoadMore(); - return; + if (res && res.rows) { + let rowsLength = res.rows.length; + if (rowsLength > 0) { + this.orderList = this.orderList.concat(res.rows); + this.pageNum++; + if (rowsLength === params.pageSize) { + this.$refs.loadStatusBar.showLoadMore(); + return; + } } } + this.$refs.loadStatusBar.showLoadOver(); + } else { + // 其他状态下的单需要展示主单及子单的混合列表,不做分页处理 + res = await this.$request.qryMixOrderList(params); + if (res && res.data) { + this.orderList = res.data; + } } - this.$refs.loadStatusBar.showLoadOver(); } catch (e) { console.error(e) this.$refs.loadStatusBar.showLoadErr(); @@ -614,11 +619,14 @@ data: data }); }, - async editServTime(id, datetimeArr, ifRollback2WS) { + async editServTime(id, datetimeArr, ifRollback2WS, order) { // 确定方法名 - let reqFunName = "updateDetailOrder"; - if (this.tabCur === 0) { - reqFunName = "updateOrder" + let reqFunName = "updateOrder"; + if (this.tabCur === 0 && order.orderDetailId == null) { + id = order.orderMasterId; + } else { + reqFunName = "updateDetailOrder"; + id = order.orderDetailId; } // 确定参数 let params = datetimeArr && datetimeArr.length > 1 ? { @@ -642,14 +650,17 @@ if (statusUpdateRes && statusUpdateRes.code === 0) { finishFlag = true; } + } else if (order && order.orderDetailId == null) { + finishFlag = await this.assignWork2MySelf(order); } else { - finishFlag = true; + finishFlag = await this.updateOrderStatus(order.orderDetailId, 2, 'updateDetailOrder'); } if (finishFlag) { this.reloadMasterOrderPage(); uni.showToast({ - title: '修改成功', - icon: 'success' + title: '预约时间成功', + icon: 'none', + duration: 2000 }) } } @@ -734,9 +745,9 @@ } return true; }, - async updateMasterOrder(order, status) { - let res = await this.$request.updateMasterOrder({ - id: order.orderMasterId, + async updateOrderStatus(id, status, funName) { + let res = await this.$request[funName]({ + id: id, orderStatus: status, }); if (res && res.code === 0) { @@ -744,7 +755,9 @@ uni.showToast({ icon: 'success' }) + return true; } + return false; }, updateRefundStatus(status, index) { this.orderList[index].refundStatus = status; @@ -769,6 +782,10 @@ let res = await this.$request.updateDetailOrder(params); if (res && res.code === 0) { this.reloadMasterOrderPage(); + uni.showToast({ + icon: 'success', + duration: 1000 + }) } }, /* modal,popup确认或关闭后的回调 */ @@ -786,11 +803,13 @@ title: '派单成功', icon: 'success' }) + return true; } else { uni.showToast({ title: '派单失败,请确认派单价格不高于本订单价格', icon: 'none' }) + return false; } }, async assignWork2MySelf(orderInfo) { @@ -812,7 +831,7 @@ orderMasterId: orderInfo.orderMasterId, isAll: 1 } - this.assignWork(params); + return await this.assignWork(params); } } } diff --git a/pages/order-manage/serv-detail.vue b/pages/order-manage/serv-detail.vue index 4f656e7..fff59df 100644 --- a/pages/order-manage/serv-detail.vue +++ b/pages/order-manage/serv-detail.vue @@ -59,7 +59,7 @@ 排单时间:{{servDetail.mainServOrder.boodTime}} --> - + 上门时间:{{servDetail.workBeginTime}} @@ -89,7 +89,7 @@ - + 完成记录 @@ -100,7 +100,7 @@ - + 完工图片 @@ -117,12 +117,12 @@ - 订单编码:{{servDetail.orderMasterCode}} - 订单编码:{{servDetail.orderDetailCode}} + 订单编码:{{servDetail.orderDetailCode}} + 订单编码:{{servDetail.orderMasterCode}} 订单时间:{{servDetail.createTime}} - +