Ver código fonte

```
feat(api): 添加findByOrderNumber接口定义

- 在apiDefinitions.ts中添加xsb.findByOrderNumber接口定义
- 在globals.d.ts中添加对应的类型声明
- 定义接口参数包含orderNumber字段

fix(config): 调整开发环境配置

- 注释掉线上开发环境配置
- 启用本地开发环境配置

feat(store): 新增退款订单查询功能

- 在sys.ts中引入router
- 添加getRefunOrder方法用于申请退款时获取订单信息
- 实现根据订单号查询退款订单的功能

refactor(order): 优化售后处理逻辑

- 将handleAfterSale方法改为异步函数
- 调用getRefunOrder方法替代直接路由跳转
- 统一处理订单售后流程

refactor(orderDetaile): 优化订单详情售后处理

- 将handleAfterSale方法改为异步函数
- 调用getRefunOrder方法替代直接路由跳转
- 通过订单号获取退款订单信息
```

zhangtao 4 dias atrás
pai
commit
8c8ce9d24d

+ 1 - 0
src/api/apiDefinitions.ts

@@ -56,6 +56,7 @@ export default {
   'xsb.calculateMoney':['POST', '/smqjh-oms/app-api/v1/refund/calculateMoney'],
   'xsb.riderInfo':['GET', '/smqjh-oms/api/v1/order/riderInfo'],
   'xsb.deliveryNode':['GET', '/smqjh-oms/api/v1/order/deliveryNode'],
+  'xsb.findByOrderNumber':['GET', '/smqjh-oms/app-api/v1/refund/findByOrderNumber'],
 
   'common.myShoppingCart':['GET', '/smqjh-oms/app-api/v1/shoppingCart/myShoppingCart'],
   'common.addShoppingCart':['POST', '/smqjh-oms/app-api/v1/shoppingCart/addShoppingCart'],

+ 9 - 0
src/api/globals.d.ts

@@ -192,6 +192,15 @@ declare global {
       ): Alova2Method<listData<Api.sysDict>, 'sys.dictPage', Config>;
     }
     xsb: {
+      findByOrderNumber<
+        Config extends Alova2MethodConfig<apiResData<Api.xsbOmsOrderItem[]>> & {
+          data: {
+            orderNumber: string;
+          };
+        }
+      >(
+        config: Config
+      ): Alova2Method<apiResData<Api.xsbOmsOrderItem[]>, 'xsb.findByOrderNumber', Config>;
       deliveryNode<
         Config extends Alova2MethodConfig<apiResData<Api.DeliveryNode[]>> & {
           data: {

+ 2 - 2
src/config/index.ts

@@ -2,12 +2,12 @@ const mapEnvVersion = {
   /**
    * 开发版
    */
-  // develop: 'http://192.168.1.166:8080', // 张
+  develop: 'http://192.168.1.166:8080', // 张
   // develop: 'http://192.168.1.101:8080',
   // develop: 'http://192.168.0.157:8080',
   // develop: 'http://192.168.1.253:8080',
   // develop: 'http://192.168.1.89:8080', // 田
-  develop: 'http://47.109.84.152:8081',
+  // develop: 'http://47.109.84.152:8081',
   // develop: 'https://smqjh.api.zswlgz.com',
   /**
    * 体验版

+ 24 - 0
src/store/sys.ts

@@ -1,4 +1,5 @@
 import { defineStore } from 'pinia'
+import router from '@/router'
 
 interface SysState {
 
@@ -64,5 +65,28 @@ export const useSysStore = defineStore('system', {
       const res = await Apis.sys.dictPage({ data: { typeCode: 'sys_applet' } })
       this.isOnlineAudit = res.data?.list[0].value === '0'
     },
+
+    /**
+     * 申请退款获取退款订单信息
+     * @param orderNumber
+     * @returns
+     */
+    async getRefunOrder(orderNumber: string) {
+      uni.showLoading({ mask: true })
+      return new Promise((resolve, reject) => {
+        Apis.xsb.findByOrderNumber({
+          data: {
+            orderNumber,
+          },
+        }).then((res) => {
+          // resolve(res.data)
+          router.push({ name: 'common-afterSales', params: { order: JSON.stringify(res.data) } })
+          uni.hideLoading()
+        }).catch((err) => {
+          reject(err)
+          uni.hideLoading()
+        })
+      })
+    },
   },
 })

+ 2 - 2
src/subPack-smqjh/order/index.vue

@@ -83,12 +83,12 @@ async function handleDel(order: Api.xsbOrderList) {
   await subPackOrder.value?.handleCommonDeleteOrder(order)
   reload()
 }
-function handleAfterSale(item: Api.xsbOrderList) {
+async function handleAfterSale(item: Api.xsbOrderList) {
   if (!item.orderItemList) {
     useGlobalToast().show('商品异常!')
     return
   }
-  router.push({ name: 'common-afterSales', params: { order: JSON.stringify(item.orderItemList) } })
+  await useSysStore().getRefunOrder(item.orderNumber as string)
 }
 </script>
 

+ 2 - 2
src/subPack-xsb/order/index.vue

@@ -75,12 +75,12 @@ async function handleSubmitOrder(order: Api.xsbOrderList) {
   await handleCommonOrderReceive(order)
   reload()
 }
-function handleAfterSale(item: Api.xsbOrderList) {
+async function handleAfterSale(item: Api.xsbOrderList) {
   if (!item.orderItemList) {
     useGlobalToast().show('商品异常!')
     return
   }
-  router.push({ name: 'common-afterSales', params: { order: JSON.stringify(item.orderItemList) } })
+  await useSysStore().getRefunOrder(item.orderNumber as string)
 }
 </script>
 

+ 2 - 2
src/subPack-xsb/orderDetaile/index.vue

@@ -102,12 +102,12 @@ function handleCopy() {
     showToast: true,
   })
 }
-function handleAfterSale() {
+async function handleAfterSale() {
   if (!orderInfo.value?.orderItemList) {
     useGlobalToast().show('商品异常!')
     return
   }
-  router.push({ name: 'common-afterSales', params: { order: JSON.stringify(orderInfo.value?.orderItemList) } })
+  await useSysStore().getRefunOrder(orderInfo.value.orderNumber as string)
 }
 async function getOrderMapInf() {
   const res = await Apis.xsb.riderInfo({ data: { orderNumber: orderNum.value } })

+ 1 - 0
src/subPack-xsb/store-xsb/sys.ts

@@ -91,5 +91,6 @@ export const useSysXsbStore = defineStore('system-xsb', {
         }).catch((err) => { reject(err) })
       })
     },
+
   },
 })