浏览代码

分支合并

luwenna 4 年之前
父节点
当前提交
33592dc16f
共有 59 个文件被更改,包括 816 次插入499 次删除
  1. 15 4
      src/jfw/front/entsearch.go
  2. 8 0
      src/jfw/front/front.go
  3. 1 1
      src/jfw/modules/app/src/seo.json
  4. 0 1
      src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js
  5. 3 1
      src/jfw/modules/app/src/web/staticres/jyapp/css/searchindex.css
  6. 3 1
      src/jfw/modules/app/src/web/staticres/jyapp/css/wxsearch.css
  7. 2 0
      src/jfw/modules/app/src/web/staticres/jyapp/followent/css/follow.css
  8. 10 3
      src/jfw/modules/app/src/web/staticres/jyapp/js/historypush.js
  9. 83 70
      src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js
  10. 1 1
      src/jfw/modules/app/src/web/staticres/jyapp/js/wxSupersearch.js
  11. 7 2
      src/jfw/modules/app/src/web/templates/big-member/page_ent_portrait.html
  12. 16 6
      src/jfw/modules/app/src/web/templates/frontRouter/collection/sess/index.html
  13. 2 2
      src/jfw/modules/app/src/web/templates/vipsubscribe/commonRules.html
  14. 1 1
      src/jfw/modules/app/src/web/templates/vipsubscribe/vip_renew.html
  15. 62 40
      src/jfw/modules/app/src/web/templates/weixin/historypush.html
  16. 2 2
      src/jfw/modules/app/src/web/templates/weixin/search/tabSearch.html
  17. 1 1
      src/jfw/modules/app/src/web/templates/weixin/wxinfocontent.html
  18. 2 3
      src/jfw/modules/bigmember/src/entity/portraitBuyerSearch.go
  19. 2 1
      src/jfw/modules/common/src/qfw/util/dataexport/dataExportRecord.go
  20. 4 2
      src/jfw/modules/common/src/qfw/util/dataexport/dataexport.go
  21. 4 4
      src/jfw/modules/publicapply/src/enterpriseSearch/entity/entQuery.go
  22. 1 1
      src/jfw/modules/subscribepay/src/service/dataExportPay.go
  23. 2 2
      src/jfw/modules/subscribepay/src/timetask/dataExportMail.go
  24. 2 2
      src/jfw/modules/subscribepay/src/util/dataExportExcel.go
  25. 1 1
      src/jfw/modules/weixin/src/config.json
  26. 1 1
      src/jfw/public/dataexport.go
  27. 1 1
      src/seo.json
  28. 6 2
      src/web/staticres/common-module/collection/css/index.css
  29. 47 44
      src/web/staticres/common-module/collection/js/cate-mobile.js
  30. 19 9
      src/web/staticres/common-module/collection/js/date-mobile.js
  31. 0 1
      src/web/staticres/common-module/collection/js/ent_portrait.js
  32. 35 8
      src/web/staticres/common-module/collection/js/index-wx.js
  33. 36 8
      src/web/staticres/common-module/collection/js/index.js
  34. 47 44
      src/web/staticres/common-module/collection/js/industry-mobile.js
  35. 103 100
      src/web/staticres/common-module/collection/js/keyword-mobile.js
  36. 6 2
      src/web/staticres/common-module/collection/js/money-mobile.js
  37. 46 44
      src/web/staticres/common-module/collection/js/notice-mobile.js
  38. 2 0
      src/web/staticres/common-module/collection/js/tags-mobile.js
  39. 12 0
      src/web/staticres/common-module/ent-search/ent-search-template.js
  40. 46 0
      src/web/staticres/common-module/ent-search/ent-search-template.prefixer.css
  41. 2 1
      src/web/staticres/common-module/vipsubscribe/css/vip-size-template.css
  42. 2 0
      src/web/staticres/css/follow.css
  43. 7 4
      src/web/staticres/css/wxsearch.css
  44. 4 0
      src/web/staticres/frontRouter/pc/collection/css/index-pc.css
  45. 13 0
      src/web/staticres/js/ent-search-index-pc.js
  46. 2 2
      src/web/staticres/js/selector/article-item-pc.js
  47. 46 30
      src/web/staticres/js/wxSupersearch.js
  48. 13 3
      src/web/staticres/vipsubscribe/js/historypush.js
  49. 2 2
      src/web/templates/common/commonRules.html
  50. 1 1
      src/web/templates/common/pchead.html
  51. 1 1
      src/web/templates/frontRouter/pc/collection/sess/index.html
  52. 7 2
      src/web/templates/frontRouter/wx/collection/sess/ent_portrait.html
  53. 16 6
      src/web/templates/frontRouter/wx/collection/sess/index.html
  54. 3 3
      src/web/templates/pc/biddetail_rec.html
  55. 1 1
      src/web/templates/pc/entsearchindex.html
  56. 15 0
      src/web/templates/pc/reloadTo.html
  57. 36 24
      src/web/templates/weixin/historypush.html
  58. 2 2
      src/web/templates/weixin/search/tabSearch.html
  59. 1 1
      src/web/templates/weixin/vipsubscribe/vip_renew.html

+ 15 - 4
src/jfw/front/entsearch.go

@@ -17,12 +17,25 @@ type Entsearch struct {
 	bidsearchforentindex xweb.Mapper `xweb:"/jylab/bidsearchforent/index.html"`
 	pcSearchZbqyAjax     xweb.Mapper `xweb:"/jylab/pcSearchZbqyAjax"`
 	recList              xweb.Mapper `xweb:"/jylab/bidsearchforent/recList"`
+	entSearchIndex       xweb.Mapper `xweb:"/jylab/entSearch/index.html"`
 }
 
 func init() {
 	xweb.AddAction(&Entsearch{})
 }
 
+func (e *Entsearch) EntSearchIndex() error {
+	defer util.Catch()
+	var shareid = e.GetString("id")
+	if len(shareid) == 0 {
+		shareid = "10"
+	}
+	e.T["shareid"] = se.EncodeString(shareid)
+	e.T["searchvalue"] = e.GetString("searchvalue")
+	e.T["logid"] = config.Seoconfig["jyzbqyss"].(string)
+	return e.Render("/pc/entsearchindex.html", &e.T)
+}
+
 func (e *Entsearch) Bidsearchforentindex() error {
 	defer util.Catch()
 	var shareid = e.GetString("id")
@@ -88,6 +101,7 @@ func (e *Entsearch) Bidsearchforentindex() error {
 	}
 	return e.Render("/pc/biddingsearch_enterprise.html", &e.T)
 }
+
 func getSearchResult(searchvalue, area string, minprice, maxprice float64, currentPage int) (int, int, []map[string]interface{}) {
 	if currentPage > bidsearch.SearchMaxPageNum_PC {
 		currentPage = bidsearch.SearchMaxPageNum_PC
@@ -113,16 +127,13 @@ func getSearchResult(searchvalue, area string, minprice, maxprice float64, curre
 			} else if (z["bidstatus"] == "中标" || z["bidstatus"] == "成交") && z["winner"] == searchvalue {
 				bidstatusid = util.EncodeArticleId2ByCheck(util.ObjToString(z["infoid"]))
 			}
-			v["linkid"] = util.EncodeArticleId2ByCheck(util.ObjToString(z["infoid"]))
 		}
+		v["linkid"] = util.EncodeArticleId2ByCheck(util.ObjToString(v["sourceinfoid"]))
 		if subtypeid != "" {
 			v["linkid"] = subtypeid
 		} else if bidstatusid != "" {
 			v["linkid"] = bidstatusid
 		}
-		if v["linkid"] == nil {
-			v["linkid"] = util.EncodeArticleId2ByCheck(util.ObjToString(v["sourceinfoid"]))
-		}
 	}
 	return count, totalPage, list
 }

+ 8 - 0
src/jfw/front/front.go

@@ -149,6 +149,8 @@ type Front struct {
 	downloadapppage xweb.Mapper `xweb:"/front/downloadapppage/(weixin|normal)"`
 	//创建订单来源统计
 	orderSource xweb.Mapper `xweb:"/front/order/source"`
+
+	reloadTo xweb.Mapper `xweb:"/front/reloadTo/(.*)"` //前端页面跳转
 }
 
 var sewx util.SimpleEncrypt //微信的加密方法
@@ -169,6 +171,12 @@ func init() {
 	//up.user = make(map[string]*map[string]interface{})
 }
 
+//前端页面加载
+func (this *Front) ReloadTo(href string) {
+	this.T["transfer"] = fmt.Sprintf("%s/%s", config.Sysconfig["webdomain"].(string), href)
+	this.Render("/pc/reloadTo.html", &this.T)
+}
+
 //获取打赏标语
 func (this *Front) RewardText() {
 	rewardText, _ := getRewardText()

+ 1 - 1
src/jfw/modules/app/src/seo.json

@@ -98,5 +98,5 @@
 		}
 	},
 	"structedUploadA":"/structuredata/file/【剑鱼标讯】结构化招标数据.xlsx",
-	"buryingPointUrl":"md.jianyu360.com"
+	"buryingPointUrl":"https://md.jianyu360.com"
 }

+ 0 - 1
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js

@@ -102,7 +102,6 @@ var vNode = {
             },
             gotTab2: false, // 是否已经获取到tab2的数据了
             svip: false, // 判断是否是超级订阅的企业画像
-            digshow: false, // 判断是否是超级订阅会员
             overlayShow: true, // 弹窗遮罩是否显示
             isVip: false, // 只是超级订阅
             bidcollPowerInfo: {

+ 3 - 1
src/jfw/modules/app/src/web/staticres/jyapp/css/searchindex.css

@@ -2767,7 +2767,8 @@ body{
 	width:60px;
 }
 #table table tr>td:nth-child(4) div{
-	width:56px;
+    min-width: 8em;
+	width:82px;
 	text-align: right;
 }
 #table table tr>td:nth-child(5) div{
@@ -2787,6 +2788,7 @@ body{
 }
 #table table tr>td:nth-child(9) div{
 	width:58px;
+    min-width: 6em;
 }
 #table tr td{
 	border: 1px solid #E0E0E0;

+ 3 - 1
src/jfw/modules/app/src/web/staticres/jyapp/css/wxsearch.css

@@ -1811,7 +1811,8 @@ body{
 	width:60px;
 }
 #table table tr>td:nth-child(4) div{
-	width:56px;
+    min-width: 8em;
+	width:82px;
 	text-align: right;
 }
 #table table tr>td:nth-child(5) div{
@@ -1831,6 +1832,7 @@ body{
 }
 #table table tr>td:nth-child(9) div{
 	width:58px;
+    min-width: 6em;
 }
 #table tr td{
 	border: 1px solid #E0E0E0;

+ 2 - 0
src/jfw/modules/app/src/web/staticres/jyapp/followent/css/follow.css

@@ -329,6 +329,8 @@ a {
 .jynoticelist>div:first-of-type>.type{
 	margin: 0px;
     padding: 1px 5px;
+    width: 28px;
+    display: block;
 }
 .jynoticelist>.timeaxis{
 	position: absolute;

+ 10 - 3
src/jfw/modules/app/src/web/staticres/jyapp/js/historypush.js

@@ -12,6 +12,7 @@ var vm = new Vue({
   },
   data: function() {
     return {
+      sessStorageKey: '$data-historypush',
       // 时间参数
       time:'',
       // 选择的时间数据
@@ -58,13 +59,19 @@ var vm = new Vue({
     }
   },
   created () {
+    this.getUserRoot()
+    if(firstTime) {
+      firstTime = firstTime / 1000 +'_'+ firstTime / 1000;
+      this.time = firstTime
+      this.setPushTime(firstTime)
+    }else {
+      firstTime = this.time
+    }
     var recover = this.recover()
     if (!recover) {
-      this.getUserRoot()
       setTimeout(() => {
-        // 如果订阅消息进来时间不清空
+        // 如果订阅消息进来时间不
         if(this.time !== '') {
-          sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
           this.setPushTime(this.time)
           this.revorceOtherData()
         }else{

+ 83 - 70
src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js

@@ -879,6 +879,9 @@ var SuperSearch = {
     SuperSearch.reqParam["pageNum"]++;//翻页请求
   },
   initDropload: function(hasNextPage,pgNum){
+    $("#supersearchPage .tabs-box").addClass("hidden")
+    $("#supersearchPage #selLable").removeClass("hidden");
+    $("#supersearchPage #selLable").show();
     $(".loading_").show();
     $("#wrapper").css('opacity', '0')
     $("#supersearchPage #working").removeClass("hidden");
@@ -901,64 +904,64 @@ var SuperSearch = {
       $(".loading_").hide();
       $("#supersearchPage #working").addClass("hidden");
       $("#wrapper").css('opacity', 'unset')
-    SuperSearch.dropload = $('#supersearchPage #wrapper').dropload({
-      scrollArea: $("#supersearchPage .app-layout-content-b #wrapper"),
-      loadDownFn: function(me){
-        if(SuperSearch.dropload == null){
-          SuperSearch.dropload = me;
-        }
-        if(!hasNextPage){
-          SuperSearch.noMoreData();
-          return;
-        }
-        if(SuperSearch.limitFlag){
-          setTimeout(function(){
-            SuperSearch.limitPaging(me);
-          },500);
-          return
-        }
-        if(SuperSearch.secondFlag=="T"&&SuperSearch.reqParam["pageNum"]==2){
-          var html = SuperSearch.getHtml(SuperSearch.secondList,SuperSearch.reqParam["pageNum"]);
-          // 每次数据插入,必须重置
-          SuperSearch.appendListHtml(html);
-          SuperSearch.noMoreData();
-          return;
-        }
-        $.ajax({
-          type: 'post',
-          url: '/jyapp/swordfish/searchlist/paging',
-          data: SuperSearch.reqParam,
-          dataType: 'json',
-          success: function(data){
-            //没有数据
-            if(data["list"] == null || data["list"].length == 0){
-              SuperSearch.noMoreData();
-              $(".loading_").hide();
-              return;
-            }
-            var html = SuperSearch.getHtml(data["list"],SuperSearch.reqParam["pageNum"]);
+      SuperSearch.dropload = $('#supersearchPage #wrapper').dropload({
+        scrollArea: $("#supersearchPage .app-layout-content-b #wrapper"),
+        loadDownFn: function(me){
+          if(SuperSearch.dropload == null){
+            SuperSearch.dropload = me;
+          }
+          if(!hasNextPage){
+            SuperSearch.noMoreData();
+            return;
+          }
+          if(SuperSearch.limitFlag){
+            setTimeout(function(){
+              SuperSearch.limitPaging(me);
+            },500);
+            return
+          }
+          if(SuperSearch.secondFlag=="T"&&SuperSearch.reqParam["pageNum"]==2){
+            var html = SuperSearch.getHtml(SuperSearch.secondList,SuperSearch.reqParam["pageNum"]);
             // 每次数据插入,必须重置
-            //$(".app-layout-content-b").css("overflow-y","unset")
             SuperSearch.appendListHtml(html);
-            //没有下一页了 || 和pc端保持一致 最多显示500条
-            //console.log(member_status)
-            var count =10;
-            if (member_status>0){
-              count=40;
-            }
-            if(!data.hasNextPage||SuperSearch.reqParam["pageNum"]==count){
-              SuperSearch.noMoreData();
-              return;
-            }
-            me.resetload();
-            SuperSearch.reqParam["pageNum"]++;//翻页请求
-          },
-          error: function(xhr, type){
             SuperSearch.noMoreData();
+            return;
           }
-        });
-      }
-    });
+          $.ajax({
+            type: 'post',
+            url: '/jyapp/swordfish/searchlist/paging',
+            data: SuperSearch.reqParam,
+            dataType: 'json',
+            success: function(data){
+              //没有数据
+              if(data["list"] == null || data["list"].length == 0){
+                SuperSearch.noMoreData();
+                $(".loading_").hide();
+                return;
+              }
+              var html = SuperSearch.getHtml(data["list"],SuperSearch.reqParam["pageNum"]);
+              // 每次数据插入,必须重置
+              //$(".app-layout-content-b").css("overflow-y","unset")
+              SuperSearch.appendListHtml(html);
+              //没有下一页了 || 和pc端保持一致 最多显示500条
+              //console.log(member_status)
+              var count =10;
+              if (member_status>0){
+                count=40;
+              }
+              if(!data.hasNextPage||SuperSearch.reqParam["pageNum"]==count){
+                SuperSearch.noMoreData();
+                return;
+              }
+              me.resetload();
+              SuperSearch.reqParam["pageNum"]++;//翻页请求
+            },
+            error: function(xhr, type){
+              SuperSearch.noMoreData();
+            }
+          });
+        }
+      });
       //判断是否是table  (2.7.5table只显示20条数据)
       if(!sessionStorage.superSearch_showType){
         if($(".newdialog .tab-box .sub-show-list").find("li.active").attr('dataVal')=="showlist"){
@@ -971,7 +974,10 @@ var SuperSearch = {
         SuperSearch.noMoreData();
         return;
       }
-    }, 10)
+      if ($(".dropload-refresh").length) {
+        SuperSearch.dropload.opts.loadDownFn(SuperSearch.dropload)
+      }
+    }, 50)
   },
   clearSessionStorage: function(){
     if(!sessionStorage){
@@ -1548,6 +1554,13 @@ var SuperSearch = {
       if(i>=20||pageNum!=1){
         continue
       }
+      var getDefaultLine = function (key) {
+        if (key || key.length) {
+          return key
+        } else {
+          return '<span class="one-line">-</span>'
+        }
+      }
       //拟建项目
       if(SuperSearch.subtype_proposed==SuperSearch.reqParam.subtype){
         var projectinfo = list[i].projectinfo;
@@ -1576,25 +1589,25 @@ var SuperSearch = {
         }
         TableHtml +='<tr s="'+href+'"  sid="'+list[i]._id+'" i="'+industry+'">'+
           '<td><div>'+index+'</div></td>'+
-          '<td><div style="width: 100px;text-align: center;">'+approvecode+'</div></td>'+
-          '<td><div style="width: 207px;text-align: left;">'+projectname+'</div></td>'+
-          '<td><div style="width: 200px;text-align: left;">'+approvecontent+'</div></td>'+
-          '<td><div style="width: 75px;text-align: left;">'+approvestatus+'</div></td>'+
-          '<td><div style="width: 75px;text-align: center;">'+approvetime+'</div></td>'+
-          '<td><div style="width: 75px;text-align: center;">'+diff+'</div></td>'+
+          '<td><div style="width: 100px;text-align: center;">'+getDefaultLine(approvecode)+'</div></td>'+
+          '<td><div style="width: 207px;text-align: left;">'+getDefaultLine(projectname)+'</div></td>'+
+          '<td><div style="width: 200px;text-align: left;">'+getDefaultLine(approvecontent)+'</div></td>'+
+          '<td><div style="width: 75px;text-align: left;">'+getDefaultLine(approvestatus)+'</div></td>'+
+          '<td><div style="width: 75px;text-align: center;">'+getDefaultLine(approvetime)+'</div></td>'+
+          '<td><div style="width: 75px;text-align: center;">'+getDefaultLine(diff)+'</div></td>'+
           '</tr>';
         //}
       }else{
         TableHtml +='<tr s="'+href+'"  sid="'+list[i]._id+'" i="'+(list[i].industry?list[i].industry:"")+'">'+
           '<td><div>'+index+'</div></td>'+
-          '<td><div>'+projectname+'</div></td>'+
-          '<td><div>'+(datatype==""?"":datatype+"公告")+'</div></td>'+
-          '<td><div>'+budget+'</div></td>'+
-          '<td><div>'+buyer+'</div></td>'+
-          '<td><div>'+bidopentime+'</div></td>'+
-          '<td><div>'+winner+'</div></td>'+
-          '<td><div>'+bidamount+'</div></td>'+
-          '<td><div>'+fullTime+'</div></td>'+
+          '<td><div>'+getDefaultLine(projectname)+'</div></td>'+
+          '<td><div>'+getDefaultLine(datatype==""?"":datatype+"公告")+'</div></td>'+
+          '<td><div>'+getDefaultLine(budget)+'</div></td>'+
+          '<td><div>'+getDefaultLine(buyer)+'</div></td>'+
+          '<td><div>'+getDefaultLine(bidopentime)+'</div></td>'+
+          '<td><div>'+getDefaultLine(winner)+'</div></td>'+
+          '<td><div>'+getDefaultLine(bidamount)+'</div></td>'+
+          '<td><div>'+getDefaultLine(fullTime)+'</div></td>'+
           '</tr>';
       }
     }
@@ -1747,7 +1760,7 @@ var SuperSearch = {
     if(SuperSearch.subtype_proposed==SuperSearch.reqParam.subtype){
       $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div style='width: 100px;'>项目代码</div></td><td><div style='width: 207px;'>项目名称</div></td><td><div style='width: 200px;'>审批事项</div></td><td><div style='width: 75px;'>审批结果</div></td><td><div style='width: 75px;'>审批时间</div></td><td><div style='width: 75px;'>发布时间</div></td></tr>");
     }else{
-      $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算<br>(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
+      $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
     }
     $("#supersearchPage #table .content").append(TableHtmlobj);
     $(".loading_").hide();

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

@@ -1308,7 +1308,7 @@ var SuperSearch = {
 	  	if(SuperSearch.subtype_proposed==SuperSearch.reqParam.subtype){
 	       	$("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div style='width: 100px;'>项目代码</div></td><td><div style='width: 207px;'>项目名称</div></td><td><div style='width: 200px;'>审批事项</div></td><td><div style='width: 75px;'>审批结果</div></td><td><div style='width: 75px;'>审批时间</div></td><td><div style='width: 75px;'>发布时间</div></td></tr>");
 		}else{
-	  	    $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算<br>(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
+	  	    $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
 	   	}
 	   	$("#supersearchPage #table .content").append(TableHtmlobj);
 		$(".loading_").hide();

+ 7 - 2
src/jfw/modules/app/src/web/templates/big-member/page_ent_portrait.html

@@ -69,7 +69,7 @@
     .vip_openDialog .van-dialog__content .vip_head .vip_extend{
         font-size: 0.26rem;
     }
-    .van-overlay{
+    .vipOverlay.van-overlay{
         height: 85%;
         background-color: rgba(255,255,255,0);
         backdrop-filter: blur(5px);
@@ -80,6 +80,10 @@
         padding: 0 0.62rem;
         display: flex;
         justify-content: space-between;
+        overflow: initial;
+    }
+    .vip_openDialog .van-hairline--top::after{
+        border-top-width: 0;
     }
     .vip_openDialog .van-button.van-button--default{
         flex: none;
@@ -114,6 +118,7 @@
         :before-close="beforeClose"
         class="vip_openDialog"
         :overlay="overlayShow"
+        overlay-class="vipOverlay"
         :confirm-button-text="bidcollPowerInfo.btntext"
         cancel-button-text="再想一想"
         >
@@ -378,7 +383,7 @@
                                 <span class="c-time">最近合作日期</span>
                             </div>
                             <div class="progress-bar-container">
-                                <div class="progress-bar-item" v-for="(item,index) in c.list" :key="index">
+                                <div class="progress-bar-item" v-for="(item,index) in c.list" :key="index" v-show="item.name">
                                     <div class="item-label">
                                         <span class="ellipsis-2 item-name" @click="toUnitPortrayal(item)">${item.name}</span>
                                         <span class="item-count">${item.count ? item.count + '个' : item.count}</span>

+ 16 - 6
src/jfw/modules/app/src/web/templates/frontRouter/collection/sess/index.html

@@ -26,7 +26,7 @@
   <div class="j-container">
     {{include "/big-member/header.html"}}
     <div class="j-main collection" id="myCollection" v-cloak ref="main">
-      <div class="j-container" id="date-picker-other-box" v-if="listState.list.length!==0">
+      <div class="j-container" id="date-picker-other-box" v-if="!getParamsStatus||listState.list.length!==0">
         <div class="j-main">
           <div class="search-container van-fade-an" ref="searchContainer">
             <div class="listaction">
@@ -60,7 +60,7 @@
               <phone-component :data="params.winnerData" @confirm="confirm"></phone-component>
             </van-dropdown-item>
           </van-dropdown-menu>
-          <div class="list-mian" ref="jList">
+          <div class="list-mian" ref="jList" v-if="listState.list.length!==0">
             <van-list
               v-model="listState.loading"
               :finished="listState.finished"
@@ -69,9 +69,7 @@
             >
               <div class="collec_li" v-for="(item, index) in listState.list" :key="index" @click="linkRouter(item._id)">
                 <div class="collec_head">
-                  <div class="collec_title ellipsis-2">
-                    ${item.title}
-                  </div>
+                  <div class="collec_title ellipsis-2" v-html="item.title"></div>
                   <div class="collec_star" @click="collecClick(event,item._id)">
                     <span class="shoucang" v-if="condition"></span>
                     <!-- <span class="weishoucang" v-if="!condition"></span> -->
@@ -89,9 +87,21 @@
               </div>
             </van-list>
           </div>
+          <div class="j-container" v-if="listState.list.length==0">
+            <div class="j-main">
+              <div class="emptycom">
+                <div class="emptyimg">
+                  <img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/image/img-empty.png?v={{Msg "seo" "version"}}' alt="">
+                </div>
+                <div class="emptytext">
+                  暂无数据
+                </div>
+              </div>
+            </div>
+          </div>
         </div>
       </div>
-      <div class="j-container" v-if="listState.list.length==0">
+      <div class="j-container" v-if="getParamsStatus&&listState.list.length==0">
         <div class="j-main">
           <div class="emptycom">
             <div class="emptyimg">

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

@@ -1,7 +1,7 @@
 <link rel="stylesheet" type="text/css" href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/vipsubscribe/css/rights_page.css?v={{Msg "seo" "version"}}'>
 <div class="vip-rights">
   <table class="table">
-    <caption class="table_title b-line">超级订阅2.0版专属权益</caption>
+    <caption class="table_title b-line">超级订阅专属权益</caption>
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">超级订阅</p>
@@ -64,7 +64,7 @@
     </tr>
   </table>
   <div class="table">
-    <div class="table_title b-line">开通超级订阅2.0版,解锁以下权限</div>
+    <div class="table_title b-line">开通超级订阅,解锁以下权限</div>
     <div>
       <div class="grid-item">
         <p class="grid-title">信息权益</p>

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

@@ -152,7 +152,7 @@
                 <div class="tip-title l-line">续费说明</div>
                 <div class="tip-content">
                     <div>1、仅支持原套餐延长周期续费,不支持套餐变更(含增加、减少、更改)原订阅的省份、城市、行业。 <br />续费费用=续费周期(按月/年)/原地区/原行业</div>
-                    <div>2、套餐周期内,用户也可以选择升级超级订阅2.0版享受更多权益。</div>
+                    <div>2、套餐周期内,用户也可以选择升级超级订阅享受更多权益。</div>
                 </div>
             </div>
             <div data-new-vip style="display: none;">

+ 62 - 40
src/jfw/modules/app/src/web/templates/weixin/historypush.html

@@ -78,11 +78,13 @@
             height: 100%;
         }
        .app-layout-content-b {
-            height: calc(100vh - 89px);
+            height: calc(100vh - 70px);
+            /* height: auto; */
             overflow: hidden;
        }
        #dropDownItemGroup .van-dropdown-item__content {
          max-height: 70vh;
+         overflow: hidden;
        }
     </style>
 </head>
@@ -140,7 +142,8 @@
                         </p>
                     </div>
                 </div> -->
-                    <van-dropdown-menu style="width: auto;overflow-x: auto;">
+
+                    <van-dropdown-menu style="width: auto;overflow-x: auto;"  >
                         <van-dropdown-item get-container="#dropDownItemGroup" :lazy-render="false" :title="tagText.timeText"  ref="dateItem" @open="open('时间')" @close="close">
                             <date-component type="only-picker" :key="setTimer.datetimer" @cancel="cancel" @confirm="confirm" :selectdate="selectDate"/>
                         </van-dropdown-item>
@@ -354,6 +357,9 @@
 </div>
 
 </body>
+<script>
+      var firstTime = {{.T.selectTime}}
+</script>
 <script src=//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js></script>
 <script src=//cdn.jsdelivr.net/npm/vant@2.8.2/lib/vant.min.js></script>
 <script src=//cdn.jsdelivr.net/npm/zepto@1.2.0/dist/zepto.min.js></script>
@@ -539,14 +545,6 @@
         isinitpage = true;
       }
   });
-  var firstTime = {{.T.selectTime}}
-    // firstTime = '1624377600000'
-  if( firstTime != '') {
-    firstTime = firstTime / 1000 +'_'+ firstTime / 1000;
-    vm.time = firstTime
-  }else {
-    firstTime = vm.time
-  }
 
   var userId = "";
   var selectCity = vm.area; // 地区
@@ -595,7 +593,10 @@
       });
       this.isCanSwitch=true;
       this.InitPersonal=function(r){
-        $("#sub_manager").click(tokeyset);
+        $("#sub_manager").click(function() {
+            sessionStorage.setItem(vm.sessStorageKey, JSON.stringify(vm.$data))
+            tokeyset()
+        });
         $(".tab_left .area").hide();
         if (r.isPassCount) {
           $(".open_remind").show();
@@ -608,7 +609,10 @@
         thisClass.LoadDatas(r);
       }
       this.InitVip=function(r){
-        $("#sub_manager").click(tosetpage);
+        $("#sub_manager").click(function() {
+            sessionStorage.setItem(vm.sessStorageKey, JSON.stringify(vm.$data))
+            tosetpage()
+        });
         $(".vip_report").show();
         $(".tab_left .area").show();
         if (!r.haskey) {
@@ -650,6 +654,7 @@
             reportHtml(JSON.parse(localStorage.reportData));
           }
           $(".vip_report").click(function () {
+            sessionStorage.setItem(vm.sessStorageKey, JSON.stringify(vm.$data))
             setSessionStorage();
             window.location.href = "/vipreport/page/subreport.html";
           });
@@ -675,6 +680,22 @@
             selectCate = sessionStorage.getItem(userId + "_selectCate");
             selectKeyword = sessionStorage.getItem(userId + "_selectKeyword");
             selectNotice = sessionStorage.getItem(userId + "_selectNotice");
+
+            // 判断是否需要修改某个收藏的状态
+            var listCollSessionId = sessionStorage.getItem('listCollSessionId')
+            if (listCollSessionId){
+                var listCollSessionBool = sessionStorage.getItem('listCollSessionBool')
+                if (dataCache && $.isArray(dataCache)) {
+                    dataCache.forEach(function (item) {
+                        if (item._id == listCollSessionId) {
+                            item.collection = listCollSessionBool
+                        }
+                    })
+                    sessionStorage.removeItem('listCollSessionId')
+                    sessionStorage.removeItem('listCollSessionBool')
+                }
+            }
+
             $("#list>*").remove();
             firstPage = dataCache;
             if (dataCache.length == 0) {
@@ -789,10 +810,10 @@
             setTimeout(function () {
                 wxflag = $('.listcontent').dropload({
                     scrollArea: $(".listcontent"),
-                    loadUpFn: function (me) {
-                        //loadDatas(me,-1);
-                        reloadFirstPage(me);//下拉刷新更新订阅词
-                    },
+                    // loadUpFn: function (me) {
+                    //     //loadDatas(me,-1);
+                    //     reloadFirstPage(me);//下拉刷新更新订阅词
+                    // },
                     loadDownFn: function (me) {
                         loadDatas(me, lasttime);
                     }
@@ -802,9 +823,9 @@
             setTimeout(function () {
                 wxflag = $('.listcontent').dropload({
                     scrollArea: $(".listcontent"),
-                    loadUpFn: function (me) {
-                        loadDatas(me, -1);
-                    },
+                    // loadUpFn: function (me) {
+                    //     loadDatas(me, -1);
+                    // },
                     loadDownFn: function (me) {
                         loadDatas(me, lasttime);
                     }
@@ -922,6 +943,11 @@ window.listScroll = function() {
       if($(".vip_report").is(":hidden")||$(".vip_report>a").is(":hidden")){
         afterJyObjInit();
       }
+      selectCity = vm.area; // 地区
+      selectIndustry = vm.subscopeclass // 行业
+      selectCate = vm.buyerclass // 采购单位
+      selectKeyword = vm.key // 关键词
+      selectNotice = vm.subtype // 公告类型
       $.ajax({
           type: 'post',
           url: '/jyapp/front/hasPushHistory?t=' + new Date().getTime(),
@@ -1130,12 +1156,6 @@ function hasNoData() {
           if (obj.ca_isvisit == 1) {
               visited = "visited"
           }
-          var collecnum = 0
-          if(obj.collection == 1) {
-            collecnum = 1
-          } else {
-            collecnum = 1
-          }
           if (showAd && index == 3 && !closeAdvert) {//广告位
               var ad = $("#advertscript").html()
               if (ad != "") {
@@ -1161,12 +1181,6 @@ function hasNoData() {
                   continue
               }
           }
-          //收藏处理
-          if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==obj["_id"]){
-            obj["collection"] = sessionStorage.getItem('listCollSessionBool');
-    				sessionStorage.removeItem('listCollSessionId')
-    				sessionStorage.removeItem('listCollSessionBool')
-          }
           listhtml += '<div class="tslist ' + visited + '" words="' + mWords + '">'
               + '<div class="resnumb">'
               + '<div class="one">'
@@ -1240,12 +1254,20 @@ function hasNoData() {
             },
             changeKeepStatus (type, that) {
                 changeCollectStatus(type, that)
+                changeCollectDataStatus(type, this.nowOpenBid)
             }
         }
     })
-
+    function changeCollectDataStatus (type, id) {
+        if (dataCache && $.isArray(dataCache)) {
+            dataCache.forEach(function (item) {
+                if (item._id == id) {
+                    item.collection = type ? 1 : 0
+                }
+            })
+        }
+    }
     function changeCollectStatus(type, that) {
-        //console.log(type, that)
         if(type) {
             $(that).find('.shoucang').show()
             $(that).find('.weishoucang').hide()
@@ -1426,10 +1448,10 @@ function hasNoData() {
           setTimeout(function () {
               wxflag = $('.listcontent').dropload({
                   scrollArea: $(".listcontent"),
-                  loadUpFn: function (me) {
-                      //loadDatas(me,-1);
-                      reloadFirstPage(me);//下拉刷新更新订阅词
-                  },
+                //   loadUpFn: function (me) {
+                //       //loadDatas(me,-1);
+                //       reloadFirstPage(me);//下拉刷新更新订阅词
+                //   },
                   loadDownFn: function (me) {
                       loadDatas(me, lasttime);
                   }
@@ -1438,9 +1460,9 @@ function hasNoData() {
       } else {
           wxflag = $('.listcontent').dropload({
               scrollArea: $(".listcontent"),
-              loadUpFn: function (me) {
-                  loadDatas(me, -1);
-              },
+            //   loadUpFn: function (me) {
+            //       loadDatas(me, -1);
+            //   },
               loadDownFn: function (me) {
                   loadDatas(me, lasttime);
               }

+ 2 - 2
src/jfw/modules/app/src/web/templates/weixin/search/tabSearch.html

@@ -245,7 +245,7 @@
     .search-win-box {
         width: auto;
         height: 0.8rem;
-        margin: 0.18rem 0.24rem;
+        margin: 0.18rem 0.32rem;
         padding-left: 0.32rem;
     }
     #select-win-list li {
@@ -752,7 +752,7 @@
                             </div>
                             <area-component ref="areaComponent" @select="updateScrollTop" v-show="activeTabIndex === 4"></area-component>
                             <money-component extra="万元" :tags="moneyTags" ref="moneyComponent"  v-show="activeTabIndex === 2"></money-component>
-                            <div v-show="activeTabIndex === 6">
+                            <div v-show="activeTabIndex === 6" style="min-height: 4.8rem">
                                 <ul class="ent-search-list-box" id="select-win-list"></ul>
                                 <form data-name="input-clear-box" class="search-win-box" action="javascript:return true">
                                     <input type="search" id="search-win-input" placeholder="输入中标企业名称">

+ 1 - 1
src/jfw/modules/app/src/web/templates/weixin/wxinfocontent.html

@@ -619,7 +619,7 @@
 </div>
 <script src=//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js></script>
 <script src=//cdn.jsdelivr.net/npm/vant@2.8.2/lib/vant.min.js></script>
-<script src='{{Msg "seo" "cdn"}}/common-module/keep-tags/keep-tags-template.js?v={{Msg "seo" "version"}}'></script>
+<script src='/common-module/keep-tags/keep-tags-template.js?v={{Msg "seo" "version"}}'></script>
 <script>
     var	shareimgflag = true;
     var area = {{.T.obj.area}}

+ 2 - 3
src/jfw/modules/bigmember/src/entity/portraitBuyerSearch.go

@@ -82,7 +82,7 @@ func GetBuyerPortraitData(buyer string) (map[string]interface{}, error) {
 	hxObj := getInitPortraitSearch(buyer, "buyer")
 	//分段存储——b阶段
 	buyerPortraitData["step_b"] = time.Now().Unix()
-	go upDataQxhxRedis(hxObj.RedisKey, buyerPortraitData)
+	upDataQxhxRedis(hxObj.RedisKey, buyerPortraitData)
 
 	if AllWinner, ok := buyerPortraitData["allWinnerList"]; ok {
 		province := qutil.ObjToString(buyerPortraitData["province"])
@@ -101,7 +101,6 @@ func GetBuyerPortraitData(buyer string) (map[string]interface{}, error) {
 	}
 	//分段存储——c阶段
 	buyerPortraitData["step_c"] = time.Now().Unix()
-	go upDataQxhxRedis(hxObj.RedisKey, buyerPortraitData)
 	return buyerPortraitData, nil
 }
 
@@ -345,7 +344,7 @@ func BuyerPortraitSearch(buyer string) (map[string]interface{}, error) {
 			wg.Wait()
 			//分段存储——a阶段
 			returnData["step_a"] = time.Now().Unix()
-			go upDataQxhxRedis(getInitPortraitSearch(buyer, "buyer").RedisKey, returnData)
+			upDataQxhxRedis(getInitPortraitSearch(buyer, "buyer").RedisKey, returnData)
 
 			if json.Unmarshal(topScopeclassBytes, &topScopeclassData) == nil {
 				//折扣率 优先取三年都有数据的

+ 2 - 1
src/jfw/modules/common/src/qfw/util/dataexport/dataExportRecord.go

@@ -137,7 +137,7 @@ func (dpm *DataPacketMsg) AddNum(num int) (err error) {
 	return fmt.Errorf("稍后重试")
 }
 
-func (dpm *DataPacketMsg) SaveRecord(db *mysql.Mysql, useId, selectId string, t int, list *[]map[string]interface{}) error {
+func (dpm *DataPacketMsg) SaveRecord(db *mysql.Mysql, useId, selectId string, t int, list *[]map[string]interface{}, filePath string) error {
 	listId := []string{}
 	//rMap := dpm.GetRepeatMap(db) //去重
 	for _, v := range *list {
@@ -153,6 +153,7 @@ func (dpm *DataPacketMsg) SaveRecord(db *mysql.Mysql, useId, selectId string, t
 		"useid":     useId,
 		"query_id":  selectId,
 		"date":      time.Now().Unix(),
+		"path":      filePath,
 	}) == 0 {
 		return fmt.Errorf("数据导出记录保存出错 userId:%s,selectId:%s,类型:%d,导出数据:%v", useId, selectId, t, listId)
 	}

+ 4 - 2
src/jfw/modules/common/src/qfw/util/dataexport/dataexport.go

@@ -506,7 +506,7 @@ func FormatExportData(entmg mg.MongodbSim, data *[]map[string]interface{}, webdo
 		//有中标企业 且 高级字段查询
 		if dataType == "2" {
 			//查询企业公示 法人 公司电话 公司邮箱地址
-			s_winner, ok := v["s_winner"].(string) //改为entidlist?
+			s_winner, ok := v["s_winner"].(string) //改为entidlistxx
 			if ok && s_winner != "" {
 				if entData, ok := entmg.Find("winner_enterprise", map[string]interface{}{"company_name": s_winner}, nil, `{"company_name":1,"company_email":1,"legal_person":1,"company_phone":1}`, false, -1, -1); ok {
 					if entData != nil && *entData != nil && len(*entData) > 0 {
@@ -600,7 +600,9 @@ func FormatExportData(entmg mg.MongodbSim, data *[]map[string]interface{}, webdo
 			v["bidopentime"] = qutil.FormatDateWithObj(&date, qutil.Date_Short_Layout)
 		}
 		if v["_id"] != nil {
-			v["url"] = webdomain + "/article/content/" + qutil.CommonEncodeArticle("content", v["_id"].(string)) + ".html"
+			encodeId := qutil.CommonEncodeArticle("content", v["_id"].(string))
+			v["url"] = webdomain + "/article/content/" + encodeId + ".html"
+			v["url_jump"] = webdomain + "/front/reloadTo/article/content/" + encodeId + ".html"
 		}
 		if v["currency"] == "" || v["currency"] == nil {
 			v["currency"] = "人民币"

+ 4 - 4
src/jfw/modules/publicapply/src/enterpriseSearch/entity/entQuery.go

@@ -36,7 +36,7 @@ const (
 	entSearchCacheKey = "entSearchIndexCache"
 
 	index, itype = "qyxy", "qyxy"
-	entQuery     = `{"query":{"bool":{"must":[%s],"must_not":[%s]}},"_source":["_id","company_name","company_status","legal_person","capital","company_address","company_shortname","company_phone","establish_date"]}`
+	entQuery     = `{"query":{"bool":{"must":[%s],"must_not":[%s]}},"_source":["_id","company_name","company_status","legal_person","capital","company_address","company_shortname","company_phone","establish_date"],"sort":[{"capital":{"order":"desc"}}]}`
 )
 
 var (
@@ -130,8 +130,8 @@ func (es *EnterpriseSearch) isEmptySearch() bool {
 //返回字段 企业名称、企业状态、法人、注册资本、地址、企业id、企业简称
 func (es *EnterpriseSearch) GetQuerySql() string {
 	musts := make([]string, 0, 0)
-	//仅展示统一社会信用代码以9开头数据
-	must_not := []string{`{"constant_score": {"filter": {"missing": {"field": "credit_no"}}}}`}
+	//仅展示公司类型小于等于22的 company_type_int  22
+	musts = append(musts, `{"range":{"company_type_int":{"to":"22"}}}`)
 	//输入查询
 	if es.Match != "" { //或关系 仅需满足一个
 		//可简写 {"bool":{"should":[{"match_phrase":{"ent_ikname":"李智"}},{"multi_match":{"query":"李智","type":"phrase","fields":["stock_name","employee_name","legal_person","bid_purchasing","bid_projectname"]}}],"minimum_should_match":1}}
@@ -206,7 +206,7 @@ func (es *EnterpriseSearch) GetQuerySql() string {
 	if es.EntContact != "" && es.IsVip {
 		musts = append(musts, fmt.Sprintf(`{"term":{"bid_contracttype":"%s"}}`, es.EntContact))
 	}
-	return fmt.Sprintf(entQuery, strings.Join(musts, ","), strings.Join(must_not, ","))
+	return fmt.Sprintf(entQuery, strings.Join(musts, ","), "")
 }
 
 //DoQuery 根据EnterpriseSearch参数进行企业相关查询

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

@@ -276,7 +276,7 @@ func (this *DataExportPay) VipDailyDataExport() {
 			} else {
 				redis.Put("other", fmt.Sprintf(VipDailySuccess, selectId), url, 24*60*60) //导出成功
 				//保存导出记录
-				if err := packetMsg.SaveRecord(util.Mysql, userId, selectId, dataexport.BigMemberDaily, list); err != nil {
+				if err := packetMsg.SaveRecord(util.Mysql, userId, selectId, dataexport.BigMemberDaily, list, url); err != nil {
 					log.Println(err)
 				}
 			}

+ 2 - 2
src/jfw/modules/subscribepay/src/timetask/dataExportMail.go

@@ -34,14 +34,14 @@ func SendDataExportMailForPayed() {
 		filePath := qutil.ObjToString(order["download_url"])
 		orderCode := qutil.ObjToString(order["order_code"])
 		fileCount, err := util.GetDataExportFileDataLen(config.ExConf.ExcelReadyPath + filePath)
-		if err == nil && dataCount == fileCount { //文件数据量不对
+		if err == nil && fileCount >= dataCount { //文件数据量不对(新进数据可能存在大于实际支付数据量)
 			//移动至已支付目录
 			_, err = util.MoveFile(config.ExConf.ExcelReadyPath+filePath, config.ExConf.ExcelPayedPath+filePath)
 			var payedFileCount int
 			if err == nil {
 				payedFileCount, err = util.GetDataExportFileDataLen(config.ExConf.ExcelReadyPath + filePath)
 			}
-			if err == nil && payedFileCount == dataCount {
+			if err == nil && payedFileCount >= dataCount {
 				now := time.Now()
 				userMail := qutil.ObjToString(order["user_mail"])
 				//发送邮件

+ 2 - 2
src/jfw/modules/subscribepay/src/util/dataExportExcel.go

@@ -148,8 +148,8 @@ func CreateDataExportExcelFile(list *[]map[string]interface{}, isSenior bool, fi
 			}
 			cell = row.AddCell()
 
-			if v.Filed == "title" {
-				cell.SetFormula(fmt.Sprintf("=HYPERLINK(\"%s\",\"%s\")", data["url"], data[v.Filed]))
+			if v.Filed == "title" || v.Filed == "url" {
+				cell.SetFormula(fmt.Sprintf("=HYPERLINK(\"%s\",\"%s\")", data["url_jump"], data[v.Filed]))
 			} else {
 				cell.SetValue(data[v.Filed])
 			}

+ 1 - 1
src/jfw/modules/weixin/src/config.json

@@ -132,6 +132,6 @@
 		"digitalExpoH5":"digitalExpo"
 	},
     "menuClickReplyText": {
-        "BusinessCoop": "剑鱼标讯-智创未来 让数据赋能决策\n\n商务合作、媒体合作、投稿\n\n联系人:剑鱼标讯商务\n微信号:jyzbsw\n"
+        "BusinessCoop": "剑鱼标讯-智创未来 让数据赋能决策\n\n商务合作、媒体合作、投稿\n\n联系人:剑鱼标讯商务\n微信号:jybxsw\n"
     }
 }

+ 1 - 1
src/jfw/public/dataexport.go

@@ -113,7 +113,7 @@ func (this *BidSearchExport) PassBidSearchExport() (returnData map[string]interf
 	defer util.Catch()
 	areaSave, industrySave := []string{}, []string{}
 	winnerSave, buyerclassSave := []string{}, []string{}
-	publishtimeSave := ""
+	publishtimeSave := this.Publishtime
 	if len(this.Area) > 0 {
 		areaSave = strings.Split(this.Area, ",")
 	}

+ 1 - 1
src/seo.json

@@ -4441,5 +4441,5 @@
 		["合同", "验收", "违规", "招标信用信息其它"],
 		["预告","需求公示", "预审", "论证意见", "预审结果", "招标预告其它"]
 	],
-	"buryingPointUrl":"md.jianyu360.com"
+	"buryingPointUrl":"https://md.jianyu360.com"
 }

+ 6 - 2
src/web/staticres/common-module/collection/css/index.css

@@ -74,6 +74,10 @@
     flex: none;
     padding: .24rem .38rem;
 }
+.collection .van-dropdown-item .van-dropdown-item__content{
+    max-height: 70vh;
+    overflow: hidden;
+}
 .collection .my-search.van-search.van-search--show-action{
     border-bottom:1.5px solid rgba(0,0,0,0.05);
 }
@@ -437,8 +441,8 @@
 }
 /* 采购单位类型 */
 .collection .unitTab{
+    height: 6.5rem;
     overflow: hidden;
-    height: 7.5rem;
     -webkit-box-flex: 0;
     -webkit-flex: none;
     flex: none;
@@ -527,7 +531,7 @@
     -webkit-box-align: center;
     -webkit-align-items: center;
     align-items: center;
-    margin-left: .1rem;
+    margin-left: .05rem;
     width: .8rem;
     height: .4rem;
     background: #2abed1;

+ 47 - 44
src/web/staticres/common-module/collection/js/cate-mobile.js

@@ -1,56 +1,58 @@
 // 采购单位类型
 var cateComponentTemplate = `<div class="j-container">
-<div class="j-main unitTab">
-  <van-tabs type="card" class="unitType" v-model="active">
-    <van-tab title="全部">
-      <van-cell-group>
-        <van-cell
-        clickable
-        type="primary"
-        title="全选"
-        :class="{checkActive:checkedAll==true}"
-        @click="checkBoxAll"
-        >
-        <template #right-icon>
-          <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
-        </template>
-        </van-cell>
-      </van-cell-group>
-    </van-tab>
-    <van-tab v-for="(item, index) in tablist" :key="index">
-      <template #title>
-        <div class="tabtitle">
-          {{Object.keys(item)[0]}}
-        </div>
-        <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
-      </template>
-      <van-cell
+<div class="j-main">
+  <div class="unitTab">
+    <van-tabs type="card" class="unitType" v-model="active">
+      <van-tab title="全部">
+        <van-cell-group>
+          <van-cell
           clickable
+          type="primary"
           title="全选"
-          :class="{checkActive:item[Object.keys(item)[1]]==true}"
-          @click="checkAll(item)"
+          :class="{checkActive:checkedAll==true}"
+          @click="checkBoxAll"
           >
           <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
           </template>
-      </van-cell>
-      <van-cell-group>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+      <van-tab v-for="(item, index) in tablist" :key="index">
+        <template #title>
+          <div class="tabtitle">
+            {{Object.keys(item)[0]}}
+          </div>
+          <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
+        </template>
         <van-cell
-          v-for="(iitem, i) in item[Object.keys(item)[0]]"
-          clickable
-          label-disabled="false"
-          :key="i"
-          :class="{checkActive:iitem.type==true}"
-          :title="iitem.name"
-          @click="toggleCheck(iitem, item)"
-        >
-          <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
-          </template>
+            clickable
+            title="全选"
+            :class="{checkActive:item[Object.keys(item)[1]]==true}"
+            @click="checkAll(item)"
+            >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            </template>
         </van-cell>
-      </van-cell-group>
-    </van-tab>
-  </van-tabs>
+        <van-cell-group>
+          <van-cell
+            v-for="(iitem, i) in item[Object.keys(item)[0]]"
+            clickable
+            label-disabled="false"
+            :key="i"
+            :class="{checkActive:iitem.type==true}"
+            :title="iitem.name"
+            @click="toggleCheck(iitem, item)"
+          >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
+            </template>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+    </van-tabs>
+  </div>
 </div>
 <div class="j-footer">
   <div class="j-button-group">
@@ -236,6 +238,7 @@ var cateComponent = {
     },
     // 重置按钮
     resetAll:function() {
+      this.canClick = true
       let params = {
         name: 'cateItem',
         data: ''

+ 19 - 9
src/web/staticres/common-module/collection/js/date-mobile.js

@@ -11,7 +11,7 @@ var dateComponentTemplate = `
       </div>
   </div>
   <div v-if="type === 'more-picker'">
-    <van-popup v-model="datePicker.startshow" :safe-area-inset-bottom="true" get-container="#date-picker-other-box" round position="bottom" :style="{ height: '43%' }">
+    <van-popup v-model="datePicker.startshow" :safe-area-inset-bottom="true" get-container="#date-picker-other-box" round position="bottom" :style="{ height: '46%' }">
       <div class="j-container">
         <div class="j-header">
           <div class="headertitle">
@@ -45,7 +45,7 @@ var dateComponentTemplate = `
         </div>
       </div>
     </van-popup>
-    <van-popup v-model="datePicker.endshow" :safe-area-inset-bottom="true" get-container="#date-picker-other-box" round position="bottom" :style="{ height: '43%' }">
+    <van-popup v-model="datePicker.endshow" :safe-area-inset-bottom="true" get-container="#date-picker-other-box" round position="bottom" :style="{ height: '46%' }">
       <div class="j-container">
         <div class="j-header">
           <div class="headertitle">
@@ -201,12 +201,16 @@ var dateComponent = {
           case 'exact': {
             this.setTimeSelectListState('exact')
             this.dateStyle = true
-            this.dateTimePickerState.start = new Date(data.startDate)
-            this.dateTimePickerState.end = new Date(data.endDate)
-            this.dateTimePickerState.startPlaceHolder = new Date(data.startDate).pattern('yyyy年MM月dd日')
-            this.dateTimePickerState.endPlaceHolder = new Date(data.endDate).pattern('yyyy年MM月dd日')
-            this.datePicker.startcurrentDate = new Date(new Date(data.startDate).pattern('yyyy'), new Date(data.startDate).pattern('MM') - 1 , new Date(data.startDate).pattern('dd'))
-            this.datePicker.endcurrentDate = new Date(new Date(data.endDate).pattern('yyyy'), new Date(data.endDate).pattern('MM') - 1, new Date(data.endDate).pattern('dd'))
+            if (data.startDate) {
+              this.dateTimePickerState.start = new Date(data.startDate)
+              this.dateTimePickerState.startPlaceHolder = new Date(data.startDate).pattern('yyyy年MM月dd日')
+              this.datePicker.startcurrentDate = new Date(new Date(data.startDate).pattern('yyyy'), new Date(data.startDate).pattern('MM') - 1 , new Date(data.startDate).pattern('dd'))
+            }
+            if (data.end) {
+              this.dateTimePickerState.end = new Date(data.endDate)
+              this.dateTimePickerState.endPlaceHolder = new Date(data.endDate).pattern('yyyy年MM月dd日')
+              this.datePicker.endcurrentDate = new Date(new Date(data.endDate).pattern('yyyy'), new Date(data.endDate).pattern('MM') - 1, new Date(data.endDate).pattern('dd'))
+            }
             break
           }
           default: {
@@ -226,6 +230,8 @@ var dateComponent = {
     clearDateTimePicker () {
       this.dateTimePickerState.start = ''
       this.dateTimePickerState.end = ''
+      this.dateTimePickerState.startPlaceHolder = ''
+      this.dateTimePickerState.endPlaceHolder = ''
     },
     getOnlyPickerState () {
       const timeState = this.calcNotExactTime('today', this.datePicker.endcurrentDate.getTime())
@@ -251,12 +257,16 @@ var dateComponent = {
         } else {
           timeState.start = ''
         }
-        console.log(this.dateTimePickerState.end == '')
         if(this.dateTimePickerState.end != '') {
           timeState.end = this.dateTimePickerState.end.getTime()
         } else {
           timeState.end = ''
         }
+
+        // 如果开始时间===结束时间(并且都不为0, 不为空),则表示为同一天,取开始时间和结束时间相差23小时
+        if (timeState.start === timeState.end && timeState.start != 0 && timeState.end != 0 && timeState.start && timeState.end) {
+          timeState.end = timeState.end + (60 * 60 * 1000 * 24) - 1000
+        }
       }
       return timeState
     },

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

@@ -100,7 +100,6 @@ var vNode = {
             },
             gotTab2: false, // 是否已经获取到tab2的数据了
             svip: false, // 判断是否是超级订阅的企业画像
-            digshow: false, // 判断是否是超级订阅会员
             overlayShow: true, // 弹窗遮罩是否显示
             isVip: false, // 只是超级订阅
             bidcollPowerInfo: {

+ 35 - 8
src/web/staticres/common-module/collection/js/index-wx.js

@@ -68,7 +68,11 @@ var vNode = {
     personTagactive:0, //个人标签选择按钮下标
     screenShow: false, // 筛选按钮是否显示
   },
-  computed: {},
+  computed: {
+    getParamsStatus () {
+      return this.limitlist.label=='' && this.limitlist.selectTime=='' && this.limitlist.buyerclass=='' && this.limitlist.buyerPhone==0 && this.limitlist.winnerPhone==0 && this.limitlist.pageNum==1
+    }
+  },
   created () {
     var recover = this.recover()
     if (!recover) {
@@ -131,6 +135,12 @@ var vNode = {
       }
       return !!$data
     },
+    setrecover: function() {
+      var scrollTop = $(this.$refs.jList).scrollTop()
+      // 如果滚动高度为0,或者entList长度为0,则不缓存数据(即返回刷新)
+      this.listState.scrollTop = scrollTop
+      sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
+    },
     // 判断是否是有权限
     getUserRoot: function() {
       let _this = this
@@ -149,10 +159,7 @@ var vNode = {
     },
     // 列表跳转
     linkRouter: function(id) {
-      var scrollTop = $(this.$refs.jList).scrollTop()
-      // 如果滚动高度为0,或者entList长度为0,则不缓存数据(即返回刷新)
-      this.listState.scrollTop = scrollTop
-      sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
+      this.setrecover()
       location.href = '/article/content/' + id + '.html'
     },
     // 筛选按钮
@@ -198,6 +205,7 @@ var vNode = {
                 // 当数组为空时,且为第一页,页面为暂无数据页面
                 _this.listState.loading = true
                 _this.listState.finished = true;
+                _this.listState.list = res.data.res
               } else {
                 // 数据正常加载更多
                 for (let i = 0; i < res.data.res.length; i++) {
@@ -277,6 +285,19 @@ var vNode = {
           start: (data.data.start / 1000).toFixed(0),
           end: (data.data.end / 1000).toFixed(0)
         }
+
+        // 开始时间未选择,则默认开始时间为2000年
+        if (!timeRange.start || timeRange.start == 0) {
+          timeRange.start = +new Date('2000') / 1000
+        }
+        // 结束时间未选择,则默认当天23点
+        if (!timeRange.end || timeRange.end == 0) {
+          var today = new Date().pattern('yyyy/MM/dd')
+          var day1 = 24 * 60 * 60 * 1000
+          var todayEnd = +new Date(today) + day1 - 1000
+          timeRange.end = Math.round(todayEnd / 1000)
+        }
+
         if (timeRange.start == 0 && timeRange.end == 0) {
           this.limitlist.selectTime = ''
           this.tagText.timeText = '收藏时间'
@@ -306,11 +327,17 @@ var vNode = {
             break
           }
           case 'exact': {
-            this.tagText.timeText = new Date(timeRange.start*1000).pattern('yyyy.MM.dd') + '~' + new Date(timeRange.end*1000).pattern('yyyy.MM.dd')
+            if(timeRange.start == 0 && timeRange.end == 0) {
+              this.limitlist.selectTime = ''
+              this.tagText.timeText = '收藏时间'
+              this.setToggle()
+              return
+            } else {
+              this.tagText.timeText = new Date(timeRange.start*1000).pattern('yyyy.MM.dd') + '~' + new Date(timeRange.end*1000).pattern('yyyy.MM.dd')
+            }
             break
           }
         }
-        this.limitlist.selectTime = (data.data.start / 1000).toFixed(0) + '_' + (data.data.end / 1000).toFixed(0)
       } else if (data.name == 'cateItem') {
         this.tagText.cateText = '采购单位类型' + data.t
         this.limitlist.buyerclass = data.data.join(',')
@@ -322,7 +349,7 @@ var vNode = {
       } else if (data.name == 'winnerItem') {
         this.limitlist.winnerPhone = parseInt(data.data)
       }
-      sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
+      this.limitlist.pageNum = 1
       this.setToggle()
       this.reLoadList(true)
     },

+ 36 - 8
src/web/staticres/common-module/collection/js/index.js

@@ -66,7 +66,11 @@ var vNode = {
     personTagactive:0, //个人标签选择按钮下标
     screenShow: false, // 筛选按钮是否显示
   },
-  computed: {},
+  computed: {
+    getParamsStatus () {
+      return this.limitlist.label=='' && this.limitlist.selectTime=='' && this.limitlist.buyerclass=='' && this.limitlist.buyerPhone==0 && this.limitlist.winnerPhone==0 && this.limitlist.pageNum==1
+    }
+  },
   created () {
     var recover = this.recover()
     if (!recover) {
@@ -124,6 +128,12 @@ var vNode = {
           sessionStorage.removeItem(this.sessStorageKey)
       }
       return !!$data
+  },
+  setrecover: function() {
+    var scrollTop = $(this.$refs.jList).scrollTop()
+    // 如果滚动高度为0,或者entList长度为0,则不缓存数据(即返回刷新)
+    this.listState.scrollTop = scrollTop
+    sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
   },
     // 判断是否是有权限
     getUserRoot: function() {
@@ -143,10 +153,7 @@ var vNode = {
     },
     // 列表跳转
     linkRouter: function(id) {
-      var scrollTop = $(this.$refs.jList).scrollTop()
-      // 如果滚动高度为0,或者entList长度为0,则不缓存数据(即返回刷新)
-      this.listState.scrollTop = scrollTop
-      sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
+      this.setrecover()
       location.href = '/jyapp/article/content/' + id + '.html'
     },
     // 筛选按钮
@@ -191,6 +198,7 @@ var vNode = {
                 // 当数组为空时,且为第一页,页面为暂无数据页面
                 _this.listState.loading = true
                 _this.listState.finished = true;
+                _this.listState.list = res.data.res
               } else {
                 // 数据正常加载更多
                 for (let i = 0; i < res.data.res.length; i++) {
@@ -269,6 +277,19 @@ var vNode = {
           start: (data.data.start / 1000).toFixed(0),
           end: (data.data.end / 1000).toFixed(0)
         }
+
+        // 开始时间未选择,则默认开始时间为2000年
+        if (!timeRange.start || timeRange.start == 0) {
+          timeRange.start = +new Date('2000') / 1000
+        }
+        // 结束时间未选择,则默认当天23点
+        if (!timeRange.end || timeRange.end == 0) {
+          var today = new Date().pattern('yyyy/MM/dd')
+          var day1 = 24 * 60 * 60 * 1000
+          var todayEnd = +new Date(today) + day1 - 1000
+          timeRange.end = Math.round(todayEnd / 1000)
+        }
+
         if (timeRange.start == 0 && timeRange.end == 0) {
           this.limitlist.selectTime = ''
           this.tagText.timeText = '收藏时间'
@@ -298,7 +319,14 @@ var vNode = {
             break
           }
           case 'exact': {
-            this.tagText.timeText = new Date(timeRange.start*1000).pattern('yyyy.MM.dd') + '~' + new Date(timeRange.end*1000).pattern('yyyy.MM.dd')
+            if(timeRange.start == 0 && timeRange.end == 0) {
+              this.limitlist.selectTime = ''
+              this.tagText.timeText = '收藏时间'
+              this.setToggle()
+              return
+            } else {
+              this.tagText.timeText = new Date(timeRange.start*1000).pattern('yyyy.MM.dd') + '~' + new Date(timeRange.end*1000).pattern('yyyy.MM.dd')
+            }
             break
           }
         }
@@ -314,13 +342,12 @@ var vNode = {
         this.limitlist.winnerPhone = parseInt(data.data)
       }
       isScreen = true
-      sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
+      this.limitlist.pageNum = 1
       this.setToggle()
       this.reLoadList(true)
     },
     // 取消按钮事件
     cancel: function(data) {
-      console.log(data)
       if(data.name == 'dateItem'){
         this.limitlist.selectTime = ''
         this.tagText.timeText = '收藏时间'
@@ -346,6 +373,7 @@ var vNode = {
     },
     // 刷新列表
     reLoadList: function(isScreen) {
+      console.log(isScreen)
       this.getList(isScreen)
     },
     // 关闭菜单

+ 47 - 44
src/web/staticres/common-module/collection/js/industry-mobile.js

@@ -1,55 +1,57 @@
 var industryComponentTemplate = `<div class="j-container">
-<div class="j-main unitTab">
-  <van-tabs type="card" class="unitType" v-model="active">
-    <van-tab title="全部">
-      <van-cell-group>
-        <van-cell
-        clickable
-        type="primary"
-        title="全选"
-        :class="{checkActive:checkedAll==true}"
-        @click="checkBoxAll"
-        >
-        <template #right-icon>
-          <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
-        </template>
-        </van-cell>
-      </van-cell-group>
-    </van-tab>
-    <van-tab v-for="(item, index) in tablist" :key="index">
-      <template #title>
-        <div class="tabtitle">
-          {{Object.keys(item)[0]}}
-        </div>
-        <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
-      </template>
-      <van-cell
+<div class="j-main">
+  <div class="unitTab">
+    <van-tabs type="card" class="unitType" v-model="active">
+      <van-tab title="全部">
+        <van-cell-group>
+          <van-cell
           clickable
+          type="primary"
           title="全选"
-          :class="{checkActive:item[Object.keys(item)[1]]==true}"
-          @click="checkAll(item)"
+          :class="{checkActive:checkedAll==true}"
+          @click="checkBoxAll"
           >
           <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
           </template>
-      </van-cell>
-      <van-cell-group>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+      <van-tab v-for="(item, index) in tablist" :key="index">
+        <template #title>
+          <div class="tabtitle">
+            {{Object.keys(item)[0]}}
+          </div>
+          <div class="optionnum" v-show="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
+        </template>
         <van-cell
-          v-for="(iitem, i) in item[Object.keys(item)[0]]"
-          clickable
-          label-disabled="false"
-          :key="i"
-          :class="{checkActive:iitem.type==true}"
-          :title="iitem.name"
-          @click="toggleCheck(iitem, item)"
-        >
-          <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
-          </template>
+            clickable
+            title="全选"
+            :class="{checkActive:item[Object.keys(item)[1]]==true}"
+            @click="checkAll(item)"
+            >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            </template>
         </van-cell>
-      </van-cell-group>
-    </van-tab>
-  </van-tabs>
+        <van-cell-group>
+          <van-cell
+            v-for="(iitem, i) in item[Object.keys(item)[0]]"
+            clickable
+            label-disabled="false"
+            :key="i"
+            :class="{checkActive:iitem.type==true}"
+            :title="iitem.name"
+            @click="toggleCheck(iitem, item)"
+          >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
+            </template>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+    </van-tabs>
+  </div>
 </div>
 <div class="j-footer">
   <div class="j-button-group">
@@ -245,6 +247,7 @@ var industryComponent = {
       }
     },
     resetAll:function() {
+      this.canClick = true
       let params = {
         name: 'industryItem',
         data: ''

+ 103 - 100
src/web/staticres/common-module/collection/js/keyword-mobile.js

@@ -1,55 +1,57 @@
 var keywordComponentTemplate = `<div class="j-container">
-<div class="j-main unitTab">
-  <van-tabs type="card" class="unitType" v-model="active">
-    <van-tab title="全部">
-      <van-cell-group>
-        <van-cell
-        clickable
-        type="primary"
-        title="全选"
-        :class="{checkActive:checkedAll==true}"
-        @click="checkBoxAll"
-        >
-        <template #right-icon>
-          <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
-        </template>
-        </van-cell>
-      </van-cell-group>
-    </van-tab>
-    <van-tab v-for="(item, index) in tablist" :key="index">
-      <template #title>
-        <div class="tabtitle">
-          {{Object.keys(item)[0]}}
-        </div>
-        <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
-      </template>
-      <van-cell
+<div class="j-main">
+  <div class="unitTab">
+    <van-tabs type="card" class="unitType" v-model="active">
+      <van-tab title="全部">
+        <van-cell-group>
+          <van-cell
           clickable
+          type="primary"
           title="全选"
-          :class="{checkActive:item[Object.keys(item)[1]]==true}"
-          @click="checkAll(item)"
+          :class="{checkActive:checkedAll==true}"
+          @click="checkBoxAll"
           >
           <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
           </template>
-      </van-cell>
-      <van-cell-group>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+      <van-tab v-for="(item, index) in tablist" :key="index">
+        <template #title>
+          <div class="tabtitle">
+            {{Object.keys(item)[0]}}
+          </div>
+          <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
+        </template>
         <van-cell
-          v-for="(iitem, i) in item[Object.keys(item)[0]]"
-          clickable
-          label-disabled="false"
-          :key="i"
-          :class="{checkActive:iitem.type==true}"
-          :title="iitem.name"
-          @click="toggleCheck(iitem, item)"
-        >
-          <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
-          </template>
+            clickable
+            title="全选"
+            :class="{checkActive:item[Object.keys(item)[1]]==true}"
+            @click="checkAll(item)"
+            >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            </template>
         </van-cell>
-      </van-cell-group>
-    </van-tab>
-  </van-tabs>
+        <van-cell-group>
+          <van-cell
+            v-for="(iitem, i) in item[Object.keys(item)[0]]"
+            clickable
+            label-disabled="false"
+            :key="i"
+            :class="{checkActive:iitem.type==true}"
+            :title="iitem.name"
+            @click="toggleCheck(iitem, item)"
+          >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
+            </template>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+    </van-tabs>
+  </div>
 </div>
 <div class="j-footer">
   <div class="j-button-group">
@@ -113,75 +115,75 @@ var keywordComponent = {
     getData: function(){
       const _this = this
       $.ajax({
-        url: '/subscribepay/afterPay/getUserInfo',
+        url: '/subscribepay/afterPay/getUserInfo?t=' + Date.now(),
         type:'POST',
         success: function(res){
-          console.log(res)
-          // this.initlist = res.userData.o_vipjy.a_items
-          let maxarr = []
-          if(_this.isvip) {
-            let data = res.userData.o_vipjy.a_items
-            data.forEach(function(item,index) {
-              let minarr = []
-              let keyname = item.s_item
-              let eachArr = item.a_key
-              eachArr.forEach(function(data, i){
-                data = {
-                  name: data.key[0],
+          if(res && res.userData) {
+            let maxarr = []
+            if(_this.isvip) {
+              let data = res.userData.o_vipjy.a_items
+              data.forEach(function(item,index) {
+                let minarr = []
+                let keyname = item.s_item
+                let eachArr = item.a_key
+                eachArr.forEach(function(data, i){
+                  data = {
+                    name: data.key[0],
+                    type: false
+                  }
+                  minarr.push(data)
+                })
+                let obj = {
+                  [keyname]: minarr,
                   type: false
                 }
-                minarr.push(data)
+                maxarr.push(obj)
               })
-              let obj = {
-                [keyname]: minarr,
-                type: false
-              }
-              maxarr.push(obj)
-            })
-            _this.tablist = maxarr
-            if(maxarr.length == 0) {
-              _this.active = 0
-            }else {
-              _this.active = 1
-            }
-          } else {
-            let initArr = [
-              {
-                a_key:res.userData.o_jy.a_key,
-                s_item: '未分类'
+              _this.tablist = maxarr
+              if(maxarr.length == 0) {
+                _this.active = 0
+              }else {
+                _this.active = 1
               }
-            ]
-            let data = initArr
+            } else {
+              let initArr = [
+                {
+                  a_key:res.userData.o_jy.a_key,
+                  s_item: '未分类'
+                }
+              ]
+              let data = initArr
 
-            console.log(data)
-            let maxarr = []
-            data.forEach(function(item,index) {
-              let minarr = []
-              let keyname = item.s_item
-              let eachArr = item.a_key
-              console.log(eachArr)
-              eachArr.forEach(function(data, i){
-                data = {
-                  name: data.key[0],
+              console.log(data)
+              let maxarr = []
+              data.forEach(function(item,index) {
+                let minarr = []
+                let keyname = item.s_item
+                let eachArr = item.a_key
+                console.log(eachArr)
+                eachArr.forEach(function(data, i){
+                  data = {
+                    name: data.key[0],
+                    type: false
+                  }
+                  minarr.push(data)
+                })
+                console.log(minarr)
+                let obj = {
+                  [keyname]: minarr,
                   type: false
                 }
-                minarr.push(data)
+                maxarr.push(obj)
               })
-              console.log(minarr)
-              let obj = {
-                [keyname]: minarr,
-                type: false
+              _this.tablist = maxarr
+              if(maxarr.length == 0) {
+                _this.active = 0
+              }else {
+                _this.active = 1
               }
-              maxarr.push(obj)
-            })
-            _this.tablist = maxarr
-            if(maxarr.length == 0) {
-              _this.active = 0
-            }else {
-              _this.active = 1
             }
+            _this.setState()
           }
-          _this.setState()
         },
         error: function(err){
           console.log(err)
@@ -300,6 +302,7 @@ var keywordComponent = {
       }
     },
     resetAll:function() {
+      this.canClick = true
       let params = {
         name: 'keywordItem',
         data: ''

+ 6 - 2
src/web/staticres/common-module/collection/js/money-mobile.js

@@ -151,7 +151,7 @@ var moneyComponent = {
   data:function () {
     return {
       colDate: 0,
-      selectTags: this.tags,
+      selectTags: JSON.parse(JSON.stringify(this.tags)),
       // 点击选择时间添加样式
       inputSelected: false,
       inputMap: {
@@ -219,7 +219,11 @@ var moneyComponent = {
       this.selectTags.forEach(v => (v.selected = false))
       this.inputSelected = false
       if (type) {
-        this.selectTags = this.tags
+        this.inputMap = {
+          start: '',
+          end: ''
+        }
+        this.selectTags = JSON.parse(JSON.stringify(this.tags))
       }
     },
     resetAll:function() {

+ 46 - 44
src/web/staticres/common-module/collection/js/notice-mobile.js

@@ -1,56 +1,58 @@
 // 公告类型
 var noticeComponentTemplate = `<div class="j-container">
-<div class="j-main unitTab">
-  <van-tabs type="card" class="unitType" v-model="active">
-    <van-tab title="全部">
-      <van-cell-group>
-        <van-cell
-        clickable
-        type="primary"
-        title="全选"
-        :class="{checkActive:checkedAll==true}"
-        @click="checkBoxAll"
-        >
-        <template #right-icon>
-          <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
-        </template>
-        </van-cell>
-      </van-cell-group>
-    </van-tab>
-    <van-tab v-for="(item, index) in tablist" :key="index">
-      <template #title>
-        <div class="tabtitle">
-          {{Object.keys(item)[0]}}
-        </div>
-        <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
-      </template>
-      <van-cell
-          :class="{checkActive:item[Object.keys(item)[1]]==true}"
+<div class="j-main">
+  <div class="unitTab">
+    <van-tabs type="card" class="unitType" v-model="active">
+      <van-tab title="全部">
+        <van-cell-group>
+          <van-cell
           clickable
+          type="primary"
           title="全选"
-          @click="checkAll(item)"
+          :class="{checkActive:checkedAll==true}"
+          @click="checkBoxAll"
           >
           <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="checkedAll"></van-checkbox>
           </template>
-      </van-cell>
-      <van-cell-group>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+      <van-tab v-for="(item, index) in tablist" :key="index">
+        <template #title>
+          <div class="tabtitle">
+            {{Object.keys(item)[0]}}
+          </div>
+          <div class="optionnum" v-if="selectNum(item)!=0">{{selectNum(item)}}/{{item[Object.keys(item)[0]].length}}</div>
+        </template>
         <van-cell
-          v-for="(iitem, i) in item[Object.keys(item)[0]]"
-          clickable
-          label-disabled="false"
-          :key="i"
-          :title="iitem.name"
-          :class="{checkActive:iitem.type==true}"
-          @click="toggleCheck(iitem, item)"
-        >
-          <template #right-icon>
-            <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
-          </template>
+            :class="{checkActive:item[Object.keys(item)[1]]==true}"
+            clickable
+            title="全选"
+            @click="checkAll(item)"
+            >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="item[Object.keys(item)[1]]"></van-checkbox>
+            </template>
         </van-cell>
-      </van-cell-group>
-    </van-tab>
-  </van-tabs>
+        <van-cell-group>
+          <van-cell
+            v-for="(iitem, i) in item[Object.keys(item)[0]]"
+            clickable
+            label-disabled="false"
+            :key="i"
+            :title="iitem.name"
+            :class="{checkActive:iitem.type==true}"
+            @click="toggleCheck(iitem, item)"
+          >
+            <template #right-icon>
+              <van-checkbox checked-color="#2ABED1" :bind-group="false" v-model="iitem.type" :name="iitem.name" ref="checkboxes" />
+            </template>
+          </van-cell>
+        </van-cell-group>
+      </van-tab>
+    </van-tabs>
+  </div>
 </div>
 <div class="j-footer">
   <div class="j-button-group">

+ 2 - 0
src/web/staticres/common-module/collection/js/tags-mobile.js

@@ -40,6 +40,7 @@ var tagsComponent = {
       } else {
         this.taglist.forEach(function(item,index) {
           item.type = false
+          this.canClick = true
         })
       }
     },
@@ -74,6 +75,7 @@ var tagsComponent = {
     },
     // 个人标签重置
     resetAll: function() {
+      this.canClick = true
       let params = {
         name: 'tagsItem',
         data: ''

+ 12 - 0
src/web/staticres/common-module/ent-search/ent-search-template.js

@@ -900,6 +900,9 @@ var vMainSearchComponent = new Vue({
           }
           console.log(tempParams)
           if (tempParams && tempParams.data) {
+            if (tempParams.data.start === '' && tempParams.data.end === '') {
+              return
+            }
             var tempDate = tempParams.data.exact
             this.selectDate = {
               startDate: tempParams.data.start,
@@ -923,6 +926,13 @@ var vMainSearchComponent = new Vue({
             if (this.conditionStrMap.publishtime === '_' || this.conditionStrMap.publishtime === 'all') {
               this.conditionStrMap.publishtime = ''
             }
+          } else {
+            this.selectDate = {
+              startDate: '',
+              endDate: '',
+              exact: 'all'
+            }
+            this.conditionStrMap.publishtime = ''
           }
           break
         }
@@ -966,6 +976,8 @@ var vMainSearchComponent = new Vue({
           }
           if (tempParams) {
             this.conditionStrMap.winner = tempParams.join(',')
+          } else {
+            this.conditionStrMap.winner = ''
           }
           break
         }

+ 46 - 0
src/web/staticres/common-module/ent-search/ent-search-template.prefixer.css

@@ -621,3 +621,49 @@
     z-index: 2051 !important;
 }
 
+
+#table tr:first-child div {
+    font-size: 0.26rem;
+    color: inherit;
+}
+#table tr:first-child {
+    background: #F5F6F7;
+    font-weight: 500;
+    font-size: 0.26rem;
+    color: #9B9CA3;
+}
+#table tr:first-child  td {
+    padding: 0.1rem;
+    text-align: center;
+}
+#table tr td {
+    padding: 0.24rem;
+    vertical-align:middle;
+    border: 1px solid #E5E5E5;
+}
+#table tr>td:first-child {
+    display: none;
+}
+#table tr div {
+    font-weight: 500;
+    font-size: 0.28rem;
+    line-height: 0.4rem;
+    color: #171826;
+    margin: 0 auto;
+}
+#table table tr>td:nth-child(2) div {
+    width: 3.4rem;
+}
+#table table tr>td:nth-child(6) div {
+    width: 2rem;
+}
+#table .one-line {
+    font-weight: 500;
+    font-size: 0.28rem;
+    line-height: 0.4rem;
+    color: #C0C4CC;
+    display: inline-block;
+    margin: 0 auto;
+    text-align: center;
+    width: 100%;
+}

+ 2 - 1
src/web/staticres/common-module/vipsubscribe/css/vip-size-template.css

@@ -19,7 +19,8 @@
 }
 .goods-size-template .goods-list.goods-active{
   background: url(../image/goods-checked.png) no-repeat center center #fff;
-  background-size: contain;
+  background-size: 100% 100%;
+  border-radius: 0;
 }
 .goods-size-template .goods-period{
   font-size: .26rem;

+ 2 - 0
src/web/staticres/css/follow.css

@@ -353,6 +353,8 @@ top:17px;
 .jynoticelist>div:first-of-type>.type{
 	margin: 0px;
     padding: 1px 5px;
+    width: 28px;
+    display: block;
 }
 .jynoticelist>.timeaxis{
 	position: absolute;

+ 7 - 4
src/web/staticres/css/wxsearch.css

@@ -1660,13 +1660,14 @@ body{
 	vertical-align: sub !important;
 }
 .detail{
-	font-size: 14px;
-	margin-top: 12px;
-	color: #646464;
 	padding-left: 0;
 	word-wrap: break-word;
 	word-break: break-all;
 	white-space: normal !important;
+    margin-top: 0.24rem;
+    font-size: 0.26rem;
+    line-height: 0.4rem;
+    color: #5F5E64;
 }
 .resnumb .two{
 	max-height:45px;
@@ -1799,7 +1800,8 @@ body{
 	width:60px;
 }
 #table table tr>td:nth-child(4) div{
-	width:56px;
+    min-width: 8em;
+	width:82px;
 	text-align: right;
 }
 #table table tr>td:nth-child(5) div{
@@ -1819,6 +1821,7 @@ body{
 }
 #table table tr>td:nth-child(9) div{
 	width:58px;
+    min-width: 6em;
 }
 #table tr td{
 	border: 1px solid #E0E0E0;

+ 4 - 0
src/web/staticres/frontRouter/pc/collection/css/index-pc.css

@@ -184,6 +184,10 @@
     font-size: 14px;
     color: #888;
     background-color: #f3fbff;
+}
+.collect-table-list tbody tr:hover {
+    background-color: #F5F6F7;
+    box-shadow: inset 0px -1px 0px rgb(0,0,0,.05);
     cursor: pointer;
 }
 .collect-table-list table tr td {

+ 13 - 0
src/web/staticres/js/ent-search-index-pc.js

@@ -407,6 +407,7 @@ var vm = new Vue({
                 if (res.data.list) {
                     res.data.list.forEach(function (d) {
                         d.company_shortname = _this.getShortName(d.company_name)
+                        d.randomBgc = _this.randomBgc()
                     })
                     if (this.power) {
                         this.listState.list = res.data.list || []
@@ -507,6 +508,18 @@ var vm = new Vue({
     }
 })
 
+;(function () {
+    var backUpLoginCallback = logic
+    logic = function (data, num) {
+        // do something
+        // 如果是当前页面已经使用过了,则只需要刷新power即可
+        if (data.result === 'ok') {
+            vm.getPower()
+        }
+        backUpLoginCallback(data, num)
+    }
+})()
+
 function tabHover () {
     $('#tab-zb').on('mouseover', function () {
         $(this).siblings('.el-tabs__active-bar').css({transform: 'translateX(0)'})

+ 2 - 2
src/web/staticres/js/selector/article-item-pc.js

@@ -1,6 +1,6 @@
 // var articleItemComponentTemplate = `
 // <div class="article-item">
-//     <div class="a-i-left a-i-title ellipsis">{{ title }}</div>
+//     <div class="a-i-left a-i-title ellipsis" v-html="title"></div>
 //     <div class="a-i-right">
 //         <div class="a-i-tags">
 //             <div
@@ -17,7 +17,7 @@
 // </div>
 // `
 
-var articleItemComponentTemplate = '<div class="article-item"><div class="a-i-left a-i-title ellipsis">{{ title }}</div><div class="a-i-right"><div class="a-i-tags"><div class="a-i-tag" v-for="(tag, index) in tags" :key="index">{{ tag }}</div></div><div class="a-i-time-container"><span class="icon-time" style="display: none;"></span><span class="icon-text">{{ dateFromNow(time * 1000) }}</span></div></div></div>'
+var articleItemComponentTemplate = '<div class="article-item"><div class="a-i-left a-i-title ellipsis" v-html="title"></div><div class="a-i-right"><div class="a-i-tags"><div class="a-i-tag" v-for="(tag, index) in tags" :key="index">{{ tag }}</div></div><div class="a-i-time-container"><span class="icon-time" style="display: none;"></span><span class="icon-text">{{ dateFromNow(time * 1000) }}</span></div></div></div>'
 
 var articleItemComponent = {
     name: 'article-item-pc',

+ 46 - 30
src/web/staticres/js/wxSupersearch.js

@@ -851,6 +851,9 @@ var SuperSearch = {
     SuperSearch.reqParam["pageNum"]++;//翻页请求
   },
   initDropload: function(hasNextPage,pgNum){
+    $("#supersearchPage .tabs-box").addClass("hidden")
+    $("#supersearchPage #selLable").removeClass("hidden");
+    $("#supersearchPage #selLable").show();
     $(".loading_").show();
     $("#wrapper").css('opacity', '0')
     $("#supersearchPage #working").removeClass("hidden");
@@ -927,21 +930,23 @@ var SuperSearch = {
           });
         }
       });
-    }, 10)
-
-    //判断是否是table  (2.7.5table只显示20条数据)
-    if(!sessionStorage.superSearch_showType){
-      if($(".newdialog .tab-box .sub-show-list").find("li.active").attr('dataVal')=="showlist"){
-        SuperSearch.isTable(false);
-      }else{
-        SuperSearch.isTable(true);
+      //判断是否是table  (2.7.5table只显示20条数据)
+      if(!sessionStorage.superSearch_showType){
+        if($(".newdialog .tab-box .sub-show-list").find("li.active").attr('dataVal')=="showlist"){
+          SuperSearch.isTable(false);
+        }else{
+          SuperSearch.isTable(true);
+        }
       }
-    }
 
-    if(!hasNextPage){
-      SuperSearch.noMoreData();
-      return;
-    }
+      if(!hasNextPage){
+        SuperSearch.noMoreData();
+        return;
+      }
+      if ($(".dropload-refresh").length) {
+        SuperSearch.dropload.opts.loadDownFn(SuperSearch.dropload)
+      }
+    }, 50)
   },
   clearSessionStorage: function(){
     if(!sessionStorage){
@@ -1324,7 +1329,7 @@ var SuperSearch = {
             $("#supersearchPage .app-layout-content-b #wrapper").scrollTop(0)
           }
           $(window).scrollTop(0);
-          SuperSearch.initDropload(data.hasNextPage,2);
+            SuperSearch.initDropload(data.hasNextPage,2);
         }
       },
       error: function(xhr,type){
@@ -1518,6 +1523,13 @@ var SuperSearch = {
       if(i>=20||pageNum!=1){
         continue
       }
+              var getDefaultLine = function (key) {
+                if (key || key.length) {
+                  return key
+                } else {
+                  return '<span class="one-line">-</span>'
+                }
+              }
       //拟建项目
       if(SuperSearch.subtype_proposed==SuperSearch.reqParam.subtype){
         var projectinfo = list[i].projectinfo;
@@ -1546,25 +1558,25 @@ var SuperSearch = {
         }
         TableHtml +='<tr s="'+href+'"  sid="'+list[i]._id+'" i="'+industry+'">'+
           '<td><div>'+index+'</div></td>'+
-          '<td><div style="width: 100px;text-align: center;">'+approvecode+'</div></td>'+
-          '<td><div style="width: 207px;text-align: left;">'+projectname+'</div></td>'+
-          '<td><div style="width: 200px;text-align: left;">'+approvecontent+'</div></td>'+
-          '<td><div style="width: 75px;text-align: left;">'+approvestatus+'</div></td>'+
-          '<td><div style="width: 75px;text-align: center;">'+approvetime+'</div></td>'+
-          '<td><div style="width: 75px;text-align: center;">'+diff+'</div></td>'+
+                  '<td><div style="width: 100px;text-align: center;">'+getDefaultLine(approvecode)+'</div></td>'+
+                  '<td><div style="width: 207px;text-align: left;">'+getDefaultLine(projectname)+'</div></td>'+
+                  '<td><div style="width: 200px;text-align: left;">'+getDefaultLine(approvecontent)+'</div></td>'+
+                  '<td><div style="width: 75px;text-align: left;">'+getDefaultLine(approvestatus)+'</div></td>'+
+                  '<td><div style="width: 75px;text-align: center;">'+getDefaultLine(approvetime)+'</div></td>'+
+                  '<td><div style="width: 75px;text-align: center;">'+getDefaultLine(diff)+'</div></td>'+
           '</tr>';
         //}
       }else{
         TableHtml +='<tr s="'+href+'"  sid="'+list[i]._id+'" i="'+(list[i].industry?list[i].industry:"")+'">'+
           '<td><div>'+index+'</div></td>'+
-          '<td><div>'+projectname+'</div></td>'+
-          '<td><div>'+(datatype==""?"":datatype+"公告")+'</div></td>'+
-          '<td><div>'+budget+'</div></td>'+
-          '<td><div>'+buyer+'</div></td>'+
-          '<td><div>'+bidopentime+'</div></td>'+
-          '<td><div>'+winner+'</div></td>'+
-          '<td><div>'+bidamount+'</div></td>'+
-          '<td><div>'+fullTime+'</div></td>'+
+                  '<td><div>'+getDefaultLine(projectname)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(datatype==""?"":datatype+"公告")+'</div></td>'+
+                  '<td><div>'+getDefaultLine(budget)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(buyer)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(bidopentime)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(winner)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(bidamount)+'</div></td>'+
+                  '<td><div>'+getDefaultLine(fullTime)+'</div></td>'+
           '</tr>';
       }
     }
@@ -1710,7 +1722,7 @@ var SuperSearch = {
     if(SuperSearch.subtype_proposed==SuperSearch.reqParam.subtype){
       $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div style='width: 100px;'>项目代码</div></td><td><div style='width: 207px;'>项目名称</div></td><td><div style='width: 200px;'>审批事项</div></td><td><div style='width: 75px;'>审批结果</div></td><td><div style='width: 75px;'>审批时间</div></td><td><div style='width: 75px;'>发布时间</div></td></tr>");
     }else{
-      $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算<br>(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
+      $("#supersearchPage #table .content").html("<tr><td><div>序号</div></td><td><div>项目名称</div></td><td><div>公告类型</div></td><td><div>预算(万元)</div></td><td><div>招标单位</div></td><td><div>开标时间</div></td><td><div>中标单位</div></td><td>中标金额<br>(万元)</td><td><div>发布时间</div></td></tr>");
     }
     $("#supersearchPage #table .content").append(TableHtmlobj);
 
@@ -1758,7 +1770,11 @@ var SuperSearch = {
   noMoreData: function(){
     SuperSearch.noMoreCache = true;
     // 锁定
-    SuperSearch.dropload.lock();
+    try {
+      SuperSearch.dropload.lock();
+    } catch (e) {
+      console.warn('获取dropload错误')
+    }
     // 无数据
     SuperSearch.dropload.noData();
     SuperSearch.dropload.resetload();

+ 13 - 3
src/web/staticres/vipsubscribe/js/historypush.js

@@ -58,13 +58,20 @@ var vm = new Vue({
     }
   },
   created () {
+    this.getUserRoot()
+    if (firstTime) {
+      firstTime = `${firstTime}_${firstTime}`
+      this.time = firstTime
+      this.setPushTime(firstTime)
+    } else {
+      firstTime = this.time
+    }
+
     var recover = this.recover()
     if (!recover) {
-      this.getUserRoot()
       setTimeout(() => {
-        // 如果订阅消息进来时间不清空
+        // 如果订阅消息进来时间不
         if(this.time !== '') {
-          sessionStorage.setItem(this.sessStorageKey, JSON.stringify(this.$data))
           this.setPushTime(this.time)
           this.revorceOtherData()
         }else{
@@ -74,6 +81,9 @@ var vm = new Vue({
       })
     }
   },
+  mounted () {
+    utils.iosBackRefresh()
+  },
   methods: {
     recover: function () {
       let _this = this

+ 2 - 2
src/web/templates/common/commonRules.html

@@ -1,7 +1,7 @@
 <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/vipsubscribe/css/rights_page.css?v={{Msg "seo" "version"}}'>
 <div class="vip-rights">
   <table class="table">
-    <caption class="table_title b-line">超级订阅2.0版专属权益</caption>
+    <caption class="table_title b-line">超级订阅专属权益</caption>
     <tr>
       <td class="rights-item" colspan="2">
         <p class="rights-title">超级订阅</p>
@@ -64,7 +64,7 @@
     </tr>
   </table>
   <div class="table">
-    <div class="table_title b-line">开通超级订阅2.0版,解锁以下权限</div>
+    <div class="table_title b-line">开通超级订阅,解锁以下权限</div>
     <div>
       <div class="grid-item">
         <p class="grid-title">信息权益</p>

+ 1 - 1
src/web/templates/common/pchead.html

@@ -928,7 +928,7 @@
             }
 
             // 导航栏是否固定
-            var noFixedArr = ['/article/indexcontent','/article/content']
+            var noFixedArr = ['/article/indexcontent','/article/content', '/article/mailprivate']
             var hasPage = noFixedArr.some(function (v) {
                 return $href.indexOf(v) !== -1
             })

+ 1 - 1
src/web/templates/frontRouter/pc/collection/sess/index.html

@@ -187,7 +187,7 @@
                             <tbody>
                                 <tr v-for="(item, index) in listState.list" :key="item._id" @click="toListDetail(item)">
                                     <td width="48">${ item.index }</td>
-                                    <td width="315" class="tt-l">${ item.title }</td>
+                                    <td width="315" class="tt-l" v-html="item.title"></td>
                                     <td width="84">${ calcArticleType(item.type) }</td>
                                     <td width="73" class="tt-r">${ calcMoney(item.budget) }</td>
                                     <td width="181" class="tt-l">${ item.buyer }</td>

+ 7 - 2
src/web/templates/frontRouter/wx/collection/sess/ent_portrait.html

@@ -76,7 +76,7 @@
     .vip_openDialog .van-dialog__content .vip_head .vip_extend{
         font-size: 0.26rem;
     }
-    .van-overlay{
+    .vipOverlay.van-overlay{
         height: 85%;
         background-color: rgba(255,255,255,0);
         backdrop-filter: blur(5px);
@@ -87,6 +87,10 @@
         padding: 0 0.62rem;
         display: flex;
         justify-content: space-between;
+        overflow: initial;
+    }
+    .vip_openDialog .van-hairline--top::after{
+        border-top-width: 0;
     }
     .vip_openDialog .van-button.van-button--default{
         flex: none;
@@ -120,6 +124,7 @@
         :before-close="beforeClose"
         class="vip_openDialog"
         :overlay="overlayShow"
+        overlay-class="vipOverlay"
         :confirm-button-text="bidcollPowerInfo.btntext"
         cancel-button-text="再想一想"
         >
@@ -384,7 +389,7 @@
                                 <span class="c-time">最近合作日期</span>
                             </div>
                             <div class="progress-bar-container">
-                                <div class="progress-bar-item" v-for="(item,index) in c.list" :key="index">
+                                <div class="progress-bar-item" v-for="(item,index) in c.list" :key="index" v-show="item.name">
                                     <div class="item-label">
                                         <span class="ellipsis-2 item-name">${item.name}</span>
                                         <span class="item-count">${item.count ? item.count + '个' : item.count}</span>

+ 16 - 6
src/web/templates/frontRouter/wx/collection/sess/index.html

@@ -34,7 +34,7 @@
   <div class="j-container">
     {{include "/big-member/header.html"}}
     <div class="j-main collection" id="myCollection" v-cloak ref="main">
-      <div class="j-container" id="date-picker-other-box" v-if="listState.list.length!==0">
+      <div class="j-container" id="date-picker-other-box" v-if="!getParamsStatus||listState.list.length!==0">
         <div class="j-main">
           <div class="search-container van-fade-an" ref="searchContainer">
             <div class="listaction">
@@ -66,7 +66,7 @@
               <phone-component :data="params.winnerData" @confirm="confirm"></phone-component>
             </van-dropdown-item>
           </van-dropdown-menu>
-          <div class="list-mian" ref="jList">
+          <div class="list-mian" ref="jList" v-if="listState.list.length!==0">
             <van-list
               v-model="listState.loading"
               :finished="listState.finished"
@@ -75,9 +75,7 @@
             >
               <div class="collec_li" v-for="(item, index) in listState.list" :key="index" @click="linkRouter(item._id)">
                 <div class="collec_head">
-                  <div class="collec_title ellipsis-2">
-                    ${item.title}
-                  </div>
+                  <div class="collec_title ellipsis-2" v-html="item.title"></div>
                   <div class="collec_star" @click="collecClick(event,item._id)">
                     <span class="shoucang" v-if="condition"></span>
                     <!-- <span class="weishoucang" v-if="!condition"></span> -->
@@ -95,9 +93,21 @@
               </div>
             </van-list>
           </div>
+          <div class="j-container" v-if="listState.list.length==0">
+            <div class="j-main">
+              <div class="emptycom">
+                <div class="emptyimg">
+                  <img src='{{Msg "seo" "cdn"}}/common-module/collection/image/img-empty.png?v={{Msg "seo" "version"}}' alt="">
+                </div>
+                <div class="emptytext">
+                  暂无数据
+                </div>
+              </div>
+            </div>
+          </div>
         </div>
       </div>
-      <div class="j-container" v-if="listState.list.length==0">
+      <div class="j-container" v-if="getParamsStatus&&listState.list.length==0">
         <div class="j-main">
           <div class="emptycom">
             <div class="emptyimg">

+ 3 - 3
src/web/templates/pc/biddetail_rec.html

@@ -538,9 +538,9 @@ function isWechat() {
             var params = {
               lids: lids,
               laction: 'S',
-              binfo: {
-                bid: {{.T.obj._id}}
-              }
+              binfo: [
+                { bid: {{.T.obj._id}} }
+              ]
             } 
             // console.log(params)
             $('.tags-box').hide(function() {

+ 1 - 1
src/web/templates/pc/entsearchindex.html

@@ -187,7 +187,7 @@
                             @click="toDetail(item.id)"
                             :key="item.id">
                             <div class="ei-i-left">
-                                <div class="ei-i-l-container" :class="randomBgc()">${ item.company_shortname ? item.company_shortname.slice(0,4) : item.company_name.slice(0,4) }</div>
+                                <div class="ei-i-l-container" :class="item.randomBgc">${ item.company_shortname ? item.company_shortname.slice(0,4) : item.company_name.slice(0,4) }</div>
                             </div>
                             <div class="ei-i-right">
                                 <div class="ei-r-title-container flex">

+ 15 - 0
src/web/templates/pc/reloadTo.html

@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta http-equiv="refresh" content="0;url={{.T.transfer}}">
+    <title>跳转中</title>
+</head>
+<body>
+<script>
+    window.onload = function () {
+        window.location.href ={{.T.transfer}}
+    }
+</script>
+</body>
+</html>

+ 36 - 24
src/web/templates/weixin/historypush.html

@@ -369,7 +369,7 @@
         .vip_report > span > a {
             display: none;
             position: absolute;
-            top: -4.5px;
+            top: 14px;
             right: 0px;
             background-color: #FE737A;
             width: 8px;
@@ -523,11 +523,9 @@
             color: #fff;
             text-decoration: none;
         }
-        .iosMeau{
-            height: 100%;
-        }
        #dropDownItemGroup .van-dropdown-item__content {
-         max-height: 70vh;
+         max-height: 76vh;
+         overflow: hidden;
        }
     </style>
 </head>
@@ -546,7 +544,9 @@
             <div class="tab_right">
                 <div class="vip_report" style="display: none;">
                     <span class="report_book"></span>
-                    <span style="font-size: 15px;font-weight: 500;color: #171826;">报告</span>
+                    <span style="font-size: 15px;font-weight: 500;color: #171826;">
+                        <a></a>报告
+                    </span>
                 </div>
                 <div class="normal_set" id="normal_set">
                     <div class="normal_set_box" style="display: flex;align-items: center;">
@@ -800,6 +800,9 @@
 <script src='{{Msg "seo" "cdn"}}/common-module/collection/js/keyword-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Msg "seo" "cdn"}}/common-module/collection/js/notice-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Msg "seo" "cdn"}}/common-module/keep-tags/keep-tags-template.js?v={{Msg "seo" "version"}}'></script>
+<script>
+    var firstTime = {{.T.stime}}; // 时间
+</script>
 <script src='{{Msg "seo" "cdn"}}/vipsubscribe/js/historypush.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/mapArea.js?v={{Msg "seo" "version"}}'></script>
@@ -817,7 +820,6 @@
 <script>
   // @手机号绑定及账号合并 2021/1/25
   $("#toKeySet").on('click', tokeysetForFree)
-
   /*
       * money unit for zyh @date 2020/6/5
       * */
@@ -917,6 +919,7 @@
           //});
           // TODO 缺陷疑问
           $(".wx_header_right .sub_manager").click(function () {
+            sessionStorage.setItem(vm.sessStorageKey, JSON.stringify(vm.$data))
               if (!isVipSub) {
                 tokeysetForFree()
               } else {
@@ -937,15 +940,7 @@
       var isOnTail = 0;//是否试用
       var isExpire = 0;//即将到期的时间
       var userId = "";
-      //
-      var firstTime = {{.T.stime}}; // 时间
-    //   firstTime = '1624377600'
-      if (firstTime != "") {
-          firstTime = firstTime  +'_'+ firstTime
-          vm.time = firstTime
-      } else {
-          firstTime = vm.time
-      }
+
       var selectCity = vm.area; // 地区
       var selectIndustry = vm.subscopeclass // 行业
       var selectCate = vm.buyerclass // 采购单位
@@ -1003,6 +998,20 @@
               if (sessionStorage.closeAdvert == "true") {
                   closeAdvert = true
               }
+              // 判断是否需要修改某个收藏的状态
+              var listCollSessionId = sessionStorage.getItem('listCollSessionId')
+              if (listCollSessionId){
+                  var listCollSessionBool = sessionStorage.getItem('listCollSessionBool')
+                  if (dataCache && $.isArray(dataCache)) {
+                      dataCache.forEach(function (item) {
+                          if (item._id == listCollSessionId) {
+                              item.collection = listCollSessionBool
+                          }
+                      })
+                      sessionStorage.removeItem('listCollSessionId')
+                      sessionStorage.removeItem('listCollSessionBool')
+                  }
+              }
               $("#list>*").remove();
               count = 0;
               firstPage = dataCache;
@@ -1233,6 +1242,7 @@
                   }
               });
               $(".vip_report").click(function () {
+                sessionStorage.setItem(vm.sessStorageKey, JSON.stringify(vm.$data))
                   window.location.href = "/vipreport/page/subreport.html";
               });
           }
@@ -1359,12 +1369,6 @@
               if (countLength > 1) {
                   paddingLeft = (countLength + 1) * 9;
               }
-              //收藏处理
-              if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==obj["_id"]){
-                obj["collection"] = sessionStorage.getItem('listCollSessionBool');
-        				sessionStorage.removeItem('listCollSessionId')
-        				sessionStorage.removeItem('listCollSessionBool')
-              }
               //是否浏览过
               var visited = "";
               if (obj.ca_isvisit == 1) {
@@ -1504,12 +1508,20 @@
             },
             changeKeepStatus (type, that) {
                 changeCollectStatus(type, that)
+                changeCollectDataStatus(type, this.nowOpenBid)
             }
         }
     })
-
+    function changeCollectDataStatus (type, id) {
+        if (dataCache && $.isArray(dataCache)) {
+            dataCache.forEach(function (item) {
+                if (item._id == id) {
+                    item.collection = type ? 1 : 0
+                }
+            })
+        }
+    }
     function changeCollectStatus(type, that) {
-        //console.log(type, that)
         if(type) {
             $(that).find('.shoucang').show()
             $(that).find('.weishoucang').hide()

+ 2 - 2
src/web/templates/weixin/search/tabSearch.html

@@ -249,7 +249,7 @@
     .search-win-box {
         width: auto;
         height: 0.8rem;
-        margin: 0.18rem 0.24rem;
+        margin: 0.18rem 0.32rem;
         padding-left: 0.32rem;
     }
     #select-win-list li {
@@ -760,7 +760,7 @@
                             </div>
                             <area-component ref="areaComponent" @select="updateScrollTop" v-show="activeTabIndex === 4"></area-component>
                             <money-component extra="万元" :tags="moneyTags" ref="moneyComponent"  v-show="activeTabIndex === 2"></money-component>
-                            <div v-show="activeTabIndex === 6">
+                            <div v-show="activeTabIndex === 6"  style="min-height: 4.8rem">
                                 <ul class="ent-search-list-box" id="select-win-list"></ul>
                                 <form data-name="input-clear-box" class="search-win-box" action="javascript:return true">
                                     <input type="search" id="search-win-input" placeholder="输入中标企业名称">

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

@@ -130,7 +130,7 @@
                     <div class="tip-title l-line">续费说明</div>
                     <div class="tip-content">
                         <div>1、仅支持原套餐延长周期续费,不支持套餐变更(含增加、减少、更改)原订阅的省份、城市、行业。 <br />续费费用=续费周期(按月/年)/原地区/原行业</div>
-                        <div>2、套餐周期内,用户也可以选择升级超级订阅2.0版享受更多权益。</div>
+                        <div>2、套餐周期内,用户也可以选择升级超级订阅享受更多权益。</div>
                     </div>
                 </div>
             </ul>