Forráskód Böngészése

Merge remote-tracking branch 'origin/dev4.6.2.1' into dev4.6.2.1

wangkaiyue 3 éve
szülő
commit
daae6e6f88
35 módosított fájl, 579 hozzáadás és 270 törlés
  1. 6 0
      src/jfw/front/vipsubscribe.go
  2. 4 0
      src/jfw/modules/app/src/app/front/vipsubscribe.go
  3. 15 10
      src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/analysis_result.js
  4. 29 12
      src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js
  5. 12 1
      src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/unit_portrayal.js
  6. 5 2
      src/jfw/modules/app/src/web/staticres/jyapp/css/subscribe.css
  7. 8 3
      src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js
  8. 3 0
      src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/css/subscribe_list.css
  9. 1 1
      src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/keyWord.js
  10. 25 10
      src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/vip_index_new.js
  11. 1 1
      src/jfw/modules/app/src/web/templates/areaPack/page_set_area.html
  12. 34 29
      src/jfw/modules/app/src/web/templates/commonPay/paySuccess.html
  13. 1 1
      src/jfw/modules/app/src/web/templates/vipsubscribe/vip_introduce.html
  14. 11 3
      src/jfw/modules/app/src/web/templates/vipsubscribe/vip_viewPage.html
  15. 98 13
      src/jfw/modules/bigmember/src/service/analysis/forecastproject.go
  16. 2 2
      src/jfw/modules/common/src/qfw/util/jy/switchService.go
  17. 2 2
      src/jfw/modules/publicapply/src/adLeague/service/service.go
  18. 45 50
      src/jfw/modules/publicapply/src/subscribe/entity/entity.go
  19. 0 4
      src/jfw/modules/publicapply/src/subscribe/service/service.go
  20. 3 1
      src/jfw/modules/publicapply/src/subscribePush/entity/setting.go
  21. 114 1
      src/jfw/modules/publicapply/src/subscribePush/entity/vrew.go
  22. 2 2
      src/web/staticres/common-module/big-member/js/high_set.js
  23. 7 9
      src/web/staticres/common-module/collection/js/ent_portrait.js
  24. 1 0
      src/web/staticres/common-module/collection/js/history-project.js
  25. 41 43
      src/web/staticres/common-module/vipsubscribe/js/vip-subscribe-set-template.js
  26. 9 4
      src/web/staticres/js/wxSupersearch.js
  27. 3 0
      src/web/staticres/vipsubscribe/css/subscribe_list.css
  28. 1 1
      src/web/staticres/vipsubscribe/js/keyWord.js
  29. 26 22
      src/web/staticres/vipsubscribe/js/vip_index_new.js
  30. 1 1
      src/web/templates/areaPack/wx/page_set_area.html
  31. 34 29
      src/web/templates/weixin/commonPay/paySuccess.html
  32. 19 5
      src/web/templates/weixin/historypush.html
  33. 1 1
      src/web/templates/weixin/vipsubscribe/vip_index_new.html
  34. 4 4
      src/web/templates/weixin/vipsubscribe/vip_introduce.html
  35. 11 3
      src/web/templates/weixin/vipsubscribe/vip_viewPage.html

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

@@ -9,6 +9,7 @@ import (
 	"log"
 	"net/url"
 	"qfw/util"
+	"qfw/util/jy"
 	"qfw/util/redis"
 	"time"
 
@@ -125,6 +126,11 @@ func (s *Subscribepay) ToSetInfoTypePage() {
 
 //订阅设置
 func (s *Subscribepay) ToSetPage() {
+	userid := util.ObjToString(s.GetSession("userId"))
+	vipMsg := jy.GetBigVipUserBaseMsg(userid, public.Mysql, public.MQFW)
+	if vipMsg.VipStatus <= 0 && vipMsg.Status <= 0 && isInTSguide(userid) { //仅免费用户跳转向导页面
+		s.Redirect("/front/tenderSubscribe/guide")
+	}
 	nowTime := time.Now().Unix()
 	if nowTime >= liveActiveStartTime && nowTime < liveActiveEndTime {
 		s.T["isLiveActive"] = true

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

@@ -113,6 +113,10 @@ func (s *Subscribepay) ToSetPage() {
 		s.Redirect("/jyapp/big/page/init") //跳转至首次初始化页面
 		return
 	}
+	//仅免费用户跳转向导页面
+	if bigBaseMsg.Status <= 0 && bigBaseMsg.VipStatus <= 0 && isInTSguide(userid) {
+		s.Redirect("/jyapp/tenderSubscribe/guide")
+	}
 	s.Render("/vipsubscribe/vip_index_new.html")
 }
 

+ 15 - 10
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/analysis_result.js

@@ -172,11 +172,6 @@ var vNode = {
             this.currentVal.buyerClass = prevState.currentVal.buyerClass;
         }
         this.isFollowProject();
-        var restore = this.restoreData()
-        if (!restore) {
-            this.getChartData();
-            this.getBaseInfo();
-        }
     },
     beforeDestroy() {
         window.removeEventListener("resize", this.init,20);
@@ -188,6 +183,11 @@ var vNode = {
         // }
     },
     mounted() {
+        var restore = this.restoreData()
+        if (!restore) {
+            this.getChartData();
+            this.getBaseInfo();
+        }
         this.year = new Date().getFullYear() - 2;
         // 动态调整sticky距离顶部的高度
         this.getStickyTop()
@@ -976,15 +976,15 @@ var vNode = {
                 minusRows: this.minusRows,
                 screenWidth: this.screenWidth,
                 year: this.year,
-                baseInfo: this.baseInfo
+                baseInfo: this.baseInfo,
+                scrollTop: this.$refs.wrapper.scrollTop
             }
-            console.log(data)
+            // console.log(data)
             sessionStorage.setItem('$data-analysis-result',JSON.stringify(data))
         },
         // 恢复页面数据
         restoreData:function(){
             var $data = sessionStorage.getItem('$data-analysis-result')
-            // console.log($data)
             if ($data) {
                 $data = JSON.parse($data)
                 this.cacheImgData = $data.cacheImgData || {}
@@ -996,6 +996,11 @@ var vNode = {
                 this.screenWidth = $data.screenWidth
                 this.year = $data.year
                 this.baseInfo = $data.baseInfo
+                this.scrollTop = $data.scrollTop
+                var _this = this
+                this.$nextTick(function(){
+                  _this.$refs.wrapper.scrollTop = $data.scrollTop || 0
+                })
                 this.initChartData()
                 sessionStorage.removeItem('$data-analysis-result')
             }
@@ -1035,9 +1040,9 @@ var vNode = {
         onSearch () {
           if (!this.winnerVal && !this.buyerVal) return
           if (this.winnerVal && this.buyerVal) {
-            this.getProjectDetail(2, this.winnerVal, this.buyerVal)
+            this.getProjectDetail(0, this.winnerVal, this.buyerVal)
           } else {
-            this.getProjectDetail(1, this.winnerVal, this.buyerVal)
+            this.getProjectDetail(0, this.winnerVal, this.buyerVal)
           }
         },
         // 跳转其他项目明细页面

+ 29 - 12
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js

@@ -331,7 +331,6 @@ var vNode = {
     // 获取画像信息
     getEntPortrait: function (callback) {
       var storageSet = JSON.parse(sessionStorage.getItem('winner_high_set'))
-      // if (!storageSet) return
       var _this = this
       var data = {
         entId: _this.entInfo.id
@@ -354,16 +353,12 @@ var vNode = {
       } else {
         urls = '/bigmember/portrait/subVipPortrait/winner'
       }
-      // if (_this.powerInfo.memberStatus <= 0 || _this.svip || _this.isVip) {
-      //   urls = '/bigmember/portrait/subVipPortrait/winner'
-      // } else {
-      //   urls = '/bigmember/portrait/winner/getData'
-      // }
       _this.getEntPortraitInfoTimes++
       $.ajax({
         type: 'POST',
         url: urls,
         data: storageSet ? Object.assign(data, storageSet) : data,
+        timeout: 10000,
         success: function (res) {
           if (res.error_code == 0) {
             _this.loading.clear()
@@ -388,7 +383,7 @@ var vNode = {
               }
             }
           } else {
-            _this.loading.clear()
+            _this.$toast(res.error_msg)
             _this.show.yearData = false
             _this.show.monthData = false
             _this.show.areaData = false
@@ -399,6 +394,13 @@ var vNode = {
         },
         error: function (error) {
           // _this.$toast('请求失败')
+          // 处理ios请求超时后 再次请求
+          _this.loading.clear()
+          setTimeout(function(){
+            _this.getEntPortrait(function () {
+              _this.initChartsData()
+            })
+          }, 3000)
         }
       })
     },
@@ -408,6 +410,7 @@ var vNode = {
       $.ajax({
         type: "POST",
         url: "/bigmember/portrait/subVipPortrait/usage",
+        timeout: 5000,
         data: {
           entId: _this.entInfo.id
         },
@@ -421,6 +424,9 @@ var vNode = {
               _this.entvisit = res.data
             }
           }
+        },
+        error: function (error) {
+          console.log(error)
         }
       });
     },
@@ -448,7 +454,6 @@ var vNode = {
     // 获取项目动态
     getProjectNews: function () {
       var storageSet = JSON.parse(sessionStorage.getItem('winner_high_set'))
-      // if (!storageSet) return
       var _this = this
       var data = {
         entId: _this.entInfo.id,
@@ -464,6 +469,7 @@ var vNode = {
         type: 'POST',
         url: urls,
         data: storageSet ? Object.assign(data, storageSet) : data,
+        timeout: 8000,
         success: function (res) {
           if (res.error_code == 0) {
             _this.loading.clear()
@@ -477,13 +483,16 @@ var vNode = {
               _this.topProject.list = res.data.list
             }
           } else {
-            // _this.$toast(res.error_msg)
-            _this.loading.clear()
+            _this.$toast(res.error_msg)
             _this.show.dt = false
           }
         },
         error: function (error) {
           // _this.$toast('请求失败')
+          _this.loading.clear()
+          setTimeout(function() {
+            _this.getProjectNews()
+          }, 3000)
         }
       })
     },
@@ -502,9 +511,9 @@ var vNode = {
         data: {
           entId: _this.entInfo.id
         },
+        timeout: 6000,
         success: function (res) {
           if (res.error_code == 0) {
-            _this.loading.clear()
             if (res.data && Object.keys(res.data).length !== 0) {
               _this.entInfo.name = res.data.entName
               for (var key in res.data) {
@@ -513,11 +522,14 @@ var vNode = {
             }
           } else {
             // 不显示提示信息
-            // _this.$toast(res.error_msg)
+            _this.$toast(res.error_msg)
           }
         },
         error: function (error) {
           console.log(error)
+          setTimeout(function() {
+            _this.getEntBaseInfo()
+          }, 3000)
         }
       })
     },
@@ -531,6 +543,7 @@ var vNode = {
         data: {
           entId: _this.entInfo.id
         },
+        timeout: 5000,
         success: function (res) {
           if (res.error_code == 0) {
             _this.entInfo.followSearchFinish = true
@@ -573,6 +586,7 @@ var vNode = {
       $.ajax({
         type: 'GET',
         url: '/bigmember/use/isAdd',
+        timeout: 5000,
         success: function (res) {
           if (res.error_code == 0) {
             _this.conf.powerLoaded = true
@@ -633,6 +647,7 @@ var vNode = {
         },
         error: function (error) {
           console.log(error)
+          _this.loading.clear()
         }
       })
     },
@@ -651,6 +666,7 @@ var vNode = {
         data: {
           entId: _this.entInfo.id
         },
+        timeout: 5000,
         success: function (res) {
           if (res.error_code == 0) {
             // 清除上个页面缓存
@@ -669,6 +685,7 @@ var vNode = {
         },
         error: function (error) {
           console.log(error)
+          loading.clear()
         }
       })
     },

+ 12 - 1
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/unit_portrayal.js

@@ -203,6 +203,7 @@ var vNode = {
             $.ajax({
               type: 'POST',
               url: '/bigmember/use/isAdd?t=' + Date.now(),
+              timeout: 6000,
               success: function (res) {
                   if (res.data) {
                     _this.power = res.data.power
@@ -237,6 +238,9 @@ var vNode = {
               },
               error: function (error) {
                 console.log(error)
+                setTimeout(function() {
+                  _this.getPowerInfo()
+                }, 3000)
               }
             })
         },
@@ -354,6 +358,7 @@ var vNode = {
             type:'POST',
             url:'/bigmember/portrait/buyer/getNewMsg',
             data: storageSet ? Object.assign(data, storageSet) : data,
+            timeout: 8000,
             success:function(res) {
               if(res.error_code == 0) {
                 if (res.data.list && res.data.list.length && res.data.list.length > 0) {
@@ -394,7 +399,9 @@ var vNode = {
               }
             },
             error:function(err) {
-              console.log(err)
+              setTimeout(function() {
+                that.getNewMsg()
+              }, 3000)
             }
           })
         },
@@ -409,6 +416,7 @@ var vNode = {
             type:'POST',
             url:'/bigmember/portrait/buyer/getData',
             data: storageSet ? Object.assign(data, storageSet) : data,
+            timeout: 10000,
             success:function(res) {
                 if(res.error_code == 0) {
                   if(res.data && Object.keys(res.data).length > 0) {
@@ -426,6 +434,9 @@ var vNode = {
             },
             error:function(err) {
               console.log(err)
+              setTimeout(function() {
+                that.getChartData()
+              }, 3000)
             }
           })
         },

+ 5 - 2
src/jfw/modules/app/src/web/staticres/jyapp/css/subscribe.css

@@ -746,6 +746,9 @@ em,i{
 .jymobile-setting-dialog {
   font-size: .32rem;
 }
+.jymobile-setting-dialog .weui-dialog {
+    background: #fff;
+}
 
 .jymobile-setting-dialog .weui-dialog__hd {
   padding: 0;
@@ -1957,7 +1960,7 @@ html, body {
   line-height: 22px;
 }
 .product-switch .vipproduct{
-  box-shadow: 0px 1px 0px 0px rgba(0,0,0,0.05) inset, 16px 0px 0px 0px #ffffff inset; 
+  box-shadow: 0px 1px 0px 0px rgba(0,0,0,0.05) inset, 16px 0px 0px 0px #ffffff inset;
 }
 .product-switch .icon-blue-duihao{
   display: flex;
@@ -2038,7 +2041,7 @@ html, body {
   height: 109px;
   opacity: 1;
   background: linear-gradient(180deg,#f5fffe 0%, #ffffff 100%);
-  box-shadow: 0px 4px 16px 0px rgba(8,31,38,0.15); 
+  box-shadow: 0px 4px 16px 0px rgba(8,31,38,0.15);
   border-radius: .16rem;
 }
 .housemov{

+ 8 - 3
src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js

@@ -445,8 +445,9 @@ var SuperSearch = {
       // --> 已设置10组关键词,订阅失败提示
       // --> 小于10组
       //    --> 历史老用户-未选择区域-提示更新
-      //           --> -选择区域-关键词列表
-      //    --> 新用户-未选择区域-关键词列表
+      //           --> 选择区域-关键词列表
+      //    --> 新用户-未选择区域-订阅页面
+      //           --> 选择区域-关键词列表
 
       var isOldUser = false
       var nowKeyLength = 8
@@ -536,8 +537,12 @@ var SuperSearch = {
           });
           if(rFlag){
             SuperSearch.setSessionStorage();
+            var goHref = "/jyapp/vipsubscribe/toSetKeyWordPage";
+            if (!isSelectArea) {
+              goHref = "/jyapp/vipsubscribe/toSubVipSetPage";
+            }
             setTimeout(function(){
-              window.location.href = "/jyapp/vipsubscribe/toSetKeyWordPage";
+              window.location.href = goHref
             },100);
           }
         }

+ 3 - 0
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/css/subscribe_list.css

@@ -50,6 +50,9 @@
 .jymobile-setting-dialog {
   font-size: .32rem;
 }
+.jymobile-setting-dialog .weui-dialog {
+  background: #fff;
+}
 
 .jymobile-setting-dialog .weui-dialog__hd {
   padding: 0;

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

@@ -188,7 +188,7 @@ var vm = new Vue({
               _this.conf.keywordMax = 10
               _this.userData = res.data
               // 关键词赋值
-              if (res.data && res.data.keys) {
+              if (res.data) {
                 try {
                   var a_key = res.data.keys || []
                   kList = [

+ 25 - 10
src/jfw/modules/app/src/web/staticres/jyapp/vipsubscribe/js/vip_index_new.js

@@ -11,8 +11,9 @@ var subNode = new Vue({
                 industry: '/jyapp/vipsubscribe/toChangeIndustry?header=save',
                 keyword: '/jyapp/vipsubscribe/toSetKeyWordPage',
                 infotype: '/jyapp/vipsubscribe/toSetInfoTypePage',
-                resultview: '/jyapp/vipsubscribe/toVIPViewPage',
-                pushsetting: '/jyapp/big/page/push_setting_detail?header=订阅&type=free_subscribe'
+                resultview: '/jyapp/vipsubscribe/toVIPViewPage?vSwitch=v',
+                pushsetting: '/jyapp/big/page/push_setting_detail?header=超级订阅推送设置&type=super_subscribe',
+                freepush: '/jyapp/big/page/push_setting_detail?header=订阅&type=free_subscribe',
             },
             initData: {},
             memberStatus: 0,
@@ -51,16 +52,26 @@ var subNode = new Vue({
         // 得到用户是否购买省份包
         getUserSubscribe: function () {
             let _this = this
+            _this.$refs.subComponent.getUserSubscribe(function (res) {
+                    if (res && res.data) {
+                        _this.freeUserArea = res.data.area
+                        _this.userType = res.data.provincenum === 0 ? false : true
+                        _this.userAreaAllNum = res.data.provincenum === -1 ? '全国' : res.data.provincenum
+                        _this.subscribeTime = new Date(res.data.ppstart * 1000).pattern('yyyy年MM月dd日') + "-" + new Date(res.data.ppend * 1000).pattern('yyyy年MM月dd日')
+                        _this.initdata = res.data
+                        _this.linkObj.pushsetting = _this.linkObj.freepush
+
+                    }
+            })
+
+
             $.ajax({
-                url: '/publicapply/free/subscribe',
+                url: '/publicapply/free/pushcount',
                 type: 'POST',
                 success: function (res) {
-                    _this.freeUserArea = res.data.area
-                    _this.userAreaNum = res.data.areanum
-                    _this.userType = res.data.provincenum === 0 ? false : true
-                    _this.userAreaAllNum = res.data.provincenum === -1 ? '全国' : res.data.provincenum
-                    _this.subscribeTime = new Date(res.data.ppstart * 1000).pattern('yyyy年MM月dd日') + "-" + new Date(res.data.ppend * 1000).pattern('yyyy年MM月dd日')
-                    _this.initdata = res.data
+                    if (res && res.count) {
+                        _this.$refs.subComponent.$data.resultTime = '(近3个月内共' + res.count + '条信息)'
+                    }
                 }
             })
         },
@@ -85,7 +96,6 @@ var subNode = new Vue({
                         }
                         this.linkObj = {
                             area: '/jyapp/big/page/set_area?callback=setting_save',
-                            // area: '/jyapp/areaPack/set_area',
                             industry: '/jyapp/big/page/set_cate?header=采购单位类型&callback=setting_save',
                             keyword: '/jyapp/vipsubscribe/toSetKeyWordPage',
                             infotype: '/jyapp/big/page/set_infotype?callback=setting_save',
@@ -96,6 +106,7 @@ var subNode = new Vue({
                     } else if(num <= 0) {
                         $('.custom-header-title').html('<span class="title-text">订阅管理-免费订阅</span>')
                         this.subInfoAjax = '/publicapply/free/subscribe'
+                        this.linkObj.resultview = '/jyapp/vipsubscribe/toVIPViewPage?vSwitch=f'
                     } else {
                         $('.custom-header-title').html('<span class="title-text"><em class="title_icon icon_vip"></em>订阅管理-超级订阅</span>')
                         this.subInfoAjax = '/subscribepay/vipsubscribe/getSubBuyMsg?t=' + new Date().getTime()
@@ -105,10 +116,12 @@ var subNode = new Vue({
                     this.subInfoAjax = '/subscribepay/vipsubscribe/getSubBuyMsg?t=' + new Date().getTime()
                 } else {
                     $('.custom-header-title').html('<span class="title-text">订阅管理-免费订阅</span>')
+                    this.linkObj.resultview = '/jyapp/vipsubscribe/toVIPViewPage?vSwitch=f'
                     this.subInfoAjax = '/publicapply/free/subscribe'
                 }
             } else {
                 $('.custom-header-title').html('<span class="title-text">订阅管理-免费订阅</span>')
+                this.linkObj.resultview = '/jyapp/vipsubscribe/toVIPViewPage?vSwitch=f'
                 this.subInfoAjax = '/publicapply/free/subscribe'
             }
         },
@@ -152,6 +165,8 @@ var subNode = new Vue({
                             _this.vipLink = '/jyapp/vipsubscribe/vipsubscribe_renew'
                             _this.arrowShow = true
                             sessionStorage.setItem('switch-product','supervip')
+                            $('.update_renew').show()
+                            $('.super-title').show();
                             _this.subInfoAjax = '/subscribepay/vipsubscribe/getSubBuyMsg?t=' + new Date().getTime()
                         } else {
                             _this.vipLink = 'javascript:;'

+ 1 - 1
src/jfw/modules/app/src/web/templates/areaPack/page_set_area.html

@@ -122,7 +122,7 @@
                 <div class="string"></div>
                 <div class="selectNumList">
                     <span>已选择<span class="numColor" id="thisSelect">${ selectedAreaText }</span></span>
-                    <span class="moreTips" v-show="moreThanSubCount">超出可订阅省份数量,前往${ buyType }省份订阅包 &gt;</span>
+                    <span class="moreTips" v-show="moreThanSubCount" @click="toPay">超出可订阅省份数量,前往${ buyType }省份订阅包 &gt;</span>
                 </div>
                 <div class="selectChange"></div>
             </div>

+ 34 - 29
src/jfw/modules/app/src/web/templates/commonPay/paySuccess.html

@@ -138,35 +138,7 @@
                 }
                 $('.info-box .info-item').text('数据流量包:+' + allTotal)
             } else if (productType === 'areaPack') {
-                // https://showdoc.jydev.jianyu360.com/web/#/67?page_id=891
-                // {
-                //     num: 0, // 购买的数量 -1全国
-                //     ordertype: 1, // 1正常购买 2升级 3续费
-                //     cycleunit: 0, // 日期单位 1月 2季 3年
-                //     OldNum: 0, // 升级前购买的省份数量
-                // }
-                var titleMap = {
-                    1: '购买',
-                    2: '升级',
-                    3: '续费'
-                }
-                setHeaderTitle(titleMap[orderFilter.ordertype] + $('.header-title').text())
-                var cycleType = ' 个月'
-                if (orderFilter.cycleunit == 2) {
-                    cycleType = ' 季'
-                } else if (orderFilter.cycleunit == 3) {
-                    cycleType = ' 年'
-                }
-
-                var html = `${titleMap[orderFilter.ordertype]}省份数量:<span class="highlight-text">${orderFilter.num === -1 ? '全国' : orderFilter.num}</span>${orderFilter.num === -1 ? '' : ' 个省'}`
-                html += `&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;`
-                html += `订阅周期:`
-                if (orderFilter.ordertype == 2) {
-                    html += `不延期`
-                } else {
-                    html += `<span class="highlight-text">1</span>${ cycleType }`
-                }
-                $('.info-box .info-item').html(html)
+                setAreaPackInfo(orderFilter)
             }
         }
 
@@ -198,6 +170,39 @@
         }
     })
 
+    function setAreaPackInfo (orderFilter) {
+        // https://showdoc.jydev.jianyu360.com/web/#/67?page_id=891
+        // {
+        //     num: 0, // 购买的数量 -1全国
+        //     ordertype: 1, // 1正常购买 2升级 3续费
+        //     cycleunit: 0, // 日期单位 1月 2季 3年
+        //     OldNum: 0, // 升级前购买的省份数量
+        // }
+        var titleMap = {
+            1: '购买',
+            2: '升级',
+            3: '续费'
+        }
+        setHeaderTitle(titleMap[orderFilter.ordertype] + $('.header-title').text())
+        var cycleType = ' 个月'
+        if (orderFilter.cycleunit == 2) {
+            cycleType = ' 季'
+        } else if (orderFilter.cycleunit == 3) {
+            cycleType = ' 年'
+        }
+
+        var buyText = orderFilter.num === -1 ? '全国' : (orderFilter.num - (orderFilter.OldNum || 0))
+        var html = `${titleMap[orderFilter.ordertype]}省份数量:<span class="highlight-text">${buyText}</span>${orderFilter.num === -1 ? '' : ' 个省'}`
+        html += `&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;`
+        html += `订阅周期:`
+        if (orderFilter.ordertype == 2) {
+            html += `不延期`
+        } else {
+            html += `<span class="highlight-text">1</span>${ cycleType }`
+        }
+        $('.info-box .info-item').html(html)
+    }
+
     function setHeaderTitle (title) {
         if (!title) return
         document.title = title

+ 1 - 1
src/jfw/modules/app/src/web/templates/vipsubscribe/vip_introduce.html

@@ -212,7 +212,7 @@
                     industry: '/jyapp/vipsubscribe/toChangeIndustry?header=save&subvip=free',
                     keyword: '/jyapp/vipsubscribe/toSetKeyWordPage',
                     infotype: '/jyapp/vipsubscribe/toSetInfoTypePage',
-                    resultview: '/jyapp/vipsubscribe/toVIPViewPage',
+                    resultview: '/jyapp/vipsubscribe/toVIPViewPage?vSwitch=v',
                     pushsetting: '/jyapp/big/page/push_settings'
                 },
                 initData: {},

+ 11 - 3
src/jfw/modules/app/src/web/templates/vipsubscribe/vip_viewPage.html

@@ -125,9 +125,13 @@
 			var reqParam = {
 				"pageNum": pageNum++
 			};
+			var tempURL = '/publicapply/free/pushview'
+			if (getParam('vSwitch') == 'v') {
+				tempURL = '/subscribepay/afterPay/getPushView'
+			}
 			$.ajax({
 				type: 'post',
-				url: '/subscribepay/afterPay/getPushView',
+				url: tempURL,
 				data: reqParam,
 				dataType: 'json',
 				success: function(data){
@@ -166,9 +170,13 @@
 						var reqParam = {
 							"pageNum": pageNum++
 						};
+						var tempURL = '/publicapply/free/pushview'
+						if (getParam('vSwitch') == 'v') {
+							tempURL = '/subscribepay/afterPay/getPushView'
+						}
 						$.ajax({
 							type: 'post',
-							url: '/subscribepay/afterPay/getPushView',
+							url: tempURL,
 							data: reqParam,
 							dataType: 'json',
 							success: function(data){
@@ -491,7 +499,7 @@
 			<span style="color:#1d1d1d;font-size:16px">没有找到和你订阅设置内容有关的信息</span>
 			<br><br>
       <div id="back" class="text-center">
-  			返回修改超级订阅设置
+  			返回修改订阅设置
   		</div>
 		</span>
 	</div>

+ 98 - 13
src/jfw/modules/bigmember/src/service/analysis/forecastproject.go

@@ -6,6 +6,7 @@ import (
 	"db"
 	"encoding/json"
 	"fmt"
+	"jfw/modules/common/src/qfw/util/jy"
 	"log"
 	qutil "qfw/util"
 	dfa "qfw/util/dfa"
@@ -22,7 +23,7 @@ import (
 const (
 	INDEX          = "forecast"
 	TYPE           = "forecast"
-	bidSearch_sort = `{"publishtime":-1}`
+	bidSearch_sort = `{"yucetime":-1}`
 	findfields     = `"title"`
 
 	view_maxPageNum = 20
@@ -35,20 +36,75 @@ func (this *Analysis) ForPContent() {
 	defer qutil.Catch()
 	userId, _ := this.GetSession("userId").(string)
 	rData, errMsg := func() (interface{}, error) {
-		id := this.GetString("id") //项目预测id
-		// keys := this.GetString("keys") //关键词
-		if id == "" { //}|| keys == "" {
+		id := this.GetString("id")     //项目预测id
+		keys := this.GetString("keys") //关键词
+		if id == "" || keys == "" {
 			return -1, nil
 		}
 		id = util.DecodeId(id)
-		data := elastic.GetById(INDEX, TYPE, id)
-		if len(*data) > 0 {
-			res := ForecastInfo{}
-			res.Buyer = qutil.ObjToString((*data)[0]["buyer"])
-			res.Createtime = qutil.Int64All((*data)[0]["yucetime"])
-			// res.Purchasing = (*data)[0]["results"].([]string)
-			res.Title = qutil.ObjToString((*data)[0]["title"])
-			return res, nil
+		data, ok := db.Mgo_Ent.FindById(C_FPContent, id, nil)
+		if ok && data != nil && (*data)["results"] != nil {
+			yucetime := (*data)["yucetime"]
+			(*data)["yucetime"] = qutil.FormatDateWithObj(&yucetime, "2006/01/02")
+			results := qutil.ObjArrToMapArr((*data)["results"].([]interface{}))
+			resultsArr := []map[string]interface{}{}
+			resultsMap := map[string]interface{}{}
+			if len(results) > 0 {
+				for _, rv := range results {
+					if rv["p_projects"] == nil {
+						continue
+					}
+					p_projects := qutil.ObjArrToMapArr(rv["p_projects"].([]interface{}))
+					for _, pv := range p_projects {
+						if pv["p_id"] == nil || pv["p_purchasing"] == nil {
+							continue
+						}
+						pv_key := qutil.ObjToString(pv["p_purchasing"])
+						for _, kv := range strings.Split(keys, "、") {
+							if strings.Contains(pv_key, kv) {
+								if resultsMap[pv["p_id"].(string)] != nil {
+									rmp := qutil.ObjToMap(resultsMap[pv["p_id"].(string)])
+									if qutil.ObjToString((*rmp)["p_purchasing"]) == pv_key {
+										continue
+									}
+									pv_key = qutil.ObjToString((*rmp)["p_purchasing"]) + "、" + pv["p_purchasing"].(string)
+									if pv["p_person"] == nil && (*rmp)["p_purchasing"] != nil {
+										pv["p_person"] = (*rmp)["p_person"]
+									}
+									if pv["p_phone"] == nil && (*rmp)["p_phone"] != nil {
+										pv["p_phone"] = (*rmp)["p_phone"]
+									}
+								}
+								resultsMap[pv["p_id"].(string)] = map[string]interface{}{
+									"p_purchasing": pv_key,
+									"p_phone":      pv["p_phone"],
+									"p_person":     pv["p_person"],
+									"p_id":         util.EncodeId(pv["p_id"].(string)),
+									"p_orther":     pv["p_orther"],
+								}
+							}
+						}
+					}
+				}
+				if resultsMap != nil {
+					for _, rmv := range resultsMap {
+						resultsArr = append(resultsArr, *qutil.ObjToMap(rmv))
+					}
+				}
+			}
+			power := []int{}
+			powerMap := jy.GetBigVipUserBaseMsg(userId, db.Mysql, db.Mgo).PowerMap
+			for k, _ := range powerMap {
+				power = append(power, k)
+			}
+			(*data)["power"] = power
+			(*data)["results"] = []map[string]interface{}{}
+			if len(resultsArr) > 0 {
+				(*data)["results"] = resultsArr
+			}
+			delete(*data, "_id")
+			delete(*data, "infoid")
+			return *data, nil
 		}
 		return 0, nil
 	}()
@@ -58,6 +114,35 @@ func (this *Analysis) ForPContent() {
 	this.ServeJson(NewResult(rData, errMsg))
 }
 
+//预测详情页
+// func (this *Analysis) ForPContent() {
+// 	defer qutil.Catch()
+// 	userId, _ := this.GetSession("userId").(string)
+// 	rData, errMsg := func() (interface{}, error) {
+// 		id := this.GetString("id") //项目预测id
+// 		// keys := this.GetString("keys") //关键词
+// 		if id == "" { //}|| keys == "" {
+// 			return -1, nil
+// 		}
+// 		id = util.DecodeId(id)
+// 		data := elastic.GetById(INDEX, TYPE, id)
+// 		if len(*data) > 0 {
+// 			res := ForecastInfo{}
+// 			res.Buyer = qutil.ObjToString((*data)[0]["buyer"])
+// 			res.Createtime = qutil.Int64All((*data)[0]["yucetime"])
+// 			// res.Purchasing = (*data)[0]["results"].([]string)
+// 			res.Title = qutil.ObjToString((*data)[0]["title"])
+// 			res.Jyhref = qutil.ObjToString((*data)[0]["jyhref"])
+// 			return res, nil
+// 		}
+// 		return 0, nil
+// 	}()
+// 	if errMsg != nil {
+// 		log.Printf("%s   获取此预测项目信息出错-%s", userId, errMsg)
+// 	}
+// 	this.ServeJson(NewResult(rData, errMsg))
+// }
+
 //list
 func (this *Analysis) ForPList() {
 	defer qutil.Catch()
@@ -386,7 +471,7 @@ func GetMemberForecastSql(scd *util.ViewCondition) string {
 	}
 
 	qstr := fmt.Sprintf(query, strings.Join(musts, ","), strings.Join(bools, ","), boolsNum)
-	// log.Println("------qstr", qstr)
+	log.Println("------qstr", qstr)
 	return qstr
 }
 

+ 2 - 2
src/jfw/modules/common/src/qfw/util/jy/switchService.go

@@ -34,11 +34,11 @@ func (s *switchService) Get(session *httpsession.Session, m MongodbSim) string {
 	if ok && u != nil {
 		if i_vip_status := util.IntAll((*u)["i_vip_status"]); v == s.Vip && i_vip_status > 0 {
 			return s.Vip
+		} else if i_member_status := util.IntAll((*u)["i_member_status"]); v == s.Member && i_member_status > 0 {
+			return s.Member
 		} else if i_vip_status > 0 {
 			session.Set(s.SessionKey, s.Vip)
 			return s.Vip
-		} else if i_member_status := util.IntAll((*u)["i_member_status"]); v == s.Member && i_member_status > 0 {
-			return s.Member
 		} else if i_member_status > 0 {
 			session.Set(s.SessionKey, s.Member)
 			return s.Member

+ 2 - 2
src/jfw/modules/publicapply/src/adLeague/service/service.go

@@ -48,12 +48,12 @@ func (this *Ad) AdL(typ string) {
 		}
 		defer res.Body.Close()
 		bs, _ := ioutil.ReadAll(res.Body)
-		//log.Println("返回内容:" + string(bs))
+		// log.Println("返回内容:" + string(bs))
 		if len(bs) > 0 {
 			resMap := map[string]interface{}{}
 			err = json.Unmarshal([]byte(bs), &resMap)
 			if err != nil {
-				log.Println("json.unmarshal err", resMap)
+				log.Println("json.unmarshal err", err, resMap)
 			} else {
 				if qu.IntAll(resMap["Code"]) == 1 {
 					return Result{Data: true}

+ 45 - 50
src/jfw/modules/publicapply/src/subscribe/entity/entity.go

@@ -88,6 +88,7 @@ type UserSubMsg struct {
 	Ppendtime   int64                  `json:"ppend"`       //省份订阅包结束时间
 }
 
+//推送预览总数
 func DataCount(uid, item string, index int) int64 {
 	sql := GetSqlObjFromFreeId(uid, item, index)
 	if item != "" && index >= 0 && (sql.Keyword == nil || len(sql.Keyword) == 0) {
@@ -98,30 +99,20 @@ func DataCount(uid, item string, index int) int64 {
 	return elastic.Count(INDEX, TYPE, qstr)
 }
 
+//match 默认精准 0
 func KeysetDataCount(userId, key, notkey string, matchway int) int64 {
 	key = strings.TrimSpace(key)
 	notkey = strings.TrimSpace(notkey)
 	if key == "" {
 		return 0
 	}
-	// sql := GetSqlObjFromId(userId, "", -1)
 	sql := GetSqlObjFromFreeId(userId, "", -1)
 	viewKeyWords := []ViewKeyWord{}
-	if matchway == 0 {
-		viewKeyWords = append(viewKeyWords, ViewKeyWord{
-			Keyword:  strings.Split(key, " "),
-			Exclude:  strings.Split(notkey, " "),
-			MatchWay: matchway,
-		})
-	} else {
-		for _, v := range strings.Split(key, " ") {
-			viewKeyWords = append(viewKeyWords, ViewKeyWord{
-				Keyword:  []string{v},
-				Exclude:  strings.Split(notkey, " "),
-				MatchWay: matchway,
-			})
-		}
-	}
+	viewKeyWords = append(viewKeyWords, ViewKeyWord{
+		Keyword:  strings.Split(key, " "),
+		Exclude:  strings.Split(notkey, " "),
+		MatchWay: matchway,
+	})
 	sql.Keyword = viewKeyWords
 	qstr := GetVIPViewSql(userId, sql)
 	return elastic.Count(INDEX, TYPE, qstr)
@@ -144,6 +135,7 @@ func SubViewDatas(userId, allquery string, pageNum int) (keys []interface{}, lis
 		keys = append(keys, strings.Join(keys_one, "++"))
 	}
 	qstr := GetVIPViewSql(userId, sql)
+	log.Println("qstr:", qstr)
 	list = elastic.GetAllByNgram(INDEX, TYPE, qstr, findfields, bidSearch_sort, bidSearch_field, (pageNum-1)*view_pageSize, view_pageSize, 0, false)
 	if list != nil {
 		for _, v := range *list {
@@ -219,8 +211,7 @@ func (pi *ParamInfo) GetSubMsg() UserSubMsg {
 	return res
 }
 
-//
-//member_jy
+//免费用户对象
 func GetSqlObjFromFreeId(_id, item string, index int) *ViewCondition {
 	var (
 		query *map[string]interface{}
@@ -237,33 +228,34 @@ func GetSqlObjFromFreeId(_id, item string, index int) *ViewCondition {
 	//关键词组
 	a_items := []interface{}{}
 	a_items = append(a_items, o_jy["a_key"])
-	// fmt.Println(a_items)
 	//采购单位类型
 	a_buyerclass := []interface{}{}
 	//信息类型
-	a_infotype := []interface{}{}
+	a_infotype := []string{}
+	infotypeArr := ""
+	if o_jy["a_infotype"] != nil {
+		a_infotype = qutil.ObjArrToStringArr(o_jy["a_infotype"].([]interface{}))
+		for k, v := range a_infotype {
+			infotype := v
+			infotypeArr += getstype(infotype)
+			if k != len(a_infotype)-1 {
+				infotypeArr += ","
+			}
+		}
+	}
+	if infotypeArr != "" {
+		a_infotype = strings.Split(infotypeArr, ",")
+	}
 	//省份
-	o_area := map[string]interface{}{}
-	//未升级版免费订阅
-	// isUpgrade := true
-	// if o_jy["o_area"] == nil {
-	// 	isUpgrade = false
-	// }
-	// if o_member_jy["a_items"] != nil {
-	// 	a_items = o_member_jy["a_items"].([]interface{})
-	// }
-	// if o_member_jy["a_infotype"] != nil {
-	// 	a_infotype = o_member_jy["a_infotype"].([]interface{})
-	// }
-	// if o_member_jy["o_area"] != nil {
-	// 	o_area = o_member_jy["o_area"].(map[string]interface{})
-	// }
+	o_area := qutil.ObjToMap(o_jy["o_area"])
+	if qutil.IntAllDef(o_jy["i_ppstatus"], 0) == 1 && o_jy["o_area_p"] != nil {
+		o_area = qutil.ObjToMap(o_jy["o_area_p"])
+	}
 	return &ViewCondition{
 		Keyword:    getKeyWordArrFromDbResult(a_items, item, index), //关键词
 		Buyerclass: qutil.ObjArrToStringArr(a_buyerclass),           //采购单位类型
-		Subtype:    qutil.ObjArrToStringArr(a_infotype),             //信息类型
-		Area:       getStringArrFromDbResult(o_area, 1),             //省份
-		City:       getStringArrFromDbResult(o_area, 2),             //城市
+		Subtype:    a_infotype,                                      //信息类型
+		Area:       getStringArrFromDbResult(*o_area, 1),            //省份
 		SelectType: strconv.Itoa(qutil.IntAll(o_jy["i_matchway"])),  //匹配方式
 	}
 }
@@ -276,23 +268,11 @@ func getKeyWordArrFromDbResult(a_items []interface{}, item string, index int) (a
 	for _, v := range a_items {
 		vmr, _ := v.([]interface{})
 		vm, _ := vmr[0].(map[string]interface{})
-		// vm, _ := v.(map[string]interface{})
-		// b, _ := json.Marshal(vm)
-		// fmt.Println("vm", string(b), reflect.TypeOf(vm))
 		if item != "" && index >= 0 && item != qutil.ObjToString(vm["s_item"]) {
 			continue
 		}
-		// b, _ = json.Marshal(a_items)
-		// fmt.Println("a_items", string(b), reflect.TypeOf(a_items))
-		// b, _ = json.Marshal(v)
-		// fmt.Println("v", string(b), reflect.TypeOf(v))
-		// // kwsArr := vm["a_key"]
 		kwsArr := vmr
-		// fmt.Println(kwsArr)
-		// kwsArr, _ := vm.([]interface{})
-		// for i, k := range kwsArr.([]interface{}) {
 		for i, k := range kwsArr {
-			// for i, k := range kwsArr {
 			if item != "" && index >= 0 && i != index {
 				continue
 			}
@@ -383,3 +363,18 @@ func (pi *ParamInfo) UpdateAreaPackTip() bool {
 		},
 	})
 }
+
+//
+func getstype(stype string) string {
+	switch stype {
+	case "招标":
+		stype = "招标,邀标,询价,竞谈,单一,竞价,变更"
+	case "结果":
+		stype = "中标,成交,废标,流标,结果变更"
+	case "其它":
+		stype = "合同,验收,违规"
+	case "预告":
+		stype = "预告,需求公示,预审,论证意见,预审结果"
+	}
+	return stype
+}

+ 0 - 4
src/jfw/modules/publicapply/src/subscribe/service/service.go

@@ -42,7 +42,6 @@ func (this *ServiceStruct) GetPushView() {
 	userId, _ := this.GetSession("userId").(string)
 	if userId != "" {
 		pageNum, _ := this.GetInteger("pageNum")
-		// keys, list, hasNextPage := util.SubViewDatas(userId, "", pageNum)
 		keys, list, hasNextPage := entity.SubViewDatas(userId, "", pageNum)
 		this.ServeJson(map[string]interface{}{
 			"keys":        strings.Replace(strings.Trim(fmt.Sprint(keys), "[]"), " ", ",", -1),
@@ -54,14 +53,11 @@ func (this *ServiceStruct) GetPushView() {
 
 //
 func (this *ServiceStruct) GetPushCount() {
-	// fmt.Println(1)
 	defer qu.Catch()
 	userId, _ := this.GetSession("userId").(string)
-	// fmt.Println(userId)
 	if userId != "" {
 		index, _ := this.GetInteger("index")
 		this.ServeJson(map[string]interface{}{
-			// "count": util.SubViewDatasCount(userId, this.GetString("item"), index),
 			"count": entity.DataCount(userId, this.GetString("item"), index),
 		})
 	}

+ 3 - 1
src/jfw/modules/publicapply/src/subscribePush/entity/setting.go

@@ -75,8 +75,10 @@ func freeSet(area map[string]interface{}, industry []string, userId string) *Fun
 		// log.Println(areacount, "---", ppnum)
 		// log.Println(jy.BaseAreaNum, "---", fpnum)
 		if ppb {
-			if areacount > ppnum {
+			if areacount+jy.BaseAreaNum > ppnum {
 				redis.Put(jy.PowerCacheDb, fmt.Sprintf(jy.UserUpdateAreaKey, userId, ym), ppnum+1, 31*24*60*60)
+			} else {
+				log.Println(fmt.Sprintf("免费用户购买省份订阅包设置地区 扣除次数异常  userId:%s", userId))
 			}
 		} else if jy.BaseAreaNum > fpnum {
 			redis.Put(jy.PowerCacheDb, fmt.Sprintf(jy.UserUpdateAreaKey, userId, year), fpnum+1, 365*24*60*60)

+ 114 - 1
src/jfw/modules/publicapply/src/subscribePush/entity/vrew.go

@@ -48,7 +48,13 @@ func KeysetViewDatasCount(userId, vType, key, notkey string, matchway int) int64
 	if key == "" {
 		return 0
 	}
-	sql := GetSqlObjFromId(userId, vType, "", -1)
+	sql := &ViewCondition{}
+	if vType == "" {
+		sql = GetSqlObjFromFreeId(userId, "", -1)
+	} else {
+		sql = GetSqlObjFromId(userId, vType, "", -1)
+	}
+
 	viewKeyWords := []ViewKeyWord{}
 	if matchway == 0 {
 		viewKeyWords = append(viewKeyWords, ViewKeyWord{
@@ -297,3 +303,110 @@ func getKeyWordArrFromDbResult(a_items []interface{}, item string, index int) (a
 	}
 	return
 }
+
+//免费用户对象
+func GetSqlObjFromFreeId(_id, item string, index int) *ViewCondition {
+	var (
+		query *map[string]interface{}
+		ok    bool
+	)
+	if query, ok = db.Mgo.FindById("user", _id, `{"o_jy":1}`); !ok && (*query)["o_jy"] == nil {
+		return nil
+	}
+	o_jy, _ := (*query)["o_jy"].(map[string]interface{})
+
+	if o_jy["a_key"] == nil {
+		return nil
+	}
+	//关键词组
+	a_items := []interface{}{}
+	a_items = append(a_items, o_jy["a_key"])
+	//采购单位类型
+	a_buyerclass := []interface{}{}
+	//信息类型
+	a_infotype := []string{}
+	infotypeArr := ""
+	if o_jy["a_infotype"] != nil {
+		a_infotype = qutil.ObjArrToStringArr(o_jy["a_infotype"].([]interface{}))
+		for k, v := range a_infotype {
+			infotype := v
+			infotypeArr += getstype(infotype)
+			if k != len(a_infotype)-1 {
+				infotypeArr += ","
+			}
+		}
+	}
+	if infotypeArr != "" {
+		a_infotype = strings.Split(infotypeArr, ",")
+	}
+	//省份
+	o_area := qutil.ObjToMap(o_jy["o_area"])
+	if qutil.IntAllDef(o_jy["i_ppstatus"], 0) == 1 && o_jy["o_area_p"] != nil {
+		o_area = qutil.ObjToMap(o_jy["o_area_p"])
+	}
+	return &ViewCondition{
+		Keyword:    getKeyWordArrFromDbResultByFree(a_items, item, index), //关键词
+		Buyerclass: qutil.ObjArrToStringArr(a_buyerclass),                 //采购单位类型
+		Subtype:    a_infotype,                                            //信息类型
+		Area:       getStringArrFromDbResult(*o_area, 1),                  //省份
+		SelectType: strconv.Itoa(qutil.IntAll(o_jy["i_matchway"])),        //匹配方式
+	}
+}
+
+//
+func getstype(stype string) string {
+	switch stype {
+	case "招标":
+		stype = "招标,邀标,询价,竞谈,单一,竞价,变更"
+	case "结果":
+		stype = "中标,成交,废标,流标,结果变更"
+	case "其它":
+		stype = "合同,验收,违规"
+	case "预告":
+		stype = "预告,需求公示,预审,论证意见,预审结果"
+	}
+	return stype
+}
+
+// //关键词 附加词 排除词  省份订阅包
+func getKeyWordArrFromDbResultByFree(a_items []interface{}, item string, index int) (arr []ViewKeyWord) {
+	if a_items == nil {
+		return
+	}
+	for _, v := range a_items {
+		vmr, _ := v.([]interface{})
+		vm, _ := vmr[0].(map[string]interface{})
+		if item != "" && index >= 0 && item != qutil.ObjToString(vm["s_item"]) {
+			continue
+		}
+		kwsArr := vmr
+		for i, k := range kwsArr {
+			if item != "" && index >= 0 && i != index {
+				continue
+			}
+			kw := ViewKeyWord{}
+			b, e := json.Marshal(k)
+			if e != nil {
+				log.Println(e.Error())
+			}
+			json.Unmarshal(b, &kw)
+			if kw.MatchWay == 1 {
+				for _, kk := range kw.Keyword {
+					arr = append(arr, ViewKeyWord{
+						Keyword: []string{kk},
+						Exclude: kw.Exclude,
+					})
+				}
+				for _, kk := range kw.Appended {
+					arr = append(arr, ViewKeyWord{
+						Keyword: []string{kk},
+						Exclude: kw.Exclude,
+					})
+				}
+			} else {
+				arr = append(arr, kw)
+			}
+		}
+	}
+	return
+}

+ 2 - 2
src/web/staticres/common-module/big-member/js/high_set.js

@@ -27,7 +27,7 @@ var buyerMatchTypeList = [
   }
 ]
 var matchTypeList = []
-if (utils.getParam('header').indexOf('采购单位') > -1) {
+if (utils.getParam('entName')) {
   matchTypeList = buyerMatchTypeList
 } else {
   matchTypeList = winnerMatchTypeList
@@ -368,7 +368,7 @@ var highSet = new Vue({
     },
     onKeywords: function (val) {
       // 过滤首个空格
-      this.conf.keywords = val.replace(/^\s\s*/,'')
+      this.conf.keywords = val.replace(/^\s\s*/,'').replace(/(\r\n)|(\n)/g, '')
     },
     onCancel: function (data) {
       if (!data) {

+ 7 - 9
src/web/staticres/common-module/collection/js/ent_portrait.js

@@ -393,7 +393,7 @@ var vNode = {
               }
             }
           } else {
-            _this.loading.clear()
+            _this.$toast(res.error_msg)
             _this.show.yearData = false
             _this.show.monthData = false
             _this.show.areaData = false
@@ -403,7 +403,7 @@ var vNode = {
           }
         },
         error: function (error) {
-          // _this.$toast('请求失败')
+          _this.loading.clear()
         }
       })
     },
@@ -450,7 +450,6 @@ var vNode = {
     // 获取项目动态
     getProjectNews: function () {
       var storageSet = JSON.parse(sessionStorage.getItem('winner_high_set'))
-      // if (!storageSet) return
       var _this = this
       var data = {
         entId: _this.entInfo.id,
@@ -479,13 +478,12 @@ var vNode = {
               _this.topProject.list = res.data.list
             }
           } else {
-            // _this.$toast(res.error_msg)
-            _this.loading.clear()
+            _this.$toast(res.error_msg)
             _this.show.dt = false
           }
         },
         error: function (error) {
-          // _this.$toast('请求失败')
+          _this.loading.clear()
         }
       })
     },
@@ -522,11 +520,11 @@ var vNode = {
             }
           } else {
             // 不显示提示信息
-            // _this.$toast(res.error_msg)
+            _this.$toast(res.error_msg)
           }
         },
         error: function (error) {
-          console.log(error)
+          _this.loading.clear()
         }
       })
     },
@@ -641,7 +639,7 @@ var vNode = {
           }
         },
         error: function (error) {
-          console.log(error)
+          _this.loading.clear()
         }
       })
     },

+ 1 - 0
src/web/staticres/common-module/collection/js/history-project.js

@@ -97,6 +97,7 @@ var hisproComponent = {
         type: "POST",
         url: item.url,
         data:item.datas,
+        timeout: 6000,
         success: function(res) {
           if(res.error_code == 0) {
             loading.clear()

+ 41 - 43
src/web/staticres/common-module/vipsubscribe/js/vip-subscribe-set-template.js

@@ -20,7 +20,7 @@ var subScribeTemplate = `
     </div>
     </li>
     <li class="body-item industry">
-    <a class="item-container" :href="linkobj.industry" @click="userNoIndustry">
+    <a class="item-container" :href="linkobj.industry" @click="userNoIndustry($event)">
       <div class="item">
         <span class="item-l">
           <span class="leading jy-icon-industry"></span>
@@ -63,7 +63,7 @@ var subScribeTemplate = `
     </a>
     </li>
     <li class="body-item info-type">
-    <a class="item-container" href="javascript:;" :thisHref="linkobj.infotype" @click="openInfoType">
+    <a class="item-container" :href="linkobj.infotype" @click="openInfoType($event)">
       <div class="item">
         <span class="item-l">
           <span class="leading jy-icon-info-type"></span>
@@ -113,7 +113,7 @@ var subScribeTemplate = `
       </a>
     </li>
     <li class="body-item push-set" v-if="pushsetShow">
-      <a class="item-container" :href="linkobj.pushLink || linkobj.pushsetting">
+      <a class="item-container" :href="linkobj.pushsetting">
         <div class="item">
           <span class="item-l">
             <span class="leading_ jy-icon-push-set"></span>
@@ -247,7 +247,7 @@ var subComponent = {
       // 匹配方式
       active: 1,
       pushsetShow: true,
-      resultTime: '(近3个月内共条信息)',
+      resultTime: '',
       checkedflag: false,
       littleShow: false,
       accStatus: 0,
@@ -259,7 +259,6 @@ var subComponent = {
       conf: {}, // 信息类型数据
       noAreaFreeType: false, // 免费用户未设置地区时显示弹窗
       backTipShowCount: 0, // 离开页面展示弹窗次数
-      thisvSwitch: 'f',
       UserSubscribe: {}, // 免费用户数据
     }
   },
@@ -286,11 +285,11 @@ var subComponent = {
         }
       }
     },
-    vSwitch: function (val) {
-      if (val === 'f') {
-        this.getUserSubscribe()
-      }
-    }
+    // vSwitch: function (val) {
+    //   if (val === 'f') {
+    //     this.getUserSubscribe()
+    //   }
+    // }
   },
   methods: {
     getData: function() {
@@ -446,12 +445,7 @@ var subComponent = {
       if (this.vSwitch === 'f') {
         $('.switch').removeClass('checked')
         this.checkedflag = false
-        if (location.href.indexOf('front') !== -1) {
-          var href = '/front/vipsubscribe/introducePage'
-        } else {
-          var href = '/jyapp/vipsubscribe/introducePage'
-        }
-        location.href = href
+        this.toBuyVipSub()
       } else {
         // switch点击切换
         if (!this.checkedflag) {
@@ -515,7 +509,7 @@ var subComponent = {
       $('.match-keywords-actionsheet').hide()
       $iosMask.fadeOut(200);
       // 免费用户
-      if (this.thisvSwitch === 'f') {
+      if (this.vSwitch === 'f') {
         return
       }
       // 超级订阅升级提示
@@ -551,12 +545,7 @@ var subComponent = {
       let vswitch = 'v'
       var href = ''
       if (index === 2 && this.vSwitch === 'f') {
-        if (location.href.indexOf('front') !== -1) {
-          href = '/front/vipsubscribe/introducePage'
-        } else {
-          href = '/jyapp/vipsubscribe/introducePage'
-        }
-        location.href = href
+        this.toBuyVipSub()
       } else {
 
         if (this.vSwitch === 'f') {
@@ -637,23 +626,21 @@ var subComponent = {
           }]
       });
     },
-    // 用户未购买修改采购单位类型功能
     userNoIndustry: function () {
-      if (this.vSwitch !== 'f') {
-        var href = '/jyapp/vipsubscribe/toChangeIndustry?header=save'
-      } else {
+      if (this.vSwitch === 'f') {
         if (location.href.indexOf('front') !== -1) {
-          var href = '/front/vipsubscribe/introducePage'
+          var href = '/front/vipsubscribe/vipsubscribe_new'
         } else {
-          var href = '/jyapp/vipsubscribe/introducePage'
+          var href = '/jyapp/vipsubscribe/vipsubscribe_new'
         }
+        this.linkobj.industry = href
       }
-      this.linkobj.industry = href
     },
     // 修改地区无次数点击事件
     userNumOver: function () {
       var _this = this
       if (this.vSwitch === 'f' && this.userAreaNum === 0) {
+        // 免费用户修改href跳转
         this.linkobj.area = 'javascript:;'
         if (this.userAreaAllNum > 0) {
           var str = `对不起,您当月修改区域的机会(${this.userAreaAllNum}次)已消耗完毕,无法再次修改~可前往升级省份订阅包增加订阅省份和修改次数`
@@ -686,8 +673,7 @@ var subComponent = {
               }
             }]
         });
-      }
-      else {
+      } else {
         // this.linkobj.area = '/jyapp/big/page/set_area?callback=setting_save'
         if (this.vSwitch === 'f') {
           if (location.href.indexOf('front') !== -1) {
@@ -700,7 +686,7 @@ var subComponent = {
     },
     // 修改地区剩余次数问号点击事件
     amendmentNumNotice: function () {
-      if (this.userAreaAllNum > 0) {
+      if (this.userAreaAllNum > 0 || this.userAreaAllNum == -1) {
         var str = '每月可修改次数=可订阅省份数量,即每增加购买1个省份,可增加1次修改机会,次月清零重新计算,购买全国不限制每月修改次数。'
       } else {
         var str = '免费用户每年享有 1 次修改区域的机会'
@@ -714,16 +700,10 @@ var subComponent = {
       });
     },
     // 打开信息类型
-    openInfoType: function () {
+    openInfoType: function (e) {
       if (this.vSwitch === 'f') {
+        e.preventDefault()
         this.infoTypeMenu = true
-      } else {
-        if (location.href.indexOf('front') !== -1) {
-          location.href = '/front/vipsubscribe/toSetInfoTypePage'
-        } else {
-          location.href = '/jyapp/vipsubscribe/toSetInfoTypePage'
-        }
-
       }
     },
     // 重置信息类型
@@ -784,12 +764,15 @@ var subComponent = {
       }
     },
     // 获取用户权限
-    getUserSubscribe: function () {
+    getUserSubscribe: function (callback) {
       let _this = this
       $.ajax({
         url: '/publicapply/free/subscribe',
         type: 'POST',
         success: function (res) {
+          if (typeof callback === 'function') {
+            callback(res)
+          }
           _this.UserSubscribe = res
           if (res.data) {
             _this.info.area = res.data.area
@@ -798,12 +781,19 @@ var subComponent = {
             _this.userAreaAllNum = res.data.provincenum
             _this.initdata.infotype = res.data.infotype || []
             _this.infoTypeData = res.data.infotype || []
+            // 关键词长度
+            if(res.data.keys) {
+              $('.body-item.keywords .keywords-text').text('已设置' +res.data.keys.length+ '组关键词')
+            } else {
+              $('.body-item.keywords .keywords-text').text('请设置关键词')
+            }
 
             _this.info.infoType = _this.infoTypeData.length === 0 ? '全部类型' : _this.infoTypeData.join('、')
             let areaArr = []
             if (!res.data.area) {
-                _this.noAreaFreeType = true
+                // _this.noAreaFreeType = false
                 _this.info.area = '请选择区域'
+                _this.addBackTip()
             } else {
                 for (const key in res.data.area) {
                     areaArr.push(key)
@@ -886,6 +876,14 @@ var subComponent = {
         }
       })
     },
+    toBuyVipSub: function () {
+      if (location.href.indexOf('front') !== -1) {
+        var href = '/front/vipsubscribe/vipsubscribe_new'
+      } else {
+        var href = '/jyapp/vipsubscribe/vipsubscribe_new'
+      }
+      location.href = href
+    },
     // 解决ios返回不刷新页面的问题
     iosBackRefresh: function () {
       var isPageHide = false;

+ 9 - 4
src/web/staticres/js/wxSupersearch.js

@@ -429,8 +429,9 @@ var SuperSearch = {
       // --> 已设置10组关键词,订阅失败提示
       // --> 小于10组
       //    --> 历史老用户-未选择区域-提示更新
-      //           --> -选择区域-关键词列表
-      //    --> 新用户-未选择区域-关键词列表
+      //           --> 选择区域-关键词列表
+      //    --> 新用户-未选择区域-订阅页面
+      //           --> 选择区域-关键词列表
 
       var isOldUser = false
       var nowKeyLength = 8
@@ -488,7 +489,7 @@ var SuperSearch = {
           window.location.href = "/front/vipsubscribe/toSetKeyWordPage";
         }
       }else{
-      // 免费用户
+          // 免费用户
           isOldUser = !jyAddInfo.isUpgrade
           if (nowKeyLength >= 10) {
             return EasyAlert.show("您已经超过订阅<br>关键字上限");
@@ -517,7 +518,11 @@ var SuperSearch = {
         });
         if(rFlag){
             SuperSearch.setSessionStorage();
-            window.location.href = "/front/vipsubscribe/toSetKeyWordPage";
+            var goHref = "/front/vipsubscribe/toSetKeyWordPage";
+            if (!isSelectArea) {
+              goHref = "/front/vipsubscribe/toSubVipSetPage";
+            }
+            window.location.href = goHref
         }
       }
     });

+ 3 - 0
src/web/staticres/vipsubscribe/css/subscribe_list.css

@@ -50,6 +50,9 @@
 .jymobile-setting-dialog {
   font-size: .32rem;
 }
+.jymobile-setting-dialog .weui-dialog {
+  background: #fff;
+}
 
 .jymobile-setting-dialog .weui-dialog__hd {
   padding: 0;

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

@@ -170,7 +170,7 @@ var vm = new Vue({
               _this.conf.keywordMax = 10
               _this.userData = res.data
               // 关键词赋值
-              if (res.data && res.data.keys) {
+              if (res.data) {
                 try {
                   var a_key = res.data.keys || []
                   kList = [

+ 26 - 22
src/web/staticres/vipsubscribe/js/vip_index_new.js

@@ -11,10 +11,9 @@ var subNode = new Vue({
                 industry: '/front/vipsubscribe/toChangeIndustry?header=save',
                 keyword: '/front/vipsubscribe/toSetKeyWordPage',
                 infotype: '/front/vipsubscribe/toSetInfoTypePage',
-                resultview: '/front/vipsubscribe/toVIPViewPage',
+                resultview: '/front/vipsubscribe/toVIPViewPage?vSwitch=v',
                 pushsetting: '/front/setting/push_detail?header=超级订阅推送设置&type=super_subscribe',
                 freepush: '/front/setting/push_detail?header=订阅&type=free_subscribe',
-                pushLink: ''
             },
             initData: {},
             userAreaNum: 1, // 用户修改地区剩余次数
@@ -26,21 +25,15 @@ var subNode = new Vue({
         }
     },
     created () {
-        this.getUserSubscribe()
-        this.getUserType()
+
     },
     mounted () {
+        this.getUserType()
         this.$nextTick(function () {
             $(".app-layout-content-b").removeAttr('v-cloak')
         })
     },
     methods: {
-        getPushLink: function () {
-            if (this.vSwitch === 'f') {
-                return this.linkObj.freepush
-            }
-            return this.linkObj.pushsetting
-        },
         superOrderTemplateMounted () {
             $('#pushResultPreview').attr('data-cl-event', 'c_wx_preview_buttonclick')
         },
@@ -55,17 +48,26 @@ var subNode = new Vue({
         // 得到用户是否购买省份包
         getUserSubscribe: function () {
             let _this = this
+            _this.$refs.subComponent.getUserSubscribe(function (res) {
+                    if (res && res.data) {
+                        _this.freeUserArea = res.data.area
+                        _this.userType = res.data.provincenum === 0 ? false : true
+                        _this.userAreaAllNum = res.data.provincenum === -1 ? '全国' : res.data.provincenum
+                        _this.subscribeTime = new Date(res.data.ppstart * 1000).pattern('yyyy年MM月dd日') + "-" + new Date(res.data.ppend * 1000).pattern('yyyy年MM月dd日')
+                        _this.initdata = res.data
+                        _this.linkObj.pushsetting = _this.linkObj.freepush
+
+                    }
+            })
+
+
             $.ajax({
-                url: '/publicapply/free/subscribe',
+                url: '/publicapply/free/pushcount',
                 type: 'POST',
                 success: function (res) {
-                    _this.freeUserArea = res.data.area
-                    _this.userAreaNum = res.data.areanum
-                    _this.userType = res.data.provincenum === 0 ? false : true
-                    _this.userAreaAllNum = res.data.provincenum === -1 ? '全国' : res.data.provincenum
-                    // _this.$emit('UserSubscribe',res)
-                    _this.subscribeTime = new Date(res.data.ppstart * 1000).pattern('yyyy年MM月dd日') + "-" + new Date(res.data.ppend * 1000).pattern('yyyy年MM月dd日')
-                    _this.initdata = res.data
+                    if (res && res.count) {
+                        _this.$refs.subComponent.$data.resultTime = '(近3个月内共' + res.count + '条信息)'
+                    }
                 }
             })
         },
@@ -86,17 +88,19 @@ var subNode = new Vue({
                 success: function(res) {
                     if (res.data.vt !== 'v' ) {
                         _this.vSwitch = 'f'
-                        _this.linkObj.pushLink = _this.getPushLink()
+                        _this.linkObj.pushsetting = _this.linkObj.freepush
+                        _this.linkObj.resultview = '/front/vipsubscribe/toVIPViewPage?vSwitch=f',
                         document.title = '订阅管理-免费订阅'
                         $('.update_renew').hide()
                         $('.super-title').text('订阅管理-免费订阅');
                         $('.super-title').css('background', 'none')
+                        _this.getUserSubscribe()
                     } else {
                         _this.vSwitch = 'v'
-                        _this.linkObj.pushLink = _this.getPushLink()
                         document.title = '订阅管理-超级订阅'
                         $('.update_renew').show()
                         $('.super-title').show();
+                        window.getDataWitXHR()
                     }
                 }
             })
@@ -353,7 +357,7 @@ $(function () {
         $(".list-content").html(returnHtml);
     }
 
-    function getDataWitXHR() {
+    window.getDataWitXHR = function () {
         $DoPost('/subscribepay/vipsubscribe/getSubBuyMsg', {}, function (res) {
             if (!res.success) return;
             if(!res.data.industry) {
@@ -1028,7 +1032,7 @@ $(function () {
     // } else {
 
     // }
-    getDataWitXHR()
+    // getDataWitXHR()
     //返回提示使用
     function pushHistory() {
         var state = {

+ 1 - 1
src/web/templates/areaPack/wx/page_set_area.html

@@ -122,7 +122,7 @@
                 <div class="string"></div>
                 <div class="selectNumList">
                     <span>已选择<span class="numColor" id="thisSelect">${ selectedAreaText }</span></span>
-                    <span class="moreTips" v-show="moreThanSubCount">超出可订阅省份数量,前往${ buyType }省份订阅包 &gt;</span>
+                    <span class="moreTips" v-show="moreThanSubCount" @click="toPay">超出可订阅省份数量,前往${ buyType }省份订阅包 &gt;</span>
                 </div>
                 <div class="selectChange"></div>
             </div>

+ 34 - 29
src/web/templates/weixin/commonPay/paySuccess.html

@@ -111,35 +111,7 @@
                 }
                 $('.info-box .info-item').text('数据流量包:+' + allTotal)
             } else if (productType === 'areaPack') {
-                // https://showdoc.jydev.jianyu360.com/web/#/67?page_id=891
-                // {
-                //     num: 0, // 购买的数量 -1全国
-                //     ordertype: 1, // 1正常购买 2升级 3续费
-                //     cycleunit: 0, // 日期单位 1月 2季 3年
-                //     OldNum: 0, // 升级前购买的省份数量
-                // }
-                var titleMap = {
-                    1: '购买',
-                    2: '升级',
-                    3: '续费'
-                }
-                setHeaderTitle(titleMap[orderFilter.ordertype] + $('.header-title').text())
-                var cycleType = ' 个月'
-                if (orderFilter.cycleunit == 2) {
-                    cycleType = ' 季'
-                } else if (orderFilter.cycleunit == 3) {
-                    cycleType = ' 年'
-                }
-
-                var html = `${titleMap[orderFilter.ordertype]}省份数量:<span class="highlight-text">${orderFilter.num === -1 ? '全国' : orderFilter.num}</span>${orderFilter.num === -1 ? '' : ' 个省'}`
-                html += `&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;`
-                html += `订阅周期:`
-                if (orderFilter.ordertype == 2) {
-                    html += `不延期`
-                } else {
-                    html += `<span class="highlight-text">1</span>${ cycleType }`
-                }
-                $('.info-box .info-item').html(html)
+                setAreaPackInfo(orderFilter)
             }
         }
 
@@ -165,6 +137,39 @@
         }
     })
 
+    function setAreaPackInfo (orderFilter) {
+        // https://showdoc.jydev.jianyu360.com/web/#/67?page_id=891
+        // {
+        //     num: 0, // 购买的数量 -1全国
+        //     ordertype: 1, // 1正常购买 2升级 3续费
+        //     cycleunit: 0, // 日期单位 1月 2季 3年
+        //     OldNum: 0, // 升级前购买的省份数量
+        // }
+        var titleMap = {
+            1: '购买',
+            2: '升级',
+            3: '续费'
+        }
+        setHeaderTitle(titleMap[orderFilter.ordertype] + $('.header-title').text())
+        var cycleType = ' 个月'
+        if (orderFilter.cycleunit == 2) {
+            cycleType = ' 季'
+        } else if (orderFilter.cycleunit == 3) {
+            cycleType = ' 年'
+        }
+
+        var buyText = orderFilter.num === -1 ? '全国' : (orderFilter.num - (orderFilter.OldNum || 0))
+        var html = `${titleMap[orderFilter.ordertype]}省份数量:<span class="highlight-text">${buyText}</span>${orderFilter.num === -1 ? '' : ' 个省'}`
+        html += `&nbsp;&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;`
+        html += `订阅周期:`
+        if (orderFilter.ordertype == 2) {
+            html += `不延期`
+        } else {
+            html += `<span class="highlight-text">1</span>${ cycleType }`
+        }
+        $('.info-box .info-item').html(html)
+    }
+
     function setHeaderTitle (title) {
         if (!title) return
         document.title = title

+ 19 - 5
src/web/templates/weixin/historypush.html

@@ -821,12 +821,12 @@
     <div class="listcontent">
         <div id="list"></div>
     </div>
-    
+
     <!-- 底部导航 -->
     {{include "/weixin/tabbar.html"}}
 
     <span class="empty findnull-no-key">
-        <div><img class="empty-img" src="{{Msg "seo" "cdn"}}/common-module/public/image/jy-smile.png"></div>
+        <div><img class="empty-img" src="{{Msg "seo" "cdn"}}/common-module/public/image/jy-smile.png?{{Msg "seo" "version"}}"></div>
         <div class="empty-text">订阅关键词,接收最新招投标信息</div>
         <div class="button-box" id="toKeySet" data-need-bind-phone>
             <span class="j-icon icon-chahao"></span>
@@ -838,7 +838,7 @@
         <span class="empty-text">近期没有你想要的信息,再等等吧!<br>你也可以进入设置页面、调整一下关键词再回来看看。</span>
     </span>
     <span class="empty findnull_">
-        <div><img class="empty-img" src="{{Msg "seo" "cdn"}}/common-module/public/image/jy-sleep.png"></div>
+        <div><img class="empty-img" src="{{Msg "seo" "cdn"}}/common-module/public/image/jy-sleep.png?v={{Msg "seo" "version"}}"></div>
         <span class="empty-text">暂时无历史推送记录<br></span>
     </span>
     <!-- 推送消息--设置关键词 -->
@@ -997,7 +997,7 @@
             url: '/publicapply/free/areapack/update',
             type: 'POST',
             success: function (res) {
-                
+
             }
         })
     }
@@ -1022,7 +1022,18 @@
             url: '/bigmember/use/isAdd',
             type: 'POST',
             success: function (res) {
-                userNewType = res.data.isUpgrade
+                if (res && res.data) {
+                    userNewType = res.data.isUpgrade
+                    if (res.data.vipStatus > 0) {
+                        $.ajax({
+                            url: '/publicapply/subscribe/vipSwitch',
+                            type: 'POST',
+                            data: {
+                                vt: 'v',
+                            }
+                        })
+                    }
+                }
             }
         })
     }
@@ -1318,6 +1329,9 @@
                   $('.filter_tab').hide()
                   $('._header').css({ border: 'none' })
                   $('.findnull-no-key').show().siblings('.empty').hide()
+                  // 临时处理关键词添加隐藏
+                  $('.wx_header_right').css({ visibility: 'unset' })
+                  $('#toKeySet').hide()
                   return
               } else {
                   $('.wx_header_right').css({ visibility: 'unset' })

+ 1 - 1
src/web/templates/weixin/vipsubscribe/vip_index_new.html

@@ -187,7 +187,7 @@
             </li>
           </ul>
         </li>
-        <sub-component :linkobj="linkObj" :initdata="initData" @mounted="superOrderTemplateMounted" :v-switch="vSwitch"></sub-component>
+        <sub-component ref="subComponent" :linkobj="linkObj" :initdata="initData" @mounted="superOrderTemplateMounted" :v-switch="vSwitch"></sub-component>
         <div class="provincePayWarp" v-show="userType">
             <span class="provincePayTips">省份订阅包</span>
             <div class="provincePay">

+ 4 - 4
src/web/templates/weixin/vipsubscribe/vip_introduce.html

@@ -13,8 +13,8 @@
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" type="text/css" href="/css/wxbutton.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/vip_introduce.css?v={{Msg "seo" "version"}}1">
-    <link rel="stylesheet" type="text/css" href="/css/land-page-coupon.css?v={{Msg "seo" "version"}}1"> 
+    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/vip_introduce.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" type="text/css" href="/css/land-page-coupon.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}"/>
     <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/common-module/vipsubscribe/css/vip-subscribe-set-template.css?v={{Msg "seo" "version"}}' />
 </head>
@@ -208,7 +208,7 @@
                         industry: '/front/vipsubscribe/toChangeIndustry?header=save&subvip=free',
                         keyword: '/front/vipsubscribe/toSetKeyWordPage',
                         infotype: '/front/vipsubscribe/toSetInfoTypePage',
-                        resultview: '/front/vipsubscribe/toVIPViewPage',
+                        resultview: '/front/vipsubscribe/toVIPViewPage?vSwitch=v',
                         pushsetting: '/front/vipsubscribe/toSetPushSetPage'
                     },
                     initData: {},
@@ -298,7 +298,7 @@
           var max = res.list.sort(function(a,b){
               return b.reduce - a.reduce;
           })[0];
-          console.log(max.reduce) 
+          console.log(max.reduce)
           $('.coupon-num').html(max.reduce)
         } else {
           $('.coupon-tips').hide()

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

@@ -127,9 +127,13 @@
 			var reqParam = {
 				"pageNum": pageNum++
 			};
+			var tempURL = '/publicapply/free/pushview'
+			if (getParam('vSwitch') == 'v') {
+				tempURL = '/subscribepay/afterPay/getPushView'
+			}
 			$.ajax({
 				type: 'post',
-				url: '/subscribepay/afterPay/getPushView',
+				url: tempURL,
 				data: reqParam,
 				dataType: 'json',
 				success: function(data){
@@ -166,9 +170,13 @@
 						var reqParam = {
 							"pageNum": pageNum++
 						};
+						var tempURL = '/publicapply/free/pushview'
+						if (getParam('vSwitch') == 'v') {
+							tempURL = '/subscribepay/afterPay/getPushView'
+						}
 						$.ajax({
 							type: 'post',
-							url: '/subscribepay/afterPay/getPushView',
+							url: tempURL,
 							data: reqParam,
 							dataType: 'json',
 							success: function(data){
@@ -484,7 +492,7 @@
 		</div>
 		<span style="color:#1d1d1d;font-size:16px;">没有找到和你订阅设置内容有关的信息<br/></span>
 		<div id="back" class="text-center">
-			返回修改超级订阅设置
+			返回修改订阅设置
 		</div>
 	</span>
 	{{include "/common/baiducc.html"}}