From f8c90f08969f20af280108a5df07b6870688bb0a Mon Sep 17 00:00:00 2001 From: fox <1466778434@qq.com> Date: Tue, 29 Apr 2025 23:26:03 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=8E=A5=E5=8F=A3=E5=AF=B9=E6=8E=A5;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/model/order.js | 10 ++++++++++ components/order/orderCard.vue | 3 ++- pages/index/center.vue | 14 +++++++++++++- pages_order/order/createOrder.vue | 30 +++++++++++++++--------------- 4 files changed, 40 insertions(+), 17 deletions(-) diff --git a/api/model/order.js b/api/model/order.js index f714648..1a6d0c9 100644 --- a/api/model/order.js +++ b/api/model/order.js @@ -22,6 +22,16 @@ const api = { auth: true, showLoading: true, }, + /** + * 核销订单 + */ + overOrder: { + url: '/order/overOrder', + method: 'POST', + limit: 500, + auth: true, + showLoading: true, + }, /** * 查询订单列表 */ diff --git a/components/order/orderCard.vue b/components/order/orderCard.vue index f1bea89..319ea6e 100644 --- a/components/order/orderCard.vue +++ b/components/order/orderCard.vue @@ -79,8 +79,9 @@ }, onPay() { // todo - this.$api('createSumOrderAgain', { + this.$api('payOrder', { orderId : this.data.id, + // todo: payType -> 支付方式(payType):0-微信支付 1-余额支付 }, res => { if(res.code == 200){ uni.requestPaymentWxPay(res) diff --git a/pages/index/center.vue b/pages/index/center.vue index 309026a..fd036a7 100644 --- a/pages/index/center.vue +++ b/pages/index/center.vue @@ -198,17 +198,29 @@ this.$refs.customerServicePopup.open(phone, title) }, onScan() { - // todo + // todo check uni.scanCode({ success: (res) => { console.log(res); if (res.result) { // 处理扫码结果 console.log('扫码结果:', res.result); + + this.$fetch('overOrder', res.result).then(() => { + uni.showToast({ + title: '核销成功', + icon: 'none' + }) + }) } }, fail: (err) => { console.error('扫码失败:', err); + + uni.showToast({ + title: '扫码失败', + icon: 'none' + }) } }); }, diff --git a/pages_order/order/createOrder.vue b/pages_order/order/createOrder.vue index 8bd44e8..705bb44 100644 --- a/pages_order/order/createOrder.vue +++ b/pages_order/order/createOrder.vue @@ -131,13 +131,12 @@ async fetchCreateOrder() { // todo: check let params = { - 'massageItem.id': this.payOrderProduct[0].id, + itemId: this.payOrderProduct[0].id, amount: this.totalPrice, - + payType : this.payMethod, - // num: this.payOrderProduct[0].num, // id: this.payOrderProduct[0].id, - // payType : this.payMethod, + // num: this.payOrderProduct[0].num, // memberNum : 1, } @@ -150,29 +149,30 @@ return res }, - - async fetchPayOrder() { - // todo - let params = { - - } - - await this.$fetch('payOrder', params) - }, - async submit() { - // todo try { const res = await this.fetchCreateOrder() + if (!res.success) { + return + } + if (this.payMethod == 1) { // 账户余额 } else { // 微信支付 await uni.requestPaymentWxPay(res) } + uni.showToast({ + title: '下单成功', + icon: 'none' + }) + + setTimeout(uni.redirectTo, 700, { + url: '/pages/index/order' + }) } catch (err) { }