Pārlūkot izejas kodu

Merge branch 'dev2.8.5' of http://192.168.3.207:10080/qmx/jy into dev2.8.5

wangshan 5 gadi atpakaļ
vecāks
revīzija
8457e15ed3

+ 5 - 5
src/jfw/modules/app/src/app/front/swordfish.go

@@ -635,7 +635,7 @@ func (f *Front) HasPushHistory() {
 	if userId == "" {
 		return
 	}
-	user, _ := public.HistoryPush.UserInfo(userId)
+	user, _ := jy.SubscribePush.UserInfo(public.MQFW, userId)
 	hasKeyFlag := false
 	isVipFlag := false
 	isPassCount := false
@@ -682,12 +682,12 @@ func (f *Front) HasPushHistory() {
 		pageNum = 1
 	}
 	area := f.GetString("area")
-	hasNextPage, list := public.HistoryPush.Datas_Mysql(userId, pageNum, formatTime, area)
+	hasNextPage, list := jy.SubscribePush.Datas(public.MQFW, public.PushMysql, userId, pageNum, formatTime, area)
 	if len(list) > 0 {
 		go updateUserApppushunread(userId)
 		//formatTime
 	} else if hasKeyFlag && len(list) == 0 && formatTime == "" && !isVipFlag {
-		flag, data := public.HistoryPush.MakeHistoryDatas(userId, bidSearch_field)
+		flag, data := jy.SubscribePush.MakeHistoryDatas(public.MQFW, public.PushMysql, userId, public.PushView)
 		if flag && data != nil {
 			list = data
 		}
@@ -729,7 +729,7 @@ func (f *Front) HistorypushPaging() error {
 			go updateUserApppushunread(userId)
 		}
 		//		_, firstPushTime := public.HistoryPush.UserInfo(userId)
-		hasNextPage, list := public.HistoryPush.Datas_Mysql(userId, pageNum, formatTime, area)
+		hasNextPage, list := jy.SubscribePush.Datas(public.MQFW, public.PushMysql, userId, pageNum, formatTime, area)
 		f.ServeJson(map[string]interface{}{
 			"hasNextPage": hasNextPage,
 			"data":        list,
@@ -855,7 +855,7 @@ func (m *Front) WxpushAjaxReq() error {
 	userId := util.ObjToString(m.GetSession("userId"))
 	if userId != "" {
 		vsid := m.GetString("vsid")
-		public.HistoryPush.Visit_Mysql(userId, vsid)
+		jy.SubscribePush.Visit(public.PushMysql, userId, vsid)
 	}
 	return nil
 }

+ 3 - 0
src/jfw/modules/app/src/app/front/vipsubscribe.go

@@ -111,6 +111,9 @@ func (s *Subscribepay) ToPurchasePage(flag string) {
 	} else { //付费
 		if flag == "willExpire" {
 			s.T["orderType"] = 5
+			s.T["orderType"] = 5
+			s.Render("/vipsubscribe/vip_purchase_willExpire.html")
+			return
 		} else {
 			s.T["orderType"] = 1
 		}

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

@@ -158,7 +158,12 @@ function init() {
     } else {
         //$('.all_area').hide()
         $('.optional_count').show()
-        $('.total').html(areaData.data.buyset.areacount)
+        if(areaData.data.buyset.areacount!=0){
+            $('.total').html(areaData.data.buyset.areacount)
+        }else{
+            $(".optional_count").css("display","none");
+        }
+
         $('.tab.whole').parent('li').hide();
         // $('.checkbox.other').attr('disabled',true);
         initResult()
@@ -186,6 +191,14 @@ function initResult() {
             })
         }
     }
+    /*else{ //购买全国是否可以编辑市
+        $('.province').each(function () {
+            let that = $(this).parent('.tab:not(.municipality)');
+            that.bind('click', function () {
+                slideFun($(this));
+            })
+        })
+    }*/
     // 渲染已选择结果
     for (const k in p) {
         console.log(p[k], k)

+ 458 - 0
src/jfw/modules/app/src/web/templates/staticpage/wx-serviceterms.html

@@ -0,0 +1,458 @@
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport"
+          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <link href="{{Msg "seo" "cdn"}}/css/dev2/reset_pc.css?v={{Msg "seo" "version"}}" rel="stylesheet">
+    <link rel="stylesheet" type="text/css" href="/jyapp/css/layout.css?v={{Msg "seo" "version"}}"/>
+    <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}"/>
+    <title>剑鱼标讯线上购买与服务条款</title>
+    <style type="text/css">
+        .public-nav {
+            border-bottom: 1px solid #e0e0e0;
+            background-color: #fff;
+        }
+
+        /*j-wx-code Start*/
+        .j-wx-code {
+            width: 335px;
+            height: 355px;
+            background-color: #fff;
+            -webkit-border-radius: 6px;
+            -moz-border-radius: 6px;
+            border-radius: 6px;
+            position: relative;
+            /*margin: 100px auto;*/
+        }
+
+        .j-wx-code > .code-close {
+            width: 40px;
+            height: 40px;
+            position: absolute;
+            right: -20px;
+            top: -20px;
+            cursor: pointer;
+            -webkit-transition: all 1s;
+            -o-transition: all 1s;
+            -moz-transition: all 1s;
+            transition: all 1s;
+        }
+
+        .j-wx-code > .code-close:hover {
+            -webkit-transform: scale(1.2);
+            -moz-transform: scale(1.2);
+            -ms-transform: scale(1.2);
+            -o-transform: scale(1.2);
+            transform: scale(1.2);
+        }
+
+        .j-wx-code > .code-title {
+            height: 82px;
+            background: url(/images/j-wx-code-title.png) center center no-repeat;
+            -webkit-animation: moveYun 15s infinite linear both;
+            -moz-animation: moveYun 15s infinite linear both;
+            -o-animation: moveYun 15s infinite linear both;
+            animation: moveYun 15s infinite linear both;
+        }
+
+        .j-wx-code > .code-wxm {
+            text-align: center;
+            margin-bottom: -6px;
+            margin-top: -16px;
+
+        }
+
+        .j-wx-code > .code-wxm > img {
+            width: 200px;
+            height: 200px;
+            margin-top: -5px;
+        }
+
+        .j-wx-code > .code-text {
+            font: 16px "microsoft yahei";
+            text-align: center;
+            color: #252627;
+        }
+
+        .j-wx-code > .code-bottom {
+            width: 470px;
+            height: 211px;
+            position: absolute;
+            bottom: -113px;
+            left: -73px;
+            background: url({{Msg "seo" "cdn"}}/images/j-wx-code-bottom.png) 0 0 no-repeat;
+        }
+
+        .j-wx-code > .code-bottom > img {
+            position: absolute;
+            left: 280px;
+            top: 88px;
+            -webkit-animation: codeWxMove 10s linear both;
+            -moz-animation: codeWxMove 10s linear both;
+            -o-animation: codeWxMove 10s linear both;
+            animation: codeWxMove 10s linear both;
+            -webkit-animation-fill-mode: forwards;
+            -moz-animation-fill-mode: forwards;
+            -o-animation-fill-mode: forwards;
+            animation-fill-mode: forwards;
+        }
+
+        .main > p {
+            padding-left: 20px;
+            margin: 5px 0px;
+        }
+
+        .main > h1 {
+            margin-bottom: .8rem;
+            margin-top: 1.2rem;
+        }
+
+        .yijixuhao {
+            display: inline-block;
+            margin-left: 10px;
+        }
+
+        .erjixuhao {
+            display: inline-block;
+            margin-left: 10px;
+        }
+    </style>
+</head>
+<body>
+<div class="app-layout-header">
+    <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
+    VIP订阅
+</div>
+<div class="app-layout-content-b">
+    <section style="margin: auto;padding: 2rem 1rem" class="main">
+        <p>
+        <div class="MsoNormal" align="center" style="font-size:10.5pt;text-align:center;margin-bottom:20px;">
+            <b><span style="font-size: 1.5rem;line-height: 2rem;">剑鱼标讯产品与服务线上购买服务条款<span></span></span></b>
+        </div>
+        <div class="MsoNormal" style="font-size: .9rem;line-height: 1.4rem;text-indent: 2rem;">
+            <span style="line-height:21px;">欢迎<span>“</span>您<span>”</span>与北京拓普丰联信息工程有限公司(以下简称“北京拓普”)及剑鱼标讯共同签署本《剑鱼标讯产品与服务线上购买服务条款》协议(以下简称<span>“</span>本服务条款<span>”</span>),本服务条款阐述之条款和条件适用于您使用北京拓普旗下剑鱼标讯产品与服务,包含</span><span
+                    style="">www.jianyu360.com</span><span style="">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>等</span><span
+                    style="line-height:21px;">向您提供的剑鱼标讯各项产品与服务。<span></span></span>
+        </div>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">1.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">定义<span></span></span>
+        </h1>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;">
+            <span style="line-height:21px;">除本协议另有规定外,下列用语或术语应当具有以下定义<span>:</span></span>
+        </p>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">1.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普:北京拓普丰联信息工程有限公司,注册地址为</span><span
+                    style="">北京市朝阳区北四环中路华严北里健翔</span><span>3</span><span style="">号地峻峰华亭嘉园</span><span>C</span><span
+                    style="">座住宅楼</span><span>2011</span><span
+                    style="line-height:21px;">,为剑鱼标讯的管理者及运营者。<span></span></span>
+        </p>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">1.2<span class="erjixuhao"></span></span><span style="line-height:21px;">剑鱼标讯:指由北京拓普运营并管理的产品,产品形态包括</span><span
+                    style="">www.jianyu360.com</span><span style="">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>等,</span><span
+                    style="line-height:21px;">剑鱼标讯为其用户提供招标信息产品与服务。<span></span></span>
+        </p>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">1.3<span class="erjixuhao"></span></span><span style="line-height:21px;">您:指剑鱼标讯注册用户。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">2.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">接受服务条款<span></span></span>
+        </h1>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;">
+            <span style="line-height:21px;">本服务条款是北京拓普及剑鱼标讯与您就剑鱼标讯产品与服务的相关事项所订立的有效合约。您通过盖章、网络页面点击确认或以其他方式选择接受本服务条款,包括但不限于未点击确认本服务条款而事实上使用了北京拓普及剑鱼标讯产品与服务,即表示您与北京拓普及剑鱼标讯已达成协议并同意接受本服务条款的全部约定内容。如若双方盖章文本与网络页面点击确认或以其他方式选择接受之服务条款文本,存有不一致之处,以双方盖章文本为准。<span></span></span>
+        </p>
+        <p class="MsoNormal" align="left" style="font-size:10.5pt;">
+            <span style="line-height:21px;">关于本服务条款,提示您特别关注限制、免责条款,北京拓普及剑鱼标讯对您违规、违约行为的认定处理条款,以及管辖法院的选择条款等。在接受本服务条款之前,请您仔细阅读本服务条款的全部内容。如果您对本服务条款的条款有疑问</span><span
+                    style="line-height:21px;color:#0D0D0D;">的,请通过北京拓普及剑鱼标讯客服进行询问,客服将向您解释条款内容。</span><span
+                    style="line-height:21px;">如果您不同意本服务条款的任意内容,或者无法准确理解北京拓普及剑鱼标讯对条款的解释,请不要进行后续操作。<span></span></span>
+        </p>
+        <p class="MsoNormal" style="font-size:10.5pt;text-align:justify;">
+            <span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">3.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">服务内容<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">3.1<span class="erjixuhao"></span></span><span style="">本条款中<span>“</span>产品与服务<span>”</span>指:北京拓普及剑鱼标讯向您提供<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上所展示的剑鱼标讯产品与服务以及相关的技术支持服务。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">3.2<span class="erjixuhao"></span></span><span
+                    style="">北京拓普及剑鱼标讯提供的产品与服务必须符合本服务条款的约定。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">4.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">服务费用、支付方式<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">4.1<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">北京拓普及剑鱼标讯产品与服务</span><span style="">费用将在您订购页面予以列明公示,您可自行选择具体产品与服务类型并按列明的价格,通过在线方式予以支付。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">4.2<span class="erjixuhao"></span></span><span style="">价格说明:<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">4.2.1<span class="erjixuhao"></span></span><span style="line-height:21px;">销售价:为北京拓普及剑鱼标讯产品与服务的销售价,是您最终决定是否购买商品的依据。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">4.2.2<span class="erjixuhao"></span></span><span style="line-height:21px;">划线价:北京拓普及剑鱼标讯产品与服务展示的划横线价格为参考价,并非原价,该价格可能是北京拓普及剑鱼标讯产品与服务指导价或该项数据服务曾经展示过的销售价;鉴于时间的差异性及市场因素波动,该价格仅供您参考。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">4.2.3<span class="erjixuhao"></span></span><span style="line-height:21px;">折扣:如无特殊说明,折扣指北京拓普及剑鱼标讯产品与服务在原价、或划线价等某一价格基础上计算出的优惠比例或优惠金额;如有疑问,您可在购买前联系北京拓普及剑鱼标讯客服进行咨询。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">4.2.4<span class="erjixuhao"></span></span><span style="line-height:21px;">异常问题:北京拓普及剑鱼标讯产品与服务的具体售价以订单结算页价格为准;如您发现北京拓普及剑鱼标讯产品与服务售价或促销信息有异常,建议购买前先联系北京拓普及剑鱼标讯客服进行咨询。<b><span></span></b></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">4.3<span class="erjixuhao"></span></span><span
+                    style="">北京拓普及剑鱼标讯保留在您未按照约定支付全部费用之前不向您提供服务和<span>/</span>或技术支持,或者终止服务和<span>/</span>或技术支持的权利。同时,北京拓普及剑鱼标讯有权要求您支付终止服务前您尚未支付的服务费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">4.4<span class="erjixuhao"></span></span><span style="">您完全理解北京拓普及剑鱼标讯价格体系中所有的赠送服务项目或活动均为北京拓普及剑鱼标讯在正常服务价格之外的一次性特别优惠,优惠内容不包括赠送服务项目的修改、更新及维护费用,并且赠送服务项目不可折价冲抵服务价格。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">4.5<span class="erjixuhao"></span></span><span style="">您在支付相应的服务费用后,即可享受北京拓普及剑鱼标讯所提供相对应的产品与服务。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">5.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">权利义务<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1<span class="erjixuhao"></span></span><span style="">您的权利、义务<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.1<span class="erjixuhao"></span></span><span style="">您同意遵守本服务条款以及服务展示页面的相关管理规范及流程。您了解上述协议及规范等内容可能会不时变更。如本服务条款的任何内容发生变动,北京拓普及剑鱼标讯应通过提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>的适当版面公告向您提示修改内容。如您不同意北京拓普及剑鱼标讯对本服务条款相关条款所做的修改,您有权停止使用北京拓普及剑鱼标讯产品与服务,此等情况下,北京拓普及剑鱼标讯应与您进行服务费结算(如有)。如您继续使用北京拓普及剑鱼标讯产品与服务,则视为您接受北京拓普及剑鱼标讯对本服务条款相关条款所做的修改。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.2<span class="erjixuhao"></span></span><span style="">您应按照北京拓普及剑鱼标讯的页面提示及本服务条款的约定支付相应服务费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.3<span class="erjixuhao"></span></span><span style="">您只在内部直接或间接使用北京拓普及剑鱼标讯提供的数据。您不得直接或间接利用北京拓普及剑鱼标讯提供的数据为第三方提供服务或销售产品。如您违反此项约定,北京拓普及剑鱼标讯有权随时终止该协议的履行,不承担您的实际损失,不退还已支付款项,并保留追究您赔偿的权利。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.4<span class="erjixuhao"></span></span><span style="">您承诺:<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.1<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">除北京拓普及剑鱼标讯明示许可外,不得修改、翻译、改编、出租、转许可、在信息网络上传播或转让北京拓普及剑鱼标讯产品与服务,或将获得的数据用于和北京拓普及剑鱼标讯进行同业竞争,也不得逆向工程、反编译或试图以其他方式发现北京拓普及剑鱼标讯提供的服务或软件的源代码;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.2<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">若北京拓普及剑鱼标讯的产品与服务涉及第三方软件之许可使用的,您同意遵守相关的许可协议的约束;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">不利用北京拓普及剑鱼标讯提供的资源和服务下载(<span>download</span>)、储存、发布如下信息或者内容,不为他人发布该等信息提供任何便利(包括但不限于设置<span>URL</span>、<span>BANNER</span>链接等)<span>:</span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.1<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">违反国家规定的政治宣传和<span>/</span>或新闻信息;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.2<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">涉及国家秘密和<span>/</span>或安全的信息;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.3<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">封建迷信和<span>/</span>或淫秽、色情、下流的信息或教唆犯罪的信息;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.4<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">博彩有奖、赌博游戏、<span>“</span>私服<span>”</span>、<span>“</span>外挂<span>”</span>等非法互联网出版活动;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.5<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">违反国家民族和宗教政策的信息;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.6<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">妨碍互联网运行安全的信息;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.7<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">侵害他人合法权益的信息和<span>/</span>或其他有损于社会秩序、社会治安、公共道德的信息或内容;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.3.8<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">其他违反法律法规、部门规章或国家政策的内容。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.4<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">不进行任何改变或试图改变北京拓普及剑鱼标讯提供的系统配置或破坏系统安全的行为;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.5<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">不从事其他违法、违规或违反北京拓普及剑鱼标讯服务条款的行为。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+            <span style="line-height:21px;">5.1.4.6<span class="erjixuhao"></span></span><span
+                    style="line-height:21px;">如北京拓普及剑鱼标讯发现您违反上述条款的约定,有权根据情况采取相应的处理措施,包括但不限于立即终止服务、中止服务或删除相应信息等。如果第三方机构或个人对您提出质疑或投诉,北京拓普及剑鱼标讯将通知您,您有责任在规定时间内进行说明并出具证明材料,如您未能提供相反证据或您逾期未能反馈的,北京拓普及剑鱼标讯将采取包括但不限于立即终止服务、中止服务或删除相应信息等处理措施。因您未及时更新联系方式或联系方式不正确而致使未能联系到您的,亦视为您逾期未能反馈。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.5<span class="erjixuhao"></span></span><span style="">您对自己管理北京拓普及剑鱼标讯平台上各类产品与服务的口令、密码的完整性和保密性负责。因您维护不当或保密不当致使上述数据、口令、密码等丢失或泄漏所引起的一切损失和后果均由您自行承担。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.6<span class="erjixuhao"></span></span><span style="">您了解北京拓普及剑鱼标讯无法保证其所提供的服务毫无瑕疵,但北京拓普及剑鱼标讯承诺不断提升服务质量及服务水平。所以您同意:即使北京拓普及剑鱼标讯提供的服务存在瑕疵,但上述瑕疵是当时行业技术水平所无法避免的,其将不被视为北京拓普及剑鱼标讯违约。您同意和北京拓普及剑鱼标讯一同合作解决上述瑕疵问题。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.1.7<span class="erjixuhao"></span></span><span style="">为了数据的安全,您应负责您数据的备份工作。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.2<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯的权利、义务<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.2.1<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯应按照服务条款约定的</span><span
+                    style="">产品和服务为您提供</span><span style="">。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">5.2.2<span class="erjixuhao"></span></span><span
+                    style="">北京拓普及剑鱼标讯按照您的支付金额提供增值税发票。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">6.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">用户数据<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="">用户业务数据一经删除,即不可恢复;您应自行承担数据因此被删除所引发的后果和责任,您理解并同意,北京拓普及剑鱼标讯没有继续保留、导出或者返还用户业务数据的义务。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">7.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">知识产权<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">7.1<span class="erjixuhao"></span></span><span style="line-height:21px;">您应保证提交北京拓普及剑鱼标讯的素材、对北京拓普及剑鱼标讯产品与服务的使用及使用北京拓普及剑鱼标讯产品与服务所产生的成果未侵犯任何第三方的合法权益。如有第三方基于侵犯版权、侵犯第三人之权益或违反中国法律法规或其他适用的法律等原因而向北京拓普及剑鱼标讯提起索赔、诉讼或可能向其提起诉讼<span>,</span>则您应赔偿北京拓普及剑鱼标讯因此承担的费用或损失,并使北京拓普及剑鱼标讯完全免责。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">7.2<span class="erjixuhao"></span></span><span style="line-height:21px;">如果第三方机构或个人对您使用北京拓普及剑鱼标讯产品与服务所涉及的相关素材的知识产权归属提出质疑或投诉,您有责任出具相关知识产权证明材料,并配合北京拓普及剑鱼标讯相关投诉处理工作。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">7.3<span class="erjixuhao"></span></span><span style="line-height:21px;">您承认北京拓普及剑鱼标讯向您提供的任何资料、技术或技术支持、软件、服务等的知识产权均属于北京拓普及剑鱼标讯所有。除北京拓普及剑鱼标讯明示同意外,您无权复制、传播、转让、许可或提供他人使用上述资源,否则应承担相应的责任。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">8.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">保密条款<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">8.1<span class="erjixuhao"></span></span><span style="line-height:21px;">保密资料指由一方向另一方披露的所有技术及非技术信息(包括但不限于产品资料,产品计划,价格,财务及营销规划,业务战略,客户信息,客户数据,研发资料,软件硬件,API应用数据接口,技术说明,设计,特殊公式,特殊算法等<span>)</span>。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">8.2<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款任何一方同意对获悉的对方之上述保密资料予以保密,并严格限制接触上述保密资料的员工遵守本条之保密义务。除非国家机关依法强制要求或上述保密资料已经进入公有领域外,接受保密资料的一方不得对外披露。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">8.3<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款双方明确认可保密资料是双方的重点保密信息并是各自的重要资产,本服务条款双方同意尽最大的努力保护上述保密资料等不被披露。一旦发现有上述保密资料泄露事件,双方应合作采取一切合理措施避免或者减轻损害后果的产生。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">8.4<span class="erjixuhao"></span></span><span style="line-height:21px;">本条款不因本服务条款的终止而失效。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">9.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">服务的开始、使用及终止<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.1<span class="erjixuhao"></span></span><span style="line-height:21px;">自您开通之日起即可使用该服务,同时您应保持余额充足以确保服务的持续使用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.2<span class="erjixuhao"></span></span><span style="line-height:21px;">在已开通的功能和<span>/</span>或服务的有效期内,若您中途主动取消或终止功能和<span>/</span>或服务的,北京拓普及剑鱼标讯不予退还已收取的费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.3<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯根据自身商业决策、政府行为、不可抗力等原因可能会选择中止、中断及终止您的功能和<span>/</span>或服务。如有此等情形发生,北京拓普及剑鱼标讯会采取公告的形式通知您,但不承担由此对您造成的任何损失且不退还已经收取的费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.4<span class="erjixuhao"></span></span><span style="line-height:21px;">您在开通功能和<span>/</span>或服务时,应仔细核对帐号名称、开通功能和<span>/</span>或服务类型与时长等具体信息。如因您个人原因造成充错帐号、开通错功能和<span>/</span>或服务、开通错时长,北京拓普及剑鱼标讯不予退还已收取的费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5<span class="erjixuhao"></span></span><span style="line-height:21px;">发生下列情形,北京拓普及剑鱼标讯终止向您提供该服务:<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5.1<span class="erjixuhao"></span></span><span style="line-height:21px;">双方协商一致终止;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5.2<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯由于自身经营政策的变动,提前通过</span><span
+                    style="line-height:21px;">www.jianyu360.com</span><span
+                    style="line-height:21px;">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span></span><span style="line-height:21px;">合适版面发通知或给您发站内通知、书面通知的方式,终止本服务条款项下的服务;</span><span
+                    style="line-height:21px;"></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5.3<span class="erjixuhao"></span></span><span style="line-height:21px;">由于您严重违反本服务条款(</span><span
+                    style="line-height:21px;">包括但不限于<span>a.</span>您未按照本服务条款的约定履行付款义务,及<span>/</span>或<span>b.</span>您严重违反本服务条款中所做的承诺,及<span>/</span>或<span>c.</span>您严重违反法律规定等</span><span
+                    style="line-height:21px;">),北京拓普及剑鱼标讯有权提前终止服务,并不退还您已经支付的费用;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5.4<span class="erjixuhao"></span></span><span style="line-height:21px;">您理解并充分认可,虽然北京拓普及剑鱼标讯已经建立(并将根据技术的发展不断完善)必要的技术措施来防御包括计算机病毒、网络入侵和攻击破坏(包括但不限于<span>DDOS</span>)等危害网络安全的事项或行为(以下统称该等行为),但鉴于网络安全技术的局限性、相对性以及该等行为的不可预见性,因此如因您遭遇该等行为而给北京拓普及剑鱼标讯或者北京拓普及剑鱼标讯其他的网络或服务器(包括但不限于本地及外地和国际的网络、服务器等)带来危害,或影响北京拓普及剑鱼标讯与国际互联网或者北京拓普及剑鱼标讯与特定网络、服务器及北京拓普及剑鱼标讯内部的通畅联系,北京拓普及剑鱼标讯可决定暂停或终止服务,并不退还您已经支付的费用。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">9.5.5<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普剑鱼标讯可提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上通告或给您发网站内通知或书面通知的方式终止本服务条款。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">10.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">违约责任<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.1<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款任何一方违约均须依法承担违约责任。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.2<span class="erjixuhao"></span></span><span style="line-height:21px;">您理解,鉴于计算机、互联网的特殊性,下述情况不属于北京拓普及剑鱼标讯违约:<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.2.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯在进行服务器配置、维护时,需要短时间中断服务;<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.2.2<span class="erjixuhao"></span></span><span style="line-height:21px;">由于<span>Internet</span>上的通路阻塞造成您网站访问速度下降。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.3<span class="erjixuhao"></span></span><span style="line-height:21px;">在任何情况下,北京拓普及剑鱼标讯均不对任何间接性、后果性、惩戒性、偶然性、特殊性的损害,包括您使用北京拓普及剑鱼标讯产品与服务而遭受的利润损失承担责任(即使您已被告知该等损失的可能性)。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">10.4<span class="erjixuhao"></span></span><span style="line-height:21px;">在任何情况下,北京拓普及剑鱼标讯对本服务条款所承担的违约赔偿责任总额不超过违约服务对应之服务费总额。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">11.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">不可抗力<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">11.1<span class="erjixuhao"></span></span><span style="line-height:21px;">因不可抗力或者其他意外事件,使得本服务条款的履行不可能、不必要或者无意义的,遭受不可抗力、意外事件的一方不承担责任。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">11.2<span class="erjixuhao"></span></span><span style="line-height:21px;">不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行等以及社会事件如战争、动乱、政府行为、电信主干线路中断、黑客、网路堵塞、电信部门技术调整和政府管制等。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">12.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">法律适用及争议解决<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">12.1<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款受中华人民共和国法律管辖。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">12.2<span class="erjixuhao"></span></span><span style="line-height:21px;">在执行本服务条款过程中如发生纠纷,双方应及时协商解决。协商不成时,任何一方可直接向</span><span
+                    style="">北京拓普及剑鱼标讯所在地</span><span style="line-height:21px;">人民法院提起诉讼。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">12.3<span class="erjixuhao"></span></span><span style="line-height:21px;">在法院审理期间,除提交法院审理的事项外,本服务条款其他部分仍应继续履行。<span></span></span>
+        </p>
+        <h1 style="text-align:justify;font-size:22pt;">
+            <span style="font-size:14pt;line-height:28px;">13.<span class="yijixuhao"></span></span><span
+                    style="font-size:14pt;line-height:28px;">附则<span></span></span>
+        </h1>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">13.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>相关页面上的服务说明、价格说明和您确认同意的订购页面是本服务条款不可分割的一部分。如果<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>相关页面上的服务说明、价格说明和您确认同意的订购页面与本服务条款有不一致之处,以本服务条款为准。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">13.2<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯有权以提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上公布、或给您发网站内通知或书面通知的方式将本服务条款的权利义务全部或者部分转移给北京拓普及剑鱼标讯的关联公司。<span></span></span>
+        </p>
+        <p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+            <span style="line-height:21px;">13.3<span class="erjixuhao"></span></span><span style="line-height:21px;">如果任何条款在性质上或其他方面理应在此协议终止时继续存在,那么应视为继续存在的条款,这些条款包括但不局限于保证条款、保密条款、知识产权条款、法律适用及争议解决条款。<span></span></span>
+        </p>
+        <p class="MsoNormal" align="center" style="font-size:10.5pt;text-align:center;">
+            <b><span style="font-size:14pt;line-height:28px;"></span></b>
+        </p>
+        </p>
+    </section>
+</div>
+<!--百度统计end-->
+{{include "/common/baiducc.html"}}
+<script src="/jyapp/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
+<script src="/jyapp/js/common.js?v={{Msg "seo" "version"}}"></script>
+</body>
+</html>

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

@@ -88,9 +88,9 @@
                     $(".city").css("display", "");
                     $(".edit_item.city span").text(cityCount + "个市");
                 }
-                let descText = "";
+                let descText = "已购买";
                 if (this.reqData.buyset.areacount > 0) {
-                    descText = "已购买" + this.reqData.buyset.areacount + "个省级区域"
+                    descText += this.reqData.buyset.areacount + "个省级区域"
                 }
                 if (cityCount > 0) {
                     if (this.reqData.buyset.areacount > 0) {

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

@@ -10,7 +10,7 @@
     <link rel="stylesheet" type="text/css" href="/jyapp/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}"/>
     <link rel="stylesheet" href="/jyapp/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="/jyapp/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="/jyapp/vipsubscribe/css/vip_purchase.css?v=3{{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="/jyapp/vipsubscribe/css/vip_purchase.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" type="text/css" href="/jyapp/css/layout.css?v={{Msg "seo" "version"}}"/>
     <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}"/>
 </head>
@@ -148,7 +148,7 @@
                     <div class="weui-cell__bd read">
                         <p>
                             我已阅读,理解并接受
-                            <a href="/front/staticPage/wx-serviceterms.html">
+                            <a href="/jyapp/front/staticPage/wx-serviceterms.html">
                                 《剑鱼标讯线上购买与服务条款》
                             </a>
                         </p>

+ 808 - 0
src/jfw/modules/app/src/web/templates/vipsubscribe/vip_purchase_willExpire.html

@@ -0,0 +1,808 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+    <meta charset="utf-8">
+    <meta name="viewport"
+          content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
+    <title>VIP订阅</title>
+    <script src="/jyapp/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
+    <link rel="stylesheet" type="text/css" href="/jyapp/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}"/>
+    <link rel="stylesheet" href="/jyapp/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="/jyapp/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="/jyapp/vipsubscribe/css/vip_purchase.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" type="text/css" href="/jyapp/css/layout.css?v={{Msg "seo" "version"}}"/>
+    <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}"/>
+</head>
+<body>
+<div class="app-layout-header">
+    <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
+    VIP订阅
+</div>
+<div class="app-layout-content-b">
+    <div class="vip_purchase">
+        <div class="choose_condition">
+            <ul class="chooseList">
+                <li class="choose_item">
+                    <a href="/jyapp/vipsubscribe/toChooseArea">
+                        <span class="label">区域</span>
+                        <input type="text" disabled value="" placeholder="1个市"
+                               class="info choose_area">
+                        <i class="iconfont icon-arrow"></i>
+                    </a>
+                    <!-- 无选择时不显示 -->
+                    <p class="add_tips area" style="display:none">已选择 0 个省级区域、0 个地市</p>
+                </li>
+                <li class="choose_item">
+                    <a href="/jyapp/vipsubscribe/toChooseIndustry">
+                        <span class="label">行业</span>
+                        <input type="text" disabled value="" placeholder="1个行业"
+                               class="info choose_industry">
+                        <i class="iconfont icon-arrow"></i>
+                    </a>
+                    <!-- 无选择时不显示 -->
+                    <p class="add_tips industry" style="display:none">已选择 0 个行业</p>
+                </li>
+                <li class="choose_item select_cycle">
+                    <!-- 需要选择订阅周期就用a标签,div.class="free-7day"隐藏 opacity: 1 !important; -->
+                    <!-- 需要选择试用就用div标签,a标签隐藏 -->
+                    <a href="javascript:;">
+                        <span class="label">订阅周期</span>
+                        <span class="show_time">一个月</span>
+                        <input type="text" readonly="readonly" disabled style="display:none;" value="1个月"
+                               class="info choose_time">
+                        <i class="iconfont icon-arrow"></i>
+                    </a>
+                </li>
+            </ul>
+            <div class="pay_mode">
+                <div class="select_payment choose_item">
+                    <a href="javascript:;">
+                        <span class="label">支付方式</span>
+                        <span class="info choose_way" style="width: 6rem;">微信支付</span>
+                        <!--<i class="iconfont"></i>-->
+                    </a>
+                </div>
+                <div class="vip_rules">
+                    <div class="vip_prise_table">
+                        <table class="monthly">
+                            <caption class="table_title">- VIP订阅价格 -</caption>
+                            <tr>
+                                <td colspan="2">按月购买</td>
+                            </tr>
+                            <tr>
+                                <td><span>5.8</span>元 月/市/行业</td>
+                                <td><span>18</span>元 月/市/全行业</td>
+                            </tr>
+                            <tr>
+                                <td><span>11.8</span>元 月/省/行业</td>
+                                <td><span>38</span>元 月/省/全行业</td>
+                            </tr>
+                            <tr>
+                                <td><span>118</span>元 月/全国/行业</td>
+                                <td><span>388</span>元 月/全国/全行业</td>
+                            </tr>
+                        </table>
+                        <table class="yearly">
+                            <tr>
+                                <td colspan="2">按年购买</td>
+                            </tr>
+                            <tr>
+                                <td><span>58</span>元 年/市/行业</td>
+                                <td><span>180</span>元 年/市/全行业</td>
+                            </tr>
+                            <tr>
+                                <td><span>118</span>元 年/省/行业</td>
+                                <td><span>380</span>元 年/省/全行业</td>
+                            </tr>
+                            <tr>
+                                <td><span>1180</span>元 年/全国/行业</td>
+                                <td><span>3880</span>元 年/全国/全行业</td>
+                            </tr>
+                        </table>
+                        <dl class="tips">
+                            <dt>购买须知:</dt>
+                            <dd>套餐周期内,不支持套餐降级,即将到期时续费可降级;</dd>
+                            <dd>支持套餐升级,补差价(按月进行补差价,不足一个月按一个月计算)。</dd>
+                        </dl>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div class="fixed-bottom-box">
+            <div class="weui-cells weui-cells_checkbox radio-form">
+                <label class="weui-cell weui-check__label" for="buy">
+                    <div class="weui-cell__hd">
+                        <input type="checkbox" class="weui-check" name="buyService" id="buy"/>
+                        <i class="weui-icon-checked"></i>
+                    </div>
+                    <div class="weui-cell__bd read">
+                        <p>
+                            我已阅读,理解并接受
+                            <a href="/jyapp/front/staticPage/wx-serviceterms.html">
+                                《剑鱼标讯线上购买与服务条款》
+                            </a>
+                        </p>
+                    </div>
+                </label>
+            </div>
+            <div class="price">
+                <!-- <strong>&yen;1,300.00</strong> -->
+                <strong>&yen;5.80</strong>
+            </div>
+            <div class="form-btn">
+                <button class="btn enter" disabled id="payHandle">立即续费</button>
+            </div>
+        </div>
+
+        <!-- 选择行业 -->
+        <div class="js_dialog time_cycle" id="time_cycle" style="display: none;">
+            <div class="weui-mask"></div>
+            <div class="box">
+                <div class="box_hd">
+                    <h3>订阅周期</h3>
+                    <span class="cancel">取消</span>
+                </div>
+                <div class="box_bd">
+                    <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">
+                            <label class="weui-cell weui-check__label monthly_label" for="monthly">
+                                <div class="weui-cell__hd">
+                                    <input type="radio" class="weui-check monthly" name="time" value="month"
+                                           id="monthly"/>
+                                    <i class="weui-icon-checked"></i>
+                                </div>
+                                <div class="weui-cell__bd">
+                                    <p>按月订阅</p>
+                                </div>
+                            </label>
+                            <div class="number_box" id="number_box_month" data-numbox-step="1" data-numbox-min="1"
+                                 data-numbox-max="12">
+                                <button class="weui-btn weui-btn_plain-default" type="button" disabled>
+                                    <div class="jy_icon decrease"></div>
+                                </button>
+                                <span class="month_number">1</span>
+                                <button class="weui-btn weui-btn_plain-default add" type="button">
+                                    <div class="jy_icon increase"></div>
+                                </button>
+                            </div>
+                        </div>
+                        <div class="weui-cells weui-cells_checkbox choose-form">
+                            <label class="weui-cell weui-check__label yearly_label" for="yearly">
+                                <div class="weui-cell__hd">
+                                    <input type="radio" class="weui-check yearly" name="time" value="year"
+                                           id="yearly" checked/>
+                                    <i class="weui-icon-checked"></i>
+                                </div>
+                                <div class="weui-cell__bd">
+                                    <p>按年订阅</p>
+                                </div>
+                            </label>
+                            <div class="number_box" id="number_box_year" style="border: 0;">
+                                <span class="year_number" data-id="1">1年</span>
+                                <span class="year_number" data-id="2">2年</span>
+                                <span class="year_number" data-id="3">3年</span>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <div class="form-btn">
+                    <button class="btn enter" id="enter_period">确认</button>
+                </div>
+            </div>
+        </div>
+        <!-- 选择支付方式 -->
+        <div class="js_dialog pay_way" id="pay_way" style="display: none;">
+            <div class="weui-mask"></div>
+            <div class="box">
+                <div class="box_hd">
+                    <span></span>
+                    <h3>支付方式</h3>
+                    <span class="cancel">取消</span>
+                </div>
+                <div class="box_bd">
+                    <div class="weui-cells weui-cells_checkbox choose-form">
+                        <label class="weui-cell weui-check__label wx_label" for="wx">
+                            <div class="weui-cell__bd read">
+                                <p><img src="/jyapp/vipsubscribe/image/weixin.png?v={{Msg "seo" "version"}}">微信支付</p>
+                            </div>
+                            <div class="weui-cell__hd">
+                                <input type="radio" class="weui-check" name="way" value="微信支付" id="wx" checked/>
+                                <i class="weui-icon-checked"></i>
+                            </div>
+                        </label>
+                        <label class="weui-cell weui-check__label zfb_label" for="zfb">
+                            <div class="weui-cell__bd read">
+                                <p><img src="/jyapp/vipsubscribe/image/zhifubao.png?v={{Msg "seo" "version"}}">支付宝支付</p>
+                            </div>
+                            <div class="weui-cell__hd">
+                                <input type="radio" class="weui-check" name="way" value="支付宝支付" id="zfb"/>
+                                <i class="weui-icon-checked"></i>
+                            </div>
+                        </label>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+    <script src="/jyapp/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/jyapp/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/jyapp/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/jyapp/js/common.js?v={{Msg "seo" "version"}}"></script>
+    {{include "/common/weixin.html"}}
+    <script>
+        $(window).bind("pageshow", function (event) {
+            if (event.originalEvent.persisted) {
+                window.location.reload();
+            }
+        });
+        //微信支付start
+        try {
+            var signature = {{.T.signature}};
+            var isConfigSuccess = true;
+            var id = {{.T._id}}
+            if (signature && signature.length == 4) {
+                wx.config({
+                    debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
+                    appId: signature[0], // 必填,公众号的唯一标识
+                    timestamp: signature[1], // 必填,生成签名的时间戳
+                    nonceStr: signature[2], // 必填,生成签名的随机串
+                    signature: signature[3],// 必填,签名,见附录1
+                    jsApiList: ['chooseWXPay', 'hideAllNonBaseMenuItem'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
+                });
+                wx.ready(function () {
+                    if (!isConfigSuccess) {
+                        return;
+                    }
+                    wx.hideAllNonBaseMenuItem();
+                });
+                wx.error(function (res) {
+                    //config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
+                    //alert(res);
+                    isConfigSuccess = false;
+                });
+            }
+
+            //调用微信支付接口
+            function onBridgeReady(res, ordercode) {
+                WeixinJSBridge.invoke('getBrandWCPayRequest', {
+                        "appId": res["appId"],
+                        "timeStamp": res["timestamp"],
+                        "nonceStr": res["nonceStr"],
+                        "package": res["prepayId"],
+                        "signType": res["signType"],
+                        "paySign": res["sign"]
+                    },
+                    function (r) {
+                        if (r.err_msg == "get_brand_wcpay_request:ok") {
+                            setTimeout(function () {
+                                clearSessionStorage();
+                                window.location.replace("/jyapp/vipsubscribe/toPaySuccessPage?orderCode=" + ordercode);
+                            }, 500)
+                        } else if (r.err_msg == "get_brand_wcpay_request:cancel") {
+                            console.log("支付已取消")
+                        } else {
+                            weui.toast("系统异常,请稍微再试", {
+                                duration: 2000,
+                                className: 'custom-toast',
+                            });
+                        }
+                    });
+            }
+
+            //微信支付end
+        } catch (e) {
+            console.log(e)
+        }
+        sessionStorage.removeItem("vipSubisTrial");//非试用界面
+        var purchase = {
+            areaSelect: {},//已选择地区 {"一个省":["一个市"]}计算价格临时变量
+            areaSelectFlushed: false,
+            industrySelect: [],// 已选择行业 一个行业(计算价格临时变量)
+            industrySelectFlushed: false,
+            timeSelect: [1, 2],//已选择时间 timeSelect[0]时长  timeSelect[1] 1:年 2:月
+            buyset: {},
+            price: {}, //价格
+            vipSubisTrial: false,
+            initData: function () {
+                //已选择
+                try {
+                    if (sessionStorage.getItem("vipSubSelectArea")) {
+                        this.areaSelect = JSON.parse(sessionStorage.getItem("vipSubSelectArea"));
+                    }
+                    if (sessionStorage.getItem("vipSubSelectIndustry")) {
+                        this.industrySelect = JSON.parse(sessionStorage.getItem("vipSubSelectIndustry"));
+                    }
+                    if (sessionStorage.getItem("vipSubBuySet")) {
+                        this.buyset = JSON.parse(sessionStorage.getItem("vipSubBuySet"));
+                    }
+                    if (!sessionStorage.getItem("vipSubBuySet")) {
+                        $DoPost("/subscribepay/editSub/getSubBuyMsg", {}, function (r) {
+                            if (r.success) {
+                                if (!$.isEmptyObject(r.data.area)) {
+                                    purchase.areaSelect = r.data.area
+                                } else {
+                                    purchase.areaSelect = {"全国": []}
+                                }
+                                if (r.data.industry.length != 0) {
+                                    purchase.industrySelect = r.data.industry
+                                } else {
+                                    purchase.industrySelect = ["全部行业"]
+                                }
+                                if (!$.isEmptyObject(r.data.buyset)) {
+                                    purchase.buyset = r.data.buyset
+                                }
+                                sessionStorage.setItem("vipSubSelectArea", JSON.stringify(purchase.areaSelect));
+                                sessionStorage.setItem("vipSubSelectIndustry", JSON.stringify(purchase.industrySelect));
+                                sessionStorage.setItem("vipSubSelectArea_buyed", JSON.stringify(purchase.areaSelect));
+                                sessionStorage.setItem("vipSubSelectIndustry_buyed", JSON.stringify(purchase.industrySelect));
+                                sessionStorage.setItem("vipSubBuySet", JSON.stringify(purchase.buyset))
+                            }
+                        }, false)
+                    }
+                    if (sessionStorage.getItem("vipSubSelectTime")) {
+                        this.timeSelect = JSON.parse(sessionStorage.getItem("vipSubSelectTime"));
+                    }
+                    //是否已经点击已读
+                    if (sessionStorage.getItem("vipSub_read") == "true") $("#buy").prop("checked", true);
+                    //是否试用界面
+                    if (sessionStorage.getItem("vipSubisTrial")) this.vipSubisTrial = true;
+
+                    //加载价格
+                    $DoPost("/subscribepay/vipsubscribe/getPrice", {}, function (r) {
+                        if (r) {
+                            purchase.price = r;
+                        }
+                    }, false)
+
+                } catch (e) {
+                    console.log(e)
+                }
+            },
+            showArea: function () {
+                if (!this.areaSelectFlushed) {
+                    if (this.buyset.areacount == -1) {
+                        $(".choose_area").val("全国");
+                    } else {
+                        let tipTxt = "已购买 ";
+                        if (this.buyset.areacount != 0) tipTxt += this.buyset.areacount + " 个省级区域";
+                        if (!$.isEmptyObject(this.buyset.citys)) {
+                            if (this.buyset.areacount != 0) tipTxt += "、";
+                            let cityCount = 0;
+                            for (var i in this.buyset.citys) {
+                                cityCount += this.buyset.citys[i];
+                            }
+                            tipTxt += cityCount + " 个地市";
+                        }
+                        $(".choose_area").val(tipTxt);
+                    }
+                } else {
+                    let cityArr = [];//城市
+                    let provinceArr = [];//省份
+                    let data = this.areaSelect;
+                    for (var i in data) {
+                        let citys = data[i];
+                        if (citys.length > 0) {
+                            cityArr = cityArr.concat(citys);
+                        } else {
+                            provinceArr.push(i)
+                        }
+                    }
+
+                    if (!$.isEmptyObject(this.areaSelect) && !this.areaSelect["全国"]) { //选择有行业信息 且不是全国
+                        var tipTxt = "已购买 ";
+                        if (provinceArr.length > 0) tipTxt += provinceArr.length + " 个省级区域";
+                        if (cityArr.length > 0) {
+                            if (provinceArr.length > 0) tipTxt += "、";
+                            tipTxt += cityArr.length + " 个地市";
+                        }
+                        $(".choose_area").val(tipTxt);
+                        //$(".add_tips.area").text(tipTxt).css("display", "");
+                    } else if (!$.isEmptyObject(this.areaSelect) && this.areaSelect["全国"]) {
+                        $(".choose_area").val("全国");
+                    }
+                }
+            },
+            showPrice: function () {
+                $('.monthly span:eq(0)').text(purchase.price.month.oneCity_oneBuyerClass / 100);
+                $('.monthly span:eq(1)').text(purchase.price.month.oneCity_allBuyerClass / 100);
+                $('.monthly span:eq(2)').text(purchase.price.month.oneProvince_oneBuyerClass / 100);
+                $('.monthly span:eq(3)').text(purchase.price.month.oneProvince_allBuyerClass / 100);
+                $('.monthly span:eq(4)').text(purchase.price.month.allProvince_oneBuyerClass / 100);
+                $('.monthly span:eq(5)').text(purchase.price.month.allProvince_allBuyerClass / 100);
+
+                $('.yearly span:eq(0)').text(purchase.price.year.oneCity_oneBuyerClass / 100);
+                $('.yearly span:eq(1)').text(purchase.price.year.oneCity_allBuyerClass / 100);
+                $('.yearly span:eq(2)').text(purchase.price.year.oneProvince_oneBuyerClass / 100);
+                $('.yearly span:eq(3)').text(purchase.price.year.oneProvince_allBuyerClass / 100);
+                $('.yearly span:eq(4)').text(purchase.price.year.allProvince_oneBuyerClass / 100);
+                $('.yearly span:eq(5)').text(purchase.price.year.allProvince_allBuyerClass / 100);
+            },
+            showIndustry: function () {
+                if (!this.industrySelectFlushed) {
+                    if (this.buyset.buyerclasscount == -1) {
+                        $(".choose_industry").val("全部行业");
+                    } else {
+                        $(".choose_industry").val("已购买 " + this.buyset.buyerclasscount + " 个行业");
+                    }
+                } else {
+                    let data = this.industrySelect;
+                    if (this.industrySelect.length > 0 && this.industrySelect[0] != "全部行业" && this.industrySelect[0] != "一个行业") { //选择有行业信息
+                        $(".choose_industry").val("已购买 " + this.industrySelect.length + " 个行业");
+                    } else if (this.industrySelect.length > 0 && this.industrySelect[0] == "全部行业") {
+                        $(".choose_industry").val("全部行业");
+                    } else {
+                        $(".choose_industry").val("");
+                    }
+                }
+            },
+            showTime: function () {
+                let tmp = this.timeSelect[0];
+                if (this.timeSelect[1] == 1) {
+                    tmp += "年";
+                    $("#yearly").prop('checked', true);
+                    $('.year_number:eq(' + (this.timeSelect[0] - 1) + ')').addClass("active");
+                    //$(".number_box:eq(1)").addClass("active");
+                } else {
+                    tmp += "个月";
+                    $("#monthly").prop('checked', true);
+                    $(".number_box:eq(0)").addClass("active");
+                    $("#number_box_month .month_number").text(this.timeSelect[0]);
+                    if (this.timeSelect[0] >= 10) {
+                        $('.profit_tips').text("已选择" + this.timeSelect[0] + "个月,建议“按年订阅”").show();
+                    }
+                    if (this.timeSelect[0] == 1) {
+                        $('#number_box_month button:eq(0)').attr("disabled", "disabled");
+                    } else {
+                        $('#number_box_month button:eq(0)').removeAttr("disabled");
+                    }
+                }
+                $(".choose_item .show_time").text(tmp);
+                $(".info.choose_time").val(tmp);
+            },
+            flushPrice: function (time, flag) {
+                if (this.vipSubisTrial) {
+                    $('.price strong').text('¥0.00');
+                } else {
+                    let price;
+                    if (this.industrySelectFlushed && this.areaSelectFlushed) { //地区和行业都已选择
+                        price = getsubVipOrderPrice(this.areaSelect, this.industrySelect, time, this.price);
+                    } else if (this.industrySelectFlushed) { //仅选择了行业
+                        mBuyset = getBuySet({}, this.industrySelect);
+                        mBuyset.citys = this.buyset.citys;
+                        mBuyset.areacount = this.buyset.areacount;
+                        price = getsubVipOrderPriceBybuyset(mBuyset, time, this.price)
+                    } else if (this.areaSelectFlushed) { //仅选择了地区
+                        mBuyset = getBuySet(this.areaSelect, []);
+                        mBuyset.buyerclasscount = this.buyset.buyerclasscount;
+                        price = getsubVipOrderPriceBybuyset(mBuyset, time, this.price);
+                    } else { //都未选择
+                        price = getsubVipOrderPriceBybuyset(this.buyset, time, this.price);
+                    }
+                    if (flag === 1) {
+                        $('.price strong').text('¥' + price);
+                    } else if (flag === 2) {
+                        $('.computed_price').html('¥' + price);
+                    } else {
+                        $('.price strong').text('¥' + price);
+                        $('.computed_price').html('¥' + price);
+                    }
+                }
+            },
+            flushCheck: function () {//检测是否修改
+                //地区是否改变
+                this.areaSelectFlushed = !this.theSameAs_area();
+                if (!this.areaSelectFlushed) {
+                    sessionStorage.setItem("areaSelectNotFlushed", "1")
+                } else {
+                    sessionStorage.removeItem("areaSelectNotFlushed");
+                }
+                //行业是否改变
+                this.industrySelectFlushed = !this.theSame_industry();
+                if (!this.industrySelectFlushed) {
+                    sessionStorage.setItem("industrySelectNotFlushed", "1")
+                } else {
+                    sessionStorage.removeItem("industrySelectNotFlushed");
+                }
+            },
+            theSameAs_area: function () {
+                if (!sessionStorage.getItem("vipSubSelectArea_buyed")) {
+                    return false
+                }
+                let Area_buyed = JSON.parse(sessionStorage.getItem("vipSubSelectArea_buyed"));
+                let tmp1 = getAreaClassArr(Area_buyed);
+                let tmp2 = getAreaClassArr(purchase.areaSelect);
+                return (JSON.stringify(tmp1[0].sort()) === JSON.stringify(tmp2[0].sort())) && (JSON.stringify(tmp1[1].sort()) === JSON.stringify(tmp2[1].sort()));
+            },
+            theSame_industry: function () {
+                if (!sessionStorage.getItem("vipSubSelectIndustry_buyed")) {
+                    return false
+                }
+                let industry_buyed = JSON.parse(sessionStorage.getItem("vipSubSelectIndustry_buyed"));
+                return JSON.stringify(industry_buyed.sort()) === JSON.stringify(purchase.industrySelect.sort());
+            }
+        };
+
+
+        $(function () {
+            purchase.initData();
+            purchase.flushCheck();
+            purchase.showArea();
+            purchase.showIndustry();
+            purchase.showPrice();
+            purchase.showTime();
+            purchase.flushPrice(purchase.timeSelect);
+            checkOk();
+            var time_limit;//定义一个周期变量
+            /*------ 关闭弹窗事件  点击取消或遮罩层 -----*/
+            $('.weui-mask').click(hideDialog);
+            $('.cancel').click(hideDialog);
+
+            /* -----  订阅周期、支付方式弹窗弹出事件 -------*/
+            // 选择订阅周期
+            $('.select_cycle a').click(function (e) {
+                $('#time_cycle').show(200);
+            });
+
+
+            /* -----  选择完支付方式、订阅周期 回显到页面 -------*/
+            // 对支付方式选择的input绑定点击事件
+            $('#pay_way input:radio[name="way"]').click(function () {
+                var checkValue = $('input:radio[name="way"]:checked').val();
+                $('.pay_way').hide(200);
+                $('.pay_mode .select_payment .choose_way.info').html(checkValue);
+            });
+            // 对订阅时间选择的input绑定点击事件
+            $('#time_cycle input:radio[name="time"]').on('click', function (e) {
+                // 解除确认按钮的锁定
+                $('#time_cycle .form-btn button').removeAttr('disabled');
+                if ($(e.target).hasClass('monthly')) {
+                    // 按月订阅
+                    $('#number_box_month').addClass('active');
+                    $('#number_box_year span').removeClass('active');
+                } else {
+                    // 按年订阅
+                    $('#number_box_month').removeClass('active');
+                    // $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active');
+                }
+            });
+
+            /* --------控制月份number_box的事件  点击加减号触发的事件------- */
+            $('#number_box_month').on('click', 'button', function (e) {
+                // 点击加减号让input radio选中
+                $('#monthly').prop('checked', true);
+                $('#yearly').prop('checked', false);
+                $('.number_box span').removeClass('active');
+                $('#number_box_month').addClass('active');
+
+                var $number = $('#number_box_month span.month_number');
+                var $monthlyInput = $('#monthly');
+                // 未整理的data数组,里面的值都是字符串
+                var preData = e.delegateTarget.dataset;
+                var currentNum = parseInt($number.text());
+                var data = {};
+                // 把字符串转换成数字
+                for (var i in preData) {
+                    data[i] = preData[i] - 0
+                }
+
+                if (!$monthlyInput.prop('checked')) {
+                    return
+                }
+                // 判断是点击的是+ 还是-
+                if ($(e.target).hasClass('add')) {
+                    if (currentNum == 11) { //12个月自动跳转1年
+                        $("#number_box_year .year_number:eq(0)").trigger("click");
+                        return
+                    }
+                    // 点的+
+                    // currentNum = currentNum >= 12 ? 12 : currentNum + 1;
+                    currentNum = currentNum >= data.numboxMax ? data.numboxMax : currentNum + data
+                        .numboxStep;
+                } else {
+                    // 点的-
+                    // currentNum = currentNum <= 1 ? 1 : currentNum - 1;
+                    currentNum = currentNum <= data.numboxMin ? data.numboxMin : currentNum - data
+                        .numboxStep;
+                }
+                $number.text(currentNum);
+                purchase.timeSelect_tmp = [Number(currentNum), 2];
+                purchase.flushPrice(purchase.timeSelect_tmp, 2);
+                //var price = (5.8 * currentNum).toFixed(1);
+                //$('.computed_price').html('¥' + price)
+                var firstButton = $('#number_box_month button:first');
+                var lastButton = $('#number_box_month button:last');
+                if (currentNum >= 10) {
+                    $('.profit_tips').text("已选择" + currentNum + "个月,建议“按年订阅”").show();
+                } else {
+                    $('.profit_tips').hide();
+                }
+                // 如果为操作后的结果为1,则锁定减号按钮
+                if (currentNum === data.numboxMin) {
+                    firstButton.attr('disabled', true)
+                } else {
+                    firstButton.removeAttr('disabled')
+                }
+                // 如果为操作后的结果为12,则锁定加号按钮
+                if (currentNum === data.numboxMax) {
+                    lastButton.attr('disabled', true)
+                } else {
+                    lastButton.removeAttr('disabled')
+                }
+            });
+
+            /* -------- 控制年份number_box的事件  点击1年 2年 3年触发的事件------- */
+            $('#number_box_year').on('click', 'span', function (e) {
+                console.log(e.target.dataset.id);
+                $('#number_box_month').removeClass('active');
+                let id = e.target.dataset.id;
+                $('.profit_tips').hide();
+                $(this).addClass('active').siblings().removeClass('active');
+                $('#yearly').prop('checked', true);
+                $("#monthly").prop('checked', false);
+
+                // 渲染结果 保留一位小数
+                //let result = (Number(id) * 58).toFixed(1);
+                //$('.computed_price').html('¥' + result)
+                purchase.timeSelect_tmp = [Number(id), 1]
+                purchase.flushPrice(purchase.timeSelect_tmp, 2);
+            });
+
+            /* -------- 选择按月订阅  radio触发的事件------- */
+            $('#monthly').on('change', function (e) {
+                let isChecked = $(this).is(':checked');
+                let val = $('.month_number').text();
+                if (val >= 10) {
+                    $('.profit_tips').show()
+                }
+                if (!isChecked) {
+                    $('#number_box_month button').attr('disabled', true)
+                } else {
+                    $('#number_box_month button').removeAttr('disabled')
+                }
+                //let result = (Number(val) * 5.8).toFixed(1);
+                //$('.computed_price').html('¥' + result);
+                purchase.timeSelect_tmp = [Number(val), 2];
+                purchase.flushPrice(purchase.timeSelect_tmp, 2);
+
+            });
+            /* -------- 选择按年订阅  radio触发的事件------- */
+            $('#yearly').on('change', function (e) {
+                $('.profit_tips').hide();
+                // console.log($(this).is(':checked'))
+                let isChecked = $(this).is(':checked');
+                // 按年订阅默认选择1年
+                let val = 1;
+                //$('.computed_price').html('¥' + Number(val) * 58)
+                if (isChecked) {
+                    $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active')
+                }
+                purchase.timeSelect_tmp = [Number(val), 1];
+                purchase.flushPrice(purchase.timeSelect_tmp, 2);
+            });
+
+            // 确认订阅周期
+            $('#enter_period').on('click', function () {
+                var val;
+                $('input[name="time"]').each(function (i, v) {
+                    let isChecked = $(v).is(':checked');
+                    if ($(v).is(':checked') === true && $('.year_number').hasClass('active')) {
+                        val = $('.active').html();
+                        $('#time_cycle').hide(function () {
+                            $('.choose_time').val(val)
+                            $('.show_time').text(val);
+                        });
+                        purchase.timeSelect_tmp = [parseInt(val[0]), 1]
+                    } else if ($(v).is(':checked') === true) {
+                        val = $('.month_number').html();
+                        $('#time_cycle').hide(function () {
+                            $('.choose_time').val(val + '个月')
+                            $('.show_time').text(val + '个月');
+                        });
+                        purchase.timeSelect_tmp = [parseInt(val), 2]
+                    }
+                });
+                purchase.timeSelect = purchase.timeSelect_tmp;
+                purchase.flushPrice(purchase.timeSelect, 1);
+                sessionStorage.setItem("vipSubSelectTime", JSON.stringify(purchase.timeSelect));
+            });
+            $("input").bind("input propertychange change", function (event) {
+                checkOk();
+            });
+
+            $('#payHandle').click(function () {
+                $("#payHandle").attr("disabled", "disabled");
+                //支付请求
+                var area = purchase.areaSelect;
+                var industry = purchase.industrySelect;
+                if (area["全国"]) {
+                    area = {};
+                }
+                if (industry.length == 1 && industry[0] == "全部行业") {
+                    industry = [];
+                }
+                //付费用户
+                var param = {
+                    "area": JSON.stringify(area),
+                    "industry": industry.join(","),
+                    "time": $(".info:eq(2)").val().trim(),
+                    "payWay": "wx_js",
+                    "orderType": 5,
+                    "selected": JSON.stringify([sessionStorage.getItem("areaSelectNotFlushed") != "1", sessionStorage.getItem("industrySelectNotFlushed") != "1"]),
+                };
+                $DoPost("/subscribepay/vipsubscribe/createOrder", param, function (r) {
+                    if (r.success) {
+                        //唤起app支付
+                        try {
+                            if (pay_way == "wx_app") {
+                                JyObj.wxPay(r.data.res);
+                            } else {
+                                JyObj.aliPay(r.data.res)
+                            }
+                            //校验是否支付完成
+                            checkpay(r.data.code);
+                        } catch (e) {
+                            alert(e)
+                        }
+                    }
+                    $("#payHandle").removeAttr("disabled")
+                });
+            })
+
+        });
+
+        //校验是否支付
+        var interval;
+
+        function checkpay(orderid) {
+            if (interval) {
+                clearInterval(interval);
+            }
+            interval = setInterval(function () {
+                $.post("/jypay/isPaySuccess", {code: orderid}, function (r) {
+                    if (r.success) {
+                        clearInterval(interval);
+                        clearSessionStorage();
+                        window.location.replace("/jyapp/vipsubscribe/toPaySuccessPage?orderCode=" + orderid);
+                    }
+                });
+            }, 2000)
+        }
+
+        // 隐藏dialog选择框
+        function hideDialog() {
+            $('#pay_way').hide(200);
+            $('#time_cycle').hide(200);
+        }
+
+        //是否可点击
+        function checkOk() {
+            var area = $(".info:eq(0)").val().trim();
+            var industry = $(".info:eq(1)").val().trim();
+            var checked = $('#buy').prop('checked');
+            if (area != '' && industry != '' && checked == true) {
+                $("#payHandle").removeAttr('disabled');
+            } else {
+                $("#payHandle").attr({
+                    'disabled': 'true'
+                });
+            }
+            sessionStorage.setItem("vipSub_read", checked)
+        }
+
+        function clearSessionStorage() {
+            sessionStorage.removeItem("vipSubSelectArea");
+            sessionStorage.removeItem("vipSubSelectIndustry");
+            sessionStorage.removeItem("vipSubSelectTime");
+            sessionStorage.removeItem("vipSub_read");
+            sessionStorage.removeItem("historypushDataCache");
+            sessionStorage.To_introducePage = 2;
+        }
+
+    </script>
+</div>
+</body>
+
+</html>

+ 0 - 1
src/jfw/modules/pushsubscribe/src/match/config.json

@@ -10,7 +10,6 @@
 	"filterWords":["项目","中标","公告"],
 	"matchPoolSize":60,
 	"savePoolSize":5,
-	"loadBiddingPoolSize":60,
 	"loadUserPoolSize":60,
 	"matchDuration":60, 
 	"userBatch":10,

+ 15 - 16
src/jfw/modules/pushsubscribe/src/match/config/config.go

@@ -5,22 +5,21 @@ import (
 )
 
 type config struct {
-	ElasticPoolSize     int      `json:"elasticPoolSize"`
-	ElasticSearch       string   `json:"elasticSearch"`
-	RedisServers        string   `json:"redisServers"`
-	MaxPushSize         int      `json:"maxPushSize"`
-	VipMaxPushSize      int      `json:"vipMaxPushSize"`
-	MgoAddr             string   `json:"mgoAddr"`
-	MgoSize             int      `json:"mgoSize"`
-	TestIds             []string `json:"testIds"`
-	FilterWords         []string `json:"filterWords"`
-	MatchPoolSize       int      `json:"matchPoolSize"`
-	SavePoolSize        int      `json:"savePoolSize"`
-	LoadBiddingPoolSize int      `json:"loadBiddingPoolSize"`
-	LoadUserPoolSize    int      `json:"loadUserPoolSize"`
-	MatchDuration       int64    `json:"matchDuration"`
-	UserBatch           int      `json:"userBatch"`
-	PcHelper            string   `json:"pcHelper"`
+	ElasticPoolSize  int      `json:"elasticPoolSize"`
+	ElasticSearch    string   `json:"elasticSearch"`
+	RedisServers     string   `json:"redisServers"`
+	MaxPushSize      int      `json:"maxPushSize"`
+	VipMaxPushSize   int      `json:"vipMaxPushSize"`
+	MgoAddr          string   `json:"mgoAddr"`
+	MgoSize          int      `json:"mgoSize"`
+	TestIds          []string `json:"testIds"`
+	FilterWords      []string `json:"filterWords"`
+	MatchPoolSize    int      `json:"matchPoolSize"`
+	SavePoolSize     int      `json:"savePoolSize"`
+	LoadUserPoolSize int      `json:"loadUserPoolSize"`
+	MatchDuration    int64    `json:"matchDuration"`
+	UserBatch        int      `json:"userBatch"`
+	PcHelper         string   `json:"pcHelper"`
 }
 
 type taskConfig struct {

+ 16 - 27
src/jfw/modules/pushsubscribe/src/match/job/matchjob.go

@@ -135,39 +135,28 @@ func (m *MatchJob) LoadBidding(lastId, newId string, lastTime int64) *[]map[stri
 		"buyerclass":      1,
 	}).Sort("_id").Iter()
 	index := 0
-	loadBiddingPool := make(chan bool, Config.LoadBiddingPoolSize)
-	loadBiddingWaitGroup := &sync.WaitGroup{}
-	for data := make(map[string]interface{}); it.Next(&data); {
-		loadBiddingPool <- true
-		loadBiddingWaitGroup.Add(1)
-		go func(temp map[string]interface{}) {
-			defer func() {
-				<-loadBiddingPool
-				loadBiddingWaitGroup.Done()
-			}()
-			_id := util.BsonIdToSId(temp["_id"])
-			temp["_id"] = _id
-			if util.ObjToString(temp["area"]) == "A" {
-				temp["area"] = "全国"
-			}
-			res = append(res, temp)
-			//信息缓存3天
-			info := map[string]interface{}{}
-			for _, v := range SaveFields {
-				if v == "_id" || temp[v] == nil {
-					continue
-				}
-				info[v] = temp[v]
+	for temp := make(map[string]interface{}); it.Next(&temp); {
+		_id := util.BsonIdToSId(temp["_id"])
+		temp["_id"] = _id
+		if util.ObjToString(temp["area"]) == "A" {
+			temp["area"] = "全国"
+		}
+		res = append(res, temp)
+		//信息缓存3天
+		info := map[string]interface{}{}
+		for _, v := range SaveFields {
+			if v == "_id" || temp[v] == nil {
+				continue
 			}
-			redis.Put(Pushcache_1, "info_"+_id, info, 259200)
-		}(data)
-		data = make(map[string]interface{})
+			info[v] = temp[v]
+		}
+		redis.Put(Pushcache_1, "info_"+_id, info, 259200)
+		temp = make(map[string]interface{})
 		index++
 		if index%500 == 0 {
 			logger.Info("加载", Bidding, "数据:", index)
 		}
 	}
-	loadBiddingWaitGroup.Wait()
 	logger.Info(Bidding, "数据已经加载结束。。。", index)
 	return &res
 }

+ 8 - 2
src/jfw/modules/pushsubscribe/src/push/job/movejob.go

@@ -32,11 +32,17 @@ func (m *MoveJob) Execute() {
 	nowUnix := time.Now().Unix()
 	sess := mongodb.GetMgoConn()
 	defer mongodb.DestoryMongoConn(sess)
-	it := sess.DB(DbName).C(Pushspace_temp).Find(map[string]interface{}{
+	query := map[string]interface{}{
 		"timestamp": map[string]interface{}{
 			"$lt": nowUnix,
 		},
-	}).Sort("userid").Iter()
+	}
+	if len(Config.TestIds) > 0 {
+		query["userid"] = map[string]interface{}{
+			"$in": Config.TestIds,
+		}
+	}
+	it := sess.DB(DbName).C(Pushspace_temp).Find(query).Sort("userid").Iter()
 	moveUsers := map[string]*MoveUser{}
 	index, number, length := 0, 0, 0
 	//

+ 2 - 0
src/jfw/modules/subscribepay/src/config.json

@@ -5,6 +5,8 @@
     "redisaddrs": "other=192.168.3.128:1712,session=192.168.3.128:1712,push=192.168.3.128:1712,pushcache_1=192.168.3.128:5000,pushcache_2_a=192.168.3.128:5001",
     "elasticsearch": "http://192.168.3.128:9800",
     "elasticPoolSize": 30,
+    "appid": "wx41a95e706276804d",
+    "appsecret": "1b385c7dd14274c5e0898b9b208580b7",
     "webport": "86",
     "webrpcport": "8600",
     "weixinrpc": "127.0.0.1:8083",

+ 9 - 6
src/jfw/modules/subscribepay/src/config/config.go

@@ -13,6 +13,8 @@ type config struct {
 	Elasticsearch   string
 	ElasticPoolSize int
 	Redisaddrs      string
+	Appid           string
+	Appsecret       string
 	Webport         string
 	Webrpcport      string
 	Weixinrpc       string
@@ -50,10 +52,11 @@ type config struct {
 	OrderCountdown interface{}
 }
 type timeTaskConfig struct {
-	ExpireRemind   string   //到期提醒
-	SyncVipUpgrade string   //同步未及时生效的数据
-	CheckIsExpire  string   //定时更新用户vip状态
-	UnpaidRemind   struct { //未支付订单提醒
+	ExpireRemind   string //到期提醒
+	SyncVipUpgrade string //同步未及时生效的数据
+	CheckIsExpire  string //定时更新用户vip状态
+	UnpaidRemind   struct {
+		//未支付订单提醒
 		AfterOrder   int64 //下单后n小时提醒
 		BeforeExpire int64 //n小时自动关闭提醒
 		Duration     int   //定时任务时间间隔
@@ -111,7 +114,7 @@ func init() {
 	AliPayConf = PayConf["aliPay"].(map[string]interface{})
 	WxPayConf = PayConf["wxPay"].(map[string]interface{})
 	//微信
-	Wxoauth = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=` + qutil.ObjToString(WxPayConf["appid"]) + `&redirect_uri=%s&response_type=code&scope=snsapi_base&state=%s#wechat_redirect`
-	Wxoauthinfo = `https://api.weixin.qq.com/sns/oauth2/access_token?appid=` + qutil.ObjToString(WxPayConf["appid"]) + `&secret=` + qutil.ObjToString(WxPayConf["appsecret"]) + `&code=%s&grant_type=authorization_code`
+	Wxoauth = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=` + Config.Appid + `&redirect_uri=%s&response_type=code&scope=snsapi_base&state=%s#wechat_redirect`
+	Wxoauthinfo = `https://api.weixin.qq.com/sns/oauth2/access_token?appid=` + Config.Appid + `&secret=` + Config.Appsecret + `&code=%s&grant_type=authorization_code`
 
 }

+ 1 - 1
src/jfw/modules/subscribepay/src/filter/sessionfilter.go

@@ -15,7 +15,7 @@ type sessionfilter struct {
 //继承过滤器方法
 func (l *sessionfilter) Do(w http.ResponseWriter, req *http.Request) bool {
 	rqu := req.URL.Path
-	if strings.HasPrefix(rqu,"/jypay/callback/"){//支付回调
+	if strings.HasPrefix(rqu,"/jypay/callback/")||strings.HasPrefix(rqu,"/jypay/weixin/reward/"){//支付回调||打赏跳转
 		return true
 	}
 	session := l.App.SessionManager.Session(req, w)

+ 0 - 1
src/jfw/modules/subscribepay/src/pay_config.json

@@ -2,7 +2,6 @@
 	"wxPay": {
         "appid": "wxd66e9589c9fecff6",
         "appid_app": "wx0e6a5b18f4cfd10d",
-		"appsecret": "4d9d4b9ddab59e65fcb7bed125fbd342",
 		"pay": {
 			"mchid": "1418321102",
 			"key": "topnet2016topnet2016topnet2016ab",

+ 35 - 18
src/web/staticres/vipsubscribe/js/updateArea.js

@@ -372,6 +372,7 @@ $(function () {
                 // '吉林': 1
             }
         }
+		let allDisabledButHasCityCount = {}
         // 购买过的省份数量
         let buySetProvinceCount = $('.area-list').attr('data-buy-province-count') - 0  // 隐式转换成Number
         
@@ -401,7 +402,13 @@ $(function () {
 					
                     if (aCityCount > 0) {
 						// 说明有购买的城市
-						if (activeButtonLength - alreadySelectedCount === 0 || activeButtonLength === allCitylength) {
+						if (activeButtonLength - alreadySelectedCount === 0) {
+							added.province ++
+							allDisabledButHasCityCount[pName] = buyCityCount
+						} else if (activeButtonLength === allCitylength) {
+							// if(alreadySelectedCount < activeButtonLength){
+							// 	allDisabledButHasCityCount[pName] = buyCityCount
+							// }
 							added.province ++
 						} else {
 							added.city[pName] = aCityCount
@@ -436,7 +443,7 @@ $(function () {
         } else {
             added.province = 0
         }
-        return added
+        return { added, allDisabledButHasCityCount }
     }
 
     // 点亮的城市数量详情(需要省和城市名称)
@@ -467,23 +474,12 @@ $(function () {
                 } else {
                     let allCitylength = $(dom).find('button').length
 
-                    if (state === 'disabled') {
+                    if (state === 'notDisabled') {
                         // 判断是否全省被选中
-                        if ($(dom).find('button.active').length === allCitylength) {
-                            // 判断省下有没有不可点击的按钮
-                            if ($(dom).attr('data-buy-city-count')) {
-                                $(dom).find('button.active').each(function(c, dom) {
-                                    let cName = $(dom).text().replace(/\s+ | [\r\n]/g, '')
-                                    selectedObj.children.push(cName)
-                                })
-                                if (selectedObj.children.length) {
-                                    arr.push(selectedObj)
-                                }
-                            } else {
-                                arr.push(selectedObj)
-                            }
+                        if ($(dom).find('button.active:not([disabled])').length === allCitylength) {
+                            arr.push(selectedObj)
                         } else {
-                            $(dom).find('button.active').each(function(c, dom) {
+                            $(dom).find('button.active:not([disabled])').each(function(c, dom) {
                                 let cName = $(dom).text().replace(/\s+ | [\r\n]/g, '')
                                 selectedObj.children.push(cName)
                             })
@@ -905,7 +901,8 @@ $(function () {
     $('.save-btn').on('click', function(){
         // 获取added城市详情
         var activeCityDetail = getActiveCityDetail()
-        let areaCount = getResultWithMCount()
+        let areaCount = getResultWithMCount().added
+		let lastSet = getResultWithMCount().allDisabledButHasCityCount
 //      console.log("111",areaCount)
 //      console.log(JSON.stringify(activeCityDetail))
 //      console.log(activeCityDetail)
@@ -915,8 +912,28 @@ $(function () {
         sessionStorage.vipSubSelectCity = newlyAdded.city;
         sessionStorage.vipSubSelectAreaUpgrade = JSON.stringify(activeCityDetail);
         sessionStorage.vipSubSelectAreaAdd = JSON.stringify(areaCount);
+		sessionStorage.vipallDisabledButHasCityCount = JSON.stringify(lastSet);
+		//
+		if(areaCount.country === 0){
+			if(areaCount.province === 0 && checkObj(areaCount.city)){
+				sessionStorage.removeItem("vipSubSelectAreaUpgrade");
+			}
+		}
+				
         history.go(-1);
     })
+	
+	function checkObj(obj) {
+	    //检验数组
+	    if (Array.prototype.isPrototypeOf(obj) && obj.length === 0) {
+	        return true;
+	    }
+	    //检验对象
+	    if (Object.prototype.isPrototypeOf(obj) && Object.keys(obj).length === 0) {
+	        return true;
+	    }
+	    return false;
+	}
 	//
 	if(sessionStorage.vipSubSelectAreaUpgrade!==undefined&&sessionStorage.vipSubSelectAreaUpgrade!==""){
 		let areaObj = JSON.parse(sessionStorage.vipSubSelectAreaUpgrade);

+ 1 - 0
src/web/templates/weixin/vipsubscribe/renew_pay.html

@@ -823,6 +823,7 @@
 			sessionStorage.removeItem("buyCheck");
 			sessionStorage.removeItem("buyIndustry");
 			sessionStorage.removeItem("addIndustry");
+			sessionStorage.removeItem("vipallDisabledButHasCityCount");
 	    }
 	    
 	    //

+ 6 - 2
src/web/templates/weixin/vipsubscribe/vip_purchase_willExpire.html

@@ -42,9 +42,10 @@
                     <!-- 需要选择试用就用div标签,a标签隐藏 -->
                     <a href="javascript:;">
                         <span class="label">订阅周期</span>
-                        <input type="text" readonly="readonly" disabled style="color:#000;" value="1个月"
+                        <span class="show_time">一个月</span>
+                        <input type="text" readonly="readonly" disabled style="display:none;" value="1个月"
                                class="info choose_time">
-                        <i class="iconfont icon-arrow choose_time"></i>
+                        <i class="iconfont icon-arrow"></i>
                     </a>
                 </li>
             </ul>
@@ -451,6 +452,7 @@
                         $('#number_box_month button:eq(0)').removeAttr("disabled");
                     }
                 }
+                $(".choose_item .show_time").text(tmp);
                 $(".info.choose_time").val(tmp);
             },
             flushPrice: function (time, flag) {
@@ -683,12 +685,14 @@
                         val = $('.active').html();
                         $('#time_cycle').hide(function () {
                             $('.choose_time').val(val)
+                            $('.show_time').text(val);
                         });
                         purchase.timeSelect_tmp = [parseInt(val[0]), 1]
                     } else if ($(v).is(':checked') === true) {
                         val = $('.month_number').html();
                         $('#time_cycle').hide(function () {
                             $('.choose_time').val(val + '个月')
+                            $('.show_time').text(val + '个月');
                         });
                         purchase.timeSelect_tmp = [parseInt(val), 2]
                     }

+ 20 - 7
src/web/templates/weixin/vipsubscribe/vip_upgrade.html

@@ -855,6 +855,7 @@
 				sessionStorage.removeItem("vipAddCount");
 				sessionStorage.removeItem("vipSubSelectAreaAdd");
 				sessionStorage.removeItem("vipSubSelectCity");
+				sessionStorage.removeItem("vipallDisabledButHasCityCount");
 			}
 			//
 			
@@ -968,10 +969,10 @@
 			
 			//
 			if(nowUpgradeYear >= 1){
-				let newPriceY = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgradeYear,1]);
-				let newPriceM = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgrade,2]);
-				let yearprice = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgradeYear,1]);
-				let monthprice = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgrade,2]);
+				let newPriceY = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgradeYear,1]);
+				let newPriceM = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgrade,2]);
+				let yearprice = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgradeYear,1]);
+				let monthprice = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgrade,2]);
 				price = newPriceY + newPriceM - oldPrice;
 				// ------- 升级延长周期价格计算 ---------
 				if(monthprice === 0){
@@ -986,12 +987,12 @@
 				console.log("monthprice",monthprice);
 				console.log(">=1",price);
 			}else{
-				let monthprice = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgrade,2]);
+				let monthprice = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgrade,2]);
 				
 				// ------- 升级价格差价计算 ---------
 				
 				// let newPrice = getsubVipOrderPrice(allBuyArea,allIndustry,[nowUpgrade,2]);
-				let newPrice = getsubVipOrderPriceBybuyset(newBuysetObj(buySetObj(areaObj())),[nowUpgrade,2]);
+				let newPrice = getsubVipOrderPriceBybuyset(lastSet(newBuysetObj(buySetObj(areaObj()))),[nowUpgrade,2]);
 				price = newPrice - oldPrice;
 				// ------- 升级价格差价计算 ---------
 				// ------- 升级延长周期价格计算 ---------
@@ -1103,7 +1104,7 @@
 	    		"time": times,
 	    		"addCount":vipCount,
 	    		"addIndustryCount": vipIndustry,
-				"buyset":JSON.stringify(buySetObj(areaObj())),
+				"buyset":JSON.stringify(lastSet(buySetObj(areaObj()))),
 	    	}
 	    	console.log(param)
 	    	$DoPost("/subscribepay/renewUpgrade/renewUpgradeCreateOrder",param,function(r){
@@ -1145,6 +1146,7 @@
 	    	sessionStorage.removeItem("buyCheck");
 			sessionStorage.removeItem("buyIndustry");
 			sessionStorage.removeItem("addIndustry");
+			sessionStorage.removeItem("vipallDisabledButHasCityCount");
 			//
 			sessionStorage.removeItem("renew_cyclecount");
 			sessionStorage.removeItem("renew_cycleunit");
@@ -1237,6 +1239,17 @@
 			}
 			return nowset
 		}
+		
+		function lastSet(buyset){
+			let lastset = JSON.parse(JSON.stringify(buyset));
+			if(sessionStorage.vipallDisabledButHasCityCount!==undefined&&sessionStorage.vipallDisabledButHasCityCount!==""){
+				let hasCount = JSON.parse(sessionStorage.vipallDisabledButHasCityCount);
+				for(let province in hasCount){
+					lastset.citys[province] = hasCount[province];
+				}
+			}
+			return lastset
+		}
 	    
     </script>
 </body>