Jelajahi Sumber

fix: 修复订阅升级价格异常、权益文案、首页提醒针对显示

yangfeng 4 tahun lalu
induk
melakukan
4c886df56b

+ 1 - 1
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/common.js

@@ -123,7 +123,7 @@ function getBuySet (area, industry, price) {
     "citys": [] //购买省份中城市数量
   };
   //行业
-  console.log(industry,price.buyerClassMaxCount, 'industry')
+  // console.log(industry,price.buyerClassMaxCount, 'industry')
   if (industry.length != 0 && industry.length <= price.buyerClassMaxCount) {
     buyset.buyerclasscount = industry.length
   }

+ 8 - 6
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/vip_index_new.js

@@ -289,7 +289,7 @@ $(function () {
       }
 
       // 设置已选择行业
-      console.log(selected, 'selected')
+      // console.log(selected, 'selected')
       if (selected.buyerclasscount === -1) {
           $('.vip-body .industry .selected-industry').text('全行业')
       } else {
@@ -323,7 +323,7 @@ $(function () {
       }
 
       // 设置已选择行业
-      console.log(buySet, 'buySet')
+      // console.log(buySet, 'buySet')
       if (buySet.buyerclasscount === -1) {
           $('.vip-body .industry .buy-set-industry').text('全行业')
       } else {
@@ -860,9 +860,12 @@ $(function () {
             showGiveStatus(true)
           }
       }
-      // 如果购买的是升级版套餐且是全国全行业 则不显示升级按钮
-      if (state.buyset.upgrade === 1 && state.buyset.areacount == -1){
-        $('*[data-bind-update]').hide()
+      // 如果购买的是升级版套餐 不显示升级提示 且如果是全国全行业 则不显示升级按钮
+      if (state.buyset.upgrade === 1) {
+        $('[data-update-tips]').hide()
+        if (state.buyset.areacount == -1) {
+          $('*[data-bind-update]').hide()
+        }
       }
   }
 
@@ -873,7 +876,6 @@ $(function () {
   var subVipState = sessionStorage.getItem('sub_vip_state');
   var readcache = sessionStorage.getItem('index_read_cache');
   var reqData = JSON.parse(subVipState);
-  console.log(readcache,'readcache')
   /*
   if (readcache) {
       sessionStorage.removeItem('index_read_cache');

+ 41 - 12
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/vip_upgrade.js

@@ -105,8 +105,15 @@ var purchase = {
     this.nowBuyset = getBuySet(purchase.areaSelect, purchase.industrySelect, this.price);
 
     var old = this.oldBuySet
-    //初始化 非试用用户 已经购买了 1个省份 两个省份【1个城市、两个城市】 3个行业 非升级版超级订阅
-    console.log(new Buyset(old.areacount, old.newcitys, old.buyerclasscount,old.upgrade))
+    // 选择完区域回显后 需判断选择省份结果与原购买的省份结果进行对比,取最多的值
+    if (purchase.nowBuyset.areacount == -1) {
+      old.areacount = -1
+    } else {
+      if (purchase.nowBuyset.areacount > old.areacount) {
+        old.areacount = purchase.nowBuyset.areacount
+      }
+    }
+    //初始化 
     Calculation.Init(this.isTrial,new Buyset(old.areacount, old.newcitys, old.buyerclasscount,old.upgrade),this.renewList,  purchase.price, this.endTime)
 
     if (sessionStorage.getItem("payWay")) {
@@ -119,7 +126,6 @@ var purchase = {
   },
   showArea: function () {
     if (!$.isEmptyObject(this.areaSelect) && !this.areaSelect["一个省"]) { //有选择
-      console.log(this.nowBuyset, '----------123---------')
       if (this.nowBuyset.areacount === -1 || this.nowBuyset.areacount >= 16) {
         $(".selected-area").text("全国");
       } else {
@@ -198,9 +204,21 @@ var purchase = {
     // 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')
-    // 处理如果升级的
-    if (obj.areacount > this.oldBuySet.areacount) {
-      obj.areacount = this.oldBuySet.areacount
+    /* 处理 
+      1.如果原选择的是全国,则不让跳转选择区域
+      2.当前选择的省份数量大于原省份数量 则按当前选择的数量
+      3.当前选择的省份数量小于原省份数量 则按原省份数量
+      总:按照选择最多省份数量的计算
+    */
+    if (this.oldBuySet.areacount == -1) {
+      $('[data-upgrade-to-area]').attr('href', 'javascript:;')
+      // $('[data-upgrade-to-area] .iconfont').hide()
+      obj.areacount = -1
+    } else {
+      // 如果原购买的省份数量大于当前选择的 则按最大的数量走
+      if (this.oldBuySet.areacount > obj.areacount) {
+        obj.areacount = this.oldBuySet.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]])
@@ -506,13 +524,22 @@ $(function () {
     $('.vip-footer.renew .confirm').attr("disabled", "disabled");
     //支付请求
     var area = purchase.areaSelect;
-    var industry = purchase.industrySelect;
-    if (area["全国"]) {
+    var flag = true
+    // var industry = purchase.industrySelect;
+    if (area["全国"] || purchase.nowBuyset.areacount == -1) {
       area = {};
     }
-    if (industry.length === 1 && industry[0] === "全部行业") {
-      industry = [];
+    // 如果原购买的省份数量大于当前选择的 则按最大的数量走
+    var areaCount;
+    // 如果当前选择的省份数量小于原购买的省份数量, 则按照原购买的省份数量
+    if (Object.keys(area).length != 0 && Object.keys(area).length < purchase.nowBuyset.areacount) {
+      areaCount = purchase.nowBuyset.areacount
+      flag = false
     }
+    console.log(Object.keys(area).length, areaCount, '选择的省份数量和原购买的省份数量')
+    // if (industry.length === 1 && industry[0] === "全部行业") {
+    //   industry = [];
+    // }
     //优惠码
     /*var activeCode = $('.coupon-picker .weui-input').val();
     var activeCodes = "";
@@ -523,19 +550,21 @@ $(function () {
     var param = {
       "userLotteryId": coupon.$refs.couponRef.coupon.userLotteryId,
       "lotteryId": coupon.$refs.couponRef.coupon.lotteryId,
-      "area": JSON.stringify(area),
+      "area": flag ? JSON.stringify(area) : '',
+      'area_count': flag ? 0 : areaCount,
       // "industry": industry.join(","),
       'price': Number(coupon.initPrice*100),
       "time": purchase.timeValue.trim(),
       // "orderType": 5,
       "disWord": GetQueryString("disWord"),
     };
+    console.log(area, 'area', purchase.nowBuyset)
     $DoPost("/subscribepay/vipsubscribe/upgrade", param, function (r) {
       if (r.success) {
         try {
           clearSessionStorage()
           history.replaceState({}, '', '/jyapp/vipsubscribe/toOrderDetailPage?orderCode=' + r.data.code);
-          window.location.href = "/jyapp/pay/checkout_subvip?orderCode=" + r.data.code + "&t=1&from=buy"
+          window.location.href = "/jyapp/pay/checkout_subvip?orderCode=" + r.data.code + "&t=2&from=buy"
         } catch (e) {
           showToast(e)
         }

+ 2 - 2
src/jfw/modules/app/src/web/templates/vipsubscribe/commonRules.html

@@ -75,13 +75,13 @@
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">企业画像</p>
-        <p class="rights-content">对企业进行全景透视,提供企业基本信息,中标项目分析、重点客户等,帮你挖掘销售线索。</p>
+        <p class="rights-content">对企业进行全景透视,提供企业基本信息,中标项目分析、重点客户等,帮你挖掘销售线索。仅限APP、PC端使用。</p>
       </td>
     </tr>
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">企业搜索</p>
-        <p class="rights-content">搜索全国超七千万企业,获取企业情报信息,全方位监控竞争对手或用户关注的企业。</p>
+        <p class="rights-content">搜索全国超七千万企业,获取企业情报信息,全方位监控竞争对手或用户关注的企业。仅限APP、PC端使用。</p>
       </td>
     </tr>
     <tr>

+ 1 - 1
src/jfw/modules/app/src/web/templates/vipsubscribe/vip_UpgradePage.html

@@ -46,7 +46,7 @@
       <div class="vip-body">
         <ul style="padding: .16rem .24rem;">
           <li class="body-item area">
-            <a class="item-container" href="/jyapp/vipsubscribe/toChooseArea?header=upgrade">
+            <a class="item-container" data-upgrade-to-area href="/jyapp/vipsubscribe/toChooseArea?header=upgrade">
               <div class="item">
                 <span class="item-l">
                   <span class="item-label">省份数量</span>

+ 1 - 1
src/jfw/modules/app/src/web/templates/vipsubscribe/vip_index_new.html

@@ -382,7 +382,7 @@
         </div> -->
         <!-- 升级 -->
         <div class="update_renew">
-          <div class="update-tips">因系统升级,已购买用户可选择原套餐续费,或升级到新版本享受更多权益。</div>
+          <div class="update-tips" data-update-tips>因系统升级,已购买用户可选择原套餐续费,或升级到新版本享受更多权益。</div>
           <div class="footer-button-group j-button-group">
             <button class="j-button-confirm" data-bind-renew>续费</button>
             <button class="j-button-confirm" data-bind-update>升级</button>

+ 2 - 2
src/web/staticres/vipsubscribe/js/choose_area.js

@@ -192,7 +192,7 @@ var AreaChoose = {
           }
       }*/
       this.selectObj = tmpSelect;
-      console.log("this.selectObj:", tmpSelect)
+      // console.log("this.selectObj:", tmpSelect)
       // $('.result_name').append(html)
       AreaChoose.isOpen()
       // console.log(result)
@@ -228,7 +228,7 @@ var AreaChoose = {
       let pHeight = $('.result_text').height()
       let minHeight = $('.result_text').css('min-height')
       let rows = Math.round(Math.round(pHeight) / parseFloat(minHeight));
-      console.log("高度:" + pHeight, "最小高度" + minHeight, "行数:" + rows)
+      // console.log("高度:" + pHeight, "最小高度" + minHeight, "行数:" + rows)
       if (rows == 1) {
           $('.packup').hide()
           $('.detail').hide()

+ 6 - 3
src/web/staticres/vipsubscribe/js/vip_index_new.js

@@ -869,9 +869,12 @@ $(function () {
             showGiveStatus(true)
           }
         }
-        // 如果购买的是升级版套餐且是全国全行业 则不显示升级按钮
-        if (state.buyset.upgrade === 1 && state.buyset.areacount == -1){
-          $('*[data-bind-update]').hide()
+        // 如果购买的是升级版套餐 不显示升级提示 且如果是全国全行业 则不显示升级按钮
+        if (state.buyset.upgrade === 1) {
+          $('[data-update-tips]').hide()
+          if (state.buyset.areacount == -1) {
+            $('*[data-bind-update]').hide()
+          }
         }
     }
 

+ 41 - 11
src/web/staticres/vipsubscribe/js/vip_upgrade.js

@@ -102,10 +102,10 @@ var purchase = {
       if (readSelect) {
         coupon.checkboxStatus = true
       }
-      console.log(areaSelect && industrySelect && readSelect,'22222',coupon.$refs.couponRef.submitStatus)
+      // console.log(areaSelect && industrySelect && readSelect,'22222',coupon.$refs.couponRef.submitStatus)
       if (areaSelect && industrySelect && readSelect) {
         coupon.$refs.couponRef.submitStatus = false
-        console.log(coupon.$refs.couponRef.submitStatus)
+        // console.log(coupon.$refs.couponRef.submitStatus)
       } else {
         coupon.$refs.couponRef.submitStatus = true
       }
@@ -115,6 +115,14 @@ var purchase = {
     this.nowBuyset = getBuySet(purchase.areaSelect, purchase.industrySelect, this.price);
     var old = this.oldBuySet
     //初始化 非试用用户 已经购买了 1个省份 两个省份【1个城市、两个城市】 3个行业 非升级版超级订阅
+     // 选择完区域回显后 需判断选择省份结果与原购买的省份结果进行对比,取最多的值
+    if (purchase.nowBuyset.areacount == -1) {
+      old.areacount = -1
+    } else {
+      if (purchase.nowBuyset.areacount > old.areacount) {
+        old.areacount = purchase.nowBuyset.areacount
+      }
+    }
     Calculation.Init(this.isTrial,new Buyset(old.areacount, old.newcitys, old.buyerclasscount,old.upgrade),this.renewList, undefined, this.endTime)
   },
   showArea: function () {
@@ -194,9 +202,22 @@ var purchase = {
     // var givePrice = getsubVipOrderPriceBybuyset(this.nowBuyset, [time[1] === 1 ? 1 :time[0], time[1]]);
 
     var obj = this.nowBuyset
-    console.log(obj, 'obj')
-    if (obj.areacount > this.oldBuySet.areacount) {
-      obj.areacount = this.oldBuySet.areacount
+    // console.log(obj, 'obj')
+    /* 处理 
+      1.如果原选择的是全国,则不让跳转选择区域
+      2.当前选择的省份数量大于原省份数量 则按当前选择的数量
+      3.当前选择的省份数量小于原省份数量 则按原省份数量
+      总:按照选择最多省份数量的计算
+    */
+    if (this.oldBuySet.areacount == -1) {
+      $('[data-upgrade-to-area]').attr('href', 'javascript:;')
+      // $('[data-upgrade-to-area] .iconfont').hide()
+      obj.areacount = -1
+    } else {
+      // 如果原购买的省份数量大于当前选择的 则按最大的数量走
+      if (this.oldBuySet.areacount > obj.areacount) {
+        obj.areacount = this.oldBuySet.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]])
@@ -509,13 +530,22 @@ $(function () {
     $('.vip-footer.renew .confirm').attr("disabled", "disabled");
     //支付请求
     var area = purchase.areaSelect;
-    var industry = purchase.industrySelect;
-    if (area["全国"]) {
-        area = {};
+    var flag = true
+    // var industry = purchase.industrySelect;
+    if (area["全国"] || purchase.nowBuyset.areacount == -1) {
+      area = {};
     }
-    if (industry.length === 1 && industry[0] === "全部行业") {
-        industry = [];
+    // 如果原购买的省份数量大于当前选择的 则按最大的数量走
+    var areaCount;
+    // 如果当前选择的省份数量小于原购买的省份数量, 则按照原购买的省份数量
+    if (Object.keys(area).length != 0 && Object.keys(area).length < purchase.nowBuyset.areacount) {
+      areaCount = purchase.nowBuyset.areacount
+      flag = false
     }
+    console.log(Object.keys(area).length, areaCount, '选择的省份数量和原购买的省份数量')
+    // if (industry.length === 1 && industry[0] === "全部行业") {
+    //     industry = [];
+    // }
     //优惠码
     var activeCode = $('.coupon-picker .weui-input').val();
     var activeCodes = "";
@@ -538,7 +568,7 @@ $(function () {
       if (r.success) {
         clearSessionStorage();
         history.replaceState({}, '', '/front/vipsubscribe/toOrderDetailPage?orderCode=' + r.data.code);
-        window.location.href = "/weixin/pay/checkout_subvip?t=1&orderCode=" + r.data.code;
+        window.location.href = "/weixin/pay/checkout_subvip?t=2&orderCode=" + r.data.code;
       } else {
         $('.vip-footer.renew .confirm').removeAttr("disabled");
       }

+ 2 - 2
src/web/templates/common/commonRules.html

@@ -75,13 +75,13 @@
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">企业画像</p>
-        <p class="rights-content">对企业进行全景透视,提供企业基本信息,中标项目分析、重点客户等,帮你挖掘销售线索。</p>
+        <p class="rights-content">对企业进行全景透视,提供企业基本信息,中标项目分析、重点客户等,帮你挖掘销售线索。仅限APP、PC端使用。</p>
       </td>
     </tr>
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">企业搜索</p>
-        <p class="rights-content">搜索全国超七千万企业,获取企业情报信息,全方位监控竞争对手或用户关注的企业。</p>
+        <p class="rights-content">搜索全国超七千万企业,获取企业情报信息,全方位监控竞争对手或用户关注的企业。仅限APP、PC端使用。</p>
       </td>
     </tr>
     <tr>

+ 1 - 1
src/web/templates/weixin/vipsubscribe/vip_index_new.html

@@ -345,7 +345,7 @@
     <!-- 升级 -->
     <!-- 升级 -->
     <div class="update_renew">
-      <div class="update-tips">因系统升级,已购买用户可选择原套餐续费,或升级到新版本享受更多权益。</div>
+      <div class="update-tips" data-update-tips>因系统升级,已购买用户可选择原套餐续费,或升级到新版本享受更多权益。</div>
       <div class="footer-button-group j-button-group">
         <button class="j-button-confirm" data-bind-renew>续费</button>
         <button class="j-button-confirm" data-bind-update>升级</button>