xuzhiheng 5 rokov pred
rodič
commit
15a971d57e

+ 7 - 0
src/jfw/front/swordfish.go

@@ -2443,11 +2443,18 @@ func (f *Front) Historypush() error {
 	//
 	// 打开推送
 	data, ok := mongodb.FindById("user", userId, nil)
+
 	i_applystatus := (*data)["i_applystatus"]
 
 	var o_jy map[string]interface{}
 
 	if ok && data != nil && len(*data) > 0 {
+		//VIP服务到期
+		vipSubtips := (*data)["i_vip_subtips"]
+		if vipSubtips == 0 {
+			return f.Redirect("/front/vipsubscribe/renewPage/exprie")
+		}
+		//
 		o_jy, _ = (*data)["o_jy"].(map[string]interface{})
 		a_key, _ := o_jy["a_key"]
 		f.SetSession("a_key", a_key)

+ 0 - 86
src/jfw/front/vipsubscribe.go

@@ -2,12 +2,8 @@ package front
 
 import (
 	"jfw/wx"
-	"log"
-	"qfw/util"
-	"time"
 
 	"github.com/go-xweb/xweb"
-	"gopkg.in/mgo.v2/bson"
 )
 
 type Subscribepay struct {
@@ -154,109 +150,27 @@ func (s *Subscribepay) SubmitEditSub() {
 
 //升级订阅服务
 func (s *Subscribepay) ToUpgradePage() {
-	openid := util.ObjToString(s.GetSession("s_m_openid"))
-	if openid != "" {
-		data, ok := mongodb.FindOne("user", bson.M{"s_m_openid": openid})
-		if len(*data) > 0 && ok {
-			vipjy := (*data)["o_vipjy"].(map[string]interface{})
-			area := vipjy["o_area"]
-			buyerclass := vipjy["a_buyerclass"]
-			cycleunit := vipjy["i_cycleunit"]   // 1-年,2-月
-			cyclecount := vipjy["i_cyclecount"] //数量
-			starttime := util.Int64All((*data)["l_vip_starttime"])
-			start := time.Unix(starttime, 0).Format("2006-01-02")
-			endtime := util.Int64All((*data)["l_vip_endtime"])
-			end := time.Unix(endtime, 0).Format("2006-01-02")
-			s.T["area"] = area
-			s.T["buyerclass"] = buyerclass
-			s.T["cycleunit"] = cycleunit
-			s.T["cyclecount"] = cyclecount
-			s.T["starttime"] = start
-			s.T["endtime"] = end
-		}
-	}
 	s.Render("/weixin/vipsubscribe/vip_upgrade.html")
 }
 
 //升级订阅新增区域
 func (s *Subscribepay) AddArea() {
-	openid := util.ObjToString(s.GetSession("s_m_openid"))
-	if openid != "" {
-		data, ok := mongodb.FindOne("user", bson.M{"s_m_openid": openid})
-		if len(*data) > 0 && ok {
-			vipjy := (*data)["o_vipjy"].(map[string]interface{})
-			area := vipjy["o_area"]
-			s.T["area"] = area
-		}
-	}
 	s.Render("/weixin/vipsubscribe/choose_area_upgrade.html")
 }
 
 //升级订阅新增行业
 func (s *Subscribepay) AddIndustry() {
-	openid := util.ObjToString(s.GetSession("s_m_openid"))
-	if openid != "" {
-		data, ok := mongodb.FindOne("user", bson.M{"s_m_openid": openid})
-		if len(*data) > 0 && ok {
-			vipjy := (*data)["o_vipjy"].(map[string]interface{})
-			buyerclass := vipjy["a_buyerclass"]
-			s.T["buyerclass"] = buyerclass
-		}
-	}
 	s.Render("/weixin/vipsubscribe/choose_industry_upgrade.html")
 }
 
 //服务续费(will:即将到期,exprie:已到期)
 func (s *Subscribepay) RenewPage(sign string) {
-	openid := util.ObjToString(s.GetSession("s_m_openid"))
-	if openid != "" {
-		data, ok := mongodb.FindOne("user", bson.M{"s_m_openid": openid})
-		if len(*data) > 0 && ok {
-			vipjy := (*data)["o_vipjy"].(map[string]interface{})
-			area := vipjy["o_area"]
-			buyerclass := vipjy["a_buyerclass"]
-			cycleunit := vipjy["i_cycleunit"]   // 1-年,2-月
-			cyclecount := vipjy["i_cyclecount"] //数量
-			starttime := util.Int64All((*data)["l_vip_starttime"])
-			start := time.Unix(starttime, 0).Format("2006-01-02")
-			endtime := util.Int64All((*data)["l_vip_endtime"])
-			end := time.Unix(endtime, 0).Format("2006-01-02")
-			s.T["area"] = area
-			s.T["buyerclass"] = buyerclass
-			s.T["cycleunit"] = cycleunit
-			s.T["cyclecount"] = cyclecount
-			s.T["starttime"] = start
-			s.T["endtime"] = end
-		}
-	}
 	s.T["exprie"] = sign //是否已到期
 	s.Render("/weixin/vipsubscribe/renew_notice.html", &s.T)
 }
 
 //服务续费(will:即将到期,exprie:已到期)
 func (s *Subscribepay) RenewPayPage() {
-	openid := util.ObjToString(s.GetSession("s_m_openid"))
-	log.Println("openid", openid)
-	if openid != "" {
-		data, ok := mongodb.FindOne("user", bson.M{"s_m_openid": openid})
-		if len(*data) > 0 && ok {
-			vipjy := (*data)["o_vipjy"].(map[string]interface{})
-			area := vipjy["o_area"]
-			buyerclass := vipjy["a_buyerclass"]
-			cycleunit := vipjy["i_cycleunit"]   // 1-年,2-月
-			cyclecount := vipjy["i_cyclecount"] //数量
-			starttime := util.Int64All((*data)["l_vip_starttime"])
-			start := time.Unix(starttime, 0).Format("2006-01-02")
-			endtime := util.Int64All((*data)["l_vip_endtime"])
-			end := time.Unix(endtime, 0).Format("2006-01-02")
-			s.T["area"] = area
-			s.T["buyerclass"] = buyerclass
-			s.T["cycleunit"] = cycleunit
-			s.T["cyclecount"] = cyclecount
-			s.T["starttime"] = start
-			s.T["endtime"] = end
-		}
-	}
 	s.Render("/weixin/vipsubscribe/renew_pay.html")
 }
 

+ 1 - 1
src/jfw/modules/subscribepay/src/service/orderListDetails.go

@@ -302,7 +302,7 @@ func (o *OrderListDetails) SetEmail() {
 					o.SetSession("CreatEVerifyTime", time.Now().Unix())
 					log.Println("==========", verifyStr, "================", o.GetSession("CreatEVerifyTime"), "==============")
 					//发送邮箱验证码
-					go util.SendMailIdentCode(email, verifyStr, config.GmailAuth)
+					go entity.SendMailIdentCode(email, verifyStr, config.GmailAuth)
 					o.T["success"] = true
 				} else {
 					o.T["success"] = false

+ 79 - 0
src/jfw/modules/subscribepay/src/service/vipRenewUpgrade.go

@@ -0,0 +1,79 @@
+package service
+
+import (
+	"entity"
+	"log"
+	qutil "qfw/util"
+	"strings"
+	"time"
+	"util"
+
+	"github.com/go-xweb/xweb"
+	//	"gopkg.in/mgo.v2/bson"
+)
+
+//订阅升级修改相关接口
+type RenewUpgrade struct {
+	*xweb.Action
+	getBuyMsg            xweb.Mapper `xweb:"/renewUpgrade/getBuyMsg"`            //获取购买相关信息
+	getRenewUpgradePrice xweb.Mapper `xweb:"/renewUpgrade/getRenewUpgradePrice"` //获取价格
+}
+
+//获取购买订阅相关信息
+func (this *RenewUpgrade) GetBuyMsg() {
+	userId := qutil.ObjToString(this.GetSession("userId"))
+	data, ok := util.MQFW.FindById("user", userId, nil)
+	if ok && len(*data) > 0 && *data != nil {
+		vipjy := (*data)["o_vipjy"].(map[string]interface{})
+		area := vipjy["o_area"]
+		buyerclass := vipjy["a_buyerclass"]
+		cycleunit := vipjy["i_cycleunit"]   // 1-年,2-月
+		cyclecount := vipjy["i_cyclecount"] //数量
+		starttime := qutil.Int64All((*data)["l_vip_starttime"])
+		start := time.Unix(starttime, 0).Format("2006-01-02")
+		endtime := qutil.Int64All((*data)["l_vip_endtime"])
+		end := time.Unix(endtime, 0).Format("2006-01-02")
+		areaArr := qutil.ObjToMap(area)
+		buyerclassArr := qutil.ObjArrToStringArr(buyerclass.([]interface{}))
+		monthprice := entity.GetSubVipPrice(areaArr, buyerclassArr, 1, 2)
+		yearprice := entity.GetSubVipPrice(areaArr, buyerclassArr, 1, 1)
+		log.Println("month", float64(monthprice)/100)
+		log.Println("year", float64(yearprice)/100)
+		//
+		dataArr := map[string]interface{}{
+			"area":       area,
+			"buyerclass": buyerclass,
+			"cycleunit":  cycleunit,
+			"cyclecount": cyclecount,
+			"starttime":  starttime,
+			"endtime":    endtime,
+			"start":      start,
+			"end":        end,
+			"monthprice": float64(monthprice) / 100,
+			"yearprice":  float64(yearprice) / 100,
+		}
+		this.ServeJson(dataArr)
+	}
+}
+
+func (this *RenewUpgrade) GetRenewUpgradePrice() {
+	addArea := qutil.ObjToMap(this.GetString("addArea"))
+	addIndustry := strings.Split(this.GetString("addIndustry"), ",")
+	oldArea := qutil.ObjToMap(this.GetString("oldArea"))
+	oldIndustry := strings.Split(this.GetString("oldIndustry"), ",")
+	log.Println("area", addArea)
+	log.Println("industry", addIndustry)
+	log.Println("oldarea", oldArea)
+	log.Println("oldindustry", oldIndustry)
+	monthprice := entity.GetSubVipPrice(addArea, addIndustry, 1, 2)
+	yearprice := entity.GetSubVipPrice(addArea, addIndustry, 1, 1)
+	monthprices := float64(monthprice) / 100
+	yearprices := float64(yearprice) / 100
+	log.Println("monthprice", monthprices)
+	log.Println("yearprice", yearprices)
+	dataArr := map[string]interface{}{
+		"monthprice": monthprices,
+		"yearprice":  yearprices,
+	}
+	this.ServeJson(dataArr)
+}

+ 23 - 10
src/web/templates/weixin/vipsubscribe/choose_area_upgrade.html

@@ -14,7 +14,11 @@
     <link rel="stylesheet" href="/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="/vipsubscribe/css/choose_area.css?v={{Msg "seo" "version"}}4">
 </head>
-
+<style type="text/css">
+	body,html {
+		height: 100%;
+	}
+</style>
 <body>
     <div id="choose_area" >
         <div class="result">
@@ -386,6 +390,15 @@
     <script src="/vipsubscribe/js/mapJSON.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
     <script>
+  
+    	//已购买
+    	var buystr = "";
+        $DoPost("/subscribepay/renewUpgrade/getBuyMsg", {}, function (data) {
+        	if(data){
+            	buystr = data.area;
+        	}
+        }, false);
+        console.log(buystr)
       var AreaChoose={
         selectObj:{},//已选择,未购买城市;
         buyObj:{},//已购买
@@ -405,11 +418,9 @@
             if(sessionStorage.getItem("vipSubSelectTime")){
               this.timeSelect=JSON.parse(sessionStorage.getItem("vipSubSelectTime"));
             }
-            //已购买
-            let buy = {{.T.area}};
-            if(buy){
-            	this.buyObj = buy;
-            }
+            //
+            this.buyObj = buystr;
+            console.log(this.buyObj)
             //是否试用界面
             if(sessionStorage.getItem("vipSubisTrial")) this.vipSubisTrial=true;
           }catch(e){
@@ -457,6 +468,7 @@
             if (province == $.trim($(dom).text())) {
               if(province!="全国") $(".checkbox.other").attr("checked", false); //取消全国选中
               $(dom).children('.checkbox').attr({"checked": true,"disabled":!canClick});//选中此省份
+              $(this).parent(".tab:not(.municipality)").next().slideDown(500);
               if(canClick){
               	$(dom).parents().siblings('.tab_content').find(".city").addClass("active").attr({"disabled":!canClick});
               }else{
@@ -578,7 +590,7 @@
                   this.selectObj[result[i].name]=[];//
               }
           }
-          console.log("this.selectObj:",this.selectObj)
+//        console.log("this.selectObj:",this.selectObj)
           $('.result_name').append(html)
           AreaChoose.isOpen()
           //刷新价格
@@ -748,10 +760,11 @@
                     "disabled": false,
                     "checked": false
                 })
-                AreaChoose.getResult() 
+//              AreaChoose.showSelected(false);
+                AreaChoose.getResult();
             }else{
-                AreaChoose.getResult()
-                  AreaChoose.showSelected(false);
+            	AreaChoose.showSelected(false);
+                AreaChoose.getResult();
             }
         },
         flushPrice:function(){

+ 11 - 6
src/web/templates/weixin/vipsubscribe/choose_industry_upgrade.html

@@ -12,6 +12,11 @@
         <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
         <link rel="stylesheet" href="/vipsubscribe/css/choose_industry.css?v={{Msg "seo" "version"}}">
     </head>
+    <style type="text/css">
+    	body,html {
+			height: 100%;
+		}
+    </style>
     <body>
         <main class="choose_industry main">
             <div class="result">
@@ -368,7 +373,7 @@
             var selectedAreaObj = {"一个省":["一个市"]} //计算价格临时变量
             var timeSelect = [1,2]//计算价格临时变量 timeSelect[0]时长  timeSelect[1] 1:年 2:月
             var vipSubisTrial = false;
-            var buyIndustry
+            var buyIndustry = "";//已购买
             $(function(){
               try{
                 if(sessionStorage.getItem("vipSubSelectIndustry")){
@@ -383,11 +388,11 @@
                   this.timeSelect=JSON.parse(sessionStorage.getItem("vipSubSelectTime"));
                 }
                 //已购买行业
-                let buy = {{.T.buyerclass}};
-	            if(buy){
-	            	buyIndustry = buy;
-	            	console.log(buyIndustry)
-	            }
+                $DoPost("/subscribepay/renewUpgrade/getBuyMsg", {}, function (data) {
+                	if(data){
+		            	buyIndustry = data.buyerclass;
+                	}
+                },false);
                 //是否试用界面
                 if(sessionStorage.getItem("vipSubisTrial")) vipSubisTrial=true;
               }catch(e){

+ 64 - 57
src/web/templates/weixin/vipsubscribe/renew_notice.html

@@ -10,6 +10,11 @@
 		<link rel="stylesheet" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
 		<link rel="stylesheet" href="/vipsubscribe/css/vip_service_expire.css?v={{Msg "seo" "version"}}">
 	</head>
+	<style type="text/css">
+		body,html {
+			height: 100%;
+		}
+	</style>
 	<body>
 		<div class="vip_service_expire layout_top-bottom">
 			<div class="service_expire_tip layou_top">
@@ -48,66 +53,68 @@
 		<script src="/vipsubscribe/js/jquery-2.1.4.js"></script>
     	<script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     	<script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+    	<script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
 		<script type="text/javascript">
 			
 			//
-	        var area = {{.T.area}};
-		    var buyerclass = {{.T.buyerclass}};
-		    var cycleunit = {{.T.cycleunit}};
-		    var cyclecount = {{.T.cyclecount}};
-		    var startTime = {{.T.starttime}};
-		    var endTime = {{.T.endtime}};
-		    var exprie = {{.T.exprie}}
-		    //
-		    var areaArr = [];
-		    var areaHtml = "";
-		    var buyerclassArr = [];
-		    var buyerclassHtml = "";
-	//	    var dateName = "";
-		    var dateHtml = "";
-		    if (area !== "" && area !== undefined){
-		    	for(var province in area){
-		    		var citys = area[province]
-//		    		console.log(citys);
-		    		if(citys.length===0){
-		    			areaArr.push(province);
-		    		}else{
-		    			for(var i in citys){
-		    				areaArr.push(citys[i]);
-		    			}
-		    		}
-		    	}
-		    	areaHtml = areaArr.toString().replace(/,/g, "、");
-		    	$('.area-list').text(areaHtml);
-		    }
-		    if(buyerclass !== "" && buyerclass !== undefined){
-		    	for(var i in buyerclass){
-		    		var industry = buyerclass[i];
-		    		buyerclassArr.push(industry);
-		    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, " ");
-		    	}
-				$('.industry-list').text(buyerclassHtml);
-		    }
-	//	    if(cycleunit !== "" && cycleunit !== undefined){
-	//	    	if(cycleunit === 1){
-	//	    		dateName = cyclecount + " 年";
-	//	    	}else if(cycleunit === 2){
-	//	    		dateName = cyclecount + " 个月";
-	//	    	}
-	//	    	$(".item_cycle .label_for").text(dateName);
-	//	    }
-		    if(startTime !== "" && endTime !== ""){
-		    	var start = startTime.replace(/-/g, ".");
-		    	var end = endTime.replace(/-/g, ".");
-		    	dateHtml = start + " - " + end;
-		    	$(".date-span").text(dateHtml);
-		    }
-		    if(!exprie){
-		    	$(".free_service").hide();
-		    	$("#exprie").text("VIP订阅服务即将到期,请及时续费")
-		    }else{
-		    	$(".free_service").show();
-		    }
+			$DoPost("/subscribepay/renewUpgrade/getBuyMsg", {}, function (data) {
+				var area = data.area;
+			    var buyerclass = data.buyerclass;
+			    var startTime = data.start;
+			    var endTime = data.end;
+			    var exprie = {{.T.exprie}};
+			    //
+			    var areaArr = [];
+			    var areaHtml = "";
+			    var buyerclassArr = [];
+			    var buyerclassHtml = "";
+		//	    var dateName = "";
+			    var dateHtml = "";
+			    if (area !== "" && area !== undefined){
+			    	for(var province in area){
+			    		var citys = area[province]
+	//		    		console.log(citys);
+			    		if(citys.length===0){
+			    			areaArr.push(province);
+			    		}else{
+			    			for(var i in citys){
+			    				areaArr.push(citys[i]);
+			    			}
+			    		}
+			    	}
+			    	areaHtml = areaArr.toString().replace(/,/g, "、");
+			    	$('.area-list').text(areaHtml);
+			    }
+			    if(buyerclass !== "" && buyerclass !== undefined){
+			    	for(var i in buyerclass){
+			    		var industry = buyerclass[i];
+			    		buyerclassArr.push(industry);
+			    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, " ");
+			    	}
+					$('.industry-list').text(buyerclassHtml);
+			    }
+		//	    if(cycleunit !== "" && cycleunit !== undefined){
+		//	    	if(cycleunit === 1){
+		//	    		dateName = cyclecount + " 年";
+		//	    	}else if(cycleunit === 2){
+		//	    		dateName = cyclecount + " 个月";
+		//	    	}
+		//	    	$(".item_cycle .label_for").text(dateName);
+		//	    }
+			    if(startTime !== "" && endTime !== ""){
+			    	var start = startTime.toString().replace(/-/g, ".");
+			    	var end = endTime.toString().replace(/-/g, ".");
+			    	dateHtml = start + " - " + end;
+			    	$(".date-span").text(dateHtml);
+			    }
+			    if(exprie === "will"){
+			    	$(".free_service").hide();
+			    	$("#exprie").text("VIP订阅服务即将到期,请及时续费")
+			    }else{
+			    	$(".free_service").show();
+			    }
+			});
+	        
 			
 		</script>
 	</body>

+ 114 - 65
src/web/templates/weixin/vipsubscribe/renew_pay.html

@@ -15,14 +15,18 @@
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
     <link rel="stylesheet" href="/vipsubscribe/css/vip_update.css?v={{Msg "seo" "version"}}3">
 </head>
-
+<style type="text/css">
+	body,html {
+		height: 100%;
+	}
+</style>
 <body class="no-touch">
     <div class="vip_renew">
         <div class="choose_condition">
              <!-- 正常点击vip首页续费进入显示下列提示 -->
-            <p class="update_tip">提示:订阅续费可在已购买的服务基础上,延长订阅服务周期</p>
+            <p class="update_tip renew_upgrade">提示:订阅续费可在已购买的服务基础上,延长订阅服务周期</p>
              <!-- 即将到期点击vip首页续费显示下列提示 -->
-            <p class="expire_tip">提示:您的VIP订阅服务即将到期,为不影响您的使用。请立即续费</p>
+            <p class="expire_tip renew_update">提示:您的VIP订阅服务即将到期,为不影响您的使用。请立即续费</p>
             <ul class="chooseList">
                 <li class="detail_item">
                         <div class="item_info item_area">
@@ -44,8 +48,8 @@
                             </p>
                             <p>
                                 <!-- 正常点击vip首页续费进入显示去升级,即将到期点击vip首页续费显示订阅修改 -->
-                                <a href="/front/vipsubscribe/toUpgradePage" class="go_update">去升级</a>
-                                <a href="/front/vipsubscribe/toEditSubPage" class="go_update">订阅修改</a>
+                                <a href="/front/vipsubscribe/toUpgradePage" class="go_update renew_upgrade">去升级</a>
+                                <a href="/front/vipsubscribe/toEditSubPage" class="go_update renew_update">订阅修改</a>
                             </p>
                         </div>
                 </li>
@@ -78,7 +82,7 @@
                     <div class="weui-cell__bd read">
                         <p>
                             我已阅读,理解并接受
-                            <a href="abc.html">
+                            <a href="/front/staticPage/wx-serviceterms.html">
                                 《剑鱼标讯线上购买与服务条款》
                             </a>
                         </p>
@@ -88,13 +92,13 @@
             <div class="price">
                 <label></label>
                 <p>
-                    <span>&yen;610.80</span>
-                    <strong>&yen;0.00</strong>
+                    <span class="old_price">&yen;610.80</span>
+                    <strong class="finally_price">&yen;0.00</strong>
                 </p> 
             </div>
             <div class="form-btn">
                 <!-- 支付 -->
-                <button class="btn enter" disabled>立即续费</button>
+                <button class="btn enter saveBtn" disabled>立即续费</button>
             </div>
         </div>
 
@@ -107,7 +111,7 @@
                     <span class="cancel">取消</span>
                 </div>
                 <div class="box_bd">
-                    <div class="tips profit_tips" style="display: none">已选择10个月,建议“按年订阅”更算哦~</div>
+                    <div class="tips profit_tips" style="display: none">已选择10个月,建议“按年订阅”更算哦~</div>
                     <div class="computed_price">¥58.0</div>
                     <div class="bd_select">
                         <div class="weui-cells weui-cells_checkbox choose-form">
@@ -192,6 +196,7 @@
         </div>
     </div>
     <script src="/vipsubscribe/js/jquery-2.1.4.js"></script>
+    <script src="/vipsubscribe/js/common.js"></script>
     <script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     <script src="https://res.wx.qq.com/open/libs/weuijs/1.1.4/weui.min.js?v={{Msg "seo" "version"}}"></script>
     <script>
@@ -273,7 +278,7 @@
                     .numboxStep;
             }
             $number.text(currentNum)
-            var price = (5.8 * currentNum).toFixed(1);
+            var price = (monthPrice * currentNum).toFixed(1);
             $('.computed_price').html('¥' + price)
             var firstButton = $('#number_box_month button:first')
             var lastButton = $('#number_box_month button:last')
@@ -306,7 +311,7 @@
             $('#yearly').prop('checked', true);
             $("#monthly").prop('checked', false);
             // 渲染结果 保留一位小数
-            let result = (Number(id) * 58).toFixed(1);
+            let result = (Number(id) * yearPrice).toFixed(1);
             $('.computed_price').html('¥' + result)
         })
 
@@ -317,13 +322,13 @@
             if (val >= 10) {
                 $('.profit_tips').show()
             }
-            console.log(val)
+//          console.log(val)
             if (!isChecked) {
                 $('#number_box_month button').attr('disabled', true)
             } else {
                 $('#number_box_month button').removeAttr('disabled')
             }
-            let result = (Number(val) * 5.8).toFixed(1);
+            let result = (Number(val) * monthPrice).toFixed(1);
             $('.computed_price').html('¥' + result)
 
         })
@@ -334,7 +339,7 @@
             let isChecked = $(this).is(':checked')
             // 按年订阅默认选择1年 
             let val = 1;
-            $('.computed_price').html('¥' + Number(val) * 58)
+            $('.computed_price').html('¥' + Number(val) * yearPrice)
             if (isChecked) {
                 $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active')
 
@@ -367,60 +372,101 @@
             $('#time_cycle').hide(function () { 
                 $('.choose_item.select_cycle .info').attr('placeholder', val);
             })
+            $(".finally_price").html($(".computed_price").html());
+            sessionStorage.renew_finally_price = $(".finally_price").html();
         })
         
         //
-        var area = {{.T.area}};
-	    var buyerclass = {{.T.buyerclass}};
-	    var cycleunit = {{.T.cycleunit}};
-	    var cyclecount = {{.T.cyclecount}};
-	    var startTime = {{.T.starttime}};
-	    var endTime = {{.T.endtime}};
+        var area = "";
+	    var buyerclass = "";
+	    var cycleunit = "";
+	    var cyclecount = "";
+	    var startTime = "";
+	    var starts = "";
+	    var endTime = "";
+	    var ends = "";
+	    var monthPrice = "";
+	    var yearPrice = "";
+	    $DoPost("/subscribepay/renewUpgrade/getBuyMsg", {}, function (data) {
+            if (data) {
+                area = data.area;
+			    buyerclass = data.buyerclass;
+			    cycleunit = data.cycleunit;
+			    cyclecount = data.cyclecount;
+			    startTime = data.start;
+			    starts = data.starttime;
+			    endTime = data.end;
+			    ends = data.endtime;
+			    monthPrice = data.monthprice;
+			    yearPrice = data.yearprice;
+			    //
+			    var areaArr = [];
+			    var areaHtml = "";
+			    var provinceArr = [];
+			    var cityArr = [];
+			    var buyerclassArr = [];
+			    var buyerclassHtml = "";
+			    var dateName = "";
+			    var dateHtml = "";
+			    if (area !== "" && area !== undefined){
+			    	for(var province in area){
+			    		var citys = area[province]
+		//	    		console.log(citys);
+			    		if(citys.length===0){
+			    			areaArr.push(province);
+			    			provinceArr.push(province);
+			    		}else{
+			    			for(var i in citys){
+			    				var city = citys[i];
+			    				areaArr.push(city);
+			    				cityArr.push(city);
+			    			}
+			    		}
+			    	}
+			    	areaHtml = areaArr.toString().replace(/,/g, "、");
+			    	$(".item_area .label_for").text(areaHtml);
+			    }
+			    if(buyerclass !== "" && buyerclass !== undefined){
+			    	for(var i in buyerclass){
+			    		var industry = buyerclass[i];
+			    		buyerclassArr.push(industry);
+			    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, "、");
+			    	}
+			    	$(".item_industry .label_for").text(buyerclassHtml);
+			    }
+			    if(cycleunit !== "" && cycleunit !== undefined){
+			    	if(cycleunit === 1){
+			    		dateName = cyclecount + " 年";
+			    	}else if(cycleunit === 2){
+			    		dateName = cyclecount + " 个月";
+			    	}
+			    	$(".item_cycle .label_for").text(dateName);
+			    }
+			    if(startTime !== "" && endTime !== ""){
+			    	var start = startTime.replace(/-/g, ".");
+			    	var end = endTime.replace(/-/g, ".");
+			    	dateHtml = start + " - " + end;
+			    	$(".item_validity .label_for").text(dateHtml);
+			    }
+			    var val = monthPrice * 6
+			    $(".computed_price").html("¥"+val.toFixed(1))
+			 	//
+			 	var threeDay = ends - 86400 * 3;
+			 	var nowDay = new Date().getTime()/1000;
+			 	if(nowDay >= threeDay){
+			 		$(".renew_upgrade").hide();
+			 		$(".renew_update").show();
+			 	}else{
+			 		$(".renew_update").hide();
+			 		$(".renew_upgrade").show();
+			 	}
+			 	//
+			 	var provinceLen = provinceArr.length;
+			 	var cityLen = cityArr.length;
+		    }
+        }, false);
 	    //
-	    var areaArr = [];
-	    var areaHtml = "";
-	    var buyerclassArr = [];
-	    var buyerclassHtml = "";
-	    var dateName = "";
-	    var dateHtml = "";
-	    if (area !== "" && area !== undefined){
-	    	for(var province in area){
-	    		var citys = area[province]
-//	    		console.log(citys);
-	    		if(citys.length===0){
-	    			areaArr.push(province);
-	    		}else{
-	    			for(var i in citys){
-	    				areaArr.push(citys[i]);
-	    			}
-	    		}
-	    	}
-	    	areaHtml = areaArr.toString().replace(/,/g, "、");
-	    	$(".item_area .label_for").text(areaHtml);
-	    }
-	    if(buyerclass !== "" && buyerclass !== undefined){
-	    	for(var i in buyerclass){
-	    		var industry = buyerclass[i];
-	    		buyerclassArr.push(industry);
-	    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, "、");
-	    	}
-	    	$(".item_industry .label_for").text(buyerclassHtml);
-	    }
-	    if(cycleunit !== "" && cycleunit !== undefined){
-	    	if(cycleunit === 1){
-	    		dateName = cyclecount + " 年";
-	    	}else if(cycleunit === 2){
-	    		dateName = cyclecount + " 个月";
-	    	}
-	    	$(".item_cycle .label_for").text(dateName);
-	    }
-	    if(startTime !== "" && endTime !== ""){
-	    	var start = startTime.replace(/-/g, ".");
-	    	var end = endTime.replace(/-/g, ".");
-	    	dateHtml = start + " - " + end;
-	    	$(".item_validity .label_for").text(dateHtml);
-	    }
-	 	if(sessionStorage.renew_cyclecount!==""&&sessionStorage.renew_cycleunit!==""){
+	    if(sessionStorage.renew_cyclecount!==""&&sessionStorage.renew_cycleunit!==""){
 	 		var cycleunit = sessionStorage.renew_cycleunit;
 	 		var cyclecount = sessionStorage.renew_cyclecount;
 	 		var dateName = "";
@@ -446,6 +492,9 @@
 	 	if(sessionStorage.renew_price!==""&&sessionStorage.renew_price!==undefined){
 	 		$(".computed_price").html(sessionStorage.renew_price);
 	 	}
+	    if(sessionStorage.renew_finally_price!==""&&sessionStorage.renew_finally_price!==undefined){
+	    	$(".finally_price").html(sessionStorage.renew_finally_price);
+	    }
 	    
     </script>
 </body>

+ 109 - 51
src/web/templates/weixin/vipsubscribe/vip_upgrade.html

@@ -16,7 +16,11 @@
     <link rel="stylesheet" href="/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="/vipsubscribe/css/vip_update.css?v={{Msg "seo" "version"}}3">
 </head>
-
+<style type="text/css">
+	body,html {
+		height: 100%;
+	}
+</style>
 <body class="no-touch">
     <div class="vip_update">
         <div class="choose_condition">
@@ -137,8 +141,8 @@
             <div class="price">
                 <label>需补差价:</label>
                 <p>
-                    <span>&yen;610.80</span>
-                    <strong>&yen;0.00</strong>
+                    <span class="old_price">&yen;610.80</span>
+                    <strong class="finally_price">&yen;0.00</strong>
                 </p> 
             </div>
             <div class="form-btn">
@@ -289,6 +293,7 @@
     <script src="/vipsubscribe/js/jquery-2.1.4.js"></script>
     <script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
     <script>
         // 当续费时间 + 当前已经买的时间超过36个月,给出提醒
 //      var overtimeWarning = `最长订阅周期不可超过3年<br />当前订阅周期:16个月`
@@ -299,6 +304,8 @@
 //              console.log('close') 
 //          }
 //      })
+		var monthPrice = "";
+        var yearPrice = "";
 
         // 隐藏dialog选择框事件
         function hideDialog() {
@@ -348,6 +355,7 @@
         
         // 选择周期
         $('.lengthen > a').click(function () {
+        	FinallyPrice();
             $('#time_cycle').show(200);
         })
         // 对订阅时间选择的 input绑定点击事件
@@ -413,7 +421,7 @@
                     .numboxStep;
             }
             $number.text(currentNum)
-            var price = (5.8 * currentNum).toFixed(1);
+            var price = (monthPrice * currentNum).toFixed(1);
             $('.computed_price').html('¥' + price)
             var firstButton = $('#number_box_month button:first')
             var lastButton = $('#number_box_month button:last')
@@ -446,7 +454,7 @@
             $('#yearly').prop('checked', true);
             $("#monthly").prop('checked', false);
             // 渲染结果 保留一位小数
-            let result = (Number(id) * 58).toFixed(1);
+            let result = (Number(id) * yearPrice).toFixed(1);
             $('.computed_price').html('¥' + result)
         })
 
@@ -463,7 +471,7 @@
             } else {
                 $('#number_box_month button').removeAttr('disabled')
             }
-            let result = (Number(val) * 5.8).toFixed(1);
+            let result = (Number(val) * monthPrice).toFixed(1);
             $('.computed_price').html('¥' + result)
 
         })
@@ -474,10 +482,9 @@
             let isChecked = $(this).is(':checked')
             // 按年订阅默认选择1年 
             let val = 1;
-            $('.computed_price').html('¥' + Number(val) * 58)
+            $('.computed_price').html('¥' + Number(val) * yearPrice)
             if (isChecked) {
                 $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active')
-
             }
 
         })
@@ -510,8 +517,9 @@
             $('#time_cycle').hide(function () { 
                 $('.choose_item.lengthen .info').text(val)
             })
+            $(".finally_price").html($(".computed_price").html());
+            sessionStorage.renew_finally_price = $(".finally_price").html();
         })
-        
         //新增区域
 	    if(sessionStorage.vipSubSelectArea!==""&&sessionStorage.vipSubSelectArea!==undefined){
 			var vipSubSelectArea = JSON.parse(sessionStorage.vipSubSelectArea);
@@ -520,13 +528,14 @@
 			var isAll = "";
 			$(".area-list").show();
 			for (var province in vipSubSelectArea){
-				provinceArr.push(province);
 				if(vipSubSelectArea[province].length > 0){
 					var citys = vipSubSelectArea[province];
 					for (var i in citys){
 						var city = citys[i];
 						cityArr.push(city);
 					}
+				}else{
+					provinceArr.push(province);
 				}
 				if(province === "全国"){
 					isAll = "all";
@@ -539,6 +548,11 @@
 			}else{
 				$(".area-list").text("已新增为 : 全国");
 			}
+			if(provinceLen === 0 && cityLen === 0){
+				$(".area-list").hide();
+			}
+			var price = getsubVipOrderPrice(vipSubSelectArea,["行业"],[1,2])
+			console.log(price)
 	    }
 	    //新增行业
 	    if(sessionStorage.vipSubSelectIndustry!==""&&sessionStorage.vipSubSelectIndustry!==undefined){
@@ -559,6 +573,8 @@
 			}else{
 				$(".industry-list").text("已新增为 : 全部行业");
 			}
+			var price = getsubVipOrderPrice({"全":["”"]},vipSubSelectIndustry,[1,2])
+			console.log(price)
 	    }
 	    //生效时间
 	    if(sessionStorage.effectiveDate !== ""&&sessionStorage.effectiveDate!==undefined){
@@ -591,45 +607,6 @@
 //	    	$("#payType").text(payHtml);
 //	    }
 
-		//
-        var area = {{.T.area}};
-	    var buyerclass = {{.T.buyerclass}};
-	    var cycleunit = {{.T.cycleunit}};
-	    var cyclecount = {{.T.cyclecount}};
-	    var startTime = {{.T.starttime}};
-	    var endTime = {{.T.endtime}};
-	    //
-	    var areaArr = [];
-	    var areaHtml = "";
-	    var buyerclassArr = [];
-	    var buyerclassHtml = "";
-//	    var dateName = "";
-//	    var dateHtml = "";
-	    if (area !== "" && area !== undefined){
-	    	for(var province in area){
-	    		var citys = area[province]
-//	    		console.log(citys);
-	    		if(citys.length===0){
-	    			areaArr.push(province);
-	    		}else{
-	    			for(var i in citys){
-	    				areaArr.push(citys[i]);
-	    			}
-	    		}
-	    	}
-	    	areaHtml = areaArr.toString().replace(/,/g, " ");
-//	    	$(".item_area .label_for").text(areaHtml);
-	    	$('#area').val(areaHtml);
-	    }
-	    if(buyerclass !== "" && buyerclass !== undefined){
-	    	for(var i in buyerclass){
-	    		var industry = buyerclass[i];
-	    		buyerclassArr.push(industry);
-	    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, " ");
-	    	}
-//	    	$(".item_industry .label_for").text(buyerclassHtml);
-			$('#buyerclass').val(buyerclassHtml);
-	    }
 //	    if(cycleunit !== "" && cycleunit !== undefined){
 //	    	if(cycleunit === 1){
 //	    		dateName = cyclecount + " 年";
@@ -644,7 +621,7 @@
 //	    	dateHtml = start + " - " + end;
 //	    	$(".item_validity .label_for").text(dateHtml);
 //	    }
-		if(sessionStorage.upgrade_cyclecount!==""&&sessionStorage.upgrade_cycleunit!==""){
+		if(sessionStorage.upgrade_cyclecount!==undefined&&sessionStorage.upgrade_cycleunit!==undefined){
 	 		var cycleunit = sessionStorage.upgrade_cycleunit;
 	 		var cyclecount = sessionStorage.upgrade_cyclecount;
 	 		var dateName = "";
@@ -676,7 +653,88 @@
 	 	if(sessionStorage.upgrade_price!==""&&sessionStorage.upgrade_price!==undefined){
 	 		$(".computed_price").html(sessionStorage.upgrade_price);
 	 	}
-
+	 	if(sessionStorage.upgrade_finally_price!==""&&sessionStorage.upgrade_finally_price!==undefined){
+	    	$(".finally_price").html(sessionStorage.renew_finally_price);
+	 	}
+//	 	if(sessionStorage.vipSubSelectArea!==""&&sessionStorage.vipSubSelectArea!==undefined&&)
+	 	
+	 	//
+	 	var area = "";
+	    var buyerclass = "";
+	    var cycleunit = "";
+	    var cyclecount = "";
+	 	var startTime = "";
+	    var starts = "";
+	    var endTime = "";
+	    var ends = "";
+	 	$DoPost("/subscribepay/renewUpgrade/getBuyMsg", {}, function (data) {
+            if (data) {
+                area = data.area;
+			    buyerclass = data.buyerclass;
+			    cycleunit = data.cycleunit;
+			    cyclecount = data.cyclecount;
+			    startTime = data.start;
+			    starts = data.starttime;
+			    endTime = data.end;
+			    ends = data.endtime;
+			    //
+			    var areaArr = [];
+			    var areaHtml = "";
+			    var buyerclassArr = [];
+			    var buyerclassHtml = "";
+		//	    var dateName = "";
+		//	    var dateHtml = "";
+			    if (area !== "" && area !== undefined){
+			    	console.log(area)
+			    	for(var province in area){
+			    		var citys = area[province]
+		//	    		console.log(citys);
+			    		if(citys.length===0){
+			    			areaArr.push(province);
+			    		}else{
+			    			for(var i in citys){
+			    				areaArr.push(citys[i]);
+			    			}
+			    		}
+			    	}
+			    	areaHtml = areaArr.toString().replace(/,/g, " ");
+		//	    	$(".item_area .label_for").text(areaHtml);
+			    	$('#area').val(areaHtml);
+			    }
+			    if(buyerclass !== "" && buyerclass !== undefined){
+			    	for(var i in buyerclass){
+			    		var industry = buyerclass[i];
+			    		buyerclassArr.push(industry);
+			    		buyerclassHtml = buyerclassArr.toString().replace(/,/g, " ");
+			    	}
+		//	    	$(".item_industry .label_for").text(buyerclassHtml);
+					$('#buyerclass').val(buyerclassHtml);
+			    }
+			}
+        },false);
+        //
+        function FinallyPrice(){
+//      	var oldArea = JSON.stringify(area);
+//      	var oldIndustry = buyerclass.toString();
+//      	var addArea = sessionStorage.vipSubSelectArea;
+//      	var addIndustry = JSON.parse(sessionStorage.vipSubSelectIndustry).toString();
+//      	
+//      	
+//      	
+//      	
+//      	param = {
+//      		"oldArea":oldArea,
+//      		"oldIndustry":oldIndustry,
+//      		"addArea":addArea,
+//      		"addIndustry":addIndustry
+//      	}
+//      	$DoPost("/subscribepay/renewUpgrade/getRenewUpgradePrice", param, function (r) {
+//      		if(r){
+//      			monthPrice = r.monthprice;
+//      			yearPrice = r.yearprice;
+//      		}
+//      	},false);
+        }
     </script>
 </body>