xuzhiheng 5 年之前
父节点
当前提交
e70b86b547

+ 1 - 1
src/config.json

@@ -275,7 +275,7 @@
         "shareTimesUpperLimitR": 4000,
         "shareTimesUpperLimitIrr": 1000
     },
-    "cookiedomain": "web-jydev-ws.jianyu360.cn",
+    "cookiedomain": "web-jydev-xzh.jianyu360.cn",
     "pcHelper": {
         "subscribeTokenTimeout": 15,
         "version": "V2.5.1"

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

@@ -46,6 +46,7 @@ func (s *Short) Article(stype, id string) error {
 		aboutUrl += "?source=" + source
 	}
 	bm := false
+	isVip := false
 	if !Map_stype[stype] {
 		s.Redirect("/not/nottype", 302)
 		return nil
@@ -137,6 +138,11 @@ func (s *Short) Article(stype, id string) error {
 		var obj map[string]interface{}
 		obj = wxvisitD(sid, userId, myopenid)
 		if len(obj) > 0 {
+			//判断用户是否是vip
+			res, _ := public.MQFW.FindById("user", userId, nil)
+			if util.IntAll((*res)["i_vip_status"]) == 1 || util.IntAll((*res)["i_vip_status"]) == 2 {
+				isVip = true
+			}
 			//获取打赏文案
 			s.T["rewardText"], s.T["advertText"] = getRewardText()
 			//纠错随机回复
@@ -147,6 +153,7 @@ func (s *Short) Article(stype, id string) error {
 			s.T["advertName"] = config.Sysconfig["advertName"]
 			s.T["advertUrl"] = config.Sysconfig["advertUrl"]
 			obj["industry"] = industry
+			obj["isVip"] = isVip
 			if ssOpenid != nil {
 				obj["ucbsId"] = util.EncodeArticleId2ByCheck("ucbs#" + ssOpenid.(string) + "#" + id)
 			}

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

@@ -2,6 +2,7 @@ package front
 
 import (
 	"jfw/wx"
+	"qfw/util"
 
 	"github.com/go-xweb/xweb"
 )
@@ -49,36 +50,73 @@ func init() {
 
 //推送设置
 func (s *Subscribepay) ToVIPViewPage() {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/vip_viewPage.html")
 }
 
 //附加词|排除词
 func (s *Subscribepay) ToSetOtherKwsPage(page string) {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/" + page + "Word.html")
 }
 
 //推送设置
 func (s *Subscribepay) ToSetPushSetPage() {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/vip_seniorset.html")
 }
 
 //信息类型
 func (s *Subscribepay) ToSetInfoTypePage() {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/messageType.html")
 }
 
 //订阅设置
 func (s *Subscribepay) ToSetPage() {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/vip_index.html")
 }
 
 //vip订阅介绍页
 func (s *Subscribepay) Introduce() {
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
 	s.Render("/weixin/vipsubscribe/vip_introduce.html")
 }
 
 //试用完善信息
 func (s *Subscribepay) TrialInfo() {
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
 	s.Render("/weixin/vipsubscribe/trial_info.html", &s.T)
 }
 
@@ -115,6 +153,13 @@ func (s *Subscribepay) ToOrderDetailPage() {
 
 //订阅收费设置关键词
 func (s *Subscribepay) ToSetKeyWordPage() {
+	myopenid := util.ObjToString(s.GetSession("s_m_openid"))
+	mynickname, _ := s.Session().Get("s_nickname").(string)
+	myavatar, _ := s.Session().Get("s_avatar").(string)
+	s.T["nickname"] = mynickname
+	s.T["avatar"] = myavatar
+	s.T["signature"] = wx.SignJSSDK(s.Site() + s.Url())
+	s.T["openid"] = se.EncodeString(myopenid)
 	s.Render("/weixin/vipsubscribe/keyWord.html")
 }
 

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

@@ -44,5 +44,6 @@
             "pwd": "ue9Rg9Sf4CVtdm5a",
             "user": "public03@topnet.net.cn"
         }
-    ]
+    ],
+	"wxTplExpire":"Iky7z3veZ6hy-ISchmQSgBvRd-34KzSyuYr0_fUbesE"
 }

+ 1 - 0
src/jfw/modules/subscribepay/src/config/config.go

@@ -35,6 +35,7 @@ type config struct {
 		User string
 	}
 	ExpireRemind []int
+	WxTplExpire  string
 }
 type timetaskConfig struct {
 	ExpireRemind   string

+ 5 - 19
src/jfw/modules/subscribepay/src/pay/aliPay.go

@@ -219,27 +219,13 @@ func (a *aliPayStruct) CloseOrder(tradeno string) bool {
 	}
 	valus := *qutil.ObjToMap((*resMap)["alipay_trade_close_response"])
 	log.Printf("%s 订单关闭相应参数  %+v", tradeno, valus)
-	if valus["msg"] == "Success" {
-		return true
-	} else if valus["sub_code"] == "ACQ.TRADE_NOT_EXIST" { //用户未扫码(调用撤销订单)
-		return true
-		//return Alipay.cancelOrder(tradeno)
+	if valus["sub_code"] == "ACQ.TRADE_STATUS_ERROR" || valus["sub_msg"] == "REASON_ILLEGAL_STATUS" {
+		return false
 	}
-	/*else if valus["sub_code"] == "ACQ.INVALID_PARAMETER" || valus["sub_code"] == "ACQ.TRADE_STATUS_ERROR" || valus["sub_code"] == "ACQ.SYSTEM_ERROR" { //参数异常  交易状态不合法  系统异常
+	/*if valus["msg"] == "Success" {
+		return true
+	} else if valus["sub_code"] == "ACQ.INVALID_PARAMETER" || valus["sub_code"] == "ACQ.TRADE_STATUS_ERROR" || valus["sub_code"] == "ACQ.SYSTEM_ERROR" { //参数异常  交易状态不合法  系统异常
 		return false
 	}*/
-	return false
-}
-
-//撤销订单
-func (a *aliPayStruct) cancelOrder(tradeno string) bool {
-	cancel := struct {
-		OutTradeNo string `json:"out_trade_no"`
-	}{
-		OutTradeNo: tradeno,
-	}
-	bizbyte, _ := json.Marshal(cancel)
-	resMap, err := Alipay.DoRequest(string(bizbyte), tradeno, Method_Tpye_Cancel)
-	log.Println(resMap, err)
 	return true
 }

+ 44 - 4
src/jfw/modules/subscribepay/src/service/vipSubscribeTrial.go

@@ -24,6 +24,8 @@ import (
 //试用用户
 type TrialOrder struct {
 	*xweb.Action
+	showTrailTip        xweb.Mapper `xweb:"/trial/showTrailTip"`        //首页试用弹框是否展示
+	closeTrailTip       xweb.Mapper `xweb:"/trial/closeTrailTip"`       //关闭首页试用弹框
 	getUserPhone        xweb.Mapper `xweb:"/trial/GetUserPhone"`        //获取用户手机号码
 	captcha             xweb.Mapper `xweb:"/trial/captcha"`             //图形验证码
 	sendPhoneCaptcha    xweb.Mapper `xweb:"/trial/sendPhoneCaptcha"`    //发送手机验证码
@@ -36,6 +38,35 @@ var (
 	phoneReg = regexp.MustCompile("^[1][3-9][0-9]{9}$")
 	nameReg  = regexp.MustCompile("^[\u4E00-\u9FA5A-Za-z\\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$")
 )
+//首页试用弹框是否展示
+func (t *TrialOrder) ShowTrailTip() {
+	userId := qutil.ObjToString(t.GetSession("userId"))
+	showTrailTip := true
+	m, _ := util.MQFW.FindById("user", userId, `{"o_vipjy":1}`)
+	if m != nil && len(*m) > 0 {
+		if (*qutil.ObjToMap((*m)["o_vipjy"]))["i_trial"] != nil {
+			showTrailTip = false
+		}
+	}
+	t.ServeJson(map[string]interface{}{
+		"showTrailTip": showTrailTip,
+	})
+}
+
+//关闭首页试用弹框
+func (t *TrialOrder) CloseTrailTip() {
+	userId := qutil.ObjToString(t.GetSession("userId"))
+	ok := false
+	if util.MQFW.UpdateById("user", userId,
+		bson.M{"$set": bson.M{
+			"o_vipjy.i_trial": 2,}}) {
+		ok = true
+	} //已激活试用
+	t.ServeJson(map[string]interface{}{
+		"success": ok,
+	})
+}
+
 //获取之前用户信息
 func (t *TrialOrder) GetUserPhone() {
 	var phoneNum string
@@ -152,9 +183,18 @@ func (t *TrialOrder) SubmitApply() {
 			return false, "稍后重试"
 		}
 		go func() {
-			//更新user表可试用
-			if !util.MQFW.UpdateById("user", userId, bson.M{"$set": bson.M{"o_vipjy.i_trial": 1}}) {
-				log.Println("更新使用状态出错", userId)
+			//更新user表可试用(未试用状态)
+			res, ok := util.MQFW.FindById("user", userId, `{"o_vipjy.i_trial":1}`)
+			if res != nil && len(*res) > 0 && ok {
+				o_vipjy := qutil.ObjToMap((*res)["o_vipjy"])
+				i_trial, ok := (*o_vipjy)["i_trial"]
+				if !ok || qutil.IntAll(i_trial) == 2 { //2为不提示状态
+					if !util.MQFW.UpdateById("user", userId, bson.M{"$set": bson.M{"o_vipjy.i_trial": 1}}) {
+						log.Println("更新使用状态出错", userId)
+					}
+				} else {
+					log.Printf("%s: 状态%d不能修改为试用状态\n", userId, i_trial)
+				}
 			}
 		}()
 		clearTrialSession(t.Session())
@@ -270,7 +310,7 @@ func (this *TrialOrder) TrialPay() {
 		if orderid == -1 {
 			return &entity.FuncResult{false, errors.New("数据保存异常"), nil}
 		}
-		if !entity.JyVipSubStruct.StartSubVip(userId, area, industry, now, endTime,true,date_count,date_unit) { //设置开始试用
+		if !entity.JyVipSubStruct.StartSubVip(userId, area, industry, now, endTime, true, date_count, date_unit) { //设置开始试用
 			return &entity.FuncResult{false, errors.New("开通试用异常"), nil}
 		}
 		return &entity.FuncResult{true, nil, map[string]interface{}{"code": ordercode}}

+ 114 - 0
src/web/staticres/vipsubscribe/js/share.js

@@ -0,0 +1,114 @@
+function initShare(signature){
+	var myloc = window.location.host;
+	var ors = "";
+	if("https:"==document.location.protocol){
+		ors = "s"
+	}
+	myloc="http"+ors+"://"+myloc;
+	if(typeof(signature) != "undefined" && signature != null && 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: ['onMenuShareTimeline', 'onMenuShareAppMessage','onMenuShareQQ','onMenuShareQZone','closeWindow'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
+		});
+		var randShareTitle = getShareText();
+
+		var link = myloc+"/swordfish/about";
+
+		var otherLink = link;
+		var desc = "全国招标信息免费看,不遮挡";
+		var otherDesc = desc;
+		var url = "/wxswordfish/images/small_log_new.jpg";
+		var encryptid = "";
+		var subhref = window.location.href;
+		
+		wx.ready(function () {
+			var triggerFlag = false;
+	        wx.onMenuShareTimeline({
+			    title: randShareTitle, // 分享标题
+			    link: otherLink, // 分享链接
+			    imgUrl: myloc+'/wxswordfish/images/small_log_new.jpg', // 分享图标
+				trigger: function (res) {
+					try{
+						triggerFlag = true;
+						afterShareTimeline("trigger");
+					}catch(e){}
+                },
+			    success: function () {
+					if(!triggerFlag){
+						try{
+							afterShareTimeline("success");
+						}catch(e){}
+					}
+			       //alert('分享成功');
+			    },
+			    cancel: function () {
+					if(!triggerFlag){
+						try{
+							afterShareTimeline("cancel");
+						}catch(e){}
+					}
+			       //alert('分享失败,或用户取消了');
+			    }
+			});
+			wx.onMenuShareAppMessage({
+			    title: randShareTitle, // 分享标题
+			    desc: desc, // 分享描述
+			    link: link, // 分享链接
+			    imgUrl: myloc+url, // 分享图标
+			    type: 'link', // 分享类型,music、video或link,不填默认为link'
+			    dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
+			    success: function () {
+			        //alert('分享成功');
+			    },
+			    cancel: function () {
+					//alert('分享失败,或用户取消了');
+			    }
+			});
+			wx.onMenuShareQQ({
+				title: randShareTitle, // 分享标题
+				desc: otherDesc, // 分享描述
+				link: otherLink, // 分享链接
+				imgUrl: myloc+url, // 分享图标
+				success: function () {
+					// 用户确认分享后执行的回调函数
+				},
+				cancel: function () {
+					// 用户取消分享后执行的回调函数
+				}
+			});
+			wx.onMenuShareQZone({
+			    title: randShareTitle, // 分享标题
+				desc: otherDesc, // 分享描述
+				link: otherLink, // 分享链接
+				imgUrl: myloc+url, // 分享图标
+				success: function () {
+					// 用户确认分享后执行的回调函数
+				},
+				cancel: function () {
+					// 用户取消分享后执行的回调函数
+				}
+			});
+	    });
+		wx.error(function(res){
+		    // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
+			//alert("error auth");
+		});
+	}
+}
+//随机获取分享文案
+var ShareText = [
+	"我和投标伙伴都在用剑鱼标讯找项目,推荐你也试试",
+	"我用剑鱼标讯免费查到超多招标信息,推荐你也试试",
+	"我收到了剑鱼标讯免费推送的招标信息,推荐你也试试",
+	"发现了一个投标神器,推荐你也试试"
+]
+function getShareText(){
+	var Range = ShareText.length-1;
+	var Rand = Math.random();  
+	var num = Math.round(Rand * Range);
+	return ShareText[num];
+}

+ 1 - 3
src/web/templates/weixin/dataExport/dataExport_toMyOrder.html

@@ -460,7 +460,7 @@
 				sessionStorage.orderTabActive=$("ul .active").index();
 				var orderCode = $(e).parent(".card-footer").prev(".card-content").find("a").attr("eid");
 				if (pattern==1){
-					window.location.href="/front/vipsubscribe/renewPayPage?orderCode="+orderCode;   
+					window.location.href="/weixin/pay/renewPayPage?orderCode="+orderCode;   
 				}else if (pattern==2){
 					window.location.href="/weixin/pay/vipsubscribe_new?orderCode="+orderCode;
 				}
@@ -493,8 +493,6 @@
 			                                                text: '确定',
 			                                                btnClass: 'btn-primary-2',
 		                                                action: function() {
-	                                                    		console.log(data)
-	                                                    		console.log(data.res.product_type);
 			                                                    if(parent.children("div").length==0){
 			                                                    	nodataHtml=""
 																	nodataHtml+='<div style="text-align:center;">';

+ 3 - 1
src/web/templates/weixin/email/bind_email.html

@@ -129,5 +129,7 @@
 				setTimeout(() =>{
 					$('.toast').hide(400);
 				},1500)
-			}
		</script>
	</body>
+			}
		</script>
+		
+	{{include "/common/baiducc.html"}}
	</body>
 </html>

+ 2 - 1
src/web/templates/weixin/email/bind_success.html

@@ -15,5 +15,6 @@
 				let param = getParam('name');//获取url传来的参数 判断显示成功的字幕
				console.log(param)
				var time = 6;
				function countDown(){
					if(time == 0){
						$('.time').html('');
						window.location.replace('/front/wxMyOrder/myEmail');
					}else{
						$('.time').html('(' + time + ')');
						time--;
						setTimeout(()=>{
							countDown()
						},1000)
					}
				}
				if(param == 'bindEmail'){
					$('.success>p').html('邮箱绑定成功')
					countDown()
				}else if(param == 'bindPhoe'){
					$('.success>p').html('手机号绑定成功')
					countDown()
				}else if(param == 'changeEmail'){
					$('.success>p').html('邮箱更换成功')
					countDown()
				}else if(param == 'choosePhone'){
					$('.success>p').html('手机号更换成功')
					countDown()
				}else if(param =="unbind"){
 					$('.success>p').html('邮箱解绑成功')
 					countDown()
-				}
				/* 返回 */
				$('.back').on('click',() =>{
					window.location.replace('/front/wxMyOrder/myEmail');
				})
			})
		</script>
	</body>
+				}
				/* 返回 */
				$('.back').on('click',() =>{
					window.location.replace('/front/wxMyOrder/myEmail');
				})
			})
		</script>
+	{{include "/common/baiducc.html"}}
	</body>
 </html>

+ 2 - 1
src/web/templates/weixin/email/unbind_email.html

@@ -26,5 +26,6 @@
 							if(data.success){
 								window.location.replace("/front/wxMyOrder/myEmail?name=unbind");
 							}
-						})
					});
				})
				$('.mask').on('click',()=>{
					$('#choose_email_dialog').hide(400);
					$('#unbind_email_dialog').hide(400);
				})
			})
		</script>
	</body>
+						})
					});
				})
				$('.mask').on('click',()=>{
					$('#choose_email_dialog').hide(400);
					$('#unbind_email_dialog').hide(400);
				})
			})
		</script>
+	{{include "/common/baiducc.html"}}
	</body>
 </html>

+ 1 - 1
src/web/templates/weixin/search/mainSearch.html

@@ -34,7 +34,7 @@
 	var pageSize = {{.T.pageSize}};
 	var encode = {{ConEncode "/jylab/mainSearch/"}};
 	var searchWord = {{.T.searchWord}};
-	initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}}),{{.T.keys}},{{.T.i_applystatus}};
+	initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}},{{.T.keys}},{{.T.i_applystatus}});
 	SuperSearch.ZBADDRESS = {{Msg "seo" "ZBADDRESS"}};
 	SuperSearch.industry = {{.T.industry}};
 	SuperSearch.sortArray = {{.T.sortArray}};

+ 13 - 9
src/web/templates/weixin/vipsubscribe/additionWord.html

@@ -7,11 +7,11 @@
         content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
     <meta http-equiv="X-UA-Compatible" content="ie=edge">
     <title>附加词</title>
-    <script src="/vipsubscribe/js/rem.js"></script>
-    <link rel="stylesheet" href="/vipsubscribe/css/base.css">
-    <link rel="stylesheet" href="/vipsubscribe/iconfont/iconfont.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/addition_exclusive_word.css">
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/addition_exclusive_word.css?v={{Msg "seo" "version"}}">
 </head>
 
 <body>
@@ -65,10 +65,13 @@
             </div>
         </div>
     </div>
-    <script src="/js/jquery-3.2.1.min.js?v=1412"></script>
-    <script src="/vipsubscribe/js/weui.min.js"></script>
-    <script src="/vipsubscribe/js/additionWord.js"></script>
-    <script type="text/javascript">
+    <script src="{{Msg "seo" "cdn"}}/js/jquery-3.2.1.min.js?v=1412"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/additionWord.js"></script>
+	{{include "/common/weixin.html"}}
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
+    <script>
+		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
         var addition_kws = []//附加词
         var _addkws = "";
         var _addindex = -1;
@@ -126,6 +129,7 @@
            }
         }
     </script>
+	{{include "/common/baiducc.html"}}
 </body>
 
 </html>

+ 13 - 9
src/web/templates/weixin/vipsubscribe/exclusiveWord.html

@@ -7,11 +7,11 @@
         content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
     <meta http-equiv="X-UA-Compatible" content="ie=edge">
     <title>排除词</title>
-    <script src="/vipsubscribe./js/rem.js"></script>
-    <link rel="stylesheet" href="/vipsubscribe/css/base.css">
-    <link rel="stylesheet" href="/vipsubscribe/iconfont/iconfont.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/addition_exclusive_word.css">
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe./js/rem.js?v={{Msg "seo" "version"}}"></script>
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/addition_exclusive_word.css?v={{Msg "seo" "version"}}">
 </head>
 
 <body>
@@ -64,10 +64,13 @@
             </div>
         </div>
     </div>
-    <script src="/js/jquery-3.2.1.min.js?v=1412"></script>
-    <script src="/vipsubscribe/js/weui.min.js"></script>
-    <script src="/vipsubscribe/js/exclusiveWord.js"></script>
-    <script type="text/javascript">
+    <script src="{{Msg "seo" "cdn"}}/js/jquery-3.2.1.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/exclusiveWord.js?v={{Msg "seo" "version"}}"></script>
+	{{include "/common/weixin.html"}}
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
+    <script>
+		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
         var not_kws = []//附加词
         var _notkws = "";
         var _notindex = -1;
@@ -125,6 +128,7 @@
            }
         }
     </script>
+	{{include "/common/baiducc.html"}}
 </body>
 
 </html>

+ 18 - 10
src/web/templates/weixin/vipsubscribe/keyWord.html

@@ -7,11 +7,11 @@
         content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
     <meta http-equiv="X-UA-Compatible" content="ie=edge">
     <title>关键词</title>
-    <script src="/vipsubscribe/js/rem.js"></script>
-    <link rel="stylesheet" href="/vipsubscribe/css/base.css">
-    <link rel="stylesheet" href="/vipsubscribe/iconfont/iconfont.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css">
-    <link rel="stylesheet" href="/vipsubscribe/css/keyWord.css">
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/keyWord.css?v={{Msg "seo" "version"}}">
     <style>
         .ios-user-select {
             -webkit-user-select: text;
@@ -225,16 +225,21 @@
         </div>
     </div>
     
-    <script src="/js/jquery-3.2.1.min.js?v=1412"></script>
-    <script src="/js/jquery.cookie.js"></script>
-    <script src="/vipsubscribe/js/weui.min.js"></script>
+    <script src="{{Msg "seo" "cdn"}}/js/jquery-3.2.1.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/js/jquery.cookie.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+	{{include "/common/weixin.html"}}
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
     <script>
+		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
         weui.loading();
         setTimeout(function(){
             weui.loading().hide();
-            if(history.state){
+            if(window.location.search.indexOf("page=1")>-1){
+				history.replaceState("{id:1}","","/front/vipsubscribe/toSetKeyWordPage")
+            }else if(history.state){
                 window.history.go(-1)
-            }
+			}
         },500)
         var a_items = [];//全部数据
         var classify_name = "";//分类名称
@@ -493,6 +498,7 @@
         }
         //跳转附加词
         function toappendkey(th){
+			history.replaceState("","","/front/vipsubscribe/toSetKeyWordPage?page=1")
             if(!$('.enter.addkeyWord').is(':hidden')){
                 if($('.addkeyWord input.enterOne').val()==""){
                     return
@@ -510,6 +516,7 @@
         }
         //
         function tonotkey(th){
+			history.replaceState("","","/front/vipsubscribe/toSetKeyWordPage?page=1")
             if(!$('.enter.addkeyWord').is(':hidden')){
                 if($('.addkeyWord input.enterOne').val()==""){
                     return
@@ -745,6 +752,7 @@
             }, 500)
         })
     </script>
+	{{include "/common/baiducc.html"}}
 </body>
 
 </html>

+ 29 - 1
src/web/templates/weixin/vipsubscribe/modal.html

@@ -2,10 +2,38 @@
 <script type="text/javascript" src="/js/bootstrap.min.js?v={{Msg "seo" "version"}}"></script>
 <script type="text/javascript">
 $(function(){
-	$("#myModal").modal("show");
+  //获取是否弹框
+  var NotshowNum = parseInt(localStorage.getItem("NotshowTrailTip"));
+  if(!NotshowNum&&NotshowNum!=0){ //localStorage值为空 请求后台是否展示
+    $.post("/subscribepay/trial/showTrailTip",{},function(r){
+      if(r.showTrailTip){
+        $("#myModal").modal("show");
+        NotshowNum=0;
+        localStorage.setItem("NotshowTrailTip",NotshowNum);
+        localStorage.setItem("vipTrialShowed_"+new Date().getDate(),"ok");
+      }else{ //不展示
+        localStorage.setItem("NotshowTrailTip","999");
+      } 
+    })
+  }else if (NotshowNum<3&&!localStorage.getItem("vipTrialShowed_"+new Date().getDate())){ //localStorage中有值 且今天第一次打开
+    $("#myModal").modal("show");
+    localStorage.setItem("vipTrialShowed_"+new Date().getDate(),"ok")
+  }
+    
 	$(".toast_close").on("click",function(){
 		$("#myModal").modal("hide");
+    NotshowNum++
+    if(NotshowNum>=3){ //以后不跳出弹框
+      $.post("/subscribepay/trial/closeTrailTip",{},function(r){
+        if(r.success){ 
+          localStorage.setItem("NotshowTrailTip",NotshowNum);
+        }
+      })
+    }else{
+      localStorage.setItem("NotshowTrailTip",NotshowNum);
+    }
 	})
+  
 	$(".toast_but").on("click",function(){
 		$("#myModal").modal("hide");
         window.location.href="/front/vipsubscribe/trialInfo"

+ 4 - 1
src/web/templates/weixin/vipsubscribe/trial_info.html

@@ -12,7 +12,7 @@
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}" />
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
     <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="/vipsubscribe/css/trial_info.css?v=111">
+    <link rel="stylesheet" href="/vipsubscribe/css/trial_info.css?v=111">    
 </head>
 
 <body>
@@ -72,12 +72,15 @@
             
         </form>
     </div>
+    {{include "/common/weixin.html"}}
     <script src="/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/personal_info.js?v={{Msg "seo" "version"}}"></script>
     <script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/vipsubscribe/js/share.js?v={{Msg "seo" "version"}}"></script>
     <script>
+        initShare({{.T.signature}});
         $(function () {
             //获取用户信息
             $DoPost("/subscribepay/trial/GetUserPhone",{},function(r){

+ 13 - 9
src/web/templates/weixin/vipsubscribe/vip_index.html

@@ -10,12 +10,12 @@
     <title>VIP订阅首页</title>
     <meta name="apple-mobile-web-app-capable" content="yes">
     <meta name="apple-mobile-web-app-status-bar-style" content="black">
-    <script src="/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" href="/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="/vipsubscribe/css/vip_index.css?v={{Msg "seo" "version"}}">
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
+    <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/vip_index.css?v={{Msg "seo" "version"}}">
 </head>
 
 <body>
@@ -141,10 +141,13 @@
             </div>
         </div>
     </div>
-    <script src="/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
-    <script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
-    <script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+	{{include "/common/weixin.html"}}
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
     <script>
+		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
         $(function () {
             //获取用户信息
            $.post("/subscribepay/afterPay/getUserInfo",{},function(r){
@@ -237,6 +240,7 @@
             })
         })
     </script>
+	{{include "/common/baiducc.html"}}
 </body>
 
 </html>

+ 5 - 0
src/web/templates/weixin/vipsubscribe/vip_introduce.html

@@ -137,5 +137,10 @@
             <a href="/weixin/pay/vipsubscribe_new" class="subscribe_btn">去订阅</a>
         </div>
     </div>
+    {{include "/common/weixin.html"}}
+    <script src="/vipsubscribe/js/share.js?v={{Msg "seo" "version"}}"></script>
+    <script>
+      initShare({{.T.signature}});
+    </script>
 </body>
 </html>

+ 10 - 9
src/web/templates/weixin/vipsubscribe/vip_order_detail.html

@@ -10,11 +10,11 @@
     <meta name="apple-mobile-web-app-status-bar-style" content="black">
     <script src="/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
     <link rel="stylesheet" type="text/css" href="https://cdn.bootcss.com/weui/1.1.2/style/weui.css" />
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
-    <link rel="stylesheet" href="/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="/vipsubscribe/css/vip_order_detail.css?v={{Msg "seo" "version"}}1">
+    <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/vip_order_detail.css?v={{Msg "seo" "version"}}1">
 	{{include "/common/weixin.html"}}
 	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>   
 </head>
@@ -102,10 +102,10 @@
         <a href="#" class="button align" style="display:none">去支付</a>
     </div>
 </body>
-<script src="/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
-<script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
-<script src="/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
-<script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
+<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
+<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
+<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
+<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
 <script>
 try{
   var signature = {{.T.signature}};
@@ -337,4 +337,5 @@ try{
   })
       
 </script>
+	{{include "/common/baiducc.html"}}
 </html>

+ 3 - 3
src/web/templates/weixin/vipsubscribe/vip_seniorset.html

@@ -33,10 +33,10 @@
 			color: #686868;
 		}
 	</style>
-	<script>
-		// initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
+    <script>
+		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
 		var s_email = "";
-		// var haskeyword = {{.T.haskeyword}};
 		var keepOneTipWayMsg = "请保留一种推送方式,<br>剑鱼标讯还要推送信息给您";
 		var emailSetModal = null;
 		var clickDelayed = false;

+ 3 - 1
src/web/templates/weixin/vipsubscribe/vip_viewPage.html

@@ -6,11 +6,13 @@
 	<link href="{{Msg "seo" "cdn"}}/css/dropload.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 	<link href="{{Msg "seo" "cdn"}}/css/wxlist.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 	{{include "/common/weixin.html"}}
+    <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
 	<script src="{{Msg "seo" "cdn"}}/js/jquery.js"></script>
 	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>
 	<script src="{{Msg "seo" "cdn"}}/js/dropload.js?v={{Msg "seo" "version"}}"></script>
 	<script src="{{Msg "seo" "cdn"}}/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
-	<script>
+	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}1"></script>
+    <script>
 		initShare({{.T.signature}},{{.T.openid}},2,"jy_extend",{{.T.nickname}},{{.T.avatar}});
 		var zbadd = {{Msg "seo" "ZBADDRESS"}};
 		var keys = [];

+ 45 - 2
src/web/templates/weixin/wxinfocontent.html

@@ -139,19 +139,40 @@ pre {
 	position: relative;
 	top: 2px;
 }
+.toolbar .follow_vip{
+	float: right;
+	color: #ffba00;
+	position: relative;
+	top: 10px;
+}
 .toolbar .follow i{
 	top: 2px;
 }
+.toolbar .follow_vip i{
+	top: 3px;
+}
 .timebefore{
 	color: #888888;
 	position: relative;
     top: -1px;
 }
+.timebefore_vip{
+	color: #888888;
+	position: relative;
+    top: 10px;
+    right: 3.3rem;
+    font-size: 14px;
+}
 .timebefore i{
 	color: #7a7a7a;
 	font-size: 16px;
 	top: 3px;
 }
+.timebefore_vip i{
+	color: #7a7a7a;
+	font-size: 16px;
+	top: 3px;
+}
 .area{
     padding: 1px 3px;
 	color: #fff;
@@ -462,6 +483,14 @@ pre {
 	left: 90%;
 	top: 20px;
 }
+.buyerclass{
+    background: #CFAD89;
+    padding: 1px 3px;
+    color: #fff;
+    border-radius: 3px;
+    margin-right: 3px;
+    float: left;
+}
 </style>
 </head>
 <body>
@@ -507,21 +536,35 @@ pre {
 
 			var industry = {{.T.obj.industry}};
 			var subscopeclass = {{.T.obj.s_subscopeclass}};
+			//vip用户显示与普通用户不同
+			var isvip={{.T.obj.isVip}};
+			var buyerclass={{.T.obj.buyerclass}};
 			if(industry){
                 document.write("<span class='industry'>"+industry+"</span>");
 			}else if(subscopeclass){
 				var suclass = subscopeclass.split(",")[0];
 				document.write("<span class='industry'>"+ suclass.split("_")[0]+"</span>");
 			}
+			if(isvip){
+				document.write("<span class='buyerclass'>"+ buyerclass+"</span></br>");
+			}
 			var l_publishtime = {{.T.obj.l_publishtime}};
 			if(l_publishtime != ""){
 				var tdf = timeDiff(new Date(Number(l_publishtime+"000")))
 				if(tdf != null){
-					document.write("<span class='timebefore'><i class='glyphicon bofangjilu'></i>"+tdf+"</span>");
+					if(isvip){
+						document.write("<span class='timebefore_vip'><i class='glyphicon bofangjilu'></i>"+tdf+"</span>");
+					}else{
+						document.write("<span class='timebefore'><i class='glyphicon bofangjilu'></i>"+tdf+"</span>");
+					}
 				}
 			}
 		</script>
-		{{if .T.obj.hasSession}}{{if or .T.obj.projectname .T.obj.projectcode}}<span class="follow">{{if .T.obj.followFlag}}<i class="glyphicon yiguanzhu"></i>已关注{{else}}<i class="glyphicon weiguanzhu"></i>关注项目{{end}}</span>{{end}}{{else}}<!--<a href="/swordfish/share/-1" style="text-decoration: none;color:#24C0D7;"><span class="follow"><i class="glyphicon weiguanzhu"></i></span>关注项目</a>-->{{end}}
+		{{if .T.obj.isVip}}
+			{{if .T.obj.hasSession}}{{if or .T.obj.projectname .T.obj.projectcode}}<span class="follow_vip" >{{if .T.obj.followFlag}}<i class="glyphicon yiguanzhu"></i>已关注{{else}}<i class="glyphicon weiguanzhu"></i>关注项目{{end}}</span>{{end}}{{else}}<!--<a href="/swordfish/share/-1" style="text-decoration: none;color:#24C0D7;"><span class="follow"><i class="glyphicon weiguanzhu"></i></span>关注项目</a>-->{{end}}
+		{{else}}
+			{{if .T.obj.hasSession}}{{if or .T.obj.projectname .T.obj.projectcode}}<span class="follow" >{{if .T.obj.followFlag}}<i class="glyphicon yiguanzhu"></i>已关注{{else}}<i class="glyphicon weiguanzhu"></i>关注项目{{end}}</span>{{end}}{{else}}<!--<a href="/swordfish/share/-1" style="text-decoration: none;color:#24C0D7;"><span class="follow"><i class="glyphicon weiguanzhu"></i></span>关注项目</a>-->{{end}}
+		{{end}}
 	</div>
 	<!--{{if .T.obj.hasSession}}
 		{{if or .T.obj.projectname .T.obj.projectcode}}