Explorar o código

Merge tag '2.3.0' into develop

2.3.0
张田田 hai 2 meses
pai
achega
7165e99ba4
Modificáronse 23 ficheiros con 138 adicións e 128 borrados
  1. 28 24
      miniprogram/module/article/pages/manage-address/manage-address.ts
  2. 1 1
      miniprogram/module/article/pages/success-page/success-page.scss
  3. 4 1
      miniprogram/module/article/pages/success-page/success-page.ts
  4. 10 13
      miniprogram/module/care/pages/care/verifyRecord.ts
  5. 2 1
      miniprogram/module/care/pages/care/verifyRecord.wxml
  6. 1 1
      miniprogram/module/care/pages/careDetail/careDetail.wxml
  7. 4 1
      miniprogram/module/care/pages/offlineTreatment/offlineTreatment.ts
  8. 4 4
      miniprogram/module/care/pages/offlineTreatment/offlineTreatment.wxml
  9. 1 1
      miniprogram/module/health/components/care-record/care-record.ts
  10. 1 1
      miniprogram/module/health/pages/scheme/scheme.ts
  11. 1 1
      miniprogram/module/order/pages/appointment/appointment.scss
  12. 11 42
      miniprogram/module/order/pages/appointment/appointment.ts
  13. 1 1
      miniprogram/module/order/pages/appointment/appointment.wxml
  14. 8 4
      miniprogram/module/order/pages/confirme-order/confirme-order.ts
  15. 10 5
      miniprogram/module/order/pages/order-detail/order-detail.ts
  16. 2 2
      miniprogram/module/order/pages/other-detail/other-detail.scss
  17. 8 4
      miniprogram/module/order/pages/other-detail/other-detail.ts
  18. 4 4
      miniprogram/module/order/pages/select-goods/select-goods.ts
  19. 4 0
      miniprogram/pages/home/home.scss
  20. 10 0
      miniprogram/pages/home/home.ts
  21. 5 4
      miniprogram/pages/home/home.wxml
  22. 8 0
      miniprogram/pages/mine/mine.ts
  23. 10 13
      miniprogram/utils/util.ts

+ 28 - 24
miniprogram/module/article/pages/manage-address/manage-address.ts

@@ -40,28 +40,36 @@ Page({
       liaison: address.liaison,
       phone: address.phone,
     };
-   await orderPayAddressMethod(id, data);
+    await orderPayAddressMethod(id, data);
   },
   // 选择地址
   async selectAddress(e: any) {
     const item = e.currentTarget.dataset.item;
     const type = wx.getStorageSync("type");
     const orderId = wx.getStorageSync("orderId");
-    console.log(type, "页面切换type", item);
     const pages = getCurrentPages();
-    console.log(pages, "pages");
+
+
+    const findTargetPageIndex = (targetRoute: string) => {
+      for (let i = pages.length - 1; i >= 0; i--) {
+        if (pages[i].route === targetRoute) {
+          return pages.length - 1 - i; // 需要返回的层级数
+        }
+      }
+      return -1;
+    };
+
     if (type === "orderDetail") {
-      console.log(orderId, "订单详情");
       // 订单详情 切换地址
-      const orderPage = pages.find(
-        (page:any) =>
-          // page.route === "module/article/pages/order-detail/order-detail"
-          page.route === "module/order/pages/order-detail/order-detail"
-      );
-      console.log(orderPage, "orderPage===");
       try {
         await this.updataOrderAddress(orderId, item);
-        if (orderPage) {
+        const targetRoute = "module/order/pages/order-detail/order-detail";
+        const delta = findTargetPageIndex(targetRoute);
+        if (delta > 0) {
+          // 返回到目标页面
+          wx.navigateBack({ delta });
+        } else {
+          // 如果找不到目标页面,返回到上一页
           wx.navigateBack();
         }
       } catch (error: any) {
@@ -69,36 +77,32 @@ Page({
       }
     } else if (type === "orderList") {
       // 订单列表 切换地址
-      const findPage = pages.find(
-        (page) => page.route === "module/article/pages/order-list/order-list"
-      );
       try {
         await this.updataOrderAddress(orderId, item);
-        if (findPage) {
-          wx.redirectTo({
-            url: "/" + findPage.route + "?tab=pending",
-          });
+        const targetRoute = "module/article/pages/order-list/order-list";
+        const delta = findTargetPageIndex(targetRoute);
+        if (delta > 0) {
+          wx.navigateBack({ delta });
+        } else {
+          wx.navigateBack();
         }
       } catch (error: any) {
         getTickleContext.call(this).showWarnMessage(error.errMsg);
       }
-    } else if(type === "confirmeOrder") {
-      console.log(item, "item======用户选择的地址");
+    } else if (type === "confirmeOrder") {
       wx.setStorageSync('selectedAddress', item);
       // 确认订单页面 切换地址
       const confirmeOrderPage = pages.find(
-        (page:any) =>
+        (page: any) =>
           page.route === "module/order/pages/confirme-order/confirme-order"
       );
-      console.log(confirmeOrderPage, "confirmeOrderPage======确认订单页面");
       if (confirmeOrderPage) {
         wx.redirectTo({
           url: "/" + confirmeOrderPage.route + "?isDefault=1",
         });
       }
-    }else{
+    } else {
       // 其他页面 切换地址
-    
     }
   },
   // 搜索

+ 1 - 1
miniprogram/module/article/pages/success-page/success-page.scss

@@ -1,6 +1,6 @@
 @import "../../../../themes/page.scss";
 @import "../../searc-list.scss";
-/* module/diet/pages/diet-info/diet-info.wxss */
+/* module/diet/pages/success-page/success-page.wxss */
 
 .page-scroll__container {
   background: white;

+ 4 - 1
miniprogram/module/article/pages/success-page/success-page.ts

@@ -24,7 +24,10 @@ Page({
     }
   },
     onBackOrderList() {
-      wx.redirectTo({ url: '/module/article/pages/order-list/order-list' });
+      // wx.redirectTo({ url: '/module/article/pages/order-list/order-list' });
+      // 先到「我的」再自动进订单列表,这样订单列表返回时栈上是「我的」
+      wx.setStorageSync("fromSuccessToOrderList", "1");
+      wx.redirectTo({ url: "/pages/mine/mine" });
     },
     async load() {
       wx.showLoading({ title: '加载中' });

+ 10 - 13
miniprogram/module/care/pages/care/verifyRecord.ts

@@ -1,4 +1,4 @@
-import {  Post } from "../../../../lib/request/method";
+import { Post } from "../../../../lib/request/method";
 Page({
   data: {
     id: "",
@@ -16,17 +16,16 @@ Page({
     showAppointmentInfo: false,
   },
   onLoad(options: any) {
-    console.log(options, '传过来的参数')
     if (options.id) {
       this.getVerifyRecordList(options.id);
     }
   },
-    // 生成二维码
-    generateQRCode(qrCodeUrl:any) {
-      this.setData({
-        qrCodeUrl
-      });
-    },
+  // 生成二维码
+  generateQRCode(qrCodeUrl: any) {
+    this.setData({
+      qrCodeUrl
+    });
+  },
   // 获取核销记录列表
   async getVerifyRecordList(id: number) {
     try {
@@ -39,21 +38,19 @@ Page({
           },
         }
       );
-      console.log(res, "res===核销记录列表")
-      if(res && res.patientConditioningSwagItemOffline && JSON.stringify(res.patientConditioningSwagItemOffline) !== '{}'){
+      if (res && res.patientConditioningSwagItemOffline && JSON.stringify(res.patientConditioningSwagItemOffline) !== '{}') {
         this.setData({
           showAppointmentInfo: true,
         });
         this.setData({
           appointmentInfo: res.patientConditioningSwagItemOffline,
         });
-         this.generateQRCode(this.data.appointmentInfo.cpSupplierQrCode);
-      }else{
+        this.generateQRCode(this.data.appointmentInfo.cpSupplierQrCode);
+      } else {
         this.setData({
           showAppointmentInfo: false,
         });
       }
-      console.log(this.data.appointmentInfo, "this.data.appointmentInfo")
       if (res && res.patientConditioningSwagItemOfflines && res.patientConditioningSwagItemOfflines.length > 0) {
         this.setData({
           recordList: res.patientConditioningSwagItemOfflines,

+ 2 - 1
miniprogram/module/care/pages/care/verifyRecord.wxml

@@ -26,7 +26,8 @@
         </view>
         <view class="info-item" wx:if="{{appointmentInfo.conditioningProgramSupplierName}}">
           <text class="info-label">服务机构:</text>
-          <text class="info-value">{{appointmentInfo.conditioningProgramSupplierName}}</text>
+          <text class="info-value" wx:if="{{appointmentInfo.pieTime}}">{{appointmentInfo.conditioningProgramSupplierName}}</text>
+          <text class="info-value" wx:else>待分配</text>
         </view>
         <view class="info-item" wx:if="{{appointmentInfo.cpSupplierDetailAddress}}">
           <text class="info-label">服务地址:</text>

+ 1 - 1
miniprogram/module/care/pages/careDetail/careDetail.wxml

@@ -112,7 +112,7 @@
               </view>
               <view class="scheme-row light">
                 <text class="text-gray">数量:</text>
-                <text>{{item.totalMeasure}}{{item.conditioningProgramDetail.cpFixedPricingRule.convertUnit}}</text>
+                <text>{{item.totalMeasure}}{{item.pricingUnit}}</text>
 
               </view>
               <view class="scheme-row between">

+ 4 - 1
miniprogram/module/care/pages/offlineTreatment/offlineTreatment.ts

@@ -19,6 +19,9 @@ Page({
         treatmentId: options.id,
       });
     }
+    // await this.getOfflineTreatmentList("");
+  },
+  async onShow() {
     await this.getOfflineTreatmentList("");
   },
   // 跳转到核销记录
@@ -48,7 +51,7 @@ Page({
       wx.navigateTo({
         url: `/module/order/pages/appointment/appointment?goodsInfo=${JSON.stringify(goodsInfo)}`,
       });
-    }else{
+    } else {
       wx.showToast({
         title: "线下服务ID不能为空",
         icon: "none",

+ 4 - 4
miniprogram/module/care/pages/offlineTreatment/offlineTreatment.wxml

@@ -25,15 +25,15 @@
             </view>
             <view class="row">
               <text class="sub-label">频次:</text>
-              每{{item.frequencyType}}天{{item.frequencyMeasure}}{{item.convertUnit??'次'}}
+              每{{item.frequencyType}}天{{item.frequencyMeasure}}{{item.convertUnit?item.convertUnit: '次'}}
             </view>
             <view class="row">
               <text class="sub-label">下次时间:</text>
-              {{item.arrangeDate ?? '-'}} {{item.arrangeTime ?? ''}}{{item.applyTime?'(已预约)':''}}
+              {{item.arrangeDate?item.arrangeDate: '-'}} {{item.arrangeTime ?item.arrangeTime: ''}}{{item.applyTime?'(已预约)':''}}
             </view>
-            <view class="row">
+            <view class="row" wx:if="{{item.pieTime}}">
               <text class="sub-label">机构:</text>
-              {{item.conditioningProgramSupplierName ?? '-'}}
+              {{item.conditioningProgramSupplierName || '-'}}
             </view>
             <view class="divider"></view>
           </view>

+ 1 - 1
miniprogram/module/health/components/care-record/care-record.ts

@@ -27,7 +27,7 @@ Component({
       const name = e.currentTarget.dataset.name;
       if (id) {
         wx.navigateTo({
-          url: `/module/care/pages/careDetail/careDetail?id=${id}&name=${name}`,
+          url: `/module/care/pages/careDetail/careDetail?id=${id}&name=${name ? name : ''}`,
         });
       } else {
         wx.showToast({

+ 1 - 1
miniprogram/module/health/pages/scheme/scheme.ts

@@ -53,7 +53,7 @@ Component({
     goToProductPage() {
       wx.setStorageSync('healthAnalysisReportId', this.data.id);
       if (this.data.id) {
-        wx.navigateTo({
+        wx.redirectTo({
           url: `/module/order/pages/select-goods/select-goods?healthAnalysisReportId=${this.data.id}`,
           fail: (err) => {
             getTickleContext.call(this).showWarnMessage(err.errMsg || "跳转失败");

+ 1 - 1
miniprogram/module/order/pages/appointment/appointment.scss

@@ -1,7 +1,7 @@
 @import "../../../../themes/t.cell.scss";
 @import "../../../../themes/page.scss";
 
-/* module/order/pages/confirme-order/confirme-order.wxss */
+/* module/order/pages/appointment/appointment.wxss */
 .page-scroll__container {
   flex: 0 1 auto;
   height: var(--page-container-safeHeight, 100vh);

+ 11 - 42
miniprogram/module/order/pages/appointment/appointment.ts

@@ -1,10 +1,8 @@
 import PageContainerBehavior from "../../../../core/behavior/page-container.behavior";
 import DictionariesBehavior from "../../../../core/behavior/dictionaries.behavior";
-import tickleBehavior, {
-  getTickleContext,
-} from "../../../../core/behavior/tickle.behavior";
+import tickleBehavior from "../../../../core/behavior/tickle.behavior";
 import { patientOfflineTreatmentAppointmentMethod } from "../../request";
-// module/order/pages/confirme-order/confirme-order.ts
+// module/order/pages/appointment/appointment.ts
 Page({
   behaviors: [PageContainerBehavior, DictionariesBehavior, tickleBehavior],
   data: {
@@ -27,7 +25,7 @@ Page({
     offlineId: "",
   },
   onLoad(options: any) {
-    // 初始化日期列表(从今天开始5天),内部会调用 initTimeSlots
+    // 初始化日期列表(从今天开始5天)
     this.initDateList();
     if (options.goodsInfo) {
       const goodsInfo = JSON.parse(options.goodsInfo);
@@ -194,9 +192,7 @@ Page({
     }
     console.log(this.data.selectedDate, "this.data.selectedDate", this.data.selectedTime, "this.data.selectedTime", this.data.offlineId, "this.data.offlineId")
 
-    // const selectedDateItem = this.data.dateList.find(item => item.isSelected);
     const appointmentTime = `${this.data.selectedDate} ${this.data.selectedTime}`;
-    // console.log(selectedDateItem, "selectedDateItem")
     console.log(appointmentTime, "appointmentTime");
     console.log(this.data.offlineId, "this.data.offlineId");
     this.setData({
@@ -206,18 +202,17 @@ Page({
       },
     });
     try {
-      const res = await patientOfflineTreatmentAppointmentMethod(this.data.offlineId, appointmentTime);
-      console.log(res, "res========预约结果")
-
+      await patientOfflineTreatmentAppointmentMethod(this.data.offlineId, appointmentTime);
+      wx.showToast({
+        title: '预约成功',
+        icon: 'success',
+      });
       setTimeout(() => {
-        wx.showToast({
-          title: '预约成功',
-          icon: 'success',
+        wx.redirectTo({
+          url: `/module/order/pages/appointment-success/appointment-success?goodsInfo=${JSON.stringify(this.data.goodsInfo)}`,
         });
       }, 1000);
-      wx.redirectTo({
-        url: `/module/order/pages/appointment-success/appointment-success?goodsInfo=${JSON.stringify(this.data.goodsInfo)}`,
-      });
+
     } catch (error: any) {
       wx.showToast({
         title: error.errMsg || "预约失败",
@@ -225,32 +220,6 @@ Page({
       });
       console.log(error, "error")
     }
-    // 预约成功后跳转到成功页面,传递预约信息
-    // const selectedDateItem = this.data.dateList.find(item => item.isSelected);
-    // const serviceTime = selectedDateItem
-    //   ? `${selectedDateItem.dateStr} ${this.data.selectedTime || '09:00'}`
-    //   : '12月30日 09:00';
-    // console.log('提交预约:', {
-    //   service: this.data.serviceInfo.name,
-    //   date: selectedDateItem?.label + ' ' + selectedDateItem?.dateStr,
-    //   time: this.data.selectedTime,
-    //   time:appointmentTime,
-    //   offlineId: this.data.offlineId,
-    // });
-
-    // // TODO: 调用预约接口
-    // wx.showToast({
-    //   title: '预约成功',
-    //   icon: 'success',
-    // });
-
-
-
-    // setTimeout(() => {
-    //   wx.redirectTo({
-    //     url: `/module/order/pages/appointment-success/appointment-success?serviceName=${encodeURIComponent(this.data.serviceInfo.name)}&serviceTime=${encodeURIComponent(serviceTime)}&duration=${this.data.serviceInfo.duration}`,
-    //   });
-    // }, 500);
   },
 
   // 打开日历弹窗

+ 1 - 1
miniprogram/module/order/pages/appointment/appointment.wxml

@@ -1,4 +1,4 @@
-<!--module/order/pages/confirme-order/confirme-order.wxml-->
+<!--module/order/pages/appointment/appointment.wxml-->
 <t-navbar title="预约" left-arrow />
 <scroll-view class="page-scroll__container" type="list" scroll-y style="{{containerStyle}}">
   <!-- 服务信息卡片 -->

+ 8 - 4
miniprogram/module/order/pages/confirme-order/confirme-order.ts

@@ -224,10 +224,14 @@ Page({
           });
         }, (error: any) => {
           this.setData({ isPaymentLoading: false });
-          wx.showToast({
-            title: error?.errMsg || error?.message || "支付失败,请重试",
-            icon: "none",
-          });
+          if (error?.errMsg === 'requestPayment:fail cancel') {
+            // 支付取消跳到支付订单页面
+            wx.navigateBack({ delta: 1 });
+          }
+          // wx.showToast({
+          //   title: error?.errMsg || error?.message || "支付失败,请重试",
+          //   icon: "none",
+          // });
         });
       } else {
         wx.showToast({

+ 10 - 5
miniprogram/module/order/pages/order-detail/order-detail.ts

@@ -173,7 +173,7 @@ Page({
     this.setData({ isPaymentLoading: true });
     try {
       // 调用支付接口
-      const payResult = await orderPayMethod(this.data.id, this.data.orderDetail?.remark);
+      const payResult = await orderPayMethod(this.data.id, (this.data.orderDetail as any)?.remark || '');
       if (payResult) {
         const paymentParams = payResult;
         handleWeChatPayment(paymentParams, (res: any) => {
@@ -183,10 +183,15 @@ Page({
           });
         }, (error: any) => {
           this.setData({ isPaymentLoading: false });
-          wx.showToast({
-            title: error?.errMsg || error?.message || "支付失败,请重试",
-            icon: "none",
-          });
+          if (error?.errMsg === 'requestPayment:fail cancel') {
+          // 支付取消跳到支付订单页面
+            wx.navigateBack({ delta: 1 });
+          }
+          console.log(error, '支付失败');
+          // wx.showToast({
+          //   title: error?.errMsg || error?.message || "支付失败,请重试",
+          //   icon: "none",
+          // });
         });
       } else {
         wx.showToast({

+ 2 - 2
miniprogram/module/order/pages/other-detail/other-detail.scss

@@ -194,13 +194,13 @@
 }
 
 .goods-status {
-  font-size: 24rpx;
+  font-size: 30rpx;
   font-weight: 400;
   color: #ff9500;
   flex-shrink: 0;
   white-space: nowrap;
   background: white;
-  padding: 0 40rpx 0 0;
+  padding: 0 30rpx 0 0;
   text-align: end;
 }
 

+ 8 - 4
miniprogram/module/order/pages/other-detail/other-detail.ts

@@ -212,10 +212,14 @@ Page({
           });
         }, (error: any) => {
           this.setData({ isPaymentLoading: false });
-          wx.showToast({
-            title: error.errMsg || "支付失败,请重试",
-            icon: "none",
-          });
+          if (error?.errMsg === 'requestPayment:fail cancel') {
+           // 支付取消跳到支付订单页面
+            wx.navigateBack({ delta: 1 });
+          }
+          // wx.showToast({
+          //   title: error.errMsg,
+          //   icon: "none",
+          // });
         });
       } else {
         wx.showToast({

+ 4 - 4
miniprogram/module/order/pages/select-goods/select-goods.ts

@@ -87,7 +87,7 @@ Component({
       // 单价为0的商品,如果勾选,数量固定为1
       if (goods.price === 0) {
         if (checked) {
-          goods.quantity = 1;
+        goods.quantity = 1;
         } else {
           goods.quantity = 0;
         }
@@ -129,7 +129,7 @@ Component({
       // 单价为0的商品数量固定为1(如果被选中)
       if (goods.price === 0) {
         // 0元商品数量固定为1,不允许通过按钮修改
-        return;
+            return;
       } else {
         // 非0价格商品的正常逻辑
         let newQuantity = goods.quantity;
@@ -164,13 +164,13 @@ Component({
       // 单价为0的商品数量固定为1,不允许修改
       if (goods.price === 0) {
         // 保持数量为1
-        goods.quantity = 1;
+          goods.quantity = 1;
         this.setData({ goodsList });
         return;
       }
 
       const value = parseInt(e.detail.value) || 0;
-      goods.quantity = Math.max(0, value);
+        goods.quantity = Math.max(0, value);
 
       this.setData({ goodsList });
     },

+ 4 - 0
miniprogram/pages/home/home.scss

@@ -729,4 +729,8 @@ $scale: 0.5;
   display: flex;
   flex-direction: column;
   align-items: flex-start;
+}
+.ins-box {
+  display: flex;
+  align-items: center;
 }

+ 10 - 0
miniprogram/pages/home/home.ts

@@ -305,6 +305,16 @@ Page({
       });
     }
   },
+  // 长按复制机构名称
+  onCopyInstitutionName(e: any) {
+    const name = e.currentTarget.dataset.name;
+    if (name) {
+      wx.setClipboardData({
+        data: name,
+        success: () => wx.showToast({ title: "已复制", icon: "none" }),
+      });
+    }
+  },
   onClose() {
     this.setData({
       isShowPopup: false,

+ 5 - 4
miniprogram/pages/home/home.wxml

@@ -111,17 +111,18 @@
                         <text>{{item.totalMeasure}}次</text></text>
 
                     </view>
-                    <view>频次:每{{item.frequencyType}}天{{item.frequencyMeasure}}{{item.convertUnit}}</view>
+                    <view>频次:每{{item.frequencyType}}天{{item.frequencyMeasure}}{{item.convertUnit?item.convertUnit:'次'}}</view>
                     <view>开具医生:{{item.operateBy}}</view>
-                    <view wx:if="{{item.sellType==='2'}}">机构:{{item.conditioningProgramSupplierName}}</view>
+                    <view wx:if="{{item.sellType==='2'}}" class="ins-box"><text>机构:</text><text class="copyable-text" catchlongpress="onCopyInstitutionName" data-name="{{item.conditioningProgramSupplierName}}">
+                    {{item.conditioningProgramSupplierName?item.conditioningProgramSupplierName:'-'}}</text></view>
                   </view>
                 </view>
                 <view data-id="{{item.id}}" wx:if="{{item.sellType!=='2'}}" class="verify-record" bindtap="isGoPunchcard" data-signinTime="{{item.signinTime}}">{{
                       item.signinTime?'已打卡':'打卡'
                     }}</view>
                     <view class="right-btn">
-                <view catchtap="onRecord" data-id="{{item.id}}" wx:if="{{item.sellType==='2'}}" class="verify-record">核销记录</view>
-                <view catchtap="{{item.applyTime?'':'onAppointment'}}" data-id="{{item.id}}" wx:if="{{item.sellType==='2'}}" class="verify-record">{{item.applyTime?'已预约':'预约'}}</view>
+                <view catchtap="onRecord" data-id="{{item.id}}" wx:if="{{item.sellType==='2'}}" class="verify-record">预约/核销记录</view>
+                <view catchtap="{{item.applyTime?'':'onAppointment'}}" data-id="{{item.id}}" wx:if="{{item.sellType==='2'}}" class="{{item.applyTime?'':'verify-record'}}">{{item.applyTime?'':'预约'}}</view>
                 </view>
               </view>
             </view>

+ 8 - 0
miniprogram/pages/mine/mine.ts

@@ -223,6 +223,14 @@ Page({
   onShow() {
     // 如果需要每次显示页面时刷新数据,可以在这里调用 load
     this.load();
+    // 从支付成功页点「返回订单列表」时,自动打开订单列表,返回时回到本页
+    const fromSuccess = wx.getStorageSync("fromSuccessToOrderList");
+    if (fromSuccess) {
+      wx.removeStorageSync("fromSuccessToOrderList");
+      wx.navigateTo({
+        url: "/module/article/pages/order-list/order-list?tab=all",
+      });
+    }
   },
   // 足迹
   toFootPrintPage() {

+ 10 - 13
miniprogram/utils/util.ts

@@ -153,24 +153,21 @@ export const handleWeChatPayment = (paymentParams: any, onSuccess: any, onFail:
     paySign: paymentParams.paySign,
     success: (res) => {
       wx.hideLoading()
-      console.log('支付成功:', res)
       if (onSuccess) {
         onSuccess(res)
       }
     },
     fail: (err) => {
-      // wx.hideLoading()
-      if(err.errMsg==='requestPayment:fail cancel'){
-        // console.log('支付已取消')
-       wx.showToast({
-        title: '支付已取消',
-        icon: 'none'
-       })
-      }else{
-      console.error(onFail,'支付失败:', err)
-        if (onFail) {
-          onFail(err)
-        }
+      if (onFail) {
+        onFail(err)
+      }
+      if (err.errMsg === 'requestPayment:fail cancel') {
+        wx.showToast({
+          title: '支付已取消',
+          icon: 'none'
+        })
+      } else {
+        console.error('支付失败:', err)
       }
     }
   })