Ver Fonte

fix: 修复新旧套餐选择省份数量

yangfeng há 4 anos atrás
pai
commit
fd1e38f0eb

+ 9 - 5
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/vip_upgrade.js

@@ -114,8 +114,15 @@ var purchase = {
     //     old.areacount = purchase.nowBuyset.areacount
     //   }
     // }
-    if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length < old.areacount) {
-      $('.error-update-tips').show()
+    // 老套餐0:选择省份数量大于原省份数量 新套餐1: 选择省份数量大于等于原省份数量
+    if (purchase.oldBuySet.upgrade == 0) {
+      if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length <= old.areacount) {
+        $('.error-update-tips').show()
+      }
+    } else {
+      if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length < old.areacount) {
+        $('.error-update-tips').show()
+      }
     }
     //初始化 
     Calculation.Init(this.isTrial,new Buyset(old.areacount, old.newcitys, old.buyerclasscount,old.upgrade),this.renewList,  purchase.price, this.endTime)
@@ -207,7 +214,6 @@ var purchase = {
     // var price = getsubVipOrderPriceBybuyset(this.nowBuyset, time); // 2021-5-20
     // var givePrice = getsubVipOrderPriceBybuyset(this.nowBuyset, [time[1] === 1 ? 1 : time[0], time[1]]); // 2021-5-20
     var obj = this.nowBuyset
-    console.log(obj,  this.oldBuySet,'obj')
     /* 处理 
       1.如果原选择的是全国,则不让跳转选择区域
       2.当前选择的省份数量大于原省份数量 则按当前选择的数量
@@ -216,14 +222,12 @@ var purchase = {
     */
     if (this.oldBuySet.areacount == -1) {
       $('[data-upgrade-to-area]').attr('href', 'javascript:;')
-      // $('[data-upgrade-to-area] .iconfont').hide()
     } else {
       // 如果原购买的省份数量大于当前选择的 则按最大的数量走
       if (obj.areacount != -1 && this.oldBuySet.areacount > obj.areacount) {
         obj.areacount = this.oldBuySet.areacount
       }
     }
-    console.log(obj.areacount)
     var price = Calculation.GetUpgradeDetail(new Buyset(obj.areacount,[],obj.buyerclasscount,1), time)
     var givePrice = Calculation.GetUpgradeDetail(new Buyset(obj.areacount,[],obj.buyerclasscount,1), [time[1] === 1 ? 1 : time[0], time[1]])
     console.log(typeof price,price, 'price')

+ 12 - 4
src/web/staticres/vipsubscribe/js/vip_upgrade.js

@@ -116,8 +116,14 @@ var purchase = {
     console.log(this.nowBuyset,this.oldBuySet)
     var old = this.oldBuySet
     //初始化 非试用用户 已经购买了 1个省份 两个省份【1个城市、两个城市】 3个行业 非升级版超级订阅
-    if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length < old.areacount) {
-      $('.error-update-tips').show()
+    if (purchase.oldBuySet.upgrade == 0) {
+      if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length <= old.areacount) {
+        $('.error-update-tips').show()
+      }
+    } else {
+      if (this.nowBuyset.areacount != -1 && Object.keys(purchase.areaSelect).length < old.areacount) {
+        $('.error-update-tips').show()
+      }
     }
     Calculation.Init(this.isTrial,new Buyset(old.areacount, old.newcitys, old.buyerclasscount,old.upgrade),this.renewList, purchase.price, this.endTime)
   },
@@ -314,8 +320,10 @@ var purchase = {
     if (this.timeCheckOk && sessionStorage.getItem("vipSub_read") === "true") {
       $('.vip-footer.renew .confirm').prop('disabled', false)
       console.log(coupon.initPrice, 'coupon.initPrice')
-      if (coupon.initPrice <= 0) {
+      if (!$('.error-update-tips').is(':hidden')) {
         coupon.$refs.couponRef.submitStatus = true
+      } else {
+        coupon.$refs.couponRef.submitStatus = false
       }
     } else {
       $('.vip-footer.renew .confirm').prop('disabled', true)
@@ -725,7 +733,7 @@ var coupon = new Vue({
       var endTime = sessionStorage.getItem('endTime')
       var readSelect = sessionStorage.getItem('vipSub_read') === 'true' ? true : false
       purchase.flushSubmit();
-      return Object.keys(areaSelect).length > 0 && industrySelect.length > 0 && readSelect && this.initPrice > 0
+      return Object.keys(areaSelect).length > 0 && industrySelect.length > 0 && readSelect && $('.error-update-tips').is(':hidden')
     },
     saveEvent: function() {
       // sessionStorage.setItem("vipSub_read", 0)