From e015eaef9e323744ef61c324084062eb1765faa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Wed, 4 Feb 2026 17:38:51 +0800 Subject: [PATCH] =?UTF-8?q?feat(order):=20=E6=B7=BB=E5=8A=A0=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E9=80=80=E6=AC=BE=E5=8A=9F=E8=83=BD=E5=B9=B6=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=94=A8=E6=88=B7=E7=A5=A8=E5=88=B8=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 refundShopOrder API 接口用于处理订单退款申请 - 在 shopOrder 页面添加退款相关操作按钮和逻辑 - 修改用户票券页面表格列配置,添加订单号和数量字段 - 更新订单详情页面商品数量字段映射关系 - 启用开发环境 API 地址配置 --- .env.development | 2 +- src/api/shop/shopOrder/index.ts | 15 +++++++++ src/views/glt/gltUserTicket/index.vue | 31 ++++++++++++------- .../shop/shopOrder/components/orderInfo.vue | 4 +-- src/views/shop/shopOrder/index.vue | 6 ++-- 5 files changed, 41 insertions(+), 17 deletions(-) diff --git a/.env.development b/.env.development index b8ccd8b..fbcc74b 100644 --- a/.env.development +++ b/.env.development @@ -1,5 +1,5 @@ VITE_APP_NAME=后台管理(开发环境) -#VITE_API_URL=http://127.0.0.1:9200/api +VITE_API_URL=http://127.0.0.1:9200/api #VITE_SERVER_API_URL=http://127.0.0.1:8000/api diff --git a/src/api/shop/shopOrder/index.ts b/src/api/shop/shopOrder/index.ts index d0107ac..3dddf75 100644 --- a/src/api/shop/shopOrder/index.ts +++ b/src/api/shop/shopOrder/index.ts @@ -135,3 +135,18 @@ export async function shopOrderTotal(params?: ShopOrderParam) { } return Promise.reject(new Error(res.data.message)); } + + +/** + * 申请|同意退款 + */ +export async function refundShopOrder(data: ShopOrder) { + const res = await request.put>( + MODULES_API_URL + '/shop/shop-order/refund', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/views/glt/gltUserTicket/index.vue b/src/views/glt/gltUserTicket/index.vue index 6251eb2..548c98e 100644 --- a/src/views/glt/gltUserTicket/index.vue +++ b/src/views/glt/gltUserTicket/index.vue @@ -31,6 +31,9 @@ + @@ -128,6 +131,12 @@ key: 'templateName', align: 'center' }, + { + title: '订单号', + dataIndex: 'orderNo', + key: 'orderNo', + align: 'center' + }, { title: '金额', dataIndex: 'payPrice', @@ -135,38 +144,38 @@ align: 'center', customRender: ({ text }) => `¥${text.toFixed(2)}` }, - // { - // title: '商品ID', - // dataIndex: 'goodsId', - // key: 'goodsId', - // align: 'center' - // }, { - title: '赠送数量(桶)', + title: '购买数量', + dataIndex: 'buyQty', + key: 'buyQty', + align: 'center' + }, + { + title: '总数量', dataIndex: 'totalQty', key: 'totalQty', align: 'center' }, { - title: '可用(桶)', + title: '可配送', dataIndex: 'availableQty', key: 'availableQty', align: 'center' }, { - title: '冻结(桶)', + title: '待赠送', dataIndex: 'frozenQty', key: 'frozenQty', align: 'center' }, { - title: '已使用(桶)', + title: '已使用', dataIndex: 'usedQty', key: 'usedQty', align: 'center' }, { - title: '已释放(桶)', + title: '已释放', dataIndex: 'releasedQty', key: 'releasedQty', align: 'center' diff --git a/src/views/shop/shopOrder/components/orderInfo.vue b/src/views/shop/shopOrder/components/orderInfo.vue index 9267dd2..b926c23 100644 --- a/src/views/shop/shopOrder/components/orderInfo.vue +++ b/src/views/shop/shopOrder/components/orderInfo.vue @@ -736,10 +736,10 @@ }, { title: '数量', - dataIndex: 'quantity', + dataIndex: 'totalNum', align: 'center' as const, customRender: ({ record }: { record: any }) => { - return record.quantity || 1; + return record.totalNum || 1; } }, { diff --git a/src/views/shop/shopOrder/index.vue b/src/views/shop/shopOrder/index.vue index 10a7334..f627d11 100644 --- a/src/views/shop/shopOrder/index.vue +++ b/src/views/shop/shopOrder/index.vue @@ -275,7 +275,7 @@ repairOrder, removeShopOrder, removeBatchShopOrder, - updateShopOrder + updateShopOrder, refundShopOrder } from '@/api/shop/shopOrder'; import { updateUser } from '@/api/system/user'; import { getPayType } from '@/utils/shop'; @@ -579,7 +579,7 @@ const now = new Date(); const refundTime = toDateString(now, 'yyyy-MM-dd HH:mm:ss'); - await updateShopOrder({ + await refundShopOrder({ ...record, orderStatus: 6, // 退款成功 refundTime: refundTime @@ -643,7 +643,7 @@ const now = new Date(); const refundApplyTime = toDateString(now, 'yyyy-MM-dd HH:mm:ss'); - await updateShopOrder({ + await refundShopOrder({ ...record, orderStatus: 4, // 退款申请中 refundApplyTime: refundApplyTime