Просмотр исходного кода

feat: 代用户详情页逻辑优化,适配新后台数据结构

cuiyalong 2 месяцев назад
Родитель
Сommit
e52c0f096a

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

@@ -29,7 +29,11 @@ function calcAccountNum(order) {
         buyNumber2 = filterInfo.buyAccountCount || filter_vip_new.finalAccountCount || 0
     } else if (order.vip_type == 2 || order.service_type == 3) {
         // 人数是升级人数/如果只补充服务,则人数就是购买人数
-        buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+        if (buyAccountCount == 0 && giftAccountCount == 0) {
+            buyNumber2 = order.buyNum || filter_vip_new.finalAccountCount || 0
+        } else {
+            buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+        }
     } else {
         buyNumber2 = order.buy_count || order.buyNum || filter_vip_new.finalAccountCount || 0
     }

+ 6 - 1
src/web/staticres/common-module/order-list/js/order-list.js

@@ -2744,7 +2744,12 @@ var vm = new Vue({
         buyNumber2 = filterInfo.buyAccountCount || filter_vip_new.finalAccountCount || 0
       } else if (order.vip_type == 2 || order.service_type == 3) {
         // 人数是升级人数/如果只补充服务,则人数就是购买人数
-        buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+        // buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+        if (buyAccountCount == 0 && giftAccountCount == 0) {
+            buyNumber2 = order.buyNum || filter_vip_new.finalAccountCount || 0
+        } else {
+            buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+        }
       } else {
         buyNumber2 = order.buy_count || order.buyNum || filter_vip_new.finalAccountCount || 0
       }

+ 64 - 37
src/web/templates/frontRouter/wx/vipIntro/free/order_detail.html

@@ -103,7 +103,7 @@
                         </p>
                         <p class="l-item">
                             <span class="dyhy">采购单位行业:</span>
-                            <span class="item-list-parents industryNum value"></span>
+                            <span class="item-list-parents industryNum value">全行业</span>
                         </p>
                         <p class="l-item">
                             <span class="dyzq">订阅周期:</span>
@@ -220,6 +220,16 @@
         }
         return cycle
     }
+    function calcAreaNum(filterObj) {
+        var buyCount = filterObj.finalAreaCount
+        var region_text = ''
+        if (buyCount>0&&buyCount<16){
+            region_vip = buyCount + '个省级区域'
+        }else {
+            region_vip = '全国'
+        }
+         return region_vip
+    }
     $(function () {
         var orderCode = getParam('orderCode')
         var token = getParam('token')
@@ -289,7 +299,16 @@
                 if (r.data.order.isUsedActiveCode) {
                     $(".discount-container").removeClass("hide");
                 }
-                var isNewOrder = r.data.order.isNewOrder
+                var order = r.data.order
+                var isNewOrder = order.isNewOrder
+                // 判断是升级或续费 vip_type取不到,取service_type
+                // vip_type: //0:购买 1:续费 2:升级 3:试用
+                // service_type: 1:购买 2:续费 3:升级 4:试用
+                var isBuy = order.vip_type === 0 || order.service_type === 1
+                var isTrial = order.vip_type === 3 || order.service_type === 4
+                var isRenew = order.vip_type === 1 || order.service_type === 2
+                var isUpgrade = order.vip_type === 2 || order.service_type === 3
+
                 //订单条件
                 if (r.data.order.filter) {
                     var filterObj = JSON.parse(r.data.order.filter || '{}');
@@ -335,7 +354,7 @@
                         }
                     }
 
-                    if ((r.data.order.vip_type != 2) && (r.data.order.vip_type != 1)) {
+                    if (!isRenew && !isUpgrade) {
                         if (!$.isEmptyObject(filterObj.newBuyset)) {	//p1
                             var newBuyset = filterObj.newBuyset
                             if (newBuyset.areacount != -1) {
@@ -400,7 +419,15 @@
                                 $(".industryNum").text("全行业");
                             }
                         }
-                    } else if (r.data.order.vip_type == 2) {
+
+                        if (filterObj.finalAreaCount) {
+                            var areaNumText = calcAreaNum(filterObj)
+                            if (areaNumText) {
+                                $(".areaNum").text(areaNumText);
+                            }
+                        }
+
+                    } else if (isUpgrade) {
                         //升级订单 单独处理
                         if (!$.isEmptyObject(filterObj.newBuyset)) {	//p1更新
                             var newBuyset = filterObj.newBuyset;
@@ -448,31 +475,17 @@
                                 areaText = "无";
                             }
                         }
-                        $(".areaNum").text(areaText);
-                        //行业
-                        var industry_vip = "";
-                        if (filterObj.addbuyerclasscount == undefined) {	//p1
-                            var buyerclasscount = newBuyset.buyerclasscount;
-                            if (buyerclasscount > 3) {
-                                buyerclasscount = filterObj.industry.length;
-                                industry_vip = "全行业(" + buyerclasscount + "个行业)";
-                            } else {
-                                industry_vip = buyerclasscount + "个行业";
-                            }
-                            if (buyerclasscount == -1) {
-                                industry_vip = "全行业";
+                        if (filterObj.finalAreaCount) {
+                            var areaNumText = calcAreaNum(filterObj)
+                            if (areaNumText) {
+                                $(".areaNum").text(areaNumText);
                             }
                         } else {
-                            industry_vip = filterObj.addbuyerclasscount + "个行业";
-                            if (filterObj.addbuyerclasscount == 0) {
-                                industry_vip = "无";
-                            }
-                            if (filterObj.addbuyerclasscount == -1) {
-                                industry_vip = "全行业";
-                            }
+                            $(".areaNum").text(areaText);
                         }
-                        $(".industryNum").text(industry_vip);
-                    } else if (r.data.order.vip_type == 1) {
+                        //行业
+                        $(".industryNum").text('全行业');
+                    } else if (isRenew) {
                         var renewal_market = 0; //续费市级地区
                         var buyset = filterObj.buyset;
                         var newBuyset = filterObj.newBuyset;
@@ -539,6 +552,11 @@
                                 }
                             }
                         }
+
+                        if (filterObj.finalAreaCount) {
+                            var areaNumText = calcAreaNum(filterObj)
+                            $(".areaNum").text(areaNumText);
+                        }
                     }
 
                 }
@@ -590,6 +608,8 @@
                         $(".cyclecount").text(filterObj.cyclecount + "天")
                     } else if (filterObj.cycleunit == 4) {
                         $(".cyclecount").text(filterObj.cyclecount + "季")
+                    } else {
+                        $('.cyclecount').text('不延期')
                     }
                 } else {
                     //未支付
@@ -601,20 +621,24 @@
                         $(".cyclecount").text(filterObj.cyclecount + "天")
                     } else if (filterObj.cycleunit == 4) {
                         $(".cyclecount").text(filterObj.cyclecount + "季")
+                    } else {
+                        $('.cyclecount').text('不延期')
                     }
                 }
 
                 if (!filterObj.cyclecount && isNewOrder) {
                     var t = calcBackOrderTime(filterObj)
-                    $('.cyclecount').text(t)
+                    if(t) [
+                        $('.cyclecount').text(t)
+                    ]
                 }
 
-                if (r.data.order.vip_type == 1) {
+                if (isRenew) {
                     $(".productType").text("超级订阅(续费)");
                     $(".dyqy").text("续费区域:");
                     $(".dyhy").text("续费采购单位行业:");
                     $(".dyzq").text("续费周期:");
-                } else if (r.data.order.vip_type == 2) {
+                } else if (isUpgrade) {
                     $(".productType").text("超级订阅(升级)");
                     if (filterObj.cycleunit == 1) {
                         $(".cyclecount").text(filterObj.cyclecount + "年")
@@ -694,14 +718,18 @@
                     }, 1000)
                     $(".invoice").hide();//隐藏开发票
                     $(".j-footer").show().html("<button class='j-button-confirm' style='width: 100%!important;' >去支付</button>").on("click", function () {
+                        var vipType = r.data.order.vip_type
                         //0试用用户、1续费、2升级、3购买
-                        var vipType = 0
-                        if (!r.data.order.vip_type) {
-                            if (r.data.order.order_money > 0) {
-                                vipType = 3
-                            }
+                        if (r.data.order.service_type) {
+                            vipType = r.data.order.service_type - 1
                         } else {
-                            vipType = r.data.order.vip_type
+                            if (!r.data.order.vip_type) {
+                                if (r.data.order.order_money > 0) {
+                                    vipType = 3
+                                }
+                            } else {
+                                vipType = r.data.order.vip_type
+                            }
                         }
                         window.location.href = `/weixin/pay/checkout_subvip?orderCode=${orderCode}&t=${vipType}&order_price=${orderPayPrice}&token=${token}&no_login=1`
                     })
@@ -806,8 +834,7 @@
                     $("html,body").removeClass("stop");
                 })
             }
-
-            if ((r.data.order.order_money == 0) && (r.data.order.out_trade_no == "") && (r.data.order.vip_type == 2)) {
+            if ((r.data.order.order_money == 0) && (r.data.order.out_trade_no == "") && isUpgrade) {
                 $(".line_transaction").hide();
                 $(".invoice").hide();
                 $(".line_payway").hide();

+ 14 - 2
src/web/templates/pc/myOrder.html

@@ -1031,7 +1031,12 @@
                 v.buy_count = v.newFilter.finalAccountCount || 0
               } else if (v.vip_type == 2) {
                 // 人数是升级人数/如果只补充服务,则人数就是购买人数
-                v.newFilter.totalAccountCount = totalAccountCount || v.newFilter.finalAccountCount || 0
+                if (buyAccountCount == 0 && giftAccountCount == 0) {
+                    v.newFilter.totalAccountCount = v.newFilter.finalAccountCount || 0
+                } else {
+                    v.newFilter.totalAccountCount = totalAccountCount || v.newFilter.finalAccountCount || 0
+                }
+                // v.newFilter.totalAccountCount = totalAccountCount || v.newFilter.finalAccountCount || 0
               } else {
                 v.buy_count = v.newFilter.finalAccountCount || 0
               }
@@ -1197,7 +1202,14 @@
                 v.buyAccountNum = v.buyNum||v.newFilter.finalAccountCount || 0
               } else if (v.vip_type == 2) {
                 // 人数是升级人数/如果只补充服务,则人数就是购买人数
-                v.buyAccountNum = v.buyNum||totalAccountCount||v.newFilter.finalAccountCount || 0
+                
+                if (buyAccountCount == 0 && giftAccountCount == 0) {
+                    v.buyAccountNum = v.buyNum||v.newFilter.finalAccountCount || 0
+                } else {
+                    v.buyAccountNum = v.buyNum||totalAccountCount||v.newFilter.finalAccountCount || 0
+                }
+
+
                 var addAreaCount = v.filter.addAreaCount || v.newFilter.addAreaCount || 0
                 if (addAreaCount <= 0) {
                   vipInfo.onlyAddCount = true

+ 6 - 1
src/web/templates/pc/vip_orderDetail.html

@@ -180,7 +180,12 @@
                 buyNumber2 = filterInfo.buyAccountCount || filter_vip_new.finalAccountCount || 0
             } else if (order.vip_type == 2 || order.service_type == 3) {
                 // 人数是升级人数/如果只补充服务,则人数就是购买人数
-                buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+                // buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+                if (buyAccountCount == 0 && giftAccountCount == 0) {
+                    buyNumber2 = order.buyNum || filter_vip_new.finalAccountCount || 0
+                } else {
+                    buyNumber2 = order.buyNum || totalAccountCount || filter_vip_new.finalAccountCount || 0
+                }
             } else {
                 buyNumber2 = order.buy_count || order.buyNum || filter_vip_new.finalAccountCount || 0
             }