Переглянути джерело

Merge branch 'master' into feature/v4.8.87

lianbingjie 1 рік тому
батько
коміт
08934f2b1f

+ 7 - 4
src/jfw/front/index.go

@@ -40,6 +40,7 @@ var (
 		14: "/list/xxxm/",
 		15: "/list/gjxm/",
 		16: "/list/sjxm/",
+		8:  "/list/stype/ZFCG.html",
 	}
 )
 
@@ -202,12 +203,12 @@ func (nIndex *NewIndex) NewIndex() error {
 			"url":      fmt.Sprintf("%s", BiddingTypeUrl[v]),
 		})
 	}
-	//采购意向
-	procure, procureName := GetIndexProjectList(5, 10)
+	//政府采购
+	procure, procureName := GetIndexProjectList(8, 10)
 	bidTrends = append(bidTrends, map[string]interface{}{
 		"listData": procure,
 		"types":    procureName,
-		"url":      fmt.Sprintf("%s", BiddingTypeUrl[5]),
+		"url":      fmt.Sprintf("%s", BiddingTypeUrl[8]),
 	})
 	//项目分包
 	projectPage, typesName := GetIndexProjectList(6, 10)
@@ -309,7 +310,7 @@ func FillingBiddingBaseFields(ctx context.Context, res []map[string]interface{},
 			bidIdStrings = append(bidIdStrings, bidId)
 		}
 	}
-	bidRes, _ := g.DB().Query(ctx, fmt.Sprintf(`SELECT * FROM new_bidList WHERE bid_id IN ('%s')`, strings.Join(bidIdStrings, "','")))
+	bidRes, _ := g.DB().Query(ctx, fmt.Sprintf(`SELECT * FROM new_bidList WHERE toptype !='拟建' AND toptype !='采购意向' AND bid_id IN ('%s')`, strings.Join(bidIdStrings, "','")))
 	if bidRes.IsEmpty() {
 		return nil
 	}
@@ -376,6 +377,8 @@ func GetIndexProjectList(typ, pageSize int) (data []map[string]interface{}, type
 		types = "国家级项目"
 	case 16:
 		types = "省级项目"
+	case 8:
+		types = "政府采购"
 	}
 	redidKey := fmt.Sprintf("pcIndexProjectZone_%d", typ)
 	redisArr, _ := redis.Get(RedisNameNew, redidKey).([]interface{})

+ 1 - 0
src/web/staticres/frontRouter/pc/cooperation/css/index.css

@@ -93,6 +93,7 @@
 }
 
 .cooperation-type{
+  overflow: hidden;
   margin-top: 72px;
   background: #F7F9FC;
   height: 1024px;

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

@@ -151,10 +151,10 @@
             <div class="search-header">
                 <div class="search-header-tab">
                     <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/supsearch/index.html')">招标采购公告</span>
-                    <span class="tab-item tab-active" @click="location.replace('/jylab/entSearch/index.html')">企业搜索</span>
+                    <span class="tab-item tab-active">企业搜索</span> <!-- @click="location.replace('/jylab/entSearch/index.html')" -->
                     <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/purSearch/index.html')">采购单位搜索</span>
                     <span class="tab-item" v-show="!inIframe" @click="location.replace('/swordfish/page_web_pc/search/issued')">供应搜索</span>
-                    <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/supsearch/index.html?tab=2')">超前项目查询</span>
+                    <span class="tab-item" v-show="!inIframe && isLogin" @click="location.replace('/jylab/supsearch/index.html?tab=2')">超前项目查询</span>
                     <!-- <span class="tab-item" v-show="!isLogin && !inIframe" @click="location.replace('/swordfish/page_web_pc/search/issued')">拟在建项目查询</span> -->
                     <div class="search-tab-right" v-show="isLogin && !inIframe">
                       <button class="page-back-btn" @click="goBack">返回</button>

+ 9 - 4
src/web/templates/pc/newIndex.html

@@ -209,16 +209,21 @@
     </div>
   </section>
 
-  <script defer src="//cdn-common.jianyu360.com/cdn/lib/vue/2.7.14/vue.min.js"></script>
-  <script defer src="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/index.js"></script>
-  <script defer src=//cdn-common.jianyu360.com/cdn/lib/svga-web/svga.min.js></script>
+  <script src="//cdn-common.jianyu360.com/cdn/lib/vue/2.7.14/vue.min.js"></script>
+  <script src=//cdn-common.jianyu360.com/cdn/lib/svga-web/svga.min.js></script>
+  <script src="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/index.js"></script>
   <script defer src='{{Msg "seo" "cdn"}}/js/dateFunc.js?v={{Msg "seo" "version"}}'></script>
   <script defer src='{{Msg "seo" "cdn"}}/js/pc-message-new.js?v={{Msg "seo" "version"}}'></script>
   <script src="https://cdn-common.jianyu360.com/cdn/lib/swiper/5.4.2/swiper.min.js"></script>
   <script type="text/javascript" src='{{Msg "seo" "cdn"}}/common-module/public/js/china-map-data.js?v={{Msg "seo" "version"}}'></script>
   <script type="text/javascript" src='{{Msg "seo" "cdn"}}/js/index/seo_helper.js?v={{Msg "seo" "version"}}'></script>
   <script type="text/javascript" src='{{Msg "seo" "cdn"}}/js/index/index_swiper.js?v={{Msg "seo" "version"}}'></script>
-
+  <!-- 活动弹窗 -->
+  {{include "/pc/template/index/activity-dialog.html"}}
+  <!-- 新增底部悬浮广告位 -->
+  {{include "/pc/template/index/index-bottom-float-ad.html"}}
+  <!-- 新用户弹窗 -->
+  <!-- include "/common/pc_ad_dialog.html" -->
   <script type="text/javascript" src='{{Msg "seo" "cdn"}}/js/index/index_2023.12.js?v={{Msg "seo" "version"}}'></script>
   <script defer src=//cdn-common.jianyu360.com/cdn/lib/echarts/4.8.0/echarts.min.js></script>
   <script defer type="text/javascript" src='{{Msg "seo" "cdn"}}/js/index/index_charts.js?v={{Msg "seo" "version"}}'></script>

+ 2 - 2
src/web/templates/pc/pursearchindex.html

@@ -101,9 +101,9 @@
                 <div class="search-header-tab">
                   <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/supsearch/index.html')">招标采购公告</span>
                   <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/entSearch/index.html')">企业搜索</span>
-                  <span class="tab-item tab-active" @click="location.replace('/jylab/purSearch/index.html')">采购单位搜索</span>
+                  <span class="tab-item tab-active">采购单位搜索</span> <!-- @click="location.replace('/jylab/purSearch/index.html')" -->
                   <span class="tab-item" v-show="!inIframe" @click="location.replace('/swordfish/page_web_pc/search/issued')">供应搜索</span>
-                  <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/supsearch/index.html?tab=2')">超前项目查询</span>
+                  <span class="tab-item" v-show="!inIframe && isLogin" @click="location.replace('/jylab/supsearch/index.html?tab=2')">超前项目查询</span>
                   <!-- <span class="tab-item" v-show="!inIframe" @click="location.replace('/jylab/entSearch/index.html')">拟在建项目查询</span> -->
                   <div class="search-tab-right" v-show="isLogin && !inIframe">
                     <button class="page-back-btn" @click="goBack">返回</button>

+ 45 - 7
src/web/templates/pc/supsearch.html

@@ -1975,7 +1975,13 @@
         searchInnerVue.$refs.areaRefs.shoWcity=false//隐藏地市
       }catch(e){
       }
-      const searchDoms = ['.tab-item-ent-search', '.tab-item-buyer-search', '.tab-item-supply-search', '.tab-item-recommend-search', '.tab-item-nzj-search']
+      const searchDoms = [
+        '.tab-item-ent-search',
+        '.tab-item-buyer-search',
+        '.tab-item-supply-search',
+        // '.tab-item-recommend-search',
+        '.tab-item-nzj-search'
+      ]
       for (let i = 0; i < searchDoms.length; i++) {
         $(searchDoms[i]).show()
       }
@@ -2028,7 +2034,14 @@
       }catch(e){
       }
       searchInnerVue.islogin=true
-      const searchDoms = ['.tab-item-ent-search', '.tab-item-buyer-search', '.tab-item-supply-search', '.tab-item-recommend-search', '.tab-item-nzj-search', '.search-tab-right']
+      const searchDoms = [
+        '.tab-item-ent-search',
+        '.tab-item-buyer-search',
+        '.tab-item-supply-search',
+        '.tab-item-recommend-search',
+        '.tab-item-nzj-search',
+        '.search-tab-right'
+      ]
       for (let i = 0; i < searchDoms.length; i++) {
         if(goTemplateData.inIframe) {
           $(searchDoms[i]).hide()
@@ -2036,6 +2049,9 @@
           $('.search-tab-item-0').show()
         }
       }
+      if (searchInnerVue.islogin && !goTemplateData.inIframe) {
+        $('.tab-item-recommend-search').show()
+      }
       /**
        * @date 2022/12/15 山川环境嵌入搜索
        */
@@ -3261,21 +3277,38 @@ function checkTagDisabled () {
           goHome()
         }
       },
+      formDataToParams: function(formData) {
+      	// 解析字符串为参数对象
+      	var params = {};
+      	formData.split('&').forEach(function(pair) {
+      		var parts = pair.split('=');
+      		var key = decodeURIComponent(parts[0]);
+      		var value = decodeURIComponent(parts[1]);
+      		params[key] = value;
+      	});
+      	return params
+      },
       goWorkSpace: function () {
+        // 填坑路之-非工作台跳转工作台未回显筛选条件
+        // 1.接口未传form表单参数(后端存模板缓存使用)
+        // 2.跳转工作台链接未加?goback参数(控制是否取模板缓存使用)
+        var formAjax = $("#zbSeatchT").serialize();
+    	  var params = this.formDataToParams(formAjax)
         $.ajax({
           url: '/front/dataExport/superSearchExport',
           type: 'POST',
           headers: {
             'jump_source': '1'
-          }
+          },
+          data: params
         })
         var formNode_ = $('#zbSeatchT')
         var goHref_ = location.origin + '/jylab/supsearch/index.html'
         if(getParam('tab') === '2') {
           // 超前项目查询
-          window.location.replace('/page_workDesktop/work-bench/page?link=' + encodeURIComponent(goHref_ + '?tab=2&' + formNode_.serialize()))
+          window.location.replace('/page_workDesktop/work-bench/page?link=' + encodeURIComponent(goHref_ + '?goback&tab=2&' + formNode_.serialize()))
         } else {
-          window.location.replace('/page_workDesktop/work-bench/page?link=' + encodeURIComponent(goHref_ + '?' + formNode_.serialize()))
+          window.location.replace('/page_workDesktop/work-bench/page?link=' + encodeURIComponent(goHref_ + '?goback&' + formNode_.serialize()))
         }
       },
       addParamsToFormUrl: function() {
@@ -5042,8 +5075,13 @@ function checkTagDisabled () {
       },
       // 全部、招标采购搜索公告、超前项目切换
       onSearchTab: function (item) {
-        if(item === 1) {
-          location.replace('/jylab/supsearch/index.html')
+        if (item === this.searchTab) {
+          return
+        }
+        if (!goTemplateData.inIframe) {
+          if(item === 1) {
+            location.replace('/jylab/supsearch/index.html')
+          }
         }
         this.searchTab = item
         // if (item !== 0) {

+ 146 - 0
src/web/templates/pc/template/index/activity-dialog.html

@@ -0,0 +1,146 @@
+<div class="pc_tc" id="pc-index-alert">
+  <div id="index_tc"  class="tc" dataUrl="">
+    <div id="index_tc_svga"></div>
+    <div class="tc_button"></div>
+  </div>
+  <img src="/images/pc/close2x.png" id="close2x">
+</div>
+<div class="tans"></div>
+<div class="live_preheat">
+  <div>
+    <img src="/qr?url=%2factive%2flivePage%2findex" class="live_preheat_qr"/>
+    <img src='{{Msg "seo" "cdn"}}/images/pc/live_preheat_close.png' class="live_preheat_close"/>
+  </div>
+</div>
+
+<script>
+  $(function () {
+    // 弹窗(优化一下?)
+    var times = new Date().getTime();
+    var day = new Date().getDay();
+    var activestart = {{.T.activestart}}
+    var adv_url = "";
+    var adv_img = "";
+    var adv_margin_left = "310";
+    var adv_margin_top = "110";
+    var adv_width = "620";
+    var adv_height = "210";
+    var adv_background_opacity = 0.6;
+    {{$s:=(Ad "jy-pc-index-tap" -1 .Host)}}
+    {{if $s}}
+    var ADList={{$s}}
+    if (ADList.length>0){
+      for (var i=0;i<ADList.length;i++ ){
+        var AD=ADList[i]
+        if(AD.s_link){
+          adv_url = AD.s_link
+        }
+        if(AD.s_pic){
+          adv_img = AD.s_pic
+        }
+        if (AD.o_extend != undefined) {
+          var nowTime = new Date().getTime();
+          if (AD.o_extend.startTime!=undefined){
+            var stArr = AD.o_extend.startTime.split("-");
+            if (stArr.length==6){
+              var stStr = stArr[0]+"-"+stArr[1]+"-"+stArr[2]+" "+stArr[3]+":"+stArr[4]+":"+stArr[5]
+              var stTime = new Date(stStr.replace(/-/g, '/')).getTime();
+              //未开始
+              if (stTime>nowTime){
+                continue
+              }
+            }
+          }
+          if (AD.o_extend.endTime!=undefined){
+            var etArr = AD.o_extend.endTime.split("-");
+            if (etArr.length==6){
+              var etStr = etArr[0]+"-"+etArr[1]+"-"+etArr[2]+" "+etArr[3]+":"+etArr[4]+":"+etArr[5]
+              var etTime = new Date(etStr.replace(/-/g, '/')).getTime();
+              //已结束
+              if (etTime<nowTime){
+                continue
+              }
+            }
+          }
+          if (AD.o_extend.width!=undefined){
+            adv_width = AD.o_extend.width;
+            adv_margin_left = parseInt(adv_width)/2;
+          }
+          if (AD.o_extend.height!=undefined){
+            adv_height = AD.o_extend.height;
+            adv_margin_top =  parseInt(adv_height)/2;
+          }
+          if (AD.o_extend.opacity!=undefined){
+            adv_background_opacity = AD.o_extend.opacity;
+          }
+        }
+        if (adv_img!=""){
+          $(".tc_button").remove();
+          $("#pc-index-alert").removeClass("pc_tc").addClass("pc_tc_master").css({"margin-top":"-"+adv_margin_top+"px","margin-left":"-"+adv_margin_left+"px"});
+          $("#index_tc").removeClass("tc").addClass("tc_master").css({
+            "width":adv_width+"px",
+            "height":adv_height+"px",
+            // "background":"url('"+adv_img+"')",
+            "background-size":"cover"}).attr("dataurl",adv_url);
+          // SVGA 动画支持
+          if (adv_img.indexOf('.svga') !== -1) {
+            $('#index_tc_svga').css({
+              "width":adv_width+"px",
+              "height":adv_height+"px"
+            })
+            var player = new SVGA.Player('#index_tc_svga');
+            var parser = new SVGA.Parser('#index_tc_svga');
+            parser.load(adv_img, function(videoItem) {
+              player.setVideoItem(videoItem);
+              player.startAnimation();
+            })
+          } else {
+            $("#index_tc").css("background-image", "url('"+adv_img+"')")
+          }
+          $(".tans").css({"opacity":adv_background_opacity});//遮罩层透明度
+          break;
+        }
+      }
+    }
+    $("#close2x").click(function () {
+      localStorage.setItem("tc", day)
+      $("#index_tc").animate({
+        opacity: "hide"
+      }, "slow");
+      $("#close2x").animate({
+        opacity: "hide"
+      }, "slow");
+      $(".tans").animate({
+        opacity: "hide"
+      }, "slow");
+    });
+    $("#index_tc").on("click", function () {
+      var dataUrl = $(this).attr("dataUrl")
+      if (dataUrl!=""){
+        localStorage.setItem("tc", day)
+        window.location.href = dataUrl;
+      }
+    })
+    {{end}}
+
+    // 首页活动弹窗迁移至工作桌面首页,此处活动弹窗不再展示
+    var showDay = localStorage.tc;
+    if(adv_img!=""){
+      if(localStorage.tc === undefined){
+        $("#index_tc").css("display","block");
+        $("#close2x").css("display","block");
+        $(".tans").css("display","block");
+      }else{
+        if(showDay != day){
+          $("#index_tc").css("display","block");
+          $("#close2x").css("display","block");
+          $(".tans").css("display","block");
+        }else{
+          $("#index_tc").css("display","none");
+          $("#close2x").css("display","none");
+          $(".tans").css("display","none");
+        }
+      }
+    }
+  })
+</script>

+ 1 - 1
src/web/templates/pc/template/index/ent-service-module.html

@@ -33,7 +33,7 @@
       {{if $ad_5}}
       <div class="service-flow-chart">
         {{range $ad := $ad_ent_service}}
-        <a class="service-flow-chart-link" {{if $ad.S_link}}href="{{$ad.S_link}}"{{end}}>
+        <a class="service-flow-chart-link" {{if $ad.S_link}}href="{{$ad.S_link}}"{{end}} target="_blank">
           <img src="{{$ad.S_pic}}" alt="{{$ad.S_picalt}}">
         </a>
         {{end}}

+ 62 - 0
src/web/templates/pc/template/index/index-bottom-float-ad.html

@@ -0,0 +1,62 @@
+<div class="pc-index-bottom">
+  <img class="bottom-member-ad" adv_name="PC首页广告位-底部" src="" alt="底部广告位">
+</div>
+
+<script>
+  $(function () {
+    // 首页底部广告位
+    {{$bottom:=(Ad "jy_pc_index_bottom" -1 .Host)}}
+    var bottom_img = ({{$bottom}})
+
+    // 首页底部样式调整,适配广告位
+    function fixBottomADHeight (type) {
+      var adHeight = $('.pc-index-bottom').height()
+      if (type) {
+        $(".jy_renzheng").css('padding-bottom', adHeight)
+        $(".j-bottom").attr('data-padding-bottom', Number($(".j-bottom").css('padding-bottom').replace('px', '')))
+        $(".j-bottom").css('padding-bottom', Number($(".j-bottom").css('padding-bottom').replace('px', '')) + adHeight)
+      } else {
+        $(".jy_renzheng").css('padding-bottom', 0)
+        $(".j-bottom").css('padding-bottom', Number($(".j-bottom").attr('data-padding-bottom')))
+      }
+    }
+    $('.pc-index-bottom .bottom-member-ad').on('load', function () {
+      fixBottomADHeight(true)
+    })
+    $('.pc-index-bottom .bottom-member-ad').attr('src', bottom_img[0].s_pic)
+    $('.pc-index-bottom .bottom-member-ad').unbind('click').click(function () {
+      window.open(bottom_img[0].s_link)
+    })
+
+
+    clearInterval(memberTimer)
+    var memberTimer = setInterval(function () {
+      if (window.memberStatus >= 0) {
+        clearInterval(memberTimer)
+      }
+      adBottomFn()
+    }, 2000)
+    function adBottomFn () {
+      if (window.memberStatus > 0) {
+        $('.pc-index-bottom').hide()
+        fixBottomADHeight(false)
+      } else {
+        var top1 = 0;
+        var top2 = 0;
+        var timer = null; 
+        $(document).scroll(function(){
+          clearTimeout(timer)
+          timer = setTimeout(isScrollEnd, 1000);
+          top1 = document.documentElement.scrollTop || document.body.scrollTop;
+          $('.pc-index-bottom').fadeOut()
+        })
+        function isScrollEnd() {
+          top2 = document.documentElement.scrollTop || document.body.scrollTop;
+          if(top1 == top2 && (window.memberStatus <= 0 || !window.memberStatus)){
+            $('.pc-index-bottom').fadeIn()
+          }
+        }
+      }
+    }
+  })
+</script>

+ 10 - 10
src/web/templates/pc/template/index/zb-nav-module.html

@@ -3,16 +3,16 @@
   <div class="zb-module-nav-hd-bg"></div>
   <ul class="search-type-section-list clearfix">
     {{range $v:= $global.topMenu}}
-      <li class="search-type-section">
-        <p class="search-type-name">{{$v.title}}</p>
-        <ul class="search-type-children">
-          {{range $item:= $v.child}}
-            <li class="search-type-child">
-              <a class="cms-link{{if $item.class}} {{$item.class}}{{end}}" href="{{$item.href}}" title="{{$item.name}}" target="_blank">{{$item.name}}</a>
-            </li>
-          {{end}}
-        </ul>
-      </li>
+    <li class="search-type-section">
+      <p class="search-type-name">{{$v.title}}</p>
+      <ul class="search-type-children">
+        {{range $item:= $v.child}}
+        <li class="search-type-child">
+          <a class="cms-link{{if $item.class}} {{$item.class}}{{end}}" href="{{$item.href}}" title="{{$item.name}}" target="_blank">{{$item.name}}</a>
+        </li>
+        {{end}}
+      </ul>
+    </li>
     {{end}}
   </ul>
 </section>