浏览代码

fix(SCRM-7383): 优惠金额展示优化

john 9 月之前
父节点
当前提交
daf4d5b002
共有 3 个文件被更改,包括 19 次插入9 次删除
  1. 15 4
      src/pages/parkingFeeV2/mixins/parkingFeeDetail.js
  2. 2 3
      src/store/order/common.js
  3. 2 2
      src/store/order/index.js

+ 15 - 4
src/pages/parkingFeeV2/mixins/parkingFeeDetail.js

@@ -289,17 +289,28 @@ export default {
       const { hourPrice } = parkingRule
       /* 校验 */
       let usingTotalDiscount = 0;
+      let parkDiscount = 0;
+      if ( this.orderDetail?.parkingRecord?.hasOwnProperty('parkDiscount') ) {
+        parkDiscount = this.orderDetail.parkingRecord?.parkDiscount
+      }
       try {
+        let actualUsedDiscount = discountInfo?.usingTotalDiscount ||  0;
+        if(parkDiscount && discountInfo?.usingTotalDiscount) {
+          actualUsedDiscount  = discountInfo?.usingTotalDiscount - parkDiscount || 0
+        }
         const params = {
           // vehicleNo: '', // 车牌号
           // points
           memberGrade: this.orderDetail.memberGrade,
           payChannel: isAlipay() ? 'MINI_PROGRAM' : 'OFFICIAL_ACCOUNT',
           payOption: isAlipay() ? 'ALIPAY' : 'WECHATPAY',
-          parkingRecord: {...parkingRecord},
+          parkingRecord: {
+            ...parkingRecord,
+            actualPayFee: this.actualPayFee , //应付金额
+          },
           discountInfo: {
-            usingTotalDiscount: discountInfo?.usingTotalDiscount || 0, //优惠金额"
-            actualUsedDiscount: discountInfo?.usingTotalDiscount || 0, //实际优惠金额
+            usingTotalDiscount: actualUsedDiscount, //优惠金额"
+            actualUsedDiscount: actualUsedDiscount, //实际优惠金额
           },
         };
         // 会员等级减免
@@ -396,7 +407,7 @@ export default {
         /* 优惠金额的校验 */
         // console.log('优惠金额的校验', usingTotalDiscount, params.use);
         // 优惠总金额 + 实际支付 >= 停车订单总金额 否则 刷新订单数据
-        if (usingTotalDiscount + parkingRecord.actualPayFee < parkingRecord.totalFee) {
+        if (usingTotalDiscount + parkingRecord.actualPayFee < parkingRecord.totalFee - parkDiscount) {
           // 如果接口返回异常,重置当前页面数据
           this.reCreateParkOrder('当前优惠信息异常,请确认是否重新刷新!')
           return

+ 2 - 3
src/store/order/common.js

@@ -11,9 +11,8 @@ export default {
         }
         if(checkOutResponse.parkingRecord.hasOwnProperty('parkDiscount'))  {
             const {parkDiscount} = checkOutResponse.parkingRecord
-            usingTotalDiscount += parkDiscount
-            if (isDiscount) {
-                actualPayFee = actualPayFee > parkDiscount ? actualPayFee  - parkDiscount : 0;
+            if (!isDiscount) {
+                actualPayFee -= parkDiscount
             }
         }
         // 其他数据收集

+ 2 - 2
src/store/order/index.js

@@ -94,9 +94,9 @@ export default {
         // 电子优惠券:是否启用
         // 处理电子优惠券相关逻辑
         dispatch('couponRule',checkOutResponse);
-        // 通用逻辑
-        dispatch('commonRule',checkOutResponse);
       }
+      // 通用逻辑
+      dispatch('commonRule',checkOutResponse);
     },
     // 会员等级
     ...memberLevel,