Browse Source

vip升级修改完善

wangkaiyue 5 years ago
parent
commit
5f3e8a5a67

+ 1 - 1
src/web/staticres/vipsubscribe/js/UpgradePrice.js

@@ -209,7 +209,7 @@ function getUpgradeFinalStatus(newBuyset, oldBuyset, t, endUnix, renewList) {
     var final_price = 0;
     var nowEndTime = endUnix;
     //续费升级价格
-    if (renewList.length > 0) {
+    if (renewList) {
         for (var i = renewList.length - 1; i >= 0; i--) {
             var thisBuyset = renewList[i].o_buyset;
             var thisStartTime = renewList[i].l_validtime;

+ 18 - 7
src/web/staticres/vipsubscribe/js/change_area.js

@@ -50,7 +50,7 @@ $(function () {
     // 数组求和
     function arrSum(arr) {
         var sum = 0
-        arr.forEach(function(item, i) {
+        arr.forEach(function (item, i) {
             sum += item
         })
         return sum
@@ -63,6 +63,7 @@ $(function () {
 
     // 省下拉市事件
     var isAnimating = false
+
     function slideFunc() {
         if (isAnimating) return
         isAnimating = true
@@ -73,7 +74,7 @@ $(function () {
         }
         $(this).toggleClass('selected').next('.tab_content:not(:animated)').slideToggle(500)
         $(this).parent().siblings().children('.tab').removeClass('selected');
-        setTimeout(function() {
+        setTimeout(function () {
             isAnimating = false
         }, 500)
     }
@@ -98,6 +99,16 @@ $(function () {
             isLockedTipButtons(false)
         }
 
+        //是否需要升级
+        if (needUpgrade(getBuySet(selected, areaData.data.industry), {
+            areacount: areaData.data.buyset.areacount,
+            citys: areaData.data.buyset.newcitys,
+            buyerclasscount: areaData.data.buyset.buyerclasscount
+        })[1]) {
+            $(".result-selected .info-tip").show();
+        } else {
+            $(".result-selected .info-tip").hide();
+        }
 
         for (var p in selected) {
             if (p === '全国') {
@@ -113,11 +124,11 @@ $(function () {
             }
 
             if (selected[p].length === 0) {
-                selectedCount.province ++
+                selectedCount.province++
             } else {
-                selectedCount.city.pCount ++
-                selected[p].forEach(function(item, index) {
-                    selectedCount.city.totalCount ++
+                selectedCount.city.pCount++
+                selected[p].forEach(function (item, index) {
+                    selectedCount.city.totalCount++
                 })
             }
         }
@@ -412,7 +423,7 @@ $(function () {
         })
     }
 
-    var subVipState =  sessionStorage.getItem('sub_vip_state')
+    var subVipState = sessionStorage.getItem('sub_vip_state')
     if (subVipState) {
         areaData.data = JSON.parse(subVipState)
         init()

+ 16 - 5
src/web/staticres/vipsubscribe/js/vip_index_new.js

@@ -60,10 +60,12 @@ $(function () {
 
     function getDataWitXHR() {
         $DoPost('/subscribepay/vipsubscribe/getSubBuyMsg', {}, function (res) {
-            if (!res.success) return
-            var globalStateStr = JSON.stringify(res.data)
-            sessionStorage.setItem('sub_vip_state', globalStateStr)
-            globalState = JSON.parse(globalStateStr)
+            if (!res.success) return;
+            res.data.oldArea = res.data.area;
+            res.data.oldIndustry = res.data.industry;
+            var globalStateStr = JSON.stringify(res.data);
+            sessionStorage.setItem('sub_vip_state', globalStateStr);
+            globalState = JSON.parse(globalStateStr);
             init(res.data)
         })
     }
@@ -522,9 +524,18 @@ $(function () {
     //initCycleSelector()
 
     var subVipState = sessionStorage.getItem('sub_vip_state');
-    var reqData = JSON.parse(subVipState)
+    var reqData = JSON.parse(subVipState);
     if (subVipState) {
         init(reqData);
+        //判断是否修改
+        var IndustryNoChange = JSON.stringify(reqData.oldIndustry.sort()) === JSON.stringify(reqData.industry.sort());
+        var tmp1 = getAreaClassArr(reqData.oldArea);
+        var tmp2 = getAreaClassArr(reqData.area);
+        var areaNoChange = (JSON.stringify(tmp1[0].sort()) === JSON.stringify(tmp2[0].sort())) && (JSON.stringify(tmp1[1].sort()) === JSON.stringify(tmp2[1].sort()));
+        if (IndustryNoChange && areaNoChange) {
+            return
+        }
+
         //判断是否需要升级
         var status = getUpgradeFinalStatus(getBuySet(reqData.area, reqData.industry), {
             "areacount": reqData.buyset.areacount,

+ 6 - 4
src/web/templates/weixin/vipsubscribe/change_area.html

@@ -11,13 +11,14 @@
     <meta name="apple-mobile-web-app-status-bar-style" content="black">
     <script src="/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
     <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base2.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base2.css?v={{Msg "seo" "version"}}"/>
+    <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}"/>
     <link rel="stylesheet" href="/vipsubscribe/css/change_area.css?v={{Msg "seo" "version"}}">
     <style>
-        #choose_area .select-area-box .tab .province .checkbox[disabled]{
+        #choose_area .select-area-box .tab .province .checkbox[disabled] {
             background-color: #E0E0E0;
         }
+
         #choose_area .result {
             padding: 0;
             border-bottom: 1px solid #e5e5e5;
@@ -372,7 +373,7 @@
     <div class="tips_btn">
         <div class="btns">
             <button class="reset-btn" id="cancel">重置</button>
-            <button  class="save-btn" id="enter">确认</button>
+            <button class="save-btn" id="enter">确认</button>
         </div>
     </div>
     <div class="slide">
@@ -399,6 +400,7 @@
 <script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
 <script src="/vipsubscribe/js/mapJSON.js?v={{Msg "seo" "version"}}"></script>
 <script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
+<script src="/vipsubscribe/js/UpgradePrice.js?v={{Msg "seo" "version"}}"></script>
 <script src="/vipsubscribe/js/change_area.js?v={{Msg "seo" "version"}}"></script>
 </body>