ソースを参照

Merge branch 'release' into dev4.5.3.5

lianbingjie 4 年 前
コミット
e13e0fa84a
90 ファイル変更4314 行追加773 行削除
  1. 1 1
      src/jfw/modules/app/src/web/staticres/jyapp/css/follow.css
  2. 1 1
      src/jfw/modules/app/src/web/staticres/jyapp/followent/css/follow.css
  3. 8 1
      src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js
  4. 5 13
      src/jfw/modules/app/src/web/staticres/jyapp/structuredata/css/marketing.css
  5. 86 0
      src/jfw/modules/app/src/web/staticres/jyapp/structuredata/css/marketing_old.css
  6. 2 7
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html
  7. 65 4
      src/jfw/modules/app/src/web/templates/followent/list.html
  8. 634 0
      src/jfw/modules/app/src/web/templates/frontRouter/bigmember/free/perfect_info_strud.html
  9. 28 189
      src/jfw/modules/app/src/web/templates/structeddata/marketing.html
  10. 342 0
      src/jfw/modules/app/src/web/templates/structeddata/marketing_old.html
  11. 99 7
      src/jfw/modules/app/src/web/templates/weixin/follow/list.html
  12. 103 0
      src/jfw/modules/app/src/web/templates/weixin/historypush.html
  13. 48 2
      src/jfw/modules/app/src/web/templates/weixin/search/mainSearch.html
  14. 53 0
      src/jfw/modules/app/src/web/templates/weixin/wxinfocontent.html
  15. 1 1
      src/jfw/modules/followent/src/web/staticres/jylab/followent/css/follow.css
  16. 101 2
      src/jfw/modules/followent/src/web/templates/weixin/list.html
  17. 4 0
      src/jfw/modules/publicapply/src/adLeague.json
  18. 0 0
      src/jfw/modules/publicapply/src/adLeague/entity/entity.go
  19. 11 0
      src/jfw/modules/publicapply/src/adLeague/init.go
  20. 64 0
      src/jfw/modules/publicapply/src/adLeague/service/service.go
  21. 7 0
      src/jfw/modules/publicapply/src/config/config.go
  22. 2 1
      src/jfw/modules/publicapply/src/filter/sessionfilter.go
  23. 1 0
      src/jfw/modules/publicapply/src/main.go
  24. 1 1
      src/web/staticres/common-module/collection/js/ent_portrait.js
  25. 406 0
      src/web/staticres/common-module/pc-dialog/css/leave-info-dialog.css
  26. BIN
      src/web/staticres/common-module/pc-dialog/image/close.png
  27. BIN
      src/web/staticres/common-module/pc-dialog/image/data-export.png
  28. BIN
      src/web/staticres/common-module/pc-dialog/image/structed-title.png
  29. 0 0
      src/web/staticres/common-module/pc-dialog/js/leave-info-dialog.js
  30. BIN
      src/web/staticres/common-module/perfect-info/image/A_01.jpg
  31. BIN
      src/web/staticres/common-module/perfect-info/image/A_02.jpg
  32. BIN
      src/web/staticres/common-module/perfect-info/image/A_03.jpg
  33. BIN
      src/web/staticres/common-module/perfect-info/image/A_04.jpg
  34. BIN
      src/web/staticres/common-module/perfect-info/image/A_05.jpg
  35. BIN
      src/web/staticres/common-module/perfect-info/image/B_01.jpg
  36. BIN
      src/web/staticres/common-module/perfect-info/image/B_02.jpg
  37. BIN
      src/web/staticres/common-module/perfect-info/image/B_03.jpg
  38. BIN
      src/web/staticres/common-module/perfect-info/image/B_04.jpg
  39. BIN
      src/web/staticres/common-module/perfect-info/image/B_05.jpg
  40. BIN
      src/web/staticres/common-module/perfect-info/image/B_06.jpg
  41. BIN
      src/web/staticres/common-module/perfect-info/image/B_07.jpg
  42. BIN
      src/web/staticres/common-module/perfect-info/image/dataimg.png
  43. 72 1
      src/web/staticres/common-module/perfect-info/index.css
  44. 2 2
      src/web/staticres/css/follow.css
  45. 6 0
      src/web/staticres/js/superSearch.js
  46. 87 0
      src/web/staticres/js/wxSupersearch.js
  47. 7 12
      src/web/staticres/structuredata/mobile/css/marketing.css
  48. 83 0
      src/web/staticres/structuredata/mobile/css/marketing_old.css
  49. 2 21
      src/web/staticres/structuredata/pc/css/stucturedPc.css
  50. BIN
      src/web/staticres/structuredata/pc/image/bottom-fixed-ad.png
  51. BIN
      src/web/staticres/structuredata/pc/image/bottom-fixed-button.png
  52. BIN
      src/web/staticres/structuredata/pc/image/cookie-circle-incomplete.png
  53. BIN
      src/web/staticres/structuredata/pc/image/cookie-circle.png
  54. BIN
      src/web/staticres/structuredata/pc/image/dat-export-self.png
  55. BIN
      src/web/staticres/structuredata/pc/image/example-senior.png
  56. BIN
      src/web/staticres/structuredata/pc/image/example-standard.png
  57. BIN
      src/web/staticres/structuredata/pc/image/section-1-bg.png
  58. BIN
      src/web/staticres/structuredata/pc/image/section-1-text.png
  59. BIN
      src/web/staticres/structuredata/pc/image/section-2-bg.png
  60. BIN
      src/web/staticres/structuredata/pc/image/section-2-title.png
  61. BIN
      src/web/staticres/structuredata/pc/image/section-3-bg.png
  62. BIN
      src/web/staticres/structuredata/pc/image/section-3-title.png
  63. BIN
      src/web/staticres/structuredata/pc/image/section-4-bg.png
  64. BIN
      src/web/staticres/structuredata/pc/image/section-4-card-bg.png
  65. BIN
      src/web/staticres/structuredata/pc/image/section-4-card-content-bg-1.png
  66. BIN
      src/web/staticres/structuredata/pc/image/section-4-card-content-bg-2.png
  67. BIN
      src/web/staticres/structuredata/pc/image/section-4-card-content-bg-3.png
  68. BIN
      src/web/staticres/structuredata/pc/image/section-4-card-content-bg-4.png
  69. BIN
      src/web/staticres/structuredata/pc/image/section-4-title-bg.png
  70. BIN
      src/web/staticres/structuredata/pc/image/section-4-title.png
  71. BIN
      src/web/staticres/structuredata/pc/image/section-5-bg.png
  72. BIN
      src/web/staticres/structuredata/pc/image/section-5-card-1.png
  73. BIN
      src/web/staticres/structuredata/pc/image/section-5-card-2.png
  74. BIN
      src/web/staticres/structuredata/pc/image/section-5-title.png
  75. BIN
      src/web/staticres/structuredata/pc/image/section-6-title.png
  76. 79 2
      src/web/staticres/vipsubscribe/js/historypush.js
  77. 1 1
      src/web/templates/common/pchead.html
  78. 645 0
      src/web/templates/frontRouter/wx/bigmember/free/perfect_info_strud.html
  79. 91 1
      src/web/templates/pc/biddetail_rec.html
  80. 78 0
      src/web/templates/pc/entsearchindex.html
  81. 90 1
      src/web/templates/pc/index.html
  82. 95 0
      src/web/templates/pc/supsearch.html
  83. 27 187
      src/web/templates/structuredata/mobile/marketing_wx.html
  84. 307 0
      src/web/templates/structuredata/mobile/marketing_wx_old.html
  85. 334 308
      src/web/templates/structuredata/pc/index.html
  86. 2 7
      src/web/templates/weixin/dataExport/dataExport_payOrder.html
  87. 92 0
      src/web/templates/weixin/follow/list.html
  88. 47 0
      src/web/templates/weixin/historypush.html
  89. 4 0
      src/web/templates/weixin/search/mainSearch.html
  90. 90 0
      src/web/templates/weixin/wxinfocontent_rec.html

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

@@ -341,7 +341,7 @@ top:17px;
 	background-color:#bfbfc3;
 	border-top:1px solid #ccc;
 	width:100%;
-	height:50px;
+	/* height:50px; */
 	display:block;
    /* position: fixed;*/
     left: 0px;

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

@@ -274,7 +274,7 @@ a {
 	background-color:#bfbfc3;
 	border-top:1px solid #ccc;
 	width:100%;
-	height:50px;
+	/* height:50px; */
 	display:block;
     position: fixed;
     left: 0px;

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

@@ -1370,6 +1370,14 @@ var SuperSearch = {
     var ListHtml='';
     var TableHtml='';
     for(var i=0;i<list.length;i++){
+      // if(pageNum == 1 && i == 9) {
+      //   // 百青藤广告插入
+      //   ListHtml += '<div class="_ouq34ajmfig">'+'</div>'
+      // }
+      // if(pageNum == 1 && i == 24) {
+      //   // 百青藤广告插入
+      //   ListHtml += '<div class="_nxko9k32d8d">'+'</div>'
+      // }
       if(!isIosExam&&!isIosExamPhone&&pageNum==1&&i==4&&!SuperSearch.advertIsClose){
         ListHtml+='<div  adv_name="APP搜索列表页-中部" class="adv-appsearch-center" id="E1"></div>'
       }
@@ -1519,7 +1527,6 @@ var SuperSearch = {
       if(typeof(list[i].bidamount) != "undefined" && list[i].bidamount != null && list[i].bidamount != ""){
         moneyTag = '<span class="bidamount">'+MoneyUnit.test(list[i].bidamount)+'</span>';
       }
-
       if(!isIosExam&&!isIosExamPhone&&i==3&&pageNum==1){
         ListHtml += '<div class="tslist" style="border-bottom-width:0px;">'
       }else{

ファイルの差分が大きいため隠しています
+ 5 - 13
src/jfw/modules/app/src/web/staticres/jyapp/structuredata/css/marketing.css


ファイルの差分が大きいため隠しています
+ 86 - 0
src/jfw/modules/app/src/web/staticres/jyapp/structuredata/css/marketing_old.css


+ 2 - 7
src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html

@@ -679,13 +679,7 @@
         if (sessionStorage.getItem("order_spec" + {{.T._id}}) != null) {
             dataType = sessionStorage.getItem("order_spec" + {{.T._id}});
         }
-        if (dataType == 1) {
-            $(".switch-dataType .bz").addClass("active")
-            $(".switch-dataType .gj").removeClass("active")
-        } else {
-            $(".switch-dataType .bz").removeClass("active")
-            $(".switch-dataType .gj").addClass("active")
-        }
+        exportPage.toggleLevel(dataType)
         //
         $('.choose .choose-item').each(function () {
             var index = $(this).index();
@@ -1642,6 +1636,7 @@
                 this.level = type
                 dataType = type
                 sessionStorage.index = type;
+                sessionStorage.setItem("order_spec{{.T._id}}", type)
                 ChangePayMoney();
             }
         }

+ 65 - 4
src/jfw/modules/app/src/web/templates/followent/list.html

@@ -35,9 +35,59 @@
 			if(!r.list){
 				return;
 			}
+			var data = r.list;
+			$.ajax({
+					type: 'POST',
+					url: '/publicapply/bidcoll/power',
+					success: function(res) {
+							console.log(res)
+							if(res.error_code == 0) {
+								if(!res.data.entniche && !res.data.member && res.data.vip <= 0){
+										(window.slotbydup = window.slotbydup || []).push({
+												id: "u6603901",
+												container: "_yzpxro2x1n",
+												async: true
+										});
+										getAjaxAdv()
+								}
+							}
+					},
+					error: function(err) {
+							console.log(err)
+					}
+			})
+			function getAjaxAdv () {
+					$.ajax({
+						type: 'POST',
+						url: '/publicapply/adLeague/exposure',
+						data: {
+								client: 'APP',
+								id: 'ad8',
+								position: '关注的企业列表页底部'
+						},
+						success: function(res) {
+								console.log(res)
+						}
+					})
+			}
+			addEventListener('focus', function() {
+					if(document.activeElement = document.getElementById('iframeu6603901_0')) {
+							$.ajax({
+									type: 'POST',
+									url: '/publicapply/adLeague/click',
+									data: {
+										client: 'APP',
+										id: 'ad8',
+										position: '关注的企业列表页底部'
+									},
+									success: function(res) {
+											console.log(res)
+									}
+							})
+					}  
+			});
 			var allHtml = "";
-	        var data = r.list;
-	        var jyno = 0;
+			var jyno = 0;
 			var fronthtml = "";
 			var lasthtml = "";
 			var frontarr = new Array(); //30天内
@@ -186,6 +236,14 @@ function receivePushMessageHandle(type,url){
 }
 </script>
 </head>
+<style>
+	#pro_footer{
+		position: fixed;
+		left: 0;
+		right: 0;
+		bottom: 0;
+	}
+</style>
 <body class="listpage">
 	<div class="app-layout-header jy-app-header">
 		<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
@@ -208,8 +266,10 @@ function receivePushMessageHandle(type,url){
                 <img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/followent/images/wx/jyprompt.png?v={{Msg "seo" "version"}}">剑鱼标讯提示:<front>可关注{{.T.followEntLimit}}个企业</front>
             </div>
             <div class="jylistbottom" style="display: none;">
-                <img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/followent/images/wx/jydustbin.png?v={{Msg "seo" "version"}}"/>批量移除30天无更新企业
-            </div>
+								<img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/followent/images/wx/jydustbin.png?v={{Msg "seo" "version"}}"/>批量移除30天无更新企业
+								<div class="_j07axdxi26i"></div>
+						</div>
+						<!-- <div class="_yzpxro2x1n" id="pro_footer"></div> -->
             <div class="easypopup" id="easypopup">
                 <div class="easypopup-main">
                     <div class="easypopup-header">提示信息</div>
@@ -224,6 +284,7 @@ function receivePushMessageHandle(type,url){
             </div>
         </div>
 	</div>
+	<!-- 多条广告如下脚本只需引入一次 -->
 	{{include "/common/baiducc.html"}}
 </body>
 </html>

+ 634 - 0
src/jfw/modules/app/src/web/templates/frontRouter/bigmember/free/perfect_info_strud.html

@@ -0,0 +1,634 @@
+<!DOCTYPE html>
+<html lang="zh-CN" style="font-size: 50px;">
+
+<head>
+    <title>完善信息</title>
+    <!--引入公共资源头部-->
+    {{include "/big-member/meta.html"}}
+
+    <!--S-当前页必定需要预加载的资源-->
+    <link rel="preload" as="style" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/index.css'/>
+    <link rel="preload" as="style" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/icon/local.css'/>
+    <link rel="preload" as="style"
+          href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/big-member/css/page_info_collect.css?v={{Msg "seo" "version"}}'/>
+    <!--E-当前页必定需要预加载的资源-->
+
+
+    <!--S-当前页面的css资源-->
+    <link rel="stylesheet" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/index.css'/>
+    <link rel="stylesheet" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/icon/local.css'/>
+    <link rel="stylesheet"
+          href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/index.css?v={{Msg "seo" "version"}}'/>
+    <!--E-当前页面的css资源-->
+    <script>
+      try {
+        window.JyObj.hiddenBottom('0')
+      } catch (e) {
+        console.log('error: app not function')
+      }
+    </script>
+</head>
+
+<body>
+<div class="j-container">
+    {{include "/big-member/header.html"}}
+    <div class="j-main perfect-info-group" id="perfect-info-page" v-cloak>
+        <div class="j-container">
+            <div class="j-main info-collect">
+                <div class="top-tip-group">
+                    <p class="top-tip-text">请完善信息,我们将以邮件的形式发送数据样例
+                    </p>
+                </div>
+                <div class="form-card-group">
+                    <div class="form-title">基本信息</div>
+                    <div class="form-content-card">
+                        <van-field v-model.trim="infoMap.name" label="姓名" @focus="infoCheckMap.name = ''" @blur="getCheckMap('name')"
+                                   :error-message="infoCheckMap.name" required placeholder="请输入姓名"></van-field>
+                        <van-field @input="getInputPhone" v-model.trim="infoMap.phone" label="手机号" @focus="infoCheckMap.phone = ''"
+                                   @blur="getCheckMap('phone')" :error-message="infoCheckMap.phone" required
+                                   placeholder="常用手机号码"></van-field>
+                        <van-field v-if="setcodeShow" v-model.trim="infoMap.vercode" label="验证码" @focus="infoCheckMap.vercode = ''"
+                                   @blur="getCheckMap('vercode')" :error-message="infoCheckMap.vercode" required
+                                   @input="getCheckCode"
+                                   placeholder="请输入短信验证码">
+                          <template #button>
+                            <span v-show="sendShow" style="color: #2ABED1;font-size: .28rem;" class="sendbtn" @click="sendMsg">发送验证码</span>
+                            <span class="timedown" v-show="!sendShow"></span>
+                          </template>
+                        </van-field>
+                        <van-field v-model.trim="infoMap.email" label="邮箱" @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')"
+                                   :error-message="infoCheckMap.email" required placeholder="请输入邮箱"></van-field>
+                    </div>
+                </div>
+                <div class="form-card-group">
+                    <div class="form-title">公司信息</div>
+                    <div class="form-content-card">
+                        <div class="associate-ent-group" v-show="isAssociateShow">
+                            <div class="associate-ent-item" @click="selectEnt(item)" v-for="(item, i) in searchList" v-bind:key="i" v-html="highlightText(item, infoMap.company)"></div>
+                        </div>
+                        <van-field @input="entOnChange('input')" @blur="entOnChange('blur')" @focus="infoCheckMap.company = ''"
+                                   :error-message="infoCheckMap.company" required v-model.trim="infoMap.company" label="公司名称" placeholder="请输入公司名称"></van-field>
+                        <van-field :class="{'hide-border': infoMap.position === '其他'}"  v-model="infoMap.position" label="职位" @click="openPop('职位')" readonly is-link
+                                   placeholder="请选择职位"></van-field>
+                        <van-field class="other-input-group" @focus="infoCheckMap.position_other = ''"
+                                   :error-message="infoCheckMap.position_other" v-model.trim="infoMap.position_other" v-show="infoMap.position === '其他'" label="职位" placeholder="请输入职位"></van-field>
+                    </div>
+                </div>
+            </div>
+            <div class="j-footer">
+                <div class="j-button-group">
+                    <button class="j-button-cancel" @click="cancelForm">暂不提供</button>
+                    <button class="j-button-confirm" :disabled="isSubmitDisabled" @click="submitForm">提交</button>
+                </div>
+            </div>
+            <van-popup class="prefect-pop-group" v-model="popInfo.show" round position="bottom"
+                       :style="{ height: getPopHeight }">
+                <div class="j-container">
+                    <div class="j-header">
+                        <div class="pop-title-group">
+                            <span>@@popInfo.title@@</span>
+                            <div class="close-padding-box" @click="popInfo.show = false">
+                                <i class="j-icon base-icon icon-delete-gray"></i>
+                            </div>
+                        </div>
+                    </div>
+                    <div class="j-main" v-show="conditionMap[popInfo.label]">
+                        <div class="condition-select-group" :class="{more: isMoreSelect}">
+                            <div class="condition-select-item" @click="onSelectItem(item, popInfo.label)" v-for="(item,i) in conditionMap[popInfo.label]" :class="{checked: item.checked}">
+                                <div>@@item.title@@</div>
+                                <i v-if="!isMoreSelect" class="j-icon base-icon icon-tick"></i>
+                                <div class="more-icon-box" v-else>
+                                    <i  class="j-icon base-icon icon-tick-circle"></i>
+                                    <i  class="j-icon base-icon icon-tick-circle-fill"></i>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                    <div class="j-footer">
+                        <div class="j-button-group">
+                            <button class="j-button-confirm" :disabled="isNextDisabled" @click="submitPop">确认</button>
+                        </div>
+                    </div>
+                </div>
+            </van-popup>
+        </div>
+        <van-popup v-model="commitshow" class="commitdialog" :close-on-click-overlay="overlayShow">
+          <div class="j-container">
+            <div class="j-header com-header">
+              <span class="infor-icon-close"></span>
+            </div>
+            <div class="j-main com-main">
+              <div class="img-duihao">
+                <img src="/jyapp/images/choose.png" alt="">
+              </div>
+              <div class="commit_success">提交成功</div>
+              <div class="commit_tip">我们稍后将以邮件的形式发送数据样例</div>
+              <div class="commit_know">
+                <button class="commit_btn" @click="history.back()">我知道了</button>
+              </div>
+              <div class="data_exportclick">
+                <img @click="location.href = '/jyapp/front/dataExport/toSieve'" src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/dataimg.png' alt="">
+              </div>
+            </div>
+            <div class="j-footer com-footer"></div>
+          </div>
+        </van-popup>
+    </div>
+</div>
+
+<script rel="preload" as="script" src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
+<script rel="preload" as="script" src=//cdn-common.jianyu360.com/cdn/lib/vant/2.8.2/vant.min.js></script>
+<script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
+<script src=//cdn-common.jianyu360.com/cdn/lib/vant/2.8.2/vant.min.js></script>
+{{include "/big-member/commonjs.html"}}
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/js/common.js?v={{Msg "seo" "version"}}'></script>
+
+<script>
+  var vNode = {
+    delimiters: ['@@', '@@'],
+    el: '#perfect-info-page',
+    data: {
+      sendShow: true, // 倒计时切换
+      vercodecor: false, // 验证码是否正确
+      setcodeShow: true, // 验证码输入框是否显示
+      commitshow: false, // 提交成功显示弹窗
+      overlayShow: false,
+      searchList: [],
+      isAssociateShow: false,
+      isAssociateUpTime: -1,
+      infoMap: {
+        name: '',
+        phone: '',
+        vercode: '',
+        email: '',
+        company: '',
+        position: '',
+        position_other: ''
+      },
+      infoCheckMap: {
+        name: '',
+        phone: '',
+        vercode: '',
+        email: '',
+        company: '',
+        position: '',
+        position_other: ''
+      },
+      isEchoInfoLoading: true,
+      popInfo: {
+        show: false,
+        label: '',
+        title: ''
+      },
+      conditionMap: {
+        '职位': [
+          {
+            title: '总裁/总经理/总监',
+            checked: false
+          },
+          {
+            title: '市场经理/主管',
+            checked: false
+          },
+          {
+            title: '销售经理/主管',
+            checked: false
+          },
+          {
+            title: '渠道经理/主管',
+            checked: false
+          },
+          {
+            title: '投标经理/专员',
+            checked: false
+          },
+          {
+            title: '采购经理/专员',
+            checked: false
+          },
+          {
+            title: '数据分析师',
+            checked: false
+          },
+          {
+            title: '招标师',
+            checked: false
+          },
+          {
+            title: '项目经理',
+            checked: false
+          },
+          {
+            title: '其他',
+            checked: false
+          }
+        ]
+      },
+      ajaxParams: {
+        "name": "",
+        "phone": "",
+        "source": utils.getParam('source'), // 推送消息点进来的 
+        "mail": "",
+        "company": "",
+        "position": "",
+      }
+    },
+    mounted() {
+      // source=message_bigmember app消息大会员留资地
+      // source=message_structeddata app消息结构化数据留资地
+      this.ajaxGetEchoInfo()
+    },
+    computed: {
+      getPopHeight () {
+        return this.popInfo.label === '受雇类型' ?  '5.42rem' : '8.36rem'
+      },
+      checkName () {
+        if (this.infoMap.name.length > 10) {
+          return false
+        }
+        var namereg = /^[\u4E00-\u9FA5A-Za-z\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$/;//中英文或加.的少数民族名字
+        return namereg.test(this.infoMap.name)
+      },
+      checkPhone () {
+        return /^1[3|7|8]\d{9}$|^19[8-9]\d{8}$|^166\d{8}|^15[0-3|5-9]\d{8}|^14[5|7]\d{8}$/.test(this.infoMap.phone)
+      },
+      checkEmail () {
+        if (this.infoMap.email.length > 50) {
+          return false
+        }
+        return /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(this.infoMap.email)
+      },
+      checkEntName () {
+        if (this.infoMap.company.trim().length > 50 || this.infoMap.company.trim().length < 2) {
+          return false
+        }
+        return true
+      },
+      isMoreSelect () {
+        return this.popInfo.label === '公司类型'
+      },
+      checkPosition () {
+        if (this.infoMap.position !== "" && this.infoMap.position !== '其他') {
+          return true
+        }
+        if (this.infoMap.position_other.length > 50) {
+          return false
+        }
+        var namereg = /^[\u4E00-\u9FA5A-Za-z\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$/;
+        return namereg.test(this.infoMap.position_other)
+      },
+      isSubmitDisabled () {
+        return !this.checkName || !this.checkPhone || !this.checkEmail || !this.checkEntName || !this.vercodecor
+      },
+      isNextDisabled () {
+        var type = this.popInfo.label
+        var result = false
+        switch (type) {
+          case '职位': {
+            result = this.conditionMap[type].filter(v => v.checked).length
+            break
+          }
+        }
+        return !result
+      }
+    },
+    methods: {
+      // 手机号输入事件
+      getInputPhone: function(value) {
+        let strud_phone = sessionStorage.getItem('strud_phone')
+        if(value == strud_phone) {
+          this.setcodeShow = false
+        } else {
+          this.setcodeShow = true
+        }
+      },
+      // 点击发送验证码
+      sendMsg: function () {
+        let _this = this
+        if(!this.checkPhone) return
+        $.ajax({
+          type: 'POST',
+          url: '/salesLeads/sendMsg',
+          data: {
+            phoneNum: _this.infoMap.phone
+          },
+          success:function(res) {
+            console.log(res)
+            if(res.data.success) {
+              _this.countdown()
+            }
+          }
+        })
+      },
+      // 验证码输入事件
+      getCheckCode: function() {
+        let _this = this
+        if(this.infoMap.vercode.length == 6){
+          $.ajax({
+              url:'/salesLeads/checkCode',
+              type:'POST',
+              data:{
+                  phoneNum:_this.infoMap.phone,
+                  code:_this.infoMap.vercode
+              },
+              success:function(res) {
+                if(res.error_code == 0) {
+                  _this.vercodecor = res.data.flag
+                  if(res.data.flag) {
+                    _this.$toast('验证码正确')
+                  }else{
+                    _this.$toast('验证码错误')
+                  }
+                  _this.getCheckMap('vercode')
+                }
+              },
+              error:function(err) {
+                  console.log(err)
+              }
+          })
+        } else {
+          _this.getCheckMap('vercode')
+        }
+      },
+      ajaxFn: function (url, data, callback, type) {
+        return $.ajax({
+          type: 'post',
+          url: url,
+          contentType: type ? 'application/x-www-form-urlencoded' : "application/json;charset=utf-8",
+          data: type ? data : JSON.stringify(data),
+          dataType: "json",
+          success: typeof callback === 'function' ? callback.bind(this) : new Function()
+        })
+      },
+      // 倒计时
+      countdown() {
+        let _this = this
+        this.sendShow = false
+        var time=60;
+        setTime=setInterval(function(){
+            if(time<=0){
+              _this.sendShow = true
+              time=59
+              clearInterval(setTime);
+              return;
+            }
+            time--;
+            $(".timedown").text(time+'s');
+        },1000);
+      },
+      ajaxGetEchoInfo() {
+        this.isEchoInfoLoading = true
+        let _this = this
+        this.ajaxFn('/salesLeads/echoInfo', {}, function (r) {
+          this.isEchoInfoLoading = false
+          if (r && r.error_msg === '' && r.data) {
+            if(r.data.phone != '') {
+              _this.vercodecor = true
+              _this.setcodeShow = false
+              sessionStorage.setItem('strud_phone', r.data.phone)
+            } else {
+              _this.setcodeShow = true
+            }
+            this.setEchoInfo(r.data)
+          }
+        })
+      },
+      highlightText (value, keyStr) {
+        return utils.replaceKeyword(value, keyStr, '<span class="highlight-text">' + keyStr + '</span>')
+      },
+      entOnChange (type) {
+        if (type === 'blur') {
+          this.getCheckMap('company')
+          setTimeout(() => {
+            this.isAssociateShow = false
+            this.searchList = []
+          }, 300)
+        } else {
+          clearTimeout(this.isAssociateUpTime)
+          this.isAssociateUpTime = setTimeout(() => {
+            this.ajaxEntList(this.infoMap.company)
+          }, 200)
+        }
+      },
+      selectEnt (item) {
+        console.log('item', item)
+        this.infoMap.company = item
+        this.isAssociateShow = false
+        this.searchList = []
+      },
+      ajaxEntList (str) {
+        if (str.length <= 2) {
+          return
+        }
+        this.ajaxFn('/jypay/user/company/association', { name: str }, function (r) {
+          if (r && r.error_msg === '' && r.data) {
+            this.isAssociateShow = true
+            this.searchList = r.data
+          }
+        }, true)
+      },
+      setEchoInfo (data) {
+        if (data.position) {
+          this.setCheckForData('position', 'position', data.position, '职位')
+        }
+        if (data.name) {
+          this.setCheckForData('name', 'name', data.name)
+        }
+        if (data.phone) {
+          this.setCheckForData('phone', 'phone', data.phone)
+        }
+        if (data.mail) {
+          this.setCheckForData('mail', 'email', data.mail)
+        }
+        if (data.company) {
+          this.setCheckForData('company', 'company', data.company)
+        }
+  
+      },
+      setCheckForData (aKey, iKey, cKey, label) {
+        this.ajaxParams[aKey] = cKey
+        this.infoMap[iKey] = cKey
+        if (label === '职位' && cKey.indexOf('其他') !== -1) {
+            this.infoMap[iKey] = '其他'
+            this.infoMap.position_other = cKey.split('/')[1]
+        }
+        if (label) {
+          var checkDatas = [cKey]
+          this.conditionMap[label].forEach(v => {
+            if (checkDatas.indexOf(v.title) !== -1) {
+              v.checked = true
+            }
+          })
+        }
+      },
+      submitPop() {
+        var type = this.popInfo.label
+        switch (type) {
+          case '职位': {
+            var tempData = this.conditionMap[type].filter(v => v.checked)
+            this.setCheckForData('position', 'position', tempData[0].title)
+            break
+          }
+        }
+        this.popInfo.show = false
+      },
+      openPop(type) {
+        switch (type) {
+          case '职位': {
+            this.popInfo.title = '职位'
+            break
+          }
+        }
+        this.popInfo.label = type
+        this.popInfo.show = true
+      },
+      onSelectItem (item, index) {
+        if (this.isMoreSelect) {
+          item.checked = !item.checked
+        } else {
+          this.conditionMap[index].forEach(function (v) {
+            v.checked = false
+          })
+          item.checked = true
+        }
+      },
+      getCheckMap (type) {
+        switch (type) {
+            case 'name': {
+              this.infoCheckMap.name = this.infoMap.name === '' ? '姓名为必填项' : ''
+              if (this.infoCheckMap.name === '' && !this.checkName) {
+                this.infoCheckMap.name = '请输入正确格式的姓名'
+              }
+              break
+            }
+            case 'phone': {
+              this.infoCheckMap.phone = this.infoMap.phone === '' ? '手机号码为必填项' : ''
+              if (this.infoCheckMap.phone === '' && !this.checkPhone) {
+                this.infoCheckMap.phone = '请输入正确格式的手机号码'
+              } 
+              break
+            }
+            case 'vercode': {
+              this.infoCheckMap.vercode = this.infoMap.vercode === '' ? '验证码为必填项' : ''
+              if (this.infoMap.vercode.length != 6 || !this.vercodecor) {
+                this.infoCheckMap.vercode = '请输入正确的验证码'
+              } else {
+                this.infoCheckMap.vercode = ''
+              }
+              break
+            }
+            case 'email': {
+              this.infoCheckMap.email = this.infoMap.email === '' ? '邮箱为必填项' : ''
+              if (this.infoCheckMap.email === '' && !this.checkEmail) {
+                this.infoCheckMap.email = '请输入正确格式的邮箱'
+              }
+              break
+            }
+            case 'company': {
+              this.infoCheckMap.company = this.infoMap.company === '' ? '公司名称为必填项' : ''
+              if (this.infoCheckMap.company === '' && !this.checkEntName) {
+                this.infoCheckMap.company = '请输入正确格式的公司名称'
+                if (this.infoMap.company.length < 2) {
+                  this.infoCheckMap.company = '公司名称至少输入2个字'
+                }
+                if (this.infoMap.company.length > 50) {
+                  this.infoCheckMap.company = '公司名称最多输入50个字'
+                }
+              }
+              break
+            }
+            case 'position': {
+              var isOther = this.infoMap.position === '其他' && this.infoMap.position_other === ''
+              this.infoCheckMap.position_other =  isOther ? '职位为必填项' : ''
+              if (this.infoCheckMap.position_other === '' && !this.checkPosition) {
+                this.infoCheckMap.position_other = '请输入正确格式的职位'
+              }
+              break
+            }
+        }
+      },
+      cancelForm () {
+        setTimeout(() => {
+          this.$dialog.confirm({
+            title: ' ',
+            message: '您可以通过剑鱼标讯提供的全国招投标数据自助导出功能,指定关键词、发布时间、地区或行业等筛选条件,以Excel表格的形式打包下载,精准获取所需数据。',
+            className: 'ent-search-dialog no-infor',
+            overlayClass: 'z-2030',
+            showCancelButton: false,
+            getContainer: '.perfect-info-group',
+            confirmButtonText: '数据自助导出',
+          }).then(function () {
+            location.href = '/jyapp/front/dataExport/toSieve'
+          }).catch(function () {
+            history.back()
+          });
+        },300)
+        setTimeout(() => {
+          const htmlclose = `<span class="infor-icon-close"></span>`
+          $('.no-infor .van-dialog__header').html(htmlclose)
+        },400)
+      },
+      submitForm () {
+        this.ajaxParams.name = this.infoMap.name
+        this.ajaxParams.phone = this.infoMap.phone
+        this.ajaxParams.mail = this.infoMap.email
+        this.ajaxParams.company = this.infoMap.company
+        this.ajaxParams.position = this.infoMap.position
+        if(this.setcodeShow) {
+          this.ajaxParams.code = this.infoMap.vercode
+        }
+        if (this.infoMap.position === '其他') {
+          this.ajaxParams.position = '其他/' + this.infoMap.position_other
+        }
+        var _this = this
+        var loading = _this.showLoading()
+        $.ajax({
+          type: 'POST',
+          url: '/salesLeads/collectInfo',
+          contentType: "application/json;charset=utf-8",
+          data: JSON.stringify(_this.ajaxParams),
+          success: function(r) {
+            loading.clear()
+            if (r.error_msg === '' || r.data) {
+              _this.commitshow = true
+            } else {
+              _this.showToast(r.error_msg || '提交失败')
+            }
+          },
+          error: function(err) {
+            loading.clear()
+            _this.showToast('提交失败')
+          }
+        })
+      },
+      showLoading: function () {
+        var loading = this.$toast.loading({
+          duration: 0,
+          forbidClick: true,
+          message: '提交中...',
+        })
+        return loading
+      },
+      showToast: function (message) {
+        this.$toast({
+          duration: 1500,
+          forbidClick: true,
+          message: message,
+        })
+      }
+    }
+  }
+  var vPerfect = new Vue(vNode)
+</script>
+<script>
+    $(function () {
+        $("#perfect-info-page").on('click tap', '.infor-icon-close', function(e) {
+            e.stopPropagation()
+            history.back()
+        })
+    })
+</script>
+{{include "/common/baiducc.html"}}
+</body>
+
+</html>

+ 28 - 189
src/jfw/modules/app/src/web/templates/structeddata/marketing.html

@@ -10,7 +10,7 @@
 	<meta name="apple-mobile-web-app-status-bar-style" content="black">
 	<meta http-equiv="X-UA-Compatible" content="ie=edge">
 	<meta http-equiv="X-UA-Compatible" content="ie=edge">
-	<title>结构化招标数据</title>
+	<title>结构化数据</title>
 	<link rel="stylesheet" type="text/css" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/local/layout.css" />
   <link href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/css/font.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 	<link rel="stylesheet" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/css/base.css?v={{Msg "seo" "version"}}">
@@ -25,7 +25,7 @@
       color:#fff !important;
     }
     .jy-app-header .subreport_title{
-      font-size:17px;
+      font-size: .36rem;
     }
   </style>
 </head>
@@ -33,7 +33,7 @@
 <body>
 <div class="app-layout-header jy-app-header header-transparent">
 	<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
-  <span class="subreport_title">结构化招标数据</span>
+  <span class="subreport_title">结构化数据</span>
 </div>
 <div class="app-layout-content-b">
 	<div id="app">
@@ -45,207 +45,50 @@
 		<div class="j-main">
 			<div class="structured_top">
 				<div class="str_title">
-					<img src="/jyapp/structuredata/image/biaoti.png" alt="">
-				</div>
-				<div class="str_introduct">
-					<span class="str_text">帮助企业彻底透视</span>
-					<span class="str_text">行业、客户、竞争对手和合作伙伴</span>
+					<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/A_02.jpg' alt="">
 				</div>
 			</div>
 			<div class="str_what question">
-				<div class="str_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-					</div>
-					<div class="content_info">
-						剑鱼标讯采集全网招标信息,通过自然语言处理技术,将招标信息转化为结构化招标数据。
-					</div>
-					<div class="click_tip">
-						结构化招标数据示意图(点击图片放大)
-					</div>
-					<div class="sketch_map" id="sketch_map">
-						<img src="/jyapp/structuredata/image/jiegouhuahou.png" alt="">
-					</div>
-					<div class="data_mode">
-						<div class="data_mode_title">
-							数据提供方式
-						</div>
-						<div class="data_mode_content">
-							<div class="data_api square">
-								<img class="square_img" src="/jyapp/structuredata/image/api.png" alt="">
-								<span class="square_text">API接口</span>
-							</div>
-							<div class="data_email square">
-								<img class="square_img" src="/jyapp/structuredata/image/email.png" alt="">
-								<span class="square_text">邮箱</span>
-							</div>
-						</div>
-					</div>
-					<div class="message">
-						<div class="message_title">
-							多达30+信息字段
-						</div>
-						<div class="message_page">
-							<div class="message_text">
-								项目名称、项目编号、项目范围、采购单位、招标代理机构、预算、采购单位联系人、采购单位电话、采购单位地址、项目地址、发布机构、开标时间、招标代理机构联系人、招标代理机构联系方式、招标代理机构地址、中标单位、中标单位地址、中标单位联系人、中标单位联系电话、中标金额、币种、中标产品(产品名称、品牌、规格型号、单位、数量、单价、小计、质保期) ……
-							</div>
-							<div class="click_view" id="click_view" onclick="click_view()">
-								点击查看数据示例
-							</div>
-						</div>
-					</div>
-				</div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/A_03.jpg' alt="">
 			</div>
 
 			<!-- 结构化数据有什么特点 -->
 			<div class="advantage">
-				<div class="ad_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-					</div>
-					<ul class="list">
-						<li class="advantage_list list_one">
-							<h3 class="list_title">
-								数据全面有保障
-							</h3>
-							<p class="list_info">
-								汇集7000多个政府和企业招标网站,数据覆盖全国100%行业和地区
-							</p>
-						</li>
-						<li class="advantage_list list_two">
-							<h3 class="list_title" style="margin-top: 0.36rem;">
-								多达30+个字段,
-							</h3>
-							<h3 class="list_title" style="margin-top: 0;">
-								数据字段识别精准
-							</h3>
-							<p class="list_info">
-								海量数据也能做到精确,不含糊
-							</p>
-						</li>
-						<li class="advantage_list list_three">
-							<h3 class="list_title" style="margin-top: .66rem;">
-								T+2小时,极速获取数据
-							</h3>
-							<p class="list_info">
-								全流程自动化处理,让你第一时间拿到数据
-							</p>
-						</li>
-						<li class="advantage_list list_four">
-							<h3 class="list_title">
-								多样化的数据获取方式
-							</h3>
-							<p class="list_info">
-								API接口:与你的客户管理系统无缝对接 <br/>邮件:支持多格式附件
-							</p>
-						</li>
-					</ul>
-				</div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/A_04.jpg' alt="">
 			</div>
 
 			<!-- 结构化招标数据能干什么 -->
 			<div class="dowhat">
-				<div class="dowhat_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-					</div>
-					<ul class="can_list">
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_one"></span>
-								<h3 class="title_text">分析数据,获取商机</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助销售总监轻松分析市场,为制定销售策略提供数据支撑。帮助销售人员寻找潜在商机线索,获取更多销售机会
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_two"></span>
-								<h3 class="title_text">分析潜在渠道合作伙伴</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助渠道经理优选潜在合作渠道,为业绩提升提供有效线索
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_three"></span>
-								<h3 class="title_text">制定行业分析报告,辅助战略决策</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助公司高层透视市场整体情况,为公司制定战略计划提供数据支撑
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_four"></span>
-								<h3 class="title_text">分析企业经营情况</h3>
-							</div>
-							<p class="cantodo_page">
-								为征信机构、金融行业等企业信用评定提供数据支撑,完善企业征信报告
-							</p>
-						</li>
-					</ul>
-				</div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/A_05.jpg' alt="">
+			</div>
+			<!-- 优惠信息 -->
+			<div class="module buy-discount">
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_01.jpg' alt="">
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_02.jpg' alt="">
+			</div>
+			<!-- 核心优势 -->
+			<div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_03.jpg' alt="">
 			</div>
-            <!-- 优惠信息 -->
-            <div class="module buy-discount">
-                <div class="module-content">
-                    <div class="how-to-buy">
-                        <img class="s-img" src='{{Msg "seo" "cdn"}}/jyapp/structuredata/image/how-to-buy@2x.png' alt="">
-                    </div>
-                    <div class="discount">
-                        <img class="s-img" src='{{Msg "seo" "cdn"}}/jyapp/structuredata/image/discount@2x.png' alt="">
-                    </div>
-                    <div class="c-list">
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-1"></span>
-                            <div class="c-l-item-text">
-                                支持按需勾选数据并导出<br />只为你挑选的数据付费
-                            </div>
-                        </div>
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-2"></span>
-                            <div class="c-l-item-text">
-                                单条数据重复导出仅计费一次<br />不再为重复数据付费
-                            </div>
-                        </div>
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-3"></span>
-                            <div class="c-l-item-text">
-                                预存金额有效期<span class="color-red">长达3年</span><br />充值一次即可随时导出
-                            </div>
-                        </div>
-                    </div>
-                    <a class="call-phone" onclick="tel('400-108-6670')">
-                        <span class="icon-phone"></span>
-                        立即咨询:400-108-6670
-                    </a>
-                </div>
-            </div>
 			<!-- 已使用结构化招标数据的部分企业 -->
 			<div class="company">
-				<div class="company_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
-					</div>
-					<div class="company_view">
-						<img class="company_view_img" src="/jyapp/structuredata/image/qiyejuzhen.png" alt="">
-					</div>
-				</div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_04.jpg' alt="">
+				
+			</div>
+			<!-- 更多定制化数据服务 -->
+			<div>
+				<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_05.jpg' alt="">
+				<a onclick="tel('400-108-6670')">
+					<img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/perfect-info/image/B_06.jpg' alt="">
+				</a>
 			</div>
 		</div>
 		<div class="j-button-group">
-			<a onclick="tel('400-108-6670')" class="j-button-cancel" id="j_cancel">
-				<span class="phone_icon"></span>
+			<a onclick="location.href = '/jyapp/free/customer'" class="j-button-cancel" id="j_cancel">
+				<!-- <span class="phone_icon"></span> -->
 				<span>立即咨询</span>
 			</a>
-			<button  class="j-button-confirm" id="j_confirm">深入了解</button>
+			<button onclick="location.href = '/jyapp/frontPage/bigmember/free/perfect_info_strud?source=structedData'"  class="j-button-confirm" id="j_confirm">获取数据样例</button>
 		</div>
 	</div>
 </div>
@@ -318,10 +161,6 @@
 	$('.fanhui').on('click', function() {
 		history.go(-1)
 	})
-	function learn_more() {
-		window.location.href="/jyapp/structed/writeinfo"
-	}
-    $("#j_confirm").on('click', learn_more)
 	function click_view(){
 		var loading = weui.loading('loading', {
 			className: 'custom-classname'

+ 342 - 0
src/jfw/modules/app/src/web/templates/structeddata/marketing_old.html

@@ -0,0 +1,342 @@
+<!DOCTYPE html>
+<html lang="zh-CN">
+
+<head>
+	<meta charset="UTF-8">
+	<meta name="viewport"
+		content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
+	<meta name="apple-mobile-web-app-capable" content="yes">
+	<meta name="format-detection" content="telephone=yes"/>
+	<meta name="apple-mobile-web-app-status-bar-style" content="black">
+	<meta http-equiv="X-UA-Compatible" content="ie=edge">
+	<meta http-equiv="X-UA-Compatible" content="ie=edge">
+	<title>结构化招标数据</title>
+	<link rel="stylesheet" type="text/css" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/local/layout.css" />
+  <link href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/css/font.css?v={{Msg "seo" "version"}}" rel="stylesheet">
+	<link rel="stylesheet" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/css/base.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/css/weui.min.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/css/marketing.css?v={{Msg "seo" "version"}}">
+  <style>
+    .app-layout-header{
+      border-bottom: 0px!important;
+    }
+    .header-transparent>.app-back{
+      color:#fff !important;
+    }
+    .jy-app-header .subreport_title{
+      font-size:17px;
+    }
+  </style>
+</head>
+
+<body>
+<div class="app-layout-header jy-app-header header-transparent">
+	<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
+  <span class="subreport_title">结构化招标数据</span>
+</div>
+<div class="app-layout-content-b">
+	<div id="app">
+		<!-- 头部 -->
+<!--		<header class="jy-app-header header-transparent">
+			<div class="iconfont icon-fanhui fanhui"></div>
+			<div class="subreport_title">结构化招标数据</div>
+		</header>-->
+		<div class="j-main">
+			<div class="structured_top">
+				<div class="str_title">
+					<img src="/jyapp/structuredata/image/biaoti.png" alt="">
+				</div>
+				<div class="str_introduct">
+					<span class="str_text">帮助企业彻底透视</span>
+					<span class="str_text">行业、客户、竞争对手和合作伙伴</span>
+				</div>
+			</div>
+			<div class="str_what question">
+				<div class="str_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+					</div>
+					<div class="content_info">
+						剑鱼标讯采集全网招标信息,通过自然语言处理技术,将招标信息转化为结构化招标数据。
+					</div>
+					<div class="click_tip">
+						结构化招标数据示意图(点击图片放大)
+					</div>
+					<div class="sketch_map" id="sketch_map">
+						<img src="/jyapp/structuredata/image/jiegouhuahou.png" alt="">
+					</div>
+					<div class="data_mode">
+						<div class="data_mode_title">
+							数据提供方式
+						</div>
+						<div class="data_mode_content">
+							<div class="data_api square">
+								<img class="square_img" src="/jyapp/structuredata/image/api.png" alt="">
+								<span class="square_text">API接口</span>
+							</div>
+							<div class="data_email square">
+								<img class="square_img" src="/jyapp/structuredata/image/email.png" alt="">
+								<span class="square_text">邮箱</span>
+							</div>
+						</div>
+					</div>
+					<div class="message">
+						<div class="message_title">
+							多达30+信息字段
+						</div>
+						<div class="message_page">
+							<div class="message_text">
+								项目名称、项目编号、项目范围、采购单位、招标代理机构、预算、采购单位联系人、采购单位电话、采购单位地址、项目地址、发布机构、开标时间、招标代理机构联系人、招标代理机构联系方式、招标代理机构地址、中标单位、中标单位地址、中标单位联系人、中标单位联系电话、中标金额、币种、中标产品(产品名称、品牌、规格型号、单位、数量、单价、小计、质保期) ……
+							</div>
+							<div class="click_view" id="click_view" onclick="click_view()">
+								点击查看数据示例
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+
+			<!-- 结构化数据有什么特点 -->
+			<div class="advantage">
+				<div class="ad_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+					</div>
+					<ul class="list">
+						<li class="advantage_list list_one">
+							<h3 class="list_title">
+								数据全面有保障
+							</h3>
+							<p class="list_info">
+								汇集7000多个政府和企业招标网站,数据覆盖全国100%行业和地区
+							</p>
+						</li>
+						<li class="advantage_list list_two">
+							<h3 class="list_title" style="margin-top: 0.36rem;">
+								多达30+个字段,
+							</h3>
+							<h3 class="list_title" style="margin-top: 0;">
+								数据字段识别精准
+							</h3>
+							<p class="list_info">
+								海量数据也能做到精确,不含糊
+							</p>
+						</li>
+						<li class="advantage_list list_three">
+							<h3 class="list_title" style="margin-top: .66rem;">
+								T+2小时,极速获取数据
+							</h3>
+							<p class="list_info">
+								全流程自动化处理,让你第一时间拿到数据
+							</p>
+						</li>
+						<li class="advantage_list list_four">
+							<h3 class="list_title">
+								多样化的数据获取方式
+							</h3>
+							<p class="list_info">
+								API接口:与你的客户管理系统无缝对接 <br/>邮件:支持多格式附件
+							</p>
+						</li>
+					</ul>
+				</div>
+			</div>
+
+			<!-- 结构化招标数据能干什么 -->
+			<div class="dowhat">
+				<div class="dowhat_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+					</div>
+					<ul class="can_list">
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_one"></span>
+								<h3 class="title_text">分析数据,获取商机</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助销售总监轻松分析市场,为制定销售策略提供数据支撑。帮助销售人员寻找潜在商机线索,获取更多销售机会
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_two"></span>
+								<h3 class="title_text">分析潜在渠道合作伙伴</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助渠道经理优选潜在合作渠道,为业绩提升提供有效线索
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_three"></span>
+								<h3 class="title_text">制定行业分析报告,辅助战略决策</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助公司高层透视市场整体情况,为公司制定战略计划提供数据支撑
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_four"></span>
+								<h3 class="title_text">分析企业经营情况</h3>
+							</div>
+							<p class="cantodo_page">
+								为征信机构、金融行业等企业信用评定提供数据支撑,完善企业征信报告
+							</p>
+						</li>
+					</ul>
+				</div>
+			</div>
+            <!-- 优惠信息 -->
+            <div class="module buy-discount">
+                <div class="module-content">
+                    <div class="how-to-buy">
+                        <img class="s-img" src='{{Msg "seo" "cdn"}}/jyapp/structuredata/image/how-to-buy@2x.png' alt="">
+                    </div>
+                    <div class="discount">
+                        <img class="s-img" src='{{Msg "seo" "cdn"}}/jyapp/structuredata/image/discount@2x.png' alt="">
+                    </div>
+                    <div class="c-list">
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-1"></span>
+                            <div class="c-l-item-text">
+                                支持按需勾选数据并导出<br />只为你挑选的数据付费
+                            </div>
+                        </div>
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-2"></span>
+                            <div class="c-l-item-text">
+                                单条数据重复导出仅计费一次<br />不再为重复数据付费
+                            </div>
+                        </div>
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-3"></span>
+                            <div class="c-l-item-text">
+                                预存金额有效期<span class="color-red">长达3年</span><br />充值一次即可随时导出
+                            </div>
+                        </div>
+                    </div>
+                    <a class="call-phone" onclick="tel('400-108-6670')">
+                        <span class="icon-phone"></span>
+                        立即咨询:400-108-6670
+                    </a>
+                </div>
+            </div>
+			<!-- 已使用结构化招标数据的部分企业 -->
+			<div class="company">
+				<div class="company_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/jyapp/structuredata/image/zhuangshiqiu.png" alt="">
+					</div>
+					<div class="company_view">
+						<img class="company_view_img" src="/jyapp/structuredata/image/qiyejuzhen.png" alt="">
+					</div>
+				</div>
+			</div>
+		</div>
+		<div class="j-button-group">
+			<a onclick="tel('400-108-6670')" class="j-button-cancel" id="j_cancel">
+				<span class="phone_icon"></span>
+				<span>立即咨询</span>
+			</a>
+			<button  class="j-button-confirm" id="j_confirm">深入了解</button>
+		</div>
+	</div>
+</div>
+</body>
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/js/jquery.min.js'></script>
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/js/weui.min.js?v={{Msg "seo" "version"}}'></script>
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/structuredata/js/imageViewer.min.js'></script>
+{{include "/common/js.html"}}
+<script>
+	// 监听页面滚动
+	var addEvent = (function(){
+		if(window.addEventListener){
+			return function(elm, type, handle){
+			elm.addEventListener(type, handle, false);
+		}
+		}
+		if(window.attachEvent){
+			return function(elm, type, handle){
+				elm.attachEvent('on' + type, handle);
+			}
+		}
+	})();
+
+	var div = document.querySelector('.j-main');
+	addEvent(div,'scroll', function(){
+		var scrollHeight = div.scrollHeight;
+		var scrollTop    = div.scrollTop;
+		var height       = div.offsetHeight;
+		if(scrollTop>=80) {
+			$('.jy-app-header').removeClass('header-transparent')
+		}else {
+			$('.jy-app-header').addClass('header-transparent')
+		}
+	});
+
+	// 图片预览,支持缩放
+	var imageViewer = '';
+	function initImageViewer(images) {
+		function getElement(index) {
+			return document.getElementById('img' + (index + 1));
+		}
+		imageViewer = new ImageViewer(images, {
+			container: 'body',
+			enableScale: true,
+			enableTapClose: true,
+			duration: 0,
+			startIndex: 0,
+			fadeInFn: getElement,
+			fadeOutFn: getElement,
+		});
+	}
+	var images = [
+		{
+			url: '/jyapp/structuredata/image/jiegouhuahou.png',
+		},
+	];
+	initImageViewer(images)
+	// 点击图片预览
+	$('.sketch_map').on('click', function() {
+		imageViewer.open(0)
+		var ball = '<div class="ball-clip-rotate"><div class="ball"></div></div>';
+		$('.image-viewer .image-body').append(ball);
+			// 在页面上创建dom后对图片是否加载完成进行监听
+			$(imageViewer.itemList[1]).find('img').on('load', function () {
+			$('.image-viewer .image-body > .ball-clip-rotate').remove();
+			console.log('image loaded');
+		})
+	})
+
+	$('.fanhui').on('click', function() {
+		history.go(-1)
+	})
+	function learn_more() {
+		window.location.href="/jyapp/structed/writeinfo"
+	}
+    $("#j_confirm").on('click', learn_more)
+	function click_view(){
+		var loading = weui.loading('loading', {
+			className: 'custom-classname'
+		});
+		setTimeout(function () {
+			loading.hide(function() {
+				window.location.href="/jyapp/structed/getpreview"
+			});
+		});
+	}
+  //拨打电话
+  function tel(phone){
+    JyObj.callPhone(phone);
+  }
+</script>
+<!--百度统计end-->
+{{include "/common/baiducc.html"}}
+</html>

+ 99 - 7
src/jfw/modules/app/src/web/templates/weixin/follow/list.html

@@ -48,6 +48,36 @@
     }
 })(window);
 $(function(){
+	function getAjaxAdv () {
+			$.ajax({
+				type: 'POST',
+				url: '/publicapply/adLeague/exposure',
+				data: {
+						client: 'APP',
+						id: 'ad9',
+						position: '关注的项目列表页底部'
+				},
+				success: function(res) {
+						console.log(res)
+				}
+			})
+	}
+	addEventListener('focus', function() {
+			if(document.activeElement = document.getElementById('iframeu6603899_0')) {
+					$.ajax({
+							type: 'POST',
+							url: '/publicapply/adLeague/click',
+							data: {
+								client: 'APP',
+								id: 'ad9',
+								position: '关注的项目列表页底部'
+							},
+							success: function(res) {
+									console.log(res)
+							}
+					})
+			}  
+	});
 	var easyPopup = new EasyPopup("easypopup");
 	new FastClick(document.body);
 	var followLimit = {{.T.followLimit}};
@@ -65,11 +95,65 @@ $(function(){
 		if(!r.list){
 			return;
 		}
+		console.log(r)
 		var data = r.list;
-    if(data.length>0){
-      $(".app-layout-footer").css("display","")
-      $(".app-layout-content-b").css("bottom",$(".app-layout-footer").height())
-    }
+		$.ajax({
+			type: 'POST',
+			url: '/publicapply/bidcoll/power',
+			success: function(res) {
+					console.log(res)
+					// res.data.entniche = false
+					// res.data.member = false
+					// res.data.vip = 0
+					if(res.error_code == 0) {
+						if(!res.data.entniche && !res.data.member && res.data.vip <= 0){
+								if(data.length>0 ) {
+									$(".app-layout-footer").css("display","")
+									$('#entAdv').hide()
+									$(".app-layout-content-b").css("bottom",$(".app-layout-footer").height())
+									(window.slotbydup = window.slotbydup || []).push({
+											id: "u6603903",
+											container: "_u2w0em6qe4",
+											async: true
+									});
+									getAjaxAdv()
+								} else {
+									(window.slotbydup = window.slotbydup || []).push({
+										id: "u6603903",
+										container: "_40lx7f736fw",
+										async: true
+									});
+									getAjaxAdv()
+								}
+						} else {
+							if(data.length>0 ) {
+								$(".app-layout-footer").css("display","")
+								$('#entAdv').hide()
+								$(".app-layout-content-b").css("bottom",$(".app-layout-footer").height())
+							}
+						}
+					}
+			},
+			error: function(err) {
+					console.log(err)
+			}
+	})
+		addEventListener('blur', function() {
+				if(document.activeElement = document.getElementById('iframeu6603903_0')) {
+						$.ajax({
+								type: 'POST',
+								url: '/publicapply/adLeague/click',
+								data: {
+									client: 'APP',
+									id: 'ad9',
+									position: '关注的项目列表页底部'
+								},
+								success: function(res) {
+										console.log(res)
+								}
+						})
+				}  
+		});
 		var html = "";
 		var fronthtml = "";
 		var lasthtml = "";
@@ -247,6 +331,12 @@ $(document).on('click','.pur_btn',function(){
 })
 </script>
 </head>
+<style>
+	#entAdv{
+		position: fixed;
+		bottom: 0;
+	}
+</style>
 <body class="listpage">
 	<div class="app-layout-header jy-app-header">
 		<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
@@ -269,8 +359,9 @@ $(document).on('click','.pur_btn',function(){
 	</div>
   <div class="app-layout-footer" style="display:none">
       <div class="jylistbottom">
-    		<img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/images/wx/jydustbin.png?v={{Msg "seo" "version"}}"/>批量移除30天无更新项目
-    	</div>
+				<img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/images/wx/jydustbin.png?v={{Msg "seo" "version"}}"/>批量移除30天无更新项目
+				<!-- <div class="_u2w0em6qe4"></div> -->
+			</div>
   		<div class="easypopup" id="easypopup">
   			<div class="easypopup-main">
   				<div class="easypopup-header">提示信息</div>
@@ -283,7 +374,8 @@ $(document).on('click','.pur_btn',function(){
   				</div>
   			</div>
   		</div>
-  </div>
+	</div>
+	<!-- <div class="_40lx7f736fw" id="entAdv"></div> -->
 {{include "/common/baiducc.html"}}
 </body>
 </html>

+ 103 - 0
src/jfw/modules/app/src/web/templates/weixin/historypush.html

@@ -374,6 +374,65 @@
             }
         })
     </script>
+    <script type="text/javascript">
+    $.ajax({
+        type: 'POST',
+        url: '/publicapply/bidcoll/power',
+        success: function(res) {
+                console.log(res)
+                if(res.error_code == 0) {
+                    if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+                        setTimeout(function() {
+                            (window.slotbydup = window.slotbydup || []).push({
+                                id: "u6603902",
+                                container: "_36y1d8lbx9n",
+                                async: true
+                            });
+                            (window.slotbydup = window.slotbydup || []).push({
+                                id: "u6603902",
+                                container: "_061vbh43quq3",
+                                async: true
+                            });
+                        },1000)
+                        getAjaxAdv()
+                    }
+                }
+        },
+        error: function(err) {
+                console.log(err)
+        }
+    })
+    function getAjaxAdv () {
+        $.ajax({
+            type: 'POST',
+            url: '/publicapply/adLeague/exposure',
+            data: {
+                client: 'APP',
+                id: 'ad6',
+                position: '订阅推送列表页'
+            },
+            success: function(res) {
+                console.log(res)
+            }
+        })
+    }
+    addEventListener('focus', function() {
+        if(document.activeElement = document.getElementById('iframeu6603902_0')) {
+            $.ajax({
+                type: 'POST',
+                url: '/publicapply/adLeague/click',
+                data: {
+                    client: 'APP',
+                    id: 'ad6',
+                    position: '订阅推送列表页'
+                },
+                success: function(res) {
+                        console.log(res)
+                }
+            })
+        }  
+    });
+    </script>
 <script>
   // @手机号绑定及账号合并 2021/1/25
   $("#toKeySet").on('click', tokeyset)
@@ -1116,6 +1175,50 @@ function hasNoData() {
                   continue
               }
           }
+        //   if (index == 8) {//广告位
+        //     listhtml += '<div class="tslist ' + visited + '" style="border-bottom: none;" words="' + mWords + '">'
+        //         + '<div class="resnumb">'
+        //         + '<div class="one">'
+        //         + '<span class="xh ' + visited + '">' + count + '.</span>'
+        //         + '</div>'
+        //         + '<div class="two bt-parent" style="display: flex;justify-content: space-between;padding-left:' + paddingLeft + 'px;">'
+        //         + '<a class="bt ' + visited + '" eid="' + obj["_id"] + '"  push_date="' + obj["ca_date"] + '" list_index="' + obj["ca_index"] + '" projectM="' + obj["ca_type"] + '">' + title + '</a>'
+        //         + '<div class="collec_star" collecnum="'+obj["collection"]+'" data-id="' + obj["_id"] + '">'
+        //         + '<span class="shoucang"></span>'
+        //         + '<span class="weishoucang"></span>'
+        //         + '</div>'
+        //         + '</div>'
+        //         + '</div>'
+        //         + '<div style="clear:both;">'
+        //         + '</div>'
+        //         + '<div class="restime time-diff">' + projectMList + showdateList + '</div>'
+        //         + '<div style="clear:both;"></div>'
+        //         + '</div>'
+        //         + '<div class="_36y1d8lbx9n">'+'</div>'
+        //     continue
+        //   }
+        //   if (index == 23) {//广告位
+        //     listhtml += '<div class="tslist ' + visited + '" style="border-bottom: none;" words="' + mWords + '">'
+        //         + '<div class="resnumb">'
+        //         + '<div class="one">'
+        //         + '<span class="xh ' + visited + '">' + count + '.</span>'
+        //         + '</div>'
+        //         + '<div class="two bt-parent" style="display: flex;justify-content: space-between;padding-left:' + paddingLeft + 'px;">'
+        //         + '<a class="bt ' + visited + '" eid="' + obj["_id"] + '"  push_date="' + obj["ca_date"] + '" list_index="' + obj["ca_index"] + '" projectM="' + obj["ca_type"] + '">' + title + '</a>'
+        //         + '<div class="collec_star" collecnum="'+obj["collection"]+'" data-id="' + obj["_id"] + '">'
+        //         + '<span class="shoucang"></span>'
+        //         + '<span class="weishoucang"></span>'
+        //         + '</div>'
+        //         + '</div>'
+        //         + '</div>'
+        //         + '<div style="clear:both;">'
+        //         + '</div>'
+        //         + '<div class="restime time-diff">' + projectMList + showdateList + '</div>'
+        //         + '<div style="clear:both;"></div>'
+        //         + '</div>'
+        //         + '<div class="_061vbh43quq3">'+'</div>'
+        //     continue
+        //   }
           listhtml += '<div class="tslist ' + visited + '" words="' + mWords + '">'
               + '<div class="resnumb">'
               + '<div class="one">'

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

@@ -475,6 +475,9 @@
       type: 'POST'
     }).done(function (r) {
         if (r && r.error_msg == '' && r.data) {
+            if(!r.data.entniche && !r.data.member && r.data.vip <= 0) {
+                advHtml()
+            }
           window.jyUserPower = {
             entniche: r.data.entniche,
             member: r.data.member,
@@ -505,8 +508,50 @@
         }
       }
     })
+    function advHtml () {
+        (window.slotbydup = window.slotbydup || []).push({
+            id: "u6603898",
+            container: "_ouq34ajmfig",
+            async: true
+        });
+        (window.slotbydup = window.slotbydup || []).push({
+            id: "u6603898",
+            container: "_nxko9k32d8d",
+            async: true
+        });
+        getAjaxAdv()
+    }
+    function getAjaxAdv () {
+        $.ajax({
+            type: 'POST',
+            url: '/publicapply/adLeague/exposure',
+            data: {
+                    client: 'APP',
+                    id: 'ad5',
+                    position: '搜索列表页'
+            },
+            success: function(res) {
+                    console.log(res)
+            }
+        })
+    }
+    addEventListener('focus', function() {
+        if(document.activeElement = document.getElementById('iframeu6603898_0')) {
+            $.ajax({
+                type: 'POST',
+                url: '/publicapply/adLeague/click',
+                data: {
+                    client: 'APP',
+                    id: 'ad5',
+                    position: '搜索列表页'
+                },
+                success: function(res) {
+                        console.log(res)
+                }
+            })
+        }  
+    });
 </script>
-
 <script type="text/javascript">
   var adv_url = "/datareport/page/introduce";
   var adv_img = "/jyapp/images/reportTip.png?v=51430"
@@ -1134,13 +1179,14 @@
     }
     function loadAD(r){
         //jyapp-wxsearch-middle
+        console.log(r, 'r')
         var ADList=r["jyapp-wxsearch-middle"];
+        console.log(ADList, 'ADList')
         if(ADList!=null){
             var random=Math.floor(Math.random()*ADList.length)
             var AD=ADList[random]
             var ADHtml="<span class=\"closeadv-bg\"></span>"
                 +"<img id='adv-appsearch-center' src=\"{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/images/close_heidi.png?v={{Msg "seo" "version"}}\" class=\"closeadv\" onclick=\"SuperSearch.closeadv(this)\">";
-
             if(AD.s_pic){
                 if(AD.s_link){
                     var ADtitle = "";

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

@@ -128,6 +128,59 @@
     <div class="app-layout-content-b">
         <div class="mask"></div>
         <div class="info">
+            <!-- <div class="_c2l0w7g3cjf"></div> -->
+            <script type="text/javascript">
+            $.ajax({
+                type: 'POST',
+                url: '/publicapply/bidcoll/power',
+                success: function(res) {
+                    console.log(res)
+                    if(res.error_code == 0) {
+                        if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+                            (window.slotbydup = window.slotbydup || []).push({
+                                id: "u6603899",
+                                container: "_c2l0w7g3cjf",
+                                async: true
+                            });
+                            getAjaxAdv()
+                        }
+                    }
+                },
+                error: function(err) {
+                        console.log(err)
+                }
+			})
+                function getAjaxAdv () {
+                    $.ajax({
+                    type: 'POST',
+                    url: '/publicapply/adLeague/exposure',
+                    data: {
+                        client: 'APP',
+                        id: 'ad7',
+                        position: '公告详情页顶部'
+                    },
+                    success: function(res) {
+                        console.log(res)
+                    }
+                    })
+                }
+                addEventListener('focus', function() {
+                    if(document.activeElement = document.getElementById('iframeu6603899_0')) {
+                        $.ajax({
+                            type: 'POST',
+                            url: '/publicapply/adLeague/click',
+                            data: {
+                                client: 'APP',
+                                id: 'ad7',
+                                position: '公告详情页顶部'
+                            },
+                            success: function(res) {
+                                console.log(res)
+                            }
+                        })
+                    }  
+                });
+            </script>
             <div class="title myfollow" id="title">{{.T.obj.title}}</div>
             <script>
                 var MoneyUnit = {

+ 1 - 1
src/jfw/modules/followent/src/web/staticres/jylab/followent/css/follow.css

@@ -61,7 +61,7 @@
 .listpage .tip{
 	font-size: 14px;
 	padding: 5px 20px;
-	margin-bottom:70px;
+	margin-bottom:170px;
 }
 .listpage .tip img{
 	margin-right: 10px;

+ 101 - 2
src/jfw/modules/followent/src/web/templates/weixin/list.html

@@ -13,12 +13,21 @@ if(sessionStorage){
 }
 </script>
 <script src="/jylab/followent/js/rem.js"></script>
+<script src="https://cdn-common.jianyu360.com/cdn/lib/jquery/3.6.0/jquery.min.js"></script>
 <link href="/jylab/followent/css/weui.min.css" rel="stylesheet">
 <link href="/jylab/followent/css/common.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 <link href="/jylab/followent/css/follow.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 <link href="/jylab/followent/css/merge-wx.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 
 </head>
+<style>
+    #pro_footer{
+		position: fixed;
+		left: 0;
+		right: 0;
+		bottom: 0;
+	}
+</style>
 <body class="listpage">
 	<ul>
 	</ul>
@@ -29,8 +38,98 @@ if(sessionStorage){
 		<img src="/jylab/followent/images/wx/jyprompt.png">剑鱼标讯提示:<front>可关注{{.T.followEntLimit}}个企业</front>
 	</div>
 	<div class="jylistbottom" style="display: none;">
-		<img src="/jylab/followent/images/wx/jydustbin.png"/>批量移除30天无更新企业
-	</div>
+        <img src="/jylab/followent/images/wx/jydustbin.png"/>批量移除30天无更新企业
+    </div>
+    <div class="_fhts92t44f" id="pro_footer"></div>
+    <script type="text/javascript">
+        $.ajax({
+            type: 'POST',
+            url: '/publicapply/bidcoll/power?t=' + new Date().getTime(),
+            success: function(res) {
+                console.log(res)
+                // res.data.entniche = false
+                // res.data.member = false
+                // res.data.vip = 0
+                if(res.error_code == 0) {
+                    if(!res.data.entniche && !res.data.member && res.data.vip <= 0){
+                        (window.slotbydup = window.slotbydup || []).push({
+                            id: "u6603901",
+                            container: "_fhts92t44f",
+                            async: true
+                        });
+                        getAjaxAdv()
+                        var frames = document.getElementById("iframeu6603901_0");
+                        console.log(frames, 'frames')
+                        IframeOnClick.track(frames, function() {
+                            jQuery(document).click();
+                        });
+                    }
+                }
+            },
+            error: function(err) {
+                console.log(err)
+            }
+        })
+        function getAjaxAdv () {
+            $.ajax({
+                type: 'POST',
+                url: '/publicapply/adLeague/exposure',
+                data: {
+                        client: 'WX',
+                        id: 'ad8',
+                        position: '关注的企业列表页底部'
+                },
+                success: function(res) {
+                        console.log(res)
+                }
+            })
+        }
+        var IframeOnClick = {
+            resolution: 200,  
+            iframes: [],  
+            interval: null,  
+            Iframe: function() {  
+                    this.element = arguments[0];  
+                    this.cb = arguments[1];   
+                    this.hasTracked = false;  
+            },  
+            track: function(element, cb) {  
+                    this.iframes.push(new this.Iframe(element, cb));  
+                    var _this = this;  
+                            this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+            },  
+            checkClick: function() {  
+                if (document.activeElement) {  
+                    var activeElement = document.activeElement;  
+                    for (var i in this.iframes) {  
+                        if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                                if (this.iframes[i].hasTracked == false) {   
+                                        this.iframes[i].cb.apply(window, []);   
+                                        this.iframes[i].hasTracked = true;
+                                        $.ajax({
+                                                type: 'POST',
+                                                url: '/publicapply/adLeague/click',
+                                                data: {
+                                                    client: 'WX',
+                                                    id: 'ad8',
+                                                    position: '关注的企业列表页底部'
+                                                },
+                                                success: function(res) {
+                                                        console.log(res)
+                                                }
+                                        })
+                                }  
+                        } else {  
+                                this.iframes[i].hasTracked = false;  
+                        }  
+                    }  
+                }  
+            }  
+			};
+    </script>
+    <!-- 多条广告如下脚本只需引入一次 -->
+    <script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+    </script>
 	<div class="easypopup" id="easypopup">
 		<div class="easypopup-main">
 			<div class="easypopup-header">提示信息</div>

+ 4 - 0
src/jfw/modules/publicapply/src/adLeague.json

@@ -0,0 +1,4 @@
+{
+	"exposure" :"http://0.0.0.0:8888/advertisingExposure",
+	"click" :"http://0.0.0.0:8888/advertisingClick"
+}

+ 0 - 0
src/jfw/modules/publicapply/src/adLeague/entity/entity.go


+ 11 - 0
src/jfw/modules/publicapply/src/adLeague/init.go

@@ -0,0 +1,11 @@
+package adLeague
+
+import (
+	"adLeague/service"
+
+	"github.com/go-xweb/xweb"
+)
+
+func init() {
+	xweb.AddAction(&service.Ad{})
+}

+ 64 - 0
src/jfw/modules/publicapply/src/adLeague/service/service.go

@@ -0,0 +1,64 @@
+package service
+
+import (
+	. "api"
+	. "config"
+	"encoding/json"
+	"io/ioutil"
+	"log"
+	"net/http"
+	"net/url"
+	qu "qfw/util"
+
+	"github.com/go-xweb/xweb"
+)
+
+type Ad struct {
+	*xweb.Action
+	adL xweb.Mapper `xweb:"/adLeague/(.*)"` //广告曝光记录接口
+
+}
+
+/*广告联盟
+-exposure 广告曝光记录接口
+-click  点击
+*/
+func (this *Ad) AdL(typ string) {
+	userId, _ := this.GetSession("userId").(string)
+	defer qu.Catch()
+	r := func() Result {
+		client := this.GetString("client")
+		id := this.GetString("id")
+		position := this.GetString("position")
+		href := AdLeaguefig.Exposure
+		if typ == "click" {
+			href = AdLeaguefig.Click
+		}
+		data := url.Values{
+			"userID":         []string{userId},   //用户ID
+			"client":         []string{client},   //用户端
+			"advertisingID":  []string{id},       //广告id
+			"advertisingUrl": []string{position}, //广告位置
+		}
+		//
+		res, err := http.PostForm(href, data)
+		if err != nil {
+			log.Println("er:", err.Error())
+			return Result{Data: false}
+		}
+		defer res.Body.Close()
+		bs, _ := ioutil.ReadAll(res.Body)
+		//log.Println("返回内容:" + string(bs))
+		resMap := map[string]interface{}{}
+		err = json.Unmarshal([]byte(bs), &resMap)
+		if err != nil {
+			log.Println("json.unmarshal err", resMap)
+		} else {
+			if qu.IntAll(resMap["Code"]) == 1 {
+				return Result{Data: true}
+			}
+		}
+		return Result{Data: false}
+	}()
+	this.ServeJson(r)
+}

+ 7 - 0
src/jfw/modules/publicapply/src/config/config.go

@@ -28,11 +28,18 @@ type BidColl struct {
 	CollListRedisMaxCount int    //收藏列表redis最大条数限制
 }
 
+type AdLeague struct {
+	Exposure string //广告曝光记录接口
+	Click    string //点击接口
+}
+
 var Config *config
 var BidCollConfig *BidColl
+var AdLeaguefig *AdLeague
 
 func init() {
 	//程序配置文件
 	qutil.ReadConfig(&Config)
 	qutil.ReadConfig("./bidcollection.json", &BidCollConfig)
+	qutil.ReadConfig("./adLeague.json", &AdLeaguefig)
 }

+ 2 - 1
src/jfw/modules/publicapply/src/filter/sessionfilter.go

@@ -14,9 +14,10 @@ type sessionfilter struct {
 }
 
 var reg = regexp.MustCompile("^/publicapply/free/.*")
+var reg_ad = regexp.MustCompile("^/publicapply/adLeague/.*")
 
 func (l *sessionfilter) Do(w http.ResponseWriter, req *http.Request) bool {
-	if reg.MatchString(req.URL.Path) {
+	if reg.MatchString(req.URL.Path) || reg.MatchString(req.URL.Path) {
 		return true
 	}
 	session := l.App.SessionManager.Session(req, w)

+ 1 - 0
src/jfw/modules/publicapply/src/main.go

@@ -2,6 +2,7 @@ package main
 
 import (
 	_ "a"
+	_ "adLeague"
 	_ "applocation"
 	_ "bidcollection"
 	. "config"

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

@@ -208,7 +208,7 @@ var vNode = {
             return (!this.conf._4 && !this.isVip) || (this.entvisit.total <= this.entvisit.usage && this.powerInfo.memberStatus <= 0 && !this.entvisit.visited)
         },
         isMember () {
-          return this.powerInfo.memberStatus <= 0 || !this.conf_4
+          return this.powerInfo.memberStatus <= 0 || !this.conf._4
         },
         isShowUpTip () {
             return this.entvisit.provin == -1 ? false : !this.surplus

+ 406 - 0
src/web/staticres/common-module/pc-dialog/css/leave-info-dialog.css

@@ -0,0 +1,406 @@
+.fl{
+  float: left;
+}
+.fr{
+  float: right;
+}
+/* 滚动条样式 */
+.user-data-dialog ::-webkit-scrollbar {
+  /*滚动条整体样式*/
+  width: 6px;
+  height: 1px;
+}
+.user-data-dialog ::-webkit-scrollbar-thumb {
+  /*滚动条里面小方块*/
+  border-radius: 10px;
+  background: #e0e0e0;
+}
+.user-data-dialog ::-webkit-scrollbar-track {
+  /*滚动条里面轨道*/
+  box-shadow: inset 0 0 5px #fff;
+  border-radius: 10px;
+  background: transparent;
+}
+#collectUserInfoDialog .mask{
+  position: fixed;
+  width: 100%;
+  height: 100%;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  background: #000000;
+  opacity: 0.6;
+  z-index: 999;
+}
+#collectUserInfoDialog .dialog-container{
+  position: fixed;
+  left: 50%;
+  top: 50%;
+  width: 752px;
+  max-height: 680px;
+  margin: 34px auto 0;
+  background: #fff;
+  border-radius: 8px;
+  transform: translate(-50%,-50%);
+  z-index: 1000;
+  box-sizing: border-box;
+  /* overflow-y: auto; */
+}
+#collectUserInfoDialog .dialog-header{
+  margin-top: -114px;
+  height: 250px;
+  color: #1D1D1D;
+  font-size: 18px;
+  line-height: 28px;
+  text-align: center;
+  background: url('/common-module/pc-dialog/image/structed-title.png?v={{Msg "seo" "version"}}') no-repeat top center;
+  background-size: 100% 250px;
+}
+#collectUserInfoDialog .dialog-content{
+  /* margin-top: 20px; */
+  padding: 0 32px 32px;
+}
+#collectUserInfoDialog .form-title{
+  font-size: 14px;
+  line-height: 22px;
+  color: #2CB7CA;
+}
+#collectUserInfoDialog .form-main{
+  margin: 10px 0 10px;
+}
+#collectUserInfoDialog .short-control{
+  width: calc(50% - 16px);
+}
+#collectUserInfoDialog .long-control{
+  width: 100%;
+}
+
+#collectUserInfoDialog .item-input{
+  width: calc(100% - 90px);
+}
+.code-input .el-input-group__append{
+  border: 0;
+  background-color: transparent;
+  padding: 0 0 0 14px;
+  cursor: pointer;
+  color: #2CB7CA;
+  text-align: center;
+}
+.code-input .el-button.is-disabled, 
+.code-input .el-button.is-disabled:focus, 
+.code-input .el-button.is-disabled:hover{
+  border: 0;
+  color: #C0C4CC;
+  background-color: transparent;
+}
+.code-input .el-input-group--append .el-input__inner{
+  border-top-right-radius: 4px;
+  border-bottom-right-radius: 4px;
+}
+#collectUserInfoDialog .company-result{
+  position: absolute;
+  width: calc(100% - 90px);
+  top: 38px;
+  left: 88px;
+  height: auto;
+  background-color: #fff;
+  border: 1px solid #2CB7CA;
+  z-index: 100;
+  border-radius: 4px;
+}
+#collectUserInfoDialog .company-list{
+  padding: 0 16px;
+  height: 30px;
+  line-height: 30px;
+  font-size: 14px;
+  color: #1D1D1D;
+  cursor: pointer;
+  text-overflow: ellipsis;
+  overflow: hidden;
+  white-space: nowrap;
+}
+#collectUserInfoDialog .company-list:hover{
+  background: #ECECEC;
+}
+#collectUserInfoDialog .short-input{
+  width: calc(50% - 90px);
+}
+#collectUserInfoDialog [data-short-input]{
+  /* width: calc(240px - 16px); */
+  /* height: 36px; */
+  /* box-sizing: border-box; */
+  /* border-radius: 4px; */
+}
+#collectUserInfoDialog [data-long-input]{
+  /* width: calc(600px - 16px); */
+  height: 36px;
+  border: 1px solid #E0E0E0;
+  box-sizing: border-box;
+  border-radius: 4px;
+}
+#collectUserInfoDialog .agree-service{
+  text-align: center;
+}
+#collectUserInfoDialog .agree-service .el-checkbox__label, 
+#collectUserInfoDialog .agree-service .el-checkbox__input.is-checked+.el-checkbox__label{
+  color: #686868;
+}
+#collectUserInfoDialog .dialog-footer{
+  padding-top: 20px;
+  text-align: center;
+}
+#collectUserInfoDialog .cancel-btn{
+  width: 132px;
+  height: 36px;
+  line-height: 36px;
+  padding: 0;
+  border-radius: 6px;
+}
+#collectUserInfoDialog .submit-btn{
+  width: 132px;
+  height: 36px;
+  padding: 0;
+  color: #fff;
+  line-height: 36px;
+  background: #2CB7CA;
+  border-radius: 6px;
+  border: 1px solid #2CB7CA;
+}
+#collectUserInfoDialog .submit-btn:hover{
+  color: #fff;
+  border-color: #2CB7CA;
+  background: #2CB7CA;
+}
+/* element-ui reset */
+#collectUserInfoDialog .company-type > .el-form-item__label,
+#collectUserInfoDialog .company-type > .el-form-item__content{
+  line-height: 22px;
+}
+.el-form-item{
+  margin-bottom: 14px;
+}
+.el-form-item__error{
+  padding: 0px 0 0 90px;
+  top: 98%;
+}
+.el-form-item__label{
+  width: 80px;
+  padding: 0;
+  margin-right: 8px;
+  color: #686868;
+  margin-bottom: 0!important;
+  font-weight: normal!important;
+}
+.el-cascader-panel{
+  min-width: 240px;
+}
+.el-cascader{
+  line-height: 36px;
+  border: 0;
+}
+#collectUserInfoDialog .el-input__inner{
+  height: 36px;
+  line-height: 36px;
+  border-radius: 4px;
+}
+.el-cascader-menu{
+  min-width: 0;
+}
+.el-cascader-node{
+  padding: 0 28px 0 6px;
+}
+.el-cascader-node__prefix{
+  display: none;
+}
+.el-cascader-menu:last-child{
+  flex: 1;
+}
+.el-cascader__dropdown{
+  border-color: #2CB7CA;
+}
+.el-select-dropdown{
+  border-color: #2CB7CA;
+}
+.el-popper[x-placement^=bottom]{
+  margin-top: 0;
+}
+.el-popper[x-placement^=bottom] .popper__arrow{
+  display: none;
+}
+.el-input.is-active .el-input__inner, 
+.el-input__inner:focus{
+  border-color: #2CB7CA;
+}
+.el-select .el-input.is-focus .el-input__inner,
+.el-select .el-input__inner:focus{
+  border-color: #2CB7CA;
+}
+.el-cascader .el-input .el-input__inner:focus, 
+.el-cascader .el-input.is-focus .el-input__inner {
+  border-color: #2CB7CA;
+}
+.el-checkbox__input.is-focus{
+  border-color: #2CB7CA;
+}
+.el-checkbox{
+  margin-right: 12px;
+}
+.el-checkbox__label{
+  padding-left: 3px;
+  color: #1D1D1D;
+}
+.el-checkbox__input.is-checked+.el-checkbox__label{
+  color: #1D1D1D;
+}
+.el-checkbox__input.is-checked .el-checkbox__inner, 
+.el-checkbox__input.is-indeterminate .el-checkbox__inner{
+  background-color: #2CB7CA;
+  border-color: #2CB7CA;
+}
+.el-checkbox__inner:hover{
+  border-color: #DCDFE6;
+}
+.el-cascader-node.in-active-path, .el-cascader-node.is-active, .el-cascader-node.is-selectable.in-checked-path,
+.el-select-dropdown__item.selected{
+  color: #2CB7CA;
+}
+.el-button:focus, .el-button:hover{
+  background: #FFF;
+  border: 1px solid #DCDFE6;
+  color: #606266;
+}
+.el-textarea__inner{
+  /* height: 36px; */
+  min-height: 36px!important;
+}
+.el-select-dropdown__wrap{
+  max-height:124px;
+}
+
+
+#success-dialog .success-dialog-container{
+  position: fixed;
+  width: 380px;
+  top: 50%;
+  left: 50%;
+  padding: 32px;
+  transform: translateX(-50%) translateY(-50%);
+  background: #ffffff;
+  border-radius: 8px;
+  transition: all 2s linear;
+  z-index: 1038;
+}
+#success-dialog .success-title{
+  padding: 0 0 20px;
+  color: #1d1d1d;
+  line-height: 28px;
+  font-size: 18px;
+  text-align: center;
+}
+#success-dialog .success-content{
+  text-align: center;
+  color: #686868;
+  line-height: 22px;
+  font-size: 14px;
+}
+#success-dialog .success-footer{
+  padding: 32px 0 0;
+  text-align: center;
+}
+.mask {
+  position: fixed;
+  width: 100%;
+  height: 100%;
+  right: 0;
+  left: 0;
+  top: 0;
+  bottom: 0;
+  background: rgba(0, 0, 0, .5);
+  z-index: 1031;
+}
+
+#success-dialog .custom-btn{
+  display: inline-block;
+  width: 132px;
+  height: 36px;
+  line-height: 36px;
+  background: #2cb7ca;
+  border-radius: 6px;
+  text-align: center;
+  color: #fff;
+  font-size: 16px;
+  cursor: pointer;
+  border: 0;
+}
+#success-dialog .dialog-adv{
+  margin-top: 32px;
+  width: 100%;
+  height: 64px;
+  background: #010302;
+  border-radius: 4px;
+  cursor: pointer;
+}
+#success-dialog .dialog-adv > img{
+  width: 100%;
+  height: 100%;
+}
+
+#collect-dialog .custom-btn:disabled{
+  opacity: 0.5;
+  cursor:not-allowed;
+}
+.el-popper ul li{
+  float: none!important;
+}
+
+#export-dialog .export-dialog-container{
+  position: fixed;
+  width: 380px;
+  top: 50%;
+  left: 50%;
+  padding: 32px;
+  transform: translateX(-50%) translateY(-50%);
+  background: #ffffff;
+  border-radius: 8px;
+  transition: all 2s linear;
+  z-index: 1038;
+}
+#export-dialog .export-content{
+  text-align: justify;
+  color: #686868;
+  line-height: 22px;
+  font-size: 14px;
+}
+#export-dialog .export-footer{
+  padding: 32px 0 0;
+  text-align: center;
+}
+#export-dialog .custom-btn{
+  display: inline-block;
+  width: 132px;
+  height: 36px;
+  line-height: 36px;
+  background: #2cb7ca;
+  border-radius: 6px;
+  text-align: center;
+  color: #fff;
+  font-size: 16px;
+  cursor: pointer;
+  border: 0;
+}
+#export-dialog .custom-btn:disabled{
+  opacity: 0.5;
+  cursor:not-allowed;
+}
+#export-dialog  .export-close{
+  position: absolute;
+  top: 8px;
+  right: 8px;
+  display: inline-block;
+  width: 16px;
+  height: 16px;
+  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGgSURBVHgB7djNbYMwFAdwA0cuGaEjpCNkBA4IIQ4Nk9QZIROgHhACDoyQEdoNwgjcEaJ+EUQqjT+fq1aq/1KUL/z8Cw4YQ4iLi8s/SFVVT8RyiqLYqWznyzZommYfBMF727avxFKgVhiG17Is97JtPSLBsacLe9x+red5NI7jE0Hi5nmmy9thHMdDlmUfRBfYdd2ONb6uuHsDBHKDWzNM0/Scpmn/qA13iKMoGlix8/Zz6MBkuDk4qHfm4SDCIYbUdU3ZXvsG0tmTAtwpSRIqaisFYpEYnDLQFInFaQF1kTZw2kBVpC2cEVCGXCCUWMDdahLD8JCPYoqDGAMhKkgMDoICQkRILA4ivViQFvD92eQ71aD2IO9o/dIB8gLDGKiCu3eCQBoBRee5BYSau1FAlZOwjQsMI6DODGELqQw0mb5sIJWAmLkVi5QCbUz8GKT30zgskjuTwKKJQY7EAg4CbdbT0KbeUbRGFi6a2GrrwF72WJwA2UMfeZ4PvDbS/yDcVWAL9wsr/Iad+Ncsw/0CONGKTjmqtyl+u6aLi8tfzCdfoXwUD1ES1QAAAABJRU5ErkJggg==) no-repeat center center;
+  background-size: contain;
+  cursor: pointer;
+}

BIN
src/web/staticres/common-module/pc-dialog/image/close.png


BIN
src/web/staticres/common-module/pc-dialog/image/data-export.png


BIN
src/web/staticres/common-module/pc-dialog/image/structed-title.png


ファイルの差分が大きいため隠しています
+ 0 - 0
src/web/staticres/common-module/pc-dialog/js/leave-info-dialog.js


BIN
src/web/staticres/common-module/perfect-info/image/A_01.jpg


BIN
src/web/staticres/common-module/perfect-info/image/A_02.jpg


BIN
src/web/staticres/common-module/perfect-info/image/A_03.jpg


BIN
src/web/staticres/common-module/perfect-info/image/A_04.jpg


BIN
src/web/staticres/common-module/perfect-info/image/A_05.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_01.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_02.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_03.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_04.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_05.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_06.jpg


BIN
src/web/staticres/common-module/perfect-info/image/B_07.jpg


BIN
src/web/staticres/common-module/perfect-info/image/dataimg.png


+ 72 - 1
src/web/staticres/common-module/perfect-info/index.css

@@ -367,4 +367,75 @@
   opacity: 1;
 }
 
-/*# sourceMappingURL=index.css.map */
+/*# sourceMappingURL=index.css.map */
+/* s- 4.5.2.7 -s */
+.commitdialog{
+  width: 6.06rem;
+  height: 6.84rem;
+  background: #fff;
+  border-radius: .16rem;
+}
+.commitdialog .com-header{
+  padding: .16rem .16rem 0 0;
+  justify-content: flex-end;
+}
+.commitdialog .com-main .img-duihao{
+  height: 1.6rem;
+  text-align: center;
+}
+.commitdialog .com-main .img-duihao img{
+  height: 1.6rem;
+}
+.commitdialog .com-main .commit_success{
+  margin-top: .2rem;
+  height: .52rem;
+  font-size: .36rem;
+  font-weight: 500;
+  text-align: center;
+  color: #000000;
+  line-height: .52rem;
+}
+.commitdialog .com-main .commit_tip{
+  margin-top: .36rem;
+  font-size: .28rem;
+  font-weight: 500;
+  text-align: center;
+  color: #5F5E64;
+  line-height: .4rem;
+}
+.commitdialog .com-main .commit_know{
+  margin-top: .36rem;
+  width: 100%;
+  height: .8rem;
+  text-align: center;
+}
+.commitdialog .com-main .commit_btn{
+  width: 4.96rem;
+  height: .8rem;
+  background: #2abed1;
+  border-radius: .08rem;
+  font-size: .32rem;
+  color: #f7f9fa;
+}
+.data_exportclick{
+  margin-top: .36rem;
+  padding: 0 .56rem;
+}
+.van-dialog.ent-search-dialog.no-infor .van-dialog__message {
+  padding: 0 30px 20px;
+  font-size: 16px;
+  text-align: justify;
+}
+.van-dialog.ent-search-dialog.no-infor .van-dialog__header {
+  display: flex;
+  justify-content: flex-end;
+  padding: 8px 8px 0 0;
+}
+.infor-icon-close{
+  display: flex;
+  width: .4rem;
+  height: .4rem;
+  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAKFSURBVHgB7VfPaxpBFH5tjdQiTUnABtOgaCktViill9JbEYrQQ6+9ePDaixf/lCIIevDSS/8Ez4aWXEQLpVCLjYSE/IAYE4mGkPfF2bBOZnadZZNL8sFHlp03+T7nzXszS3TTcYe84QEzJDhmnjD3xd8rM/CQucJ8LAyoMGTuMP+IZ18MBJgpIW6C9VmMuBlYZL5hzpE3QLzN3NIF3HOYvCLEnWLcAOPLwkifDAwgz6/JPywxd0mRjruKYOzsl+Q/sJoBmsHAM2HiArlcbrler3/KZDIL5ALENBqNz5gjDSEdKTleTgGEX8lBpVLpYzqdfpfNZtOtVqvd6XSGOvFqtfolGo0+jUQi41qt9lsKmWduMo91BlIiaArdbncD4uFweEFnwhJHzGAw2CsWi981Rk+Z2zoDyP2lksM/gqjOhCyez+e/csr2SI37zH8qAxB+rpmkNZFIJEIG4pZOjyYtfKoRoem8JRfIvxbvDMQtrNKkLKdWALmPus2UVyIYDIYMxUmInzcmexkG6Powth7kPeB64MgpGI1GQ6fq0OA/ia5oX4G+2yzVbgfxjHcYm6VZ0eTucA77CqA+n5Dm5NOVmluJKnDE/KsyQEJ8cVZxa9zQBDrhls4A3CXkGeVy+UMsFnvhtNtlE9y6Q5VKpU2XsUa2q5tsAAM4D+R2fBCPxwOFQuGbU6lZJpLJJLH4arPZPJBCcEvq2V+obkRIw3vyfgvSAauLBjSVFtVxjBpdI//xixQXEt2NCIFwvET+oMncUA043ff6go/Iezqwmj9psvPJ1AAwEJNhYJ7MgA33g3noFGTyYYLqwHUNfUL3YYK09YS4bx8mKuDgworMiWeIefo0u8UZWsFaVw0bCS4AAAAASUVORK5CYII=) no-repeat;
+  background-size: contain;
+}
+/* e- 4.5.2.7 -e */

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

@@ -63,7 +63,7 @@ top:17px;
 .listpage .tip{
 	font-size: 14px;
 	padding: 5px 20px;
-	margin-bottom:70px;
+	margin-bottom:170px;
 }
 .listpage .tip img{
 	margin-right: 10px;
@@ -299,7 +299,7 @@ top:17px;
 	background-color:#bfbfc3;
 	border-top:1px solid #ccc;
 	width:100%;
-	height:50px;
+	/* height:50px; */
 	display:block;
     position: fixed;
     left: 0px;

+ 6 - 0
src/web/staticres/js/superSearch.js

@@ -421,6 +421,12 @@ function appendDatas(datas,flag,isNew,onlyUpdateTable){
       // 是否收藏
       listHtml += '<i class="icon-collect" dataid="'+datas[i]._id+'"></i>'
 			listHtml += '</div></li>';
+			if(i == 5) {
+				listHtml += '<div class="_t3di2018y5"></div>'
+			}
+			if(i == 26) {
+				listHtml += '<div class="_6omliqck79a"></div>'
+			}
 		}
 
 		//表格仅显示前20条信息

+ 87 - 0
src/web/staticres/js/wxSupersearch.js

@@ -1238,6 +1238,48 @@ var SuperSearch = {
       $(".selected-export .show-list").find("em").text("列表显示");
       $(".newdialog .sub-show-list").find("li[dataval='showlist']").addClass("active");
     }
+    var IframeOnClick = {
+      resolution: 200,  
+      iframes: [],  
+      interval: null,  
+      Iframe: function() {  
+          this.element = arguments[0];  
+          this.cb = arguments[1];   
+          this.hasTracked = false;  
+      },  
+      track: function(element, cb) {  
+          this.iframes.push(new this.Iframe(element, cb));  
+          var _this = this;  
+              this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+      },  
+      checkClick: function() {  
+          if (document.activeElement) {  
+              var activeElement = document.activeElement;  
+              for (var i in this.iframes) {  
+                  if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                      if (this.iframes[i].hasTracked == false) {   
+                          this.iframes[i].cb.apply(window, []);   
+                          this.iframes[i].hasTracked = true;
+                          $.ajax({
+                              type: 'POST',
+                              url: '/publicapply/adLeague/click',
+                              data: {
+                                client: 'WX',
+                                id: 'ad5',
+                                position: '搜索列表页'
+                              },
+                              success: function(res) {
+                                  console.log(res)
+                              }
+                          })
+                      }  
+                  } else {  
+                      this.iframes[i].hasTracked = false;  
+                  }  
+              }  
+          }  
+      }  
+  };
     $.ajax({
       type: "post",
       url: "/swordfish/searchlist/paging",
@@ -1323,6 +1365,42 @@ var SuperSearch = {
           $(window).scrollTop(0);
             SuperSearch.initDropload(data.hasNextPage,2);
         }
+        console.log(sessionStorage.getItem('powerStatus'), '1')
+        var powerStatus = sessionStorage.getItem('powerStatus')
+        if(powerStatus) {
+          powerStatus = JSON.parse(powerStatus)
+          if(!powerStatus.entniche && !powerStatus.member && powerStatus.vip <= 0) {
+            (window.slotbydup = window.slotbydup || []).push({
+                id: "u6603898",
+                container: "_07p1kp030cz7",
+                async: true
+            });
+            (window.slotbydup = window.slotbydup || []).push({
+                id: "u6603898",
+                container: "_fdvjfgztbn",
+                async: true
+            });
+            setTimeout(() => {
+              var frames = document.getElementById("iframeu6603898_0");
+              console.log(frames, 'frames')
+              IframeOnClick.track(frames, function() {
+                  jQuery(document).click();
+              });
+            },1000)
+            $.ajax({
+              type: 'POST',
+              url: '/publicapply/adLeague/exposure',
+              data: {
+                      client: 'WX',
+                      id: 'ad5',
+                      position: '搜索列表页'
+              },
+              success: function(res) {
+                      console.log(res)
+              }
+            })
+          }
+        }
       },
       error: function(xhr,type){
         $("#supersearchPage #wrapper .dropload-down").remove();
@@ -1339,6 +1417,14 @@ var SuperSearch = {
     var ListHtml='';
     var TableHtml='';
     for(var i=0;i<list.length;i++){
+      if(pageNum == 1 && i == 9) {
+        // 百青藤广告插入
+        ListHtml += '<div class="_07p1kp030cz7">'+'</div>'
+      }
+      if(pageNum == 1 && i == 24) {
+        // 百青藤广告插入
+        ListHtml += '<div class="_fdvjfgztbn">'+'</div>'
+      }
       if(pageNum==1&&i==4&&!SuperSearch.advertIsClose){
         ListHtml+='<div  class="adv-wxsearch-center" id="E1"></div>'
       }
@@ -2549,3 +2635,4 @@ var SuperSearch = {
     }
   }
 };
+

ファイルの差分が大きいため隠しています
+ 7 - 12
src/web/staticres/structuredata/mobile/css/marketing.css


ファイルの差分が大きいため隠しています
+ 83 - 0
src/web/staticres/structuredata/mobile/css/marketing_old.css


ファイルの差分が大きいため隠しています
+ 2 - 21
src/web/staticres/structuredata/pc/css/stucturedPc.css


BIN
src/web/staticres/structuredata/pc/image/bottom-fixed-ad.png


BIN
src/web/staticres/structuredata/pc/image/bottom-fixed-button.png


BIN
src/web/staticres/structuredata/pc/image/cookie-circle-incomplete.png


BIN
src/web/staticres/structuredata/pc/image/cookie-circle.png


BIN
src/web/staticres/structuredata/pc/image/dat-export-self.png


BIN
src/web/staticres/structuredata/pc/image/example-senior.png


BIN
src/web/staticres/structuredata/pc/image/example-standard.png


BIN
src/web/staticres/structuredata/pc/image/section-1-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-1-text.png


BIN
src/web/staticres/structuredata/pc/image/section-2-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-2-title.png


BIN
src/web/staticres/structuredata/pc/image/section-3-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-3-title.png


BIN
src/web/staticres/structuredata/pc/image/section-4-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-4-card-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-4-card-content-bg-1.png


BIN
src/web/staticres/structuredata/pc/image/section-4-card-content-bg-2.png


BIN
src/web/staticres/structuredata/pc/image/section-4-card-content-bg-3.png


BIN
src/web/staticres/structuredata/pc/image/section-4-card-content-bg-4.png


BIN
src/web/staticres/structuredata/pc/image/section-4-title-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-4-title.png


BIN
src/web/staticres/structuredata/pc/image/section-5-bg.png


BIN
src/web/staticres/structuredata/pc/image/section-5-card-1.png


BIN
src/web/staticres/structuredata/pc/image/section-5-card-2.png


BIN
src/web/staticres/structuredata/pc/image/section-5-title.png


BIN
src/web/staticres/structuredata/pc/image/section-6-title.png


+ 79 - 2
src/web/staticres/vipsubscribe/js/historypush.js

@@ -1,4 +1,45 @@
-
+var IframeOnClick = {
+  resolution: 200,  
+  iframes: [],  
+  interval: null,  
+  Iframe: function() {  
+      this.element = arguments[0];  
+      this.cb = arguments[1];   
+      this.hasTracked = false;  
+  },  
+  track: function(element, cb) {  
+      this.iframes.push(new this.Iframe(element, cb));  
+      var _this = this;  
+          this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+  },  
+  checkClick: function() {  
+      if (document.activeElement) {  
+          var activeElement = document.activeElement;  
+          for (var i in this.iframes) {  
+              if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                  if (this.iframes[i].hasTracked == false) {   
+                      this.iframes[i].cb.apply(window, []);   
+                      this.iframes[i].hasTracked = true;
+                      $.ajax({
+                          type: 'POST',
+                          url: '/publicapply/adLeague/click',
+                          data: {
+                            client: 'WX',
+                            id: 'ad6',
+                            position: '订阅推送列表页'
+                          },
+                          success: function(res) {
+                              console.log(res)
+                          }
+                      })
+                  }  
+              } else {  
+                  this.iframes[i].hasTracked = false;  
+              }  
+          }  
+      }  
+  }  
+};
 var vm = new Vue({
   el: '#select-meau',
   components: {
@@ -207,6 +248,9 @@ var vm = new Vue({
         url: '/publicapply/bidcoll/power',
         type: 'POST',
         success: function(res) {
+          // res.data.entniche = false
+          // res.data.member = false
+          // res.data.vip = 0
           // 如果是商机管理、大会员、超级订阅会员有筛选权限
           if (!res.data.member && res.data.vip <= 0) {
             window.isFreeUserStatus = true
@@ -215,11 +259,44 @@ var vm = new Vue({
           if(res.data.entniche || res.data.member || res.data.vip > 0) {
             _this.screenShow = true
           } else {
-            _this.screenShow = false
+            _this.screenShow = false;
+            (window.slotbydup = window.slotbydup || []).push({
+              id: "u6603902",
+              container: "_36y1d8lbx9n",
+              async: true
+            });
+            (window.slotbydup = window.slotbydup || []).push({
+                id: "u6603902",
+                container: "_061vbh43quq3",
+                async: true
+            });
+            _this.getAjaxAdv()
+            setTimeout(() => {
+              var frames = document.getElementById("iframeu6603902_0");
+              console.log(frames, 'frames')
+            
+              IframeOnClick.track(frames, function() {
+                      jQuery(document).click();
+              });
+            }, 1000)
           }
         }
       })
     },
+    getAjaxAdv () {
+        $.ajax({
+            type: 'POST',
+            url: '/publicapply/adLeague/exposure',
+            data: {
+                client: 'WX',
+                id: 'ad6',
+                position: '订阅推送列表页'
+            },
+            success: function(res) {
+                console.log(res)
+            }
+        })
+    },
     confirm: function(data){
       console.log(data)
       if(data.name === 'dateItem'){

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

@@ -614,7 +614,7 @@
                     'list', 'article/content', 'article/bdprivate', 'article/mailprivate',
                     'article/bdcontent', '/jypc/toPushView', '/jyblog', '/dataExport',
                     '/front/dataService.html', '/front/course', '/front/dataexport', '/orderPay',
-                    'structed/', '/big/page/', '/big/pc/page/', '/proposedProject', '/jyxspc',
+                    '/big/page/', '/big/pc/page/', '/proposedProject', '/jyxspc',
                 ]
                 var isLightTheme = lightThemeRegs.some(function (v) {
                     return $href.indexOf(v) !== -1

+ 645 - 0
src/web/templates/frontRouter/wx/bigmember/free/perfect_info_strud.html

@@ -0,0 +1,645 @@
+<!DOCTYPE html>
+<html lang="zh-CN" style="font-size: 50px;">
+
+<head>
+    <title>完善信息</title>
+    <meta name="viewport"
+          content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=yes"/>
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <meta name="referrer" content="always">
+    <!--引入公共资源头部-->
+    {{include "/big-member/meta.html"}}
+    <script src="{{Msg "seo" "cdn"}}/js/jquery-3.2.1.min.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/big-member/js/rem.js"></script>
+    {{include "/common/weixin.html"}}
+
+    <!--S-当前页必定需要预加载的资源-->
+    <link rel="preload" as="style" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/index.css'/>
+    <link rel="preload" as="style" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/icon/local.css'/>
+    <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/big-member/weixin/css/public.css?v={{Msg "seo" "version"}}'>
+    <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/big-member/css/j-icons.css?v={{Msg "seo" "version"}}'>
+    <!--E-当前页必定需要预加载的资源-->
+
+
+    <!--S-当前页面的css资源-->
+    <link rel="stylesheet" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/index.css'/>
+    <link rel="stylesheet" href='//cdn.jsdelivr.net/npm/vant@2.8.2/lib/icon/local.css'/>
+    <link rel="stylesheet"
+          href='{{Msg "seo" "cdn"}}/common-module/perfect-info/index.css?v={{Msg "seo" "version"}}'/>
+    <!--E-当前页面的css资源-->
+    <script>
+      try {
+        window.JyObj.hiddenBottom('0')
+      } catch (e) {
+        console.log('error: app not function')
+      }
+    </script>
+</head>
+
+<body>
+<div class="j-container">
+    {{include "/big-member/header.html"}}
+    <div class="j-main perfect-info-group" id="perfect-info-page" v-cloak>
+      <div class="j-container">
+          <div class="j-main info-collect">
+              <div class="top-tip-group">
+                  <p class="top-tip-text">请完善信息,我们将以邮件的形式发送数据样例
+                  </p>
+              </div>
+              <div class="form-card-group">
+                  <div class="form-title">基本信息</div>
+                  <div class="form-content-card">
+                      <van-field v-model.trim="infoMap.name" label="姓名" @focus="infoCheckMap.name = ''" @blur="getCheckMap('name')"
+                                 :error-message="infoCheckMap.name" required placeholder="请输入姓名"></van-field>
+                      <van-field @input="getInputPhone" v-model.trim="infoMap.phone" label="手机号" @focus="infoCheckMap.phone = ''"
+                                 @blur="getCheckMap('phone')" :error-message="infoCheckMap.phone" required
+                                 placeholder="常用手机号码"></van-field>
+                      <van-field v-if="setcodeShow" v-model.trim="infoMap.vercode" label="验证码" @focus="infoCheckMap.vercode = ''"
+                                 @blur="getCheckMap('vercode')" :error-message="infoCheckMap.vercode" required
+                                 @input="getCheckCode"
+                                 placeholder="请输入短信验证码">
+                        <template #button>
+                          <span v-show="sendShow" style="color: #2ABED1;font-size: .28rem;" class="sendbtn" @click="sendMsg">发送验证码</span>
+                          <span class="timedown" v-show="!sendShow"></span>
+                        </template>
+                      </van-field>
+                      <van-field v-model.trim="infoMap.email" label="邮箱" @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')"
+                                 :error-message="infoCheckMap.email" required placeholder="请输入邮箱"></van-field>
+                  </div>
+              </div>
+              <div class="form-card-group">
+                  <div class="form-title">公司信息</div>
+                  <div class="form-content-card">
+                      <div class="associate-ent-group" v-show="isAssociateShow">
+                          <div class="associate-ent-item" @click="selectEnt(item)" v-for="(item, i) in searchList" v-bind:key="i" v-html="highlightText(item, infoMap.company)"></div>
+                      </div>
+                      <van-field @input="entOnChange('input')" @blur="entOnChange('blur')" @focus="infoCheckMap.company = ''"
+                                 :error-message="infoCheckMap.company" required v-model.trim="infoMap.company" label="公司名称" placeholder="请输入公司名称"></van-field>
+                      <van-field :class="{'hide-border': infoMap.position === '其他'}"  v-model="infoMap.position" label="职位" @click="openPop('职位')" readonly is-link
+                                 placeholder="请选择职位"></van-field>
+                      <van-field class="other-input-group" @focus="infoCheckMap.position_other = ''"
+                                 :error-message="infoCheckMap.position_other" v-model.trim="infoMap.position_other" v-show="infoMap.position === '其他'" label="职位" placeholder="请输入职位"></van-field>
+                  </div>
+              </div>
+          </div>
+          <div class="j-footer">
+              <div class="j-button-group">
+                  <button class="j-button-cancel" @click="cancelForm">暂不提供</button>
+                  <button class="j-button-confirm" :disabled="isSubmitDisabled" @click="submitForm">提交</button>
+              </div>
+          </div>
+          <van-popup class="prefect-pop-group" v-model="popInfo.show" round position="bottom"
+                     :style="{ height: getPopHeight }">
+              <div class="j-container">
+                  <div class="j-header">
+                      <div class="pop-title-group">
+                          <span>@@popInfo.title@@</span>
+                          <div class="close-padding-box" @click="popInfo.show = false">
+                              <i class="j-icon base-icon icon-delete-gray"></i>
+                          </div>
+                      </div>
+                  </div>
+                  <div class="j-main" v-show="conditionMap[popInfo.label]">
+                      <div class="condition-select-group" :class="{more: isMoreSelect}">
+                          <div class="condition-select-item" @click="onSelectItem(item, popInfo.label)" v-for="(item,i) in conditionMap[popInfo.label]" :class="{checked: item.checked}">
+                              <div>@@item.title@@</div>
+                              <i v-if="!isMoreSelect" class="j-icon base-icon icon-tick"></i>
+                              <div class="more-icon-box" v-else>
+                                  <i  class="j-icon base-icon icon-tick-circle"></i>
+                                  <i  class="j-icon base-icon icon-tick-circle-fill"></i>
+                              </div>
+                          </div>
+                      </div>
+                  </div>
+                  <div class="j-footer">
+                      <div class="j-button-group">
+                          <button class="j-button-confirm" :disabled="isNextDisabled" @click="submitPop">确认</button>
+                      </div>
+                  </div>
+              </div>
+          </van-popup>
+      </div>
+      <van-popup v-model="commitshow" class="commitdialog" :close-on-click-overlay="overlayShow">
+        <div class="j-container">
+          <div class="j-header com-header">
+            <span class="infor-icon-close"></span>
+          </div>
+          <div class="j-main com-main">
+            <div class="img-duihao">
+              <img src="/structuredata/mobile/image/choose.png" alt="">
+            </div>
+            <div class="commit_success">提交成功</div>
+            <div class="commit_tip">我们稍后将以邮件的形式发送数据样例</div>
+            <div class="commit_know">
+              <button class="commit_btn" @click="history.back()">我知道了</button>
+            </div>
+            <div class="data_exportclick">
+              <img @click="location.href = '/front/wx_dataExport/toSieve'" src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/dataimg.png' alt="">
+            </div>
+          </div>
+          <div class="j-footer com-footer"></div>
+        </div>
+      </van-popup>
+  </div>
+</div>
+
+<script rel="preload" as="script" src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
+<script rel="preload" as="script" src=//cdn-common.jianyu360.com/cdn/lib/vant/2.8.2/vant.min.js></script>
+<script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
+<script src=//cdn-common.jianyu360.com/cdn/lib/vant/2.8.2/vant.min.js></script>
+<script src='{{Msg "seo" "cdn"}}/common-module/mainSearch/js/utils.js'></script>
+{{include "/big-member/commonjs.html"}}
+
+<script>
+  var vNode = {
+    delimiters: ['@@', '@@'],
+    el: '#perfect-info-page',
+    data: {
+      sendShow: true, // 倒计时切换
+      vercodecor: false, // 验证码是否正确
+      setcodeShow: true, // 验证码输入框是否显示
+      commitshow: false, // 提交成功显示弹窗
+      overlayShow: false,
+      searchList: [],
+      isAssociateShow: false,
+      isAssociateUpTime: -1,
+      infoMap: {
+        name: '',
+        phone: '',
+        vercode: '',
+        email: '',
+        company: '',
+        position: '',
+        position_other: ''
+      },
+      infoCheckMap: {
+        name: '',
+        phone: '',
+        vercode: '',
+        email: '',
+        company: '',
+        position: '',
+        position_other: ''
+      },
+      isEchoInfoLoading: true,
+      popInfo: {
+        show: false,
+        label: '',
+        title: ''
+      },
+      conditionMap: {
+        '职位': [
+          {
+            title: '总裁/总经理/总监',
+            checked: false
+          },
+          {
+            title: '市场经理/主管',
+            checked: false
+          },
+          {
+            title: '销售经理/主管',
+            checked: false
+          },
+          {
+            title: '渠道经理/主管',
+            checked: false
+          },
+          {
+            title: '投标经理/专员',
+            checked: false
+          },
+          {
+            title: '采购经理/专员',
+            checked: false
+          },
+          {
+            title: '数据分析师',
+            checked: false
+          },
+          {
+            title: '招标师',
+            checked: false
+          },
+          {
+            title: '项目经理',
+            checked: false
+          },
+          {
+            title: '其他',
+            checked: false
+          }
+        ]
+      },
+      ajaxParams: {
+        "name": "",
+        "phone": "",
+        "source": utils.getParam('source'), // 推送消息点进来的 
+        "mail": "",
+        "company": "",
+        "position": "",
+      }
+    },
+    mounted() {
+      // source=message_bigmember app消息大会员留资地
+      // source=message_structeddata app消息结构化数据留资地
+      this.ajaxGetEchoInfo()
+    },
+    computed: {
+      getPopHeight () {
+        return this.popInfo.label === '受雇类型' ?  '5.42rem' : '8.36rem'
+      },
+      checkName () {
+        if (this.infoMap.name.length > 10) {
+          return false
+        }
+        var namereg = /^[\u4E00-\u9FA5A-Za-z\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$/;//中英文或加.的少数民族名字
+        return namereg.test(this.infoMap.name)
+      },
+      checkPhone () {
+        return /^1[3|7|8]\d{9}$|^19[8-9]\d{8}$|^166\d{8}|^15[0-3|5-9]\d{8}|^14[5|7]\d{8}$/.test(this.infoMap.phone)
+      },
+      checkEmail () {
+        if (this.infoMap.email.length > 50) {
+          return false
+        }
+        return /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(this.infoMap.email)
+      },
+      checkEntName () {
+        if (this.infoMap.company.trim().length > 50 || this.infoMap.company.trim().length < 2) {
+          return false
+        }
+        return true
+      },
+      isMoreSelect () {
+        return this.popInfo.label === '公司类型'
+      },
+      checkPosition () {
+        if (this.infoMap.position !== "" && this.infoMap.position !== '其他') {
+          return true
+        }
+        if (this.infoMap.position_other.length > 50) {
+          return false
+        }
+        var namereg = /^[\u4E00-\u9FA5A-Za-z\s]+(·[\u4E00-\u9FA5A-Za-z]+)*$/;
+        return namereg.test(this.infoMap.position_other)
+      },
+      isSubmitDisabled () {
+        return !this.checkName || !this.checkPhone || !this.checkEmail || !this.checkEntName || !this.vercodecor
+      },
+      isNextDisabled () {
+        var type = this.popInfo.label
+        var result = false
+        switch (type) {
+          case '职位': {
+            result = this.conditionMap[type].filter(v => v.checked).length
+            break
+          }
+        }
+        return !result
+      }
+    },
+    methods: {
+      // 手机号输入事件
+      getInputPhone: function(value) {
+        let strud_phone = sessionStorage.getItem('strud_phone')
+        if(value == strud_phone) {
+          this.setcodeShow = false
+        } else {
+          this.setcodeShow = true
+        }
+      },
+      // 点击发送验证码
+      sendMsg: function () {
+        let _this = this
+        if(!this.checkPhone) return
+        $.ajax({
+          type: 'POST',
+          url: '/salesLeads/sendMsg',
+          data: {
+            phoneNum: _this.infoMap.phone
+          },
+          success:function(res) {
+            console.log(res)
+            if(res.data.success) {
+              _this.countdown()
+            }
+          }
+        })
+      },
+      // 验证码输入事件
+      getCheckCode: function() {
+        let _this = this
+        if(this.infoMap.vercode.length == 6){
+          $.ajax({
+              url:'/salesLeads/checkCode',
+              type:'POST',
+              data:{
+                  phoneNum:_this.infoMap.phone,
+                  code:_this.infoMap.vercode
+              },
+              success:function(res) {
+                if(res.error_code == 0) {
+                  _this.vercodecor = res.data.flag
+                  if(res.data.flag) {
+                    _this.$toast('验证码正确')
+                  }else{
+                    _this.$toast('验证码错误')
+                  }
+                  _this.getCheckMap('vercode')
+                }
+              },
+              error:function(err) {
+                  console.log(err)
+              }
+          })
+        } else {
+          _this.getCheckMap('vercode')
+        }
+      },
+      ajaxFn: function (url, data, callback, type) {
+        return $.ajax({
+          type: 'post',
+          url: url,
+          contentType: type ? 'application/x-www-form-urlencoded' : "application/json;charset=utf-8",
+          data: type ? data : JSON.stringify(data),
+          dataType: "json",
+          success: typeof callback === 'function' ? callback.bind(this) : new Function()
+        })
+      },
+      // 倒计时
+      countdown() {
+        let _this = this
+        this.sendShow = false
+        var time=60;
+        setTime=setInterval(function(){
+            if(time<=0){
+              _this.sendShow = true
+              time=59
+              clearInterval(setTime);
+              return;
+            }
+            time--;
+            $(".timedown").text(time+'s');
+        },1000);
+      },
+      ajaxGetEchoInfo() {
+        this.isEchoInfoLoading = true
+        let _this = this
+        this.ajaxFn('/salesLeads/echoInfo', {}, function (r) {
+          this.isEchoInfoLoading = false
+          if (r && r.error_msg === '' && r.data) {
+            if(r.data.phone != '') {
+              _this.vercodecor = true
+              _this.setcodeShow = false
+              sessionStorage.setItem('strud_phone', r.data.phone)
+            } else {
+              _this.setcodeShow = true
+            }
+            this.setEchoInfo(r.data)
+          }
+        })
+      },
+      highlightText (value, keyStr) {
+        return utils.replaceKeyword(value, keyStr, '<span class="highlight-text">' + keyStr + '</span>')
+      },
+      entOnChange (type) {
+        if (type === 'blur') {
+          this.getCheckMap('company')
+          setTimeout(() => {
+            this.isAssociateShow = false
+            this.searchList = []
+          }, 300)
+        } else {
+          clearTimeout(this.isAssociateUpTime)
+          this.isAssociateUpTime = setTimeout(() => {
+            this.ajaxEntList(this.infoMap.company)
+          }, 200)
+        }
+      },
+      selectEnt (item) {
+        console.log('item', item)
+        this.infoMap.company = item
+        this.isAssociateShow = false
+        this.searchList = []
+      },
+      ajaxEntList (str) {
+        if (str.length <= 2) {
+          return
+        }
+        this.ajaxFn('/jypay/user/company/association', { name: str }, function (r) {
+          if (r && r.error_msg === '' && r.data) {
+            this.isAssociateShow = true
+            this.searchList = r.data
+          }
+        }, true)
+      },
+      setEchoInfo (data) {
+        if (data.position) {
+          this.setCheckForData('position', 'position', data.position, '职位')
+        }
+        if (data.name) {
+          this.setCheckForData('name', 'name', data.name)
+        }
+        if (data.phone) {
+          this.setCheckForData('phone', 'phone', data.phone)
+        }
+        if (data.mail) {
+          this.setCheckForData('mail', 'email', data.mail)
+        }
+        if (data.company) {
+          this.setCheckForData('company', 'company', data.company)
+        }
+  
+      },
+      setCheckForData (aKey, iKey, cKey, label) {
+        this.ajaxParams[aKey] = cKey
+        this.infoMap[iKey] = cKey
+        if (label === '职位' && cKey.indexOf('其他') !== -1) {
+            this.infoMap[iKey] = '其他'
+            this.infoMap.position_other = cKey.split('/')[1]
+        }
+        if (label) {
+          var checkDatas = [cKey]
+          this.conditionMap[label].forEach(v => {
+            if (checkDatas.indexOf(v.title) !== -1) {
+              v.checked = true
+            }
+          })
+        }
+      },
+      submitPop() {
+        var type = this.popInfo.label
+        switch (type) {
+          case '职位': {
+            var tempData = this.conditionMap[type].filter(v => v.checked)
+            this.setCheckForData('position', 'position', tempData[0].title)
+            break
+          }
+        }
+        this.popInfo.show = false
+      },
+      openPop(type) {
+        switch (type) {
+          case '职位': {
+            this.popInfo.title = '职位'
+            break
+          }
+        }
+        this.popInfo.label = type
+        this.popInfo.show = true
+      },
+      onSelectItem (item, index) {
+        if (this.isMoreSelect) {
+          item.checked = !item.checked
+        } else {
+          this.conditionMap[index].forEach(function (v) {
+            v.checked = false
+          })
+          item.checked = true
+        }
+      },
+      getCheckMap (type) {
+        switch (type) {
+            case 'name': {
+              this.infoCheckMap.name = this.infoMap.name === '' ? '姓名为必填项' : ''
+              if (this.infoCheckMap.name === '' && !this.checkName) {
+                this.infoCheckMap.name = '请输入正确格式的姓名'
+              }
+              break
+            }
+            case 'phone': {
+              this.infoCheckMap.phone = this.infoMap.phone === '' ? '手机号码为必填项' : ''
+              if (this.infoCheckMap.phone === '' && !this.checkPhone) {
+                this.infoCheckMap.phone = '请输入正确格式的手机号码'
+              } 
+              break
+            }
+            case 'vercode': {
+              this.infoCheckMap.vercode = this.infoMap.vercode === '' ? '验证码为必填项' : ''
+              if (this.infoMap.vercode.length != 6 || !this.vercodecor) {
+                this.infoCheckMap.vercode = '请输入正确的验证码'
+              } else {
+                this.infoCheckMap.vercode = ''
+              }
+              break
+            }
+            case 'email': {
+              this.infoCheckMap.email = this.infoMap.email === '' ? '邮箱为必填项' : ''
+              if (this.infoCheckMap.email === '' && !this.checkEmail) {
+                this.infoCheckMap.email = '请输入正确格式的邮箱'
+              }
+              break
+            }
+            case 'company': {
+              this.infoCheckMap.company = this.infoMap.company === '' ? '公司名称为必填项' : ''
+              if (this.infoCheckMap.company === '' && !this.checkEntName) {
+                this.infoCheckMap.company = '请输入正确格式的公司名称'
+                if (this.infoMap.company.length < 2) {
+                  this.infoCheckMap.company = '公司名称至少输入2个字'
+                }
+                if (this.infoMap.company.length > 50) {
+                  this.infoCheckMap.company = '公司名称最多输入50个字'
+                }
+              }
+              break
+            }
+            case 'position': {
+              var isOther = this.infoMap.position === '其他' && this.infoMap.position_other === ''
+              this.infoCheckMap.position_other =  isOther ? '职位为必填项' : ''
+              if (this.infoCheckMap.position_other === '' && !this.checkPosition) {
+                this.infoCheckMap.position_other = '请输入正确格式的职位'
+              }
+              break
+            }
+        }
+      },
+      cancelForm () {
+        setTimeout(() => {
+          this.$dialog.confirm({
+            title: ' ',
+            message: '您可以通过剑鱼标讯提供的全国招投标数据自助导出功能,指定关键词、发布时间、地区或行业等筛选条件,以Excel表格的形式打包下载,精准获取所需数据。',
+            className: 'ent-search-dialog no-infor',
+            overlayClass: 'z-2030',
+            showCancelButton: false,
+            getContainer: '.perfect-info-group',
+            confirmButtonText: '数据自助导出',
+          }).then(function () {
+            location.href = '/front/wx_dataExport/toSieve'
+          }).catch(function () {
+            history.back()
+          });
+        },300)
+        setTimeout(() => {
+          const htmlclose = `<span class="infor-icon-close"></span>`
+          $('.no-infor .van-dialog__header').html(htmlclose)
+        },400)
+      },
+      submitForm () {
+        this.ajaxParams.name = this.infoMap.name
+        this.ajaxParams.phone = this.infoMap.phone
+        this.ajaxParams.mail = this.infoMap.email
+        this.ajaxParams.company = this.infoMap.company
+        this.ajaxParams.position = this.infoMap.position
+        if(this.setcodeShow) {
+          this.ajaxParams.code = this.infoMap.vercode
+        }
+        if (this.infoMap.position === '其他') {
+          this.ajaxParams.position = '其他/' + this.infoMap.position_other
+        }
+        var _this = this
+        var loading = _this.showLoading()
+        $.ajax({
+          type: 'POST',
+          url: '/salesLeads/collectInfo',
+          contentType: "application/json;charset=utf-8",
+          data: JSON.stringify(_this.ajaxParams),
+          success: function(r) {
+            loading.clear()
+            if (r.error_msg === '' || r.data) {
+              _this.commitshow = true
+            } else {
+              _this.showToast(r.error_msg || '提交失败')
+            }
+          },
+          error: function(err) {
+            loading.clear()
+            _this.showToast('提交失败')
+          }
+        })
+      },
+      showLoading: function () {
+        var loading = this.$toast.loading({
+          duration: 0,
+          forbidClick: true,
+          message: '提交中...',
+        })
+        return loading
+      },
+      showToast: function (message) {
+        this.$toast({
+          duration: 1500,
+          forbidClick: true,
+          message: message,
+        })
+      }
+    }
+  }
+  var vPerfect = new Vue(vNode)
+</script>
+<script>
+    $(function () {
+        $("#perfect-info-page").on('click tap', '.infor-icon-close', function(e) {
+            e.stopPropagation()
+            history.back()
+        })
+    })
+</script>
+{{include "/common/baiducc.html"}}
+</body>
+
+</html>

+ 91 - 1
src/web/templates/pc/biddetail_rec.html

@@ -1083,7 +1083,52 @@ function isWechat() {
           break;
         }
       }
-    </script>
+		</script>
+		<div class="_29p15mchdsg" style="margin-top: 12px"></div>
+		<script type="text/javascript">
+				$.ajax({
+						type: 'POST',
+						url: '/publicapply/bidcoll/power',
+						success: function(res) {
+								console.log(res)
+								if(res.error_code == 0) {
+									if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+										(window.slotbydup = window.slotbydup || []).push({
+												id: "u6603896",
+												container: "_29p15mchdsg",
+												async: true
+										});
+										getAjaxAdv()
+										var frames = document.getElementById("iframeu6603896_0");
+										console.log(frames, 'frames')
+										IframeOnClick.track(frames, function() {
+											jQuery(document).click();
+										});
+									}
+								}
+						},
+						error: function(err) {
+								console.log(err)
+						}
+				})
+				function getAjaxAdv () {
+					$.ajax({
+						type: 'POST',
+						url: '/publicapply/adLeague/exposure',
+						data: {
+							client: 'PC',
+							id: 'ad3',
+							position: '公告详情页右侧'
+						},
+						success: function(res) {
+							console.log(res)
+						}
+					})
+				}
+		</script>
+		<!-- 多条广告如下脚本只需引入一次 -->
+		<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+		</script>
 	</div>
 	<!--去掉一键报告排版问题-->
 	<!--<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
@@ -1269,6 +1314,51 @@ var ucbs_source="pc_rec",ucbsId="{{.T.obj.ucbsId}}";
 <script src="//cdn.jsdelivr.net/npm/vue@2.6.12/dist/vue.min.js"></script>
 <script src="//cdn.jsdelivr.net/npm/element-ui@2.13.2/lib/index.js"></script>
 <script src="{{Msg "seo" "cdn"}}/js/pc-collect-user-info.js?v={{Msg "seo" "version"}}"></script>
+<script>
+	// 广告点击事件
+var IframeOnClick = {
+		resolution: 200,  
+		iframes: [],  
+		interval: null,  
+		Iframe: function() {  
+				this.element = arguments[0];  
+				this.cb = arguments[1];   
+				this.hasTracked = false;  
+		},  
+		track: function(element, cb) {  
+				this.iframes.push(new this.Iframe(element, cb));  
+				var _this = this;  
+						this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+		},  
+		checkClick: function() {  
+				if (document.activeElement) {  
+						var activeElement = document.activeElement;  
+						for (var i in this.iframes) {  
+								if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+										if (this.iframes[i].hasTracked == false) {   
+												this.iframes[i].cb.apply(window, []);   
+												this.iframes[i].hasTracked = true;
+												$.ajax({
+														type: 'POST',
+														url: '/publicapply/adLeague/click',
+														data: {
+															client: 'PC',
+															id: 'ad3',
+															position: '公告详情页右侧'
+														},
+														success: function(res) {
+																console.log(res)
+														}
+												})
+										}  
+								} else {  
+										this.iframes[i].hasTracked = false;  
+								}  
+						}  
+				}  
+		}  
+};
+</script>
 <script type="text/javascript">
 var oBox = document.getElementById("popup");
 var oBar = document.getElementById("pop-head");

+ 78 - 0
src/web/templates/pc/entsearchindex.html

@@ -249,6 +249,7 @@
                                 </button>
                             </div>
                         </div>
+                        <div class="_u4m8od8j3s"></div>
                         <no-data style="display: none;" v-show="listState.list.length === 0 && listState.loaded" tip-text="没有找到符合条件的企业"></no-data>
                     </div>
                 </div>
@@ -301,6 +302,83 @@
     <script src='{{Msg "seo" "cdn"}}/js/selector/price-pc.js?v={{Msg "seo" "version"}}'></script>
     <script src='{{Msg "seo" "cdn"}}/js/selector/no-data-pc.js?v={{Msg "seo" "version"}}'></script>
     <script src='{{Msg "seo" "cdn"}}/js/ent-search-index-pc.js?v={{Msg "seo" "version"}}'></script>
+    <script type="text/javascript">
+    setTimeout(() => {
+        if(!vm.powerInfo.entniche && !vm.powerInfo.member && vm.powerInfo.vip <= 0) {
+            (window.slotbydup = window.slotbydup || []).push({
+                id: "u6603900",
+                container: "_u4m8od8j3s",
+                async: true
+            });
+            getAjaxAdv()
+            var frames = document.getElementById("iframeu6603900_0");
+            console.log(frames, 'frames')
+            
+            IframeOnClick.track(frames, function() {
+                    jQuery(document).click();
+            });
+        }
+    }, 1000);
+        function getAjaxAdv () {
+            $.ajax({
+              type: 'POST',
+              url: '/publicapply/adLeague/exposure',
+              data: {
+                client: 'PC',
+                id: 'ad2',
+                position: '企业搜索列表页底部'
+              },
+              success: function(res) {
+                console.log(res)
+              }
+            })
+        }
+        var IframeOnClick = {
+            resolution: 200,  
+            iframes: [],  
+            interval: null,  
+            Iframe: function() {  
+                this.element = arguments[0];  
+                this.cb = arguments[1];   
+                this.hasTracked = false;  
+            },  
+            track: function(element, cb) {  
+                this.iframes.push(new this.Iframe(element, cb));  
+                var _this = this;  
+                    this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+            },  
+            checkClick: function() {  
+                if (document.activeElement) {  
+                    var activeElement = document.activeElement;  
+                    for (var i in this.iframes) {  
+                        if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                            if (this.iframes[i].hasTracked == false) {   
+                                this.iframes[i].cb.apply(window, []);   
+                                this.iframes[i].hasTracked = true;
+                                $.ajax({
+                                    type: 'POST',
+                                    url: '/publicapply/adLeague/click',
+                                    data: {
+                                        client: 'PC',
+                                        id: 'ad2',
+                                        position: '企业搜索列表页底部'
+                                    },
+                                    success: function(res) {
+                                        console.log(res)
+                                    }
+                                })
+                            }  
+                        } else {  
+                            this.iframes[i].hasTracked = false;  
+                        }  
+                    }  
+                }  
+            }  
+            };
+    </script>
+    <!-- 多条广告如下脚本只需引入一次 -->
+    <script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+    </script>
 </body>
 
 </html>

+ 90 - 1
src/web/templates/pc/index.html

@@ -268,7 +268,96 @@
           </div>
         </div>
       </div>
-
+      <div style="width: 1200px;margin: 0 auto;">
+        <div class="_xwn8soi2wx"></div>
+      </div>
+      <script type="text/javascript">
+       // 判断账户权限
+       var IframeOnClick = {
+            resolution: 200,  
+            iframes: [],  
+            interval: null,  
+            Iframe: function() {  
+                this.element = arguments[0];  
+                this.cb = arguments[1];   
+                this.hasTracked = false;  
+            },  
+            track: function(element, cb) {  
+                this.iframes.push(new this.Iframe(element, cb));  
+                var _this = this;  
+                    this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+            },  
+            checkClick: function() {  
+                if (document.activeElement) {  
+                    var activeElement = document.activeElement;  
+                    for (var i in this.iframes) {  
+                        if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                            if (this.iframes[i].hasTracked == false) {   
+                                this.iframes[i].cb.apply(window, []);   
+                                this.iframes[i].hasTracked = true;
+                                $.ajax({
+                                    type: 'POST',
+                                    url: '/publicapply/adLeague/click',
+                                    data: {
+                                      client: 'PC',
+                                      id: 'ad4',
+                                      position: '首页-最新公告上方'
+                                    },
+                                    success: function(res) {
+                                        console.log(res)
+                                    }
+                                })
+                            }  
+                        } else {  
+                            this.iframes[i].hasTracked = false;  
+                        }  
+                    }  
+                }  
+            }  
+          };
+          $.ajax({
+              type: 'POST',
+              url: '/publicapply/bidcoll/power',
+              success: function(res) {
+                  console.log(res)
+                  if(res.error_code == 0) {
+                    if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+                      (window.slotbydup = window.slotbydup || []).push({
+                          id: "u6603897",
+                          container: "_xwn8soi2wx",
+                          async: true
+                      });
+                      getAjaxAdv()
+                      var frames = document.getElementById("iframeu6603897_0");
+                      console.log(frames, 'frames')
+                      IframeOnClick.track(frames, function() {
+                        jQuery(document).click();
+                      });
+                    }
+                  }
+              },
+              error: function(err) {
+                  console.log(err)
+              }
+          })
+          function getAjaxAdv () {
+            $.ajax({
+              type: 'POST',
+              url: '/publicapply/adLeague/exposure',
+              data: {
+                client: 'PC',
+                id: 'ad4',
+                position: '首页-最新公告上方'
+              },
+              success: function(res) {
+                console.log(res)
+              }
+            })
+          }
+      </script>
+      <!-- 多条广告如下脚本只需引入一次 -->
+      <script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+      </script>
       <!-- 最新公告信息 -->
       <div class="newNotice">
         <h3 class="CfadeInUp">最新公告信息</h3>

+ 95 - 0
src/web/templates/pc/supsearch.html

@@ -673,6 +673,101 @@ $(function(){
 <script src="/js/biddingSearch.js?v={{Msg "seo" "version"}}"></script>
 <script src="/js/superSearch.js?v={{Msg "seo" "version"}}"></script>
 <script language="javascript" type="text/javascript" src="{{Msg "seo" "cdn"}}/My97DatePicker/WdatePicker.js"></script>
+<script type="text/javascript">
+$.ajax({
+  type:'post',
+  url:'/publicapply/bidcoll/power?t=' + Date.now(),
+  success: function(res){
+    if (res.data) {
+      // res.data.entniche = false
+      // res.data.member = false
+      // res.data.vip = 0
+      if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+        setTimeout(() => {
+          (window.slotbydup = window.slotbydup || []).push({
+              id: "u6603895",
+              container: "_t3di2018y5",
+              async: true
+          });
+        }, 1000)
+        setTimeout(() => {
+          (window.slotbydup = window.slotbydup || []).push({
+              id: "u6603895",
+              container: "_6omliqck79a",
+              async: true
+          });
+          var frames = document.getElementById("iframeu6603895_0");
+          console.log(frames, 'frames')
+        
+          IframeOnClick.track(frames, function() {
+                  jQuery(document).click();
+          });
+        }, 1000)
+        getAjaxAdv()
+      }
+    }
+  }
+})
+function getAjaxAdv () {
+  $.ajax({
+    type: 'POST',
+    url: '/publicapply/adLeague/exposure',
+    data: {
+      client: 'PC',
+      id: 'ad1',
+      position: '搜索列表页'
+    },
+    success: function(res) {
+      console.log(res)
+    }
+  })
+}
+var IframeOnClick = {
+  resolution: 200,  
+  iframes: [],  
+  interval: null,  
+  Iframe: function() {  
+      this.element = arguments[0];  
+      this.cb = arguments[1];   
+      this.hasTracked = false;  
+  },  
+  track: function(element, cb) {  
+      this.iframes.push(new this.Iframe(element, cb));  
+      var _this = this;  
+          this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+  },  
+  checkClick: function() {  
+      if (document.activeElement) {  
+          var activeElement = document.activeElement;  
+          for (var i in this.iframes) {  
+              if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                  if (this.iframes[i].hasTracked == false) {   
+                      this.iframes[i].cb.apply(window, []);   
+                      this.iframes[i].hasTracked = true;
+                      $.ajax({
+                          type: 'POST',
+                          url: '/publicapply/adLeague/click',
+                          data: {
+                            client: 'PC',
+                            id: 'ad1',
+                            position: '搜索列表页'
+                          },
+                          success: function(res) {
+                              console.log(res)
+                          }
+                      })
+                  }  
+              } else {  
+                  this.iframes[i].hasTracked = false;  
+              }  
+          }  
+      }  
+  }  
+};
+</script>
+// <!-- 多条广告如下脚本只需引入一次 -->
+<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+</script>
 <style>
   .control-tabBtn{
     margin-top: 0;

+ 27 - 187
src/web/templates/structuredata/mobile/marketing_wx.html

@@ -10,7 +10,7 @@
 	<meta name="apple-mobile-web-app-status-bar-style" content="black">
 	<meta http-equiv="X-UA-Compatible" content="ie=edge">
 	<meta http-equiv="X-UA-Compatible" content="ie=edge">
-	<title>结构化招标数据</title>
+	<title>结构化数据</title>
 	<script src="/structuredata/mobile/js/rem.js"></script>
 	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/css/base.css?v={{Msg "seo" "version"}}">
 	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/css/weui.min.css?v={{Msg "seo" "version"}}">
@@ -23,210 +23,50 @@
 		<div class="j-main">
 			<div class="structured_top">
 				<div class="str_title">
-					<img src="/structuredata/mobile/image/biaoti.png" alt="">
-				</div>
-				<div class="str_introduct">
-					<span class="str_text">帮助企业彻底透视</span>
-					<span class="str_text">行业、客户、竞争对手和合作伙伴</span>
+					<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/A_02.jpg' alt="">
 				</div>
 			</div>
 			<div class="str_what question">
-				<div class="str_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-					</div>
-					<div class="content_info">
-						剑鱼标讯采集全网招标信息,通过自然语言处理技术,将招标信息转化为结构化招标数据。
-					</div>
-					<div class="click_tip">
-						结构化招标数据示意图(点击图片放大)
-					</div>
-					<div class="sketch_map" id="sketch_map">
-						<img src="/structuredata/mobile/image/jiegouhuahou.png" alt="">
-					</div>
-					<div class="data_mode">
-						<div class="data_mode_title">
-							数据提供方式
-						</div>
-						<div class="data_mode_content">
-							<div class="data_api square">
-								<img class="square_img" src="/structuredata/mobile/image/api.png" alt="">
-								<span class="square_text">API接口</span>
-							</div>
-							<div class="data_email square">
-								<img class="square_img" src="/structuredata/mobile/image/email.png" alt="">
-								<span class="square_text">邮箱</span>
-							</div>
-						</div>
-					</div>
-					<div class="message">
-						<div class="message_title">
-							多达30+信息字段
-						</div>
-						<div class="message_page">
-							<div class="message_text">
-								项目名称、项目编号、项目范围、采购单位、招标代理机构、预算、采购单位联系人、采购单位电话、采购单位地址、项目地址、发布机构、开标时间、招标代理机构联系人、招标代理机构联系方式、招标代理机构地址、中标单位、中标单位地址、中标单位联系人、中标单位联系电话、中标金额、币种、中标产品(产品名称、品牌、规格型号、单位、数量、单价、小计、质保期) ……
-							</div>
-							<div class="click_view" id="click_view" onclick="click_view()">
-								点击查看数据示例
-							</div>
-						</div>
-					</div>
-				</div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/A_03.jpg' alt="">
 			</div>
 
 			<!-- 结构化数据有什么特点 -->
 			<div class="advantage">
-				<div class="ad_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-					</div>
-					<ul class="list">
-						<li class="advantage_list list_one">
-							<h3 class="list_title">
-								数据全面有保障
-							</h3>
-							<p class="list_info">
-								汇集7000多个政府和企业招标网站,数据覆盖全国100%行业和地区
-							</p>
-						</li>
-						<li class="advantage_list list_two">
-							<h3 class="list_title" style="margin-top: .36rem;">
-								多达30+个字段,
-							</h3>
-							<h3 class="list_title" style="margin-top: 0;">
-								数据字段识别精准
-							</h3>
-							<p class="list_info">
-								海量数据也能做到精确,不含糊
-							</p>
-						</li>
-						<li class="advantage_list list_three">
-							<h3 class="list_title" style="margin-top: .66rem;">
-								T+2小时,极速获取数据
-							</h3>
-							<p class="list_info">
-								全流程自动化处理,让你第一时间拿到数据
-							</p>
-						</li>
-						<li class="advantage_list list_four">
-							<h3 class="list_title">
-								多样化的数据获取方式
-							</h3>
-							<p class="list_info">
-								API接口:与你的客户管理系统无缝对接 <br/>邮件:支持多格式附件
-							</p>
-						</li>
-					</ul>
-				</div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/A_04.jpg' alt="">
 			</div>
 
 			<!-- 结构化招标数据能干什么 -->
-
 			<div class="dowhat">
-				<div class="dowhat_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-					</div>
-					<ul class="can_list">
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_one"></span>
-								<h3 class="title_text">分析数据,获取商机</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助销售总监轻松分析市场,为制定销售策略提供数据支撑。帮助销售人员寻找潜在商机线索,获取更多销售机会
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_two"></span>
-								<h3 class="title_text">分析潜在渠道合作伙伴</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助渠道经理优选潜在合作渠道,为业绩提升提供有效线索
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_three"></span>
-								<h3 class="title_text">制定行业分析报告,辅助战略决策</h3>
-							</div>
-							<p class="cantodo_page">
-								帮助公司高层透视市场整体情况,为公司制定战略计划提供数据支撑
-							</p>
-						</li>
-						<li class="cantodo">
-							<div class="cantodo_title">
-								<span class="title_icon icon_four"></span>
-								<h3 class="title_text">分析企业经营情况</h3>
-							</div>
-							<p class="cantodo_page">
-								为征信机构、金融行业等企业信用评定提供数据支撑,完善企业征信报告
-							</p>
-						</li>
-					</ul>
-				</div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/A_05.jpg' alt="">
+			</div>
+			<!-- 优惠信息 -->
+			<div class="module buy-discount">
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_01.jpg' alt="">
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_02.jpg' alt="">
+			</div>
+			<!-- 核心优势 -->
+			<div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_03.jpg' alt="">
 			</div>
-
-            <!-- 优惠信息 -->
-            <div class="module buy-discount">
-                <div class="module-content">
-                    <div class="how-to-buy">
-                        <img class="s-img" src='/structuredata/mobile/image/how-to-buy@2x.png' alt="">
-                    </div>
-                    <div class="discount">
-                        <img class="s-img" src='/structuredata/mobile/image/discount@2x.png' alt="">
-                    </div>
-                    <div class="c-list">
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-1"></span>
-                            <div class="c-l-item-text">
-                                支持按需勾选数据并导出<br />只为你挑选的数据付费
-                            </div>
-                        </div>
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-2"></span>
-                            <div class="c-l-item-text">
-                                单条数据重复导出仅计费一次<br />不再为重复数据付费
-                            </div>
-                        </div>
-                        <div class="c-list-item">
-                            <span class="c-l-item-icon icon-discount-3"></span>
-                            <div class="c-l-item-text">
-                                预存金额有效期<span class="color-red">长达3年</span><br />充值一次即可随时导出
-                            </div>
-                        </div>
-                    </div>
-                    <a href="tel:400-108-6670" class="call-phone">
-                        <span class="icon-phone"></span>
-                        立即咨询:400-108-6670
-                    </a>
-                </div>
-            </div>
-
 			<!-- 已使用结构化招标数据的部分企业 -->
 			<div class="company">
-				<div class="company_content">
-					<div class="content_title">
-						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
-					</div>
-					<div class="company_view">
-						<img class="company_view_img" src="/structuredata/mobile/image/qiyejuzhen.png" alt="">
-					</div>
-				</div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_04.jpg' alt="">
+				
+			</div>
+			<!-- 更多定制化数据服务 -->
+			<div>
+				<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_05.jpg' alt="">
+				<a href="tel:400-108-6670">
+					<img src='{{Msg "seo" "cdn"}}/common-module/perfect-info/image/B_06.jpg' alt="">
+				</a>
 			</div>
 		</div>
 		<div class="j-button-group">
-			<a href="tel:400-108-6670" class="j-button-cancel" id="j_cancel">
-				<span class="phone_icon"></span>
+			<a onclick="location.href = '/big/wx/page/customer'" class="j-button-cancel" id="j_cancel">
+				<!-- <span class="phone_icon"></span> -->
 				<span>立即咨询</span>
 			</a>
-            <button class="j-button-confirm" id="j_confirm">深入了解</button>
+            <button class="j-button-confirm" id="j_confirm">获取数据样例</button>
 		</div>
 	</div>
 	{{include "/common/baiducc.html"}}
@@ -279,7 +119,7 @@
 		}
 	})()
 	function learn_more() {
-		window.location.href = '/front/structed/checkuser'
+		window.location.href = '/weixin/frontPage/bigmember/free/perfect_info_strud?source=structedData'
 	}
     $("#j_confirm").on('click', learn_more)
 

+ 307 - 0
src/web/templates/structuredata/mobile/marketing_wx_old.html

@@ -0,0 +1,307 @@
+<!DOCTYPE html>
+<html lang="zh-CN">
+
+<head>
+	<meta charset="UTF-8">
+	<meta name="viewport"
+		content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
+	<meta name="apple-mobile-web-app-capable" content="yes">
+	<meta name="format-detection" content="telephone=yes"/>
+	<meta name="apple-mobile-web-app-status-bar-style" content="black">
+	<meta http-equiv="X-UA-Compatible" content="ie=edge">
+	<meta http-equiv="X-UA-Compatible" content="ie=edge">
+	<title>结构化招标数据</title>
+	<script src="/structuredata/mobile/js/rem.js"></script>
+	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/css/base.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/css/weui.min.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
+	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/mobile/css/marketing.css?v={{Msg "seo" "version"}}">
+</head>
+
+<body>
+	<div id="app">
+		<div class="j-main">
+			<div class="structured_top">
+				<div class="str_title">
+					<img src="/structuredata/mobile/image/biaoti.png" alt="">
+				</div>
+				<div class="str_introduct">
+					<span class="str_text">帮助企业彻底透视</span>
+					<span class="str_text">行业、客户、竞争对手和合作伙伴</span>
+				</div>
+			</div>
+			<div class="str_what question">
+				<div class="str_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+					</div>
+					<div class="content_info">
+						剑鱼标讯采集全网招标信息,通过自然语言处理技术,将招标信息转化为结构化招标数据。
+					</div>
+					<div class="click_tip">
+						结构化招标数据示意图(点击图片放大)
+					</div>
+					<div class="sketch_map" id="sketch_map">
+						<img src="/structuredata/mobile/image/jiegouhuahou.png" alt="">
+					</div>
+					<div class="data_mode">
+						<div class="data_mode_title">
+							数据提供方式
+						</div>
+						<div class="data_mode_content">
+							<div class="data_api square">
+								<img class="square_img" src="/structuredata/mobile/image/api.png" alt="">
+								<span class="square_text">API接口</span>
+							</div>
+							<div class="data_email square">
+								<img class="square_img" src="/structuredata/mobile/image/email.png" alt="">
+								<span class="square_text">邮箱</span>
+							</div>
+						</div>
+					</div>
+					<div class="message">
+						<div class="message_title">
+							多达30+信息字段
+						</div>
+						<div class="message_page">
+							<div class="message_text">
+								项目名称、项目编号、项目范围、采购单位、招标代理机构、预算、采购单位联系人、采购单位电话、采购单位地址、项目地址、发布机构、开标时间、招标代理机构联系人、招标代理机构联系方式、招标代理机构地址、中标单位、中标单位地址、中标单位联系人、中标单位联系电话、中标金额、币种、中标产品(产品名称、品牌、规格型号、单位、数量、单价、小计、质保期) ……
+							</div>
+							<div class="click_view" id="click_view" onclick="click_view()">
+								点击查看数据示例
+							</div>
+						</div>
+					</div>
+				</div>
+			</div>
+
+			<!-- 结构化数据有什么特点 -->
+			<div class="advantage">
+				<div class="ad_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+					</div>
+					<ul class="list">
+						<li class="advantage_list list_one">
+							<h3 class="list_title">
+								数据全面有保障
+							</h3>
+							<p class="list_info">
+								汇集7000多个政府和企业招标网站,数据覆盖全国100%行业和地区
+							</p>
+						</li>
+						<li class="advantage_list list_two">
+							<h3 class="list_title" style="margin-top: .36rem;">
+								多达30+个字段,
+							</h3>
+							<h3 class="list_title" style="margin-top: 0;">
+								数据字段识别精准
+							</h3>
+							<p class="list_info">
+								海量数据也能做到精确,不含糊
+							</p>
+						</li>
+						<li class="advantage_list list_three">
+							<h3 class="list_title" style="margin-top: .66rem;">
+								T+2小时,极速获取数据
+							</h3>
+							<p class="list_info">
+								全流程自动化处理,让你第一时间拿到数据
+							</p>
+						</li>
+						<li class="advantage_list list_four">
+							<h3 class="list_title">
+								多样化的数据获取方式
+							</h3>
+							<p class="list_info">
+								API接口:与你的客户管理系统无缝对接 <br/>邮件:支持多格式附件
+							</p>
+						</li>
+					</ul>
+				</div>
+			</div>
+
+			<!-- 结构化招标数据能干什么 -->
+
+			<div class="dowhat">
+				<div class="dowhat_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+					</div>
+					<ul class="can_list">
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_one"></span>
+								<h3 class="title_text">分析数据,获取商机</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助销售总监轻松分析市场,为制定销售策略提供数据支撑。帮助销售人员寻找潜在商机线索,获取更多销售机会
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_two"></span>
+								<h3 class="title_text">分析潜在渠道合作伙伴</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助渠道经理优选潜在合作渠道,为业绩提升提供有效线索
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_three"></span>
+								<h3 class="title_text">制定行业分析报告,辅助战略决策</h3>
+							</div>
+							<p class="cantodo_page">
+								帮助公司高层透视市场整体情况,为公司制定战略计划提供数据支撑
+							</p>
+						</li>
+						<li class="cantodo">
+							<div class="cantodo_title">
+								<span class="title_icon icon_four"></span>
+								<h3 class="title_text">分析企业经营情况</h3>
+							</div>
+							<p class="cantodo_page">
+								为征信机构、金融行业等企业信用评定提供数据支撑,完善企业征信报告
+							</p>
+						</li>
+					</ul>
+				</div>
+			</div>
+
+            <!-- 优惠信息 -->
+            <div class="module buy-discount">
+                <div class="module-content">
+                    <div class="how-to-buy">
+                        <img class="s-img" src='/structuredata/mobile/image/how-to-buy@2x.png' alt="">
+                    </div>
+                    <div class="discount">
+                        <img class="s-img" src='/structuredata/mobile/image/discount@2x.png' alt="">
+                    </div>
+                    <div class="c-list">
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-1"></span>
+                            <div class="c-l-item-text">
+                                支持按需勾选数据并导出<br />只为你挑选的数据付费
+                            </div>
+                        </div>
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-2"></span>
+                            <div class="c-l-item-text">
+                                单条数据重复导出仅计费一次<br />不再为重复数据付费
+                            </div>
+                        </div>
+                        <div class="c-list-item">
+                            <span class="c-l-item-icon icon-discount-3"></span>
+                            <div class="c-l-item-text">
+                                预存金额有效期<span class="color-red">长达3年</span><br />充值一次即可随时导出
+                            </div>
+                        </div>
+                    </div>
+                    <a href="tel:400-108-6670" class="call-phone">
+                        <span class="icon-phone"></span>
+                        立即咨询:400-108-6670
+                    </a>
+                </div>
+            </div>
+
+			<!-- 已使用结构化招标数据的部分企业 -->
+			<div class="company">
+				<div class="company_content">
+					<div class="content_title">
+						<img class="zhuangshi_left" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+						<img class="zhuangshi_right" src="/structuredata/mobile/image/zhuangshiqiu.png" alt="">
+					</div>
+					<div class="company_view">
+						<img class="company_view_img" src="/structuredata/mobile/image/qiyejuzhen.png" alt="">
+					</div>
+				</div>
+			</div>
+		</div>
+		<div class="j-button-group">
+			<a href="tel:400-108-6670" class="j-button-cancel" id="j_cancel">
+				<span class="phone_icon"></span>
+				<span>立即咨询</span>
+			</a>
+            <button class="j-button-confirm" id="j_confirm">深入了解</button>
+		</div>
+	</div>
+	{{include "/common/baiducc.html"}}
+</body>
+<script src='{{Msg "seo" "cdn"}}/structuredata/mobile/js/jquery.min.js'></script>
+<script src='{{Msg "seo" "cdn"}}/structuredata/mobile/js/weui.min.js'></script>
+<script src='{{Msg "seo" "cdn"}}/structuredata/mobile/js/imageViewer.min.js'></script>
+<script>
+	(function() {
+
+			// 图片预览,支持缩放
+			var imageViewer = '';
+			function initImageViewer(images) {
+				function getElement(index) {
+					return document.getElementById('img' + (index + 1));
+				}
+				imageViewer = new ImageViewer(images, {
+					container: 'body',
+					enableScale: true,
+					enableTapClose: true,
+					duration: 0,
+					startIndex: 0,
+					fadeInFn: getElement,
+					fadeOutFn: getElement,
+				});
+			}
+            var images = [
+                {
+                    url: '/structuredata/mobile/image/jiegouhuahou.png',
+                },
+            ];
+            initImageViewer(images)
+			// 点击图片预览
+			$('.sketch_map').on('click', function() {
+				imageViewer.open(0)
+				var ball = '<div class="ball-clip-rotate"><div class="ball"></div></div>';
+				$('.image-viewer .image-body').append(ball);
+				 // 在页面上创建dom后对图片是否加载完成进行监听
+				 $(imageViewer.itemList[1]).find('img').on('load', function () {
+					$('.image-viewer .image-body > .ball-clip-rotate').remove();
+                    console.log('image loaded');
+                })
+			})
+		var ad_from = getParam("adv_from");
+		if (ad_from != ""){
+			if (!localStorage.getItem("ad_from")){
+				localStorage.setItem("ad_from",ad_from)
+				_hmt.push(['_trackEvent', '广告', 'click', ad_from]);
+			}
+		}
+	})()
+	function learn_more() {
+		window.location.href = '/front/structed/checkuser'
+	}
+    $("#j_confirm").on('click', learn_more)
+
+    function click_view(){
+		var loading = weui.loading('loading', {
+			className: 'custom-classname'
+		});
+		setTimeout(function () {
+			loading.hide(function() {
+				window.location.href="/front/structed/getpreview"
+			});
+		});
+	}
+	function getParam(name) {
+		var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
+		var r = window.location.search.substr(1).match(reg); //获取url中"?"符后的字符串并正则匹配
+		var context = "";
+		if (r != null)
+			context = r[2];
+		reg = null;
+		r = null;
+		return context == null || context == "" || context == "undefined" ? "" : context;
+	}
+</script>
+</html>

+ 334 - 308
src/web/templates/structuredata/pc/index.html

@@ -4,7 +4,7 @@
   <title>结构化数据_剑鱼标讯,专业招标大数据服务平台</title>
   <meta name="Keywords" content="招标数据,中标数据,采购数据,结构化数据"/>
   <meta name="Description" content="剑鱼标讯提供完整的结构化数据导出和定制化合作,提供招标信息相关的项目名称、项目编号、项目范围等多达30个字段,帮助企业通过数据分析市场、获取商机、辅助企业战略决策。。"/>
-  <meta content="数据服务" theme="light" name="enable-header"/>
+  <meta content="数据服务" theme="dark" name="enable-header"/>
   {{include "/common/pnc.html"}}
   <link href="{{Msg "seo" "cdn"}}/css/pc.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 	<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/pccss/reset_pc.css?v={{Msg "seo" "version"}}" />
@@ -12,357 +12,383 @@
 	<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/pccss/adCss.css?v={{Msg "seo" "version"}}" />
 	<script type="text/javascript" src="{{Msg "seo" "cdn"}}/js/TweenMax.min.js?v={{Msg "seo" "version"}}"></script>
 	<script type="text/javascript" src="{{Msg "seo" "cdn"}}/js/public-nav.js?v={{Msg "seo" "version"}}2"></script>
-  <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/pc/css/reset_pc.css?v={{Msg "seo" "version"}}">
-  <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/pc/css/stucturedPc.css?v={{Msg "seo" "version"}}1">
-	<script>
-		$(function(){
-      $("#backTop").remove();
-			//
-			haslogin({{.T.logid}});
-		})
-	</script>
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/pc/css/reset_pc.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/structuredata/pc/css/stucturedPc.css?v={{Msg "seo" "version"}}1">
+    <link href="//cdn.jsdelivr.net/npm/element-ui@2.13.2/lib/theme-chalk/index.css" rel="stylesheet" />
+    <link href='{{Msg "seo" "cdn"}}/common-module/pc-dialog/css/leave-info-dialog.css?v={{Msg "seo" "version"}}' rel="stylesheet">
+    <style>
+        .section-1 .section-content {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-1-bg.png');
+        }
+        .section-1 .section-text-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-1-text.png');
+        }
+        .section-2 .section-content {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-2-bg.png');
+        }
+        .section-2 .section-title-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-2-title.png');
+        }
+        .section-3 .section-content {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-3-bg.png');
+        }
+        .section-3 .section-title-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-3-title.png');
+        }
+        .section-4 {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-bg.png');
+        }
+        .section-4 .section-title-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-title.png');
+        }
+        .section-4 .section-item-card {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-card-bg.png');
+        }
+        .section-4 .item-card-title {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-title-bg.png');
+        }
+        .section-4 .section-item-card:nth-of-type(1) .item-card-footer {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-card-content-bg-1.png');
+        }
+        .section-4 .section-item-card:nth-of-type(2) .item-card-footer {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-card-content-bg-2.png');
+        }
+        .section-4 .section-item-card:nth-of-type(3) .item-card-footer {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-card-content-bg-3.png');
+        }
+        .section-4 .section-item-card:nth-of-type(4) .item-card-footer {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-4-card-content-bg-4.png');
+        }
+        .section-5 {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-5-bg.png');
+        }
+        .section-5 .section-title-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-5-title.png');
+        }
+        .section-5 .section-item-card {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-5-card-1.png');
+        }
+        .section-5 .section-item-card2 {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-5-card-2.png');
+        }
+        .section-6 .section-title-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/section-6-title.png');
+        }
+        .i-need-more .i-n-m-bg {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/bottom-fixed-ad.png');
+        }
+        .i-need-more .get-data-example-button {
+            background-image: url('{{Msg "seo" "cdn"}}/structuredata/pc/image/bottom-fixed-button.png');
+        }
+    </style>
 </head>
 <body class="indexpage">
 {{include "/common/pchead.html"}}
-<div class="maindata">
-    <div class="consultPopup">
-        <div class="consult_tel">
-            <p class="runnow">立即拨打咨询电话 </p>
-            <div class="phone-icon-num">
-                <span class="phone-icon"></span>
-                <span class="phone-num">400-108-6670</span>
-            </div>
-        </div>
-    </div>
-    <div class="backTop">
-        <img class="backTop_img" src="/structuredata/pc/image/backtop.png" alt="">
-    </div>
-    <div class="main-1">
-        <div class="main-1-content">
-            <div class="bg_position"></div>
-            <div class="stucturedata"></div>
-            <div class="bottom_arrow">
-                <img class="bottom_arrow_img" src="/structuredata/pc/image/01_arrow@2x.png" alt="">
-            </div>
-            <div class="explain">
-                <p class="explain_one text_com">帮助企业彻底透视</p>
-                <p class="explain_two text_com">行业、客户、竞争对手和合作伙伴</p>
+<!-- 用户留资 -->
+<div id="vue-collect-user-info"></div>
+<div class="section-list-container">
+    <div class="s-section section-1">
+        <div class="section-content s-bg center">
+            <div class="section-text-bg s-bg center"></div>
+            <div class="section-buttons">
+                <button class="action-button consult-button open-customer">立即咨询</button>
+                <button class="action-button get-data-example" data-id="structedData">获取数据样例</button>
             </div>
         </div>
     </div>
-    <div class="main-2">
-        <div class="main-2-content">
-            <div class="what_data">
-                <div class="what_data_img"></div>
-            </div>
-            <div class="what_data_explain_text">
-                <p class="what_data_explain">剑鱼标讯采集全网招标信息,通过自然语言处理技术,将招标信息转化为结构化招标数据。</p>
-            </div>
-            <div class="exhibition">
-                <div class="exhibition_img"></div>
-            </div>
-            <div class="data_explain">
-                <div class="data_mode">
-                    <h3 class="data_mode_title">数据提供方式</h3>
-                    <div class="data_type">
-                        <div class="type_API type_com">
-                            <div class="type_API_img type_com_img"></div>
-                            <div class="type_API_text type_com_text">API接口</div>
-                        </div>
-                        <div class="type_email type_com">
-                            <div class="type_email_img type_com_img"></div>
-                            <div class="type_email_text type_com_text">邮箱</div>
-                        </div>
+    <div class="s-section section-2">
+        <div class="section-content s-bg center">
+            <div class="section-title-bg s-bg center"></div>
+            <div class="section-item-list">
+                <div class="section-item-card">
+                    <div class="card-title">销售线索管理</div>
+                    <div class="card-content">
+                        通过API接口或者邮件形式导入到CRM或者BI业务系统:<br />
+                        · 可以对自己掌握的信息进行查漏补缺;<br />
+                        · 对销售上报的商机线索核实。
                     </div>
                 </div>
-                <div class="data_infor">
-                    <h3 class="data_infor_title">多达30+信息字段</h3>
-                    <p class="data_infor_main">
-                        项目名称、项目编号、项目范围、采购单位、招标代理机构、预算、采购单位联系人、采购单位电话、采购单位地址、项目地址、发布机构、开标时间、招标代理机构联系人、招标代理机构联系方式、招标代理机构地址、中标单位、中标单位地址、中标单位联系人、中标单位联系电话、中标金额、币种、中标产品(产品名称、品牌、规格型号、单位、数量、单价、小计、质保期) ……
-                    </p>
-                    <div class="data_infor_button">
-                        <a id="data_example" class="data_example  btn-shocks" style="text-decoration: none;">点击查看数据示例</a>
+                <div class="section-item-card">
+                    <div class="card-title">挖掘渠道商</div>
+                    <div class="card-content">
+                        通过以往中标信息、中标单位,进行产品销售;<br />
+                        同类项目信息整理,寻找可跟进的项目。
                     </div>
                 </div>
-            </div>
-            <div class="bottom_option">
-                <div  class="consult bottom_btn">
-                    立即咨询
+                <div class="section-item-card">
+                    <div class="card-title">洞察市场</div>
+                    <div class="card-content">
+                        竞对监控,分析重点客户;<br />
+                        分析以往市场体量、产品区域热度;<br />
+                        对采购单位以往招标情况进行分析,预估招标预算;<br />
+                        了解采购单位招标情况和分布,进行市场布局。
+                    </div>
                 </div>
             </div>
+            <div class="section-buttons">
+                <button class="action-button consult-button open-customer">立即咨询</button>
+                <button class="action-button get-data-example" data-id="structedData">获取数据样例</button>
+            </div>
         </div>
-        <div class="bg_green"></div>
     </div>
-    <div class="main-3">
-        <div class="main-3-content">
-            <div class="advantage">
-                <div class="advantage_img"></div>
-            </div>
-            <ul class="advantage_list">
-                <li class="list list-1">
-                    <h3 class="list-title">数据全面有保障</h3>
-                    <p class="list-text">汇集7000多个政府和企业招标网站,数据覆盖全国100%行业和地区</p>
-                </li>
-                <li class="list list-2">
-                    <h3 class="list-title">多达30+个字段,</h3>
-                    <h3 class="list-title">数据字段识别精准</h3>
-                    <p class="list-text">海量数据也能做到精确,不含糊,字段识别准确率有保障</p>
-                </li>
-                <li class="list list-3">
-                    <h3 class="list-title">T+2小时,极速获取数据</h3>
-                    <p class="list-text">全流程自动化处理,让你第一时间拿到数据,把握先机</p>
-                </li>
-                <li class="list list-4">
-                    <h3 class="list-title">多样化的数据获取方式</h3>
-                    <p class="list-text">API接口:适用多种个性化需求,与你的客户管理系统无缝对接<br> 邮件:通过邮件实时获取数据,支持多格式附件</p>
-                </li>
-            </ul>
-            <div class="bottom_option">
-                <div  class="experience bottom_btn">
-                    抢先体验结构化招标数据
+    <div class="s-section section-3">
+        <div class="section-content s-bg center">
+            <div class="section-title-bg s-bg center"></div>
+            <div class="section-item-list">
+                <div class="section-item-card">
+                    采集全国权威机构公开的招标采购、企业公示等信息(含国家、省市级、县区级政府和企业招标网站),对采集的数据通过层层清洗,交叉验证、自然语言分析和核对,确保数据安全准确。
+                </div>
+                <div class="section-item-card">
+                    拥有全国全行业7700万+条招标信息库、4670万+企业数据库、200万+采购单位库信息,招标采购信息全覆盖。
                 </div>
+                <div class="section-item-card">
+                    行业内最早深耕招标采购大数据,拥有强大且专业的数据整合、处理能力,可抽取30+个信息字段,以EXCEL的形式进行输出。海量数据也能做到精确,不含糊,字段识别准确率有保障。
+                </div>
+                <div class="section-item-card">
+                    提供API接口调用、自助数据导出、企业定制化数据导出、行业报告分析、行业解决方案等多样化数据合作方式。
+                </div>
+            </div>
+            <div class="section-buttons">
+                <button class="action-button consult-button open-customer">立即咨询</button>
+                <button class="action-button get-data-example" data-id="structedData">获取数据样例</button>
             </div>
         </div>
     </div>
-    <div class="main-4">
-        <div class="main-4-content">
-            <div class="cantodo">
-                <div class="cantodo_img"></div>
-            </div>
-            <ul class="cantodo_list">
-                <li class="list list-1">
-                    <div class="list-title">
-                        <span class="title-icon title-icon-1"></span>
-                        <h3 class="title-text">分析数据,获取商机</h3>
+    <div class="s-section section-4 s-bg center">
+        <div class="section-content s-bg center">
+            <div class="section-title-bg s-bg center"></div>
+            <div class="section-item-list">
+                <div class="section-item-card">
+                    <div class="item-card-title s-bg">自主数据导出</div>
+                    <div class="item-card-content">提供标准字段包、高级字段包自助导出,用户可指定关键词、发布时间、地区或行业等筛选条件,以Excel表格形式一次性导出数据,按条计费,成本低。</div>
+                    <div class="item-card-footer s-bg">
+                        可随时以excel批量下载招标、中标数据<br />
+                        可适用各规模企业、多业务场景的全方位数据统计
                     </div>
-                    <p class="list-text">帮助销售总监轻松分析市场,为制定销售策略提供数据支撑。 帮助销售人员寻找潜在商机线索,获取更多销售机会</p>
-                </li>
-                <li class="list list-2">
-                    <div class="list-title">
-                        <span class="title-icon title-icon-2"></span>
-                        <h3 class="title-text">分析潜在渠道合作伙伴 </h3>
+                    <div class="item-card-buttons">
+                        <div class="action-button experience-now">立即体验</div>
                     </div>
-                    <p class="list-text">帮助渠道经理优选潜在合作渠道,快速拓展渠道商<br> 为业绩提升提供有效线索</p>
-                </li>
-                <li class="list list-3">
-                    <div class="list-title">
-                        <span class="title-icon title-icon-3"></span>
-                        <h3 class="title-text">制定行业分析报告,辅助战略决策</h3>
+                </div>
+                <div class="section-item-card">
+                    <div class="item-card-title s-bg">数据流量预充值</div>
+                    <div class="item-card-content">企业可按需预充值数据量,根据业务需求以excel格式批量导出数据,最低1.5折,价格低至0.075元/条,数据有效期长达3年,充值一次即可随时导出。</div>
+                    <div class="item-card-footer s-bg">
+                        可用于销管月度/季度市场分析<br />
+                        可用于销售部门员工KPI考核提供数据支持<br />
+                        可用于渠道经理市场分析优选潜在合作伙伴
                     </div>
-                    <p class="list-text">帮助公司高层透视市场整体情况<br> 掌握竞争对手全面市场数据<br> 为公司制定战略计划提供数据支撑</p>
-                </li>
-                <li class="list list-4">
-                    <div class="list-title">
-                        <span class="title-icon title-icon-4"></span>
-                        <h3 class="title-text">分析企业经营情况 </h3>
+                    <div class="item-card-buttons">
+                        <div class="action-button get-data-example" data-id="structedDataFlow">获取数据样例</div>
                     </div>
-                    <p class="list-text">为征信机构、金融行业等企业信用评定提供数据支撑<br> 辅助完善企业征信报告</p>
-                </li>
-            </ul>
-            <div class="bottom_option">
-                <div  class="canfirst bottom_btn">
-                    立即咨询
                 </div>
-            </div>
-        </div>
-    </div>
-    <div class="main-5 buy-discount">
-        <div class="main-5-content">
-            <div class="c-header">
-                <div class="how-to-buy">
-                    <img class="s-img" src='{{Msg "seo" "cdn"}}/structuredata/pc/image/how-to-buy@2x.png' alt="">
+                <div class="section-item-card">
+                    <div class="item-card-title s-bg">API接口</div>
+                    <div class="item-card-content">企业可按需调取,快速搭建自己的招标数据库,满足企业实现低成本、高效调用数据分析友商情况、评估市场体量、挖掘渠道商的需求。</div>
+                    <div class="item-card-footer s-bg">
+                        可与企业CRM系统对接<br />
+                        可通过接口定期调用数据统计招标数据<br />
+                        可对接金融(银行)、企业征信机构数据接口
+                    </div>
+                    <div class="item-card-buttons">
+                        <div class="action-button get-data-example" data-id="structedAPI">获取数据样例</div>
+                    </div>
                 </div>
-                <div class="discount">
-                    <img class="s-img" src='{{Msg "seo" "cdn"}}/structuredata/pc/image/discount@2x.png' alt="">
+                <div class="section-item-card">
+                    <div class="item-card-title s-bg">数据单日限量包</div>
+                    <div class="item-card-content">大会员用户支持单日限量包,用户开通可用excel格式批量导出关注的招标采购数据,支持每日最大导出100条、200条套餐包。</div>
+                    <div class="item-card-footer s-bg">
+                        可用于销售商机挖掘,定期分析、跟进中标单位、联系人,挖掘销售线索
+                    </div>
+                    <div class="item-card-buttons">
+                        <div class="action-button get-data-example" data-id="structedDailyLimit">获取数据样例</div>
+                    </div>
                 </div>
             </div>
-            <div class="c-list">
-                <div class="c-list-item">
-                    <img class="c-l-item-icon" src='{{Msg "seo" "cdn"}}/structuredata/pc/image/icon-5-1@2x.png' alt="">
-                    <div class="c-l-item-text">
-                        支持按需勾选数据并导出<br />只为你挑选的数据付费
+        </div>
+    </div>
+    <div class="s-section section-5 s-bg">
+        <div class="section-content s-bg center">
+            <div class="section-title-bg s-bg center"></div>
+            <div class="section-item-list">
+                <div class="section-item-card s-bg example-standard">
+                    <div class="item-card-title">标准数据导出服务</div>
+                    <div class="item-card-content">适用场景:市场调研、竞争对手分析</div>
+                    <div class="example-pic">
+                        <img src='{{Msg "seo" "cdn"}}/structuredata/pc/image/example-standard.png?v=1' alt="">
                     </div>
                 </div>
-                <div class="c-list-item">
-                    <img class="c-l-item-icon" src='{{Msg "seo" "cdn"}}/structuredata/pc/image/icon-5-2@2x.png' alt="">
-                    <div class="c-l-item-text">
-                        单条数据重复导出仅计费一次<br />不再为重复数据付费
+                <div class="section-item-card s-bg example-senior">
+                    <div class="item-card-title">高级数据导出服务</div>
+                    <div class="item-card-content">适用场景:商机获取、市场调研、竞争对手分析</div>
+                    <div class="example-pic">
+                        <img src='{{Msg "seo" "cdn"}}/structuredata/pc/image/example-senior.png?v=1' alt="">
                     </div>
                 </div>
-                <div class="c-list-item">
-                    <img class="c-l-item-icon" src='{{Msg "seo" "cdn"}}/structuredata/pc/image/icon-5-3@2x.png' alt="">
-                    <div class="c-l-item-text">
-                        预存金额有效期长达3年<br />充值一次即可随时导出
-                    </div>
+                <div class="section-item-card s-bg">
+                    <div class="item-card-title">自定义接口数据</div>
+                    <div class="item-card-content">适用场景:挖掘商机、销售政策制定、数据分析、销售管理</div>
                 </div>
             </div>
-            <div class="bottom_option">
-                <div  class="call">
-                    <span class="icon-phone"></span>
-                    立即咨询:400-108-6670
+            <div class="section-item-card2 s-bg">
+                <div class="item-card-title">剑鱼提供30+信息字段包含</div>
+                <div class="item-card-content">
+                    招标信息:省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯发布地址;<br />
+                    项目信息:项目名称、项目编号、项目范围、预算(元)、中标金额(元)、开标日期;<br />
+                    采购单位信息:采购单位、采购单位联系人、采购单位联系电话;<br />
+                    招标代理机构信息:招标代理机构名称;<br />
+                    中标单位信息:中标单位、中标单位联系人、中标单位联系电话、中标企业电子邮箱等。
                 </div>
             </div>
+            <div class="section-buttons">
+                <button class="action-button consult-button open-customer">立即咨询</button>
+                <button class="action-button get-data-example" data-id="structedData">获取数据样例</button>
+            </div>
         </div>
     </div>
-    <div class="main-5">
-        <div class="main-5-content">
-            <div class="companys">
-                <div class="companys_img"></div>
-            </div>
-            <div class="company_some">
-                <ul class="com-lists">
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo01.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo02.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo03.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo04.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo05.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo06.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo07.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo08.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo09.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo10.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo11.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo12.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo13.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo14.png" alt="">
-                    </li>
-                    <li class="list">
-                        <img src="/structuredata/pc/image/05_logo16.png" alt="">
-                    </li>
-                    <li class="list hidemore">
-                        . . . . . .
-                    </li>
-                </ul>
-            </div>
-            <div class="bottom_option">
-                <div  class="company bottom_btn">
-                    立即使用
-                </div>
-            </div>
+    <div class="s-section section-6">
+        <div class="section-content s-bg center">
+            <div class="section-title-bg s-bg center"></div>
+            <ul class="company-list">
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo01.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo02.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo03.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo04.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo05.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo06.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo07.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo08.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo09.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo10.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo11.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo12.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo13.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo14.png" alt="">
+                </li>
+                <li class="list-item">
+                    <img src="/structuredata/pc/image/05_logo16.png" alt="">
+                </li>
+                <li class="list-item etc">
+                    . . . . . .
+                </li>
+            </ul>
+        </div>
+    </div>
+    <div class="i-need-more fixed">
+        <div class="i-n-m-bg s-bg center">
+            <div class="get-data-example-button s-bg" data-id="structedData"></div>
         </div>
+        <div class="closed el-icon-close"></div>
     </div>
 </div>
 {{include "/common/pcbottom.html"}}
+<script src="//cdn.jsdelivr.net/npm/vue@2.6.12/dist/vue.min.js"></script>
+<script src="//cdn.jsdelivr.net/npm/element-ui@2.13.2/lib/index.js"></script>
+<script src='{{Msg "seo" "cdn"}}/common-module/pc-dialog/js/leave-info-dialog.js?v={{Msg "seo" "version"}}'></script>
+<script src='{{Msg "seo" "cdn"}}/structuredata/pc/js/index.js?v={{Msg "seo" "version"}}'></script>
 <script>
-    $(window).scroll(function() {
-        //为了保证兼容性,这里取两个值,哪个有值取哪一个
-        //scrollTop就是触发滚轮事件时滚轮的高度
-        var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
-        //console.log("滚动距离" + scrollTop);
-        // 定义定时器
-        if(scrollTop >= 425){
-            $('.data_mode').addClass('data_mode_animate')
-            $('.data_infor').addClass('data_infor_animate')
-        }
-        if(scrollTop >= 1058) {
-            $('.advantage_img').addClass('advantage_img_animate')
-        }
-        if(scrollTop >= 1123) {
-            $('.advantage_list>.list-1').addClass('list-1-animate')
-            $('.advantage_list>.list-2').addClass('list-2-animate')
-            $('.advantage_list>.list-3').addClass('list-3-animate')
-            $('.advantage_list>.list-4').addClass('list-4-animate')
-        }
-        if(scrollTop >= 1710) {
-            $('.cantodo_img').addClass('cantodo_img_animate')
-        }
-        if(scrollTop >= 1805) {
-            $('.cantodo_list>.list-1').addClass('cantodo-1-animate')
-            $('.cantodo_list>.list-2').addClass('cantodo-2-animate')
-        }
-        if(scrollTop >= 2014) {
-            $('.cantodo_list>.list-3').addClass('cantodo-3-animate')
-            $('.cantodo_list>.list-4').addClass('cantodo-4-animate')
-        }
-        if(scrollTop >= 2473) {
-            $('.companys_img').addClass('companys_img_animate')
-        }
-        if(scrollTop >= 3004) {
-            $('.buy-discount .how-to-buy').addClass('a-animate')
-            $('.buy-discount .discount').addClass('a-animate')
-            $('.buy-discount .c-list').addClass('a-animate')
-        }
-        if(scrollTop >= 3700) {
-            $('.com-lists').addClass('com-lists-animate')
-        }
-        if(scrollTop >= 3500) {
-            $('.consultPopup').css('bottom','497px')
-            $('.backTop').css('bottom', '383px')
-        }
-        if(scrollTop <= 3400) {
-            $('.consultPopup').css('bottom','165px')
-            $('.backTop').css('bottom', '61px')
-        }
-    })
-    var source = getParam("source");
-    var typ="结构化数据-pc";
-    if (source!=null){
-       typ = typ + "-" + source;
-    }
-    $("#data_example").on("click",function(){
-      try {
-          _hmt.push(['_trackEvent',typ, 'click', "点击查看数据实例"]);
-      } catch (e) {
-          console.log('未初始化百度统计', e)
-      }
-      window.open("/front/structed/getpreview", '_blank')
-    })
+    $(function () {
+        $("#backTop").remove();
+        haslogin({{.T.logid}});
 
-    $('.bottom_btn').on('click', function(){
-        var className=$(this).attr("class");
-        var baidutj="";
-        if( (className.indexOf("consult"))>-1){ //立即咨询1
-          baidutj="立即咨询-1";
-        }else if ((className.indexOf("experience"))>-1){//抢鲜体验
-          baidutj="抢先体验结构化数据";
-        }else if ((className.indexOf("canfirst"))>-1){ //立即咨询2
-          baidutj="立即咨询-2";
-        }else if ((className.indexOf("company"))>-1){ //立即使用
-          baidutj="立即使用";
-        }
-        if (loginflag){
-            var href='/front/structed/pc_info.html'
-            var source = getParam("source");
-            if (source!=null){
-              href+="?source="+source;
-            }
-            try {
-                _hmt.push(['_trackEvent',typ, 'click', baidutj]);
-            } catch (e) {
-                console.log('未初始化百度统计', e);
-            }
-            window.open(href, '_blank')
-        }else{
-          $("#bidLogin").modal("show");
+        var source = getParam("source");
+        var typ="结构化数据-pc";
+        if (source!=null){
+            typ = typ + "-" + source;
         }
+        // $("#data_example").on("click",function(){
+        //     try {
+        //         _hmt.push(['_trackEvent',typ, 'click', "点击查看数据实例"]);
+        //     } catch (e) {
+        //         console.log('未初始化百度统计', e)
+        //     }
+        //     window.open("/front/structed/getpreview", '_blank')
+        // })
+
+        // $('.bottom_btn').on('click', function(){
+        //     var className=$(this).attr("class");
+        //     var baidutj="";
+        //     if((className.indexOf("consult"))>-1){ //立即咨询1
+        //         baidutj="立即咨询-1";
+        //     } else if ((className.indexOf("experience"))>-1){//抢鲜体验
+        //         baidutj="抢先体验结构化数据";
+        //     } else if ((className.indexOf("canfirst"))>-1){ //立即咨询2
+        //         baidutj="立即咨询-2";
+        //     } else if ((className.indexOf("company"))>-1){ //立即使用
+        //         baidutj="立即使用";
+        //     }
+        //     if (loginflag){
+        //         var href='/front/structed/pc_info.html'
+        //         var source = getParam("source");
+        //         if (source!=null){
+        //             href+="?source="+source;
+        //         }
+        //         try {
+        //             _hmt.push(['_trackEvent',typ, 'click', baidutj]);
+        //         } catch (e) {
+        //             console.log('未初始化百度统计', e);
+        //         }
+        //         window.open(href, '_blank')
+        //     }else{
+        //         $("#bidLogin").modal("show");
+        //     }
+        // })
+
+        // 获取数据样例
+        $('.get-data-example, .get-data-example-button').on('click', function () {
+            var id = $(this).attr('data-id')
+            // 调用组件是否留资方法 传入一个来源对应模块 弹出弹框 (页面改版改为点击【获取数据样例】触发弹框)
+            vm.isNeedSubmit(id, function(){})
+        })
+        // 立即体验
+        $('.experience-now').on('click', function () {
+            location.href = '/front/dataExport/toSieve'
+        })
+        $('.i-need-more .closed').on('click', function () {
+            $('.i-need-more').hide()
+        })
+        $('.example-standard, .example-senior').on('mouseover', function () {
+            var pic = $(this).find('.example-pic')
+            if (!pic.is(':hidden')) return
+            pic.fadeIn()
+        }).on('mouseleave', function () {
+            var pic = $(this).find('.example-pic')
+            if (pic.is(':hidden')) return
+            pic.fadeOut()
+        })
+
+        // 底部ad
+        $('.i-need-more .closed').on('click', function () {
+            $('.i-need-more').fadeOut()
+        })
     })
+    
     /******* 获取url参数(正则)********/
     function getParam(name) {
       var search = document.location.search;

+ 2 - 7
src/web/templates/weixin/dataExport/dataExport_payOrder.html

@@ -557,13 +557,7 @@
         if (sessionStorage.getItem("order_spec" +{{.T._id}}) != null) {
             dataType = sessionStorage.getItem("order_spec" +{{.T._id}});
         }
-        if (dataType == 1) {
-            $(".switch-dataType .bz").addClass("active")
-            $(".switch-dataType .gj").removeClass("active")
-        } else {
-            $(".switch-dataType .bz").removeClass("active")
-            $(".switch-dataType .gj").addClass("active")
-        }
+        exportPage.toggleLevel(dataType)
         //
         $('.choose .choose-item').each(function () {
             var index = $(this).index();
@@ -1560,6 +1554,7 @@
                 this.level = type
                 dataType = type
                 sessionStorage.index = type;
+                sessionStorage.setItem("order_spec{{.T._id}}", type)
                 ChangePayMoney();
             }
         }

+ 92 - 0
src/web/templates/weixin/follow/list.html

@@ -86,6 +86,7 @@ $(function(){
 	var nextarr = new Array();
 	var jyno = 0;
 	data.sort(function(a,b){return a.l_lastpushtime<b.l_lastpushtime});
+	console.log(data, 'data')
 	for (var i in data){
 		var lastpushtime = data[i]["l_lastpushtime"];
 		var timestamp = parseInt($.now()/ 1000);
@@ -248,6 +249,97 @@ $(function(){
 	</div>
 <div class="jylistbottom">
 	<img src="/images/wx/jydustbin.png"/>批量移除30天无更新项目
+	<div class="_s4kc1gcaqh8"></div>
+	<script>
+		$.ajax({
+			type: 'POST',
+			url: '/publicapply/bidcoll/power?t=' + new Date().getTime(),
+			success: function(res) {
+					console.log(res)
+					// res.data.entniche = false
+					// res.data.member = false
+					// res.data.vip = 0
+					if(res.error_code == 0) {
+						if(!res.data.entniche && !res.data.member && res.data.vip <= 0){
+							(window.slotbydup = window.slotbydup || []).push({
+									id: "u6603903",
+									container: "_s4kc1gcaqh8",
+									async: true
+							});
+							getAjaxAdv()
+							var frames = document.getElementById("iframeu6603903_0");
+							console.log(frames, 'frames')
+						
+							IframeOnClick.track(frames, function() {
+											jQuery(document).click();
+							});
+						}
+					}
+			},
+			error: function(err) {
+					console.log(err)
+			}
+	})
+	function getAjaxAdv () {
+			$.ajax({
+				type: 'POST',
+				url: '/publicapply/adLeague/exposure',
+				data: {
+						client: 'WX',
+						id: 'ad9',
+						position: '关注的项目列表页底部'
+				},
+				success: function(res) {
+						console.log(res)
+				}
+			})
+	}
+	var IframeOnClick = {
+  resolution: 200,  
+  iframes: [],  
+  interval: null,  
+  Iframe: function() {  
+      this.element = arguments[0];  
+      this.cb = arguments[1];   
+      this.hasTracked = false;  
+  },  
+  track: function(element, cb) {  
+      this.iframes.push(new this.Iframe(element, cb));  
+      var _this = this;  
+          this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+  },  
+  checkClick: function() {  
+      if (document.activeElement) {  
+          var activeElement = document.activeElement;  
+          for (var i in this.iframes) {  
+              if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                  if (this.iframes[i].hasTracked == false) {   
+                      this.iframes[i].cb.apply(window, []);   
+                      this.iframes[i].hasTracked = true;
+                      $.ajax({
+                          type: 'POST',
+                          url: '/publicapply/adLeague/click',
+                          data: {
+                            client: 'WX',
+														id: 'ad9',
+														position: '关注的项目列表页底部'
+                          },
+                          success: function(res) {
+                              console.log(res)
+                          }
+                      })
+                  }  
+              } else {  
+                  this.iframes[i].hasTracked = false;  
+              }  
+          }  
+      }  
+  }  
+};
+	</script>
+	<!-- 多条广告如下脚本只需引入一次 -->
+	<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+	</script>
 </div>
 	<div class="easypopup" id="easypopup">
 		<div class="easypopup-main">

+ 47 - 0
src/web/templates/weixin/historypush.html

@@ -804,6 +804,9 @@
         }
     })
 </script>
+<!-- 多条广告如下脚本只需引入一次 -->
+<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+</script>
 <script>
   // @手机号绑定及账号合并 2021/1/25
   $("#toKeySet").on('click', tokeysetForFree)
@@ -1348,6 +1351,50 @@
                       continue
                   }
               }
+              if (index == 8) {//广告位
+                listhtml += '<div class="tslist" style="border-bottom: none;" words="' + mWords + '">'
+                    + '<div class="resnumb">'
+                    + '<div class="one">'
+                    + '<span class="xh ' + visited + '">' + count + '.</span>'
+                    + '</div>'
+                    + '<div class="two bt-parent" style="display: flex;justify-content: space-between;padding-left:' + paddingLeft + 'px;">'
+                    + '<a class="bt ' + visited + '" eid="' + obj["_id"] + '" href="javascript:void(0);"  push_date="' + obj["ca_date"] + '" list_index="' + obj["ca_index"] + '" projectM="' + obj["ca_type"] + '">' + title + '</a>'
+                    + '<div class="collec_star" collecnum="'+obj["collection"]+'" data-id="' + obj["_id"] + '">'
+                    + '<span class="shoucang"></span>'
+                    + '<span class="weishoucang"></span>'
+                    + '</div>'
+                    + '</div>'
+                    + '</div>'
+                    + '<div style="clear:both;">'
+                    + '</div>'
+                    + '<div class="restime time-diff">' + projectMList + showdateList + '</div>'
+                    + '<div style="clear:both;"></div>'
+                    + '</div>'
+                    + '<div class="_36y1d8lbx9n">'+'</div>'
+                continue
+              }
+              if (index == 23) {//广告位
+                listhtml += '<div class="tslist" style="border-bottom: none;" words="' + mWords + '">'
+                    + '<div class="resnumb">'
+                    + '<div class="one">'
+                    + '<span class="xh ' + visited + '">' + count + '.</span>'
+                    + '</div>'
+                    + '<div class="two bt-parent" style="display: flex;justify-content: space-between;padding-left:' + paddingLeft + 'px;">'
+                    + '<a class="bt ' + visited + '" eid="' + obj["_id"] + '" href="javascript:void(0);"  push_date="' + obj["ca_date"] + '" list_index="' + obj["ca_index"] + '" projectM="' + obj["ca_type"] + '">' + title + '</a>'
+                    + '<div class="collec_star" collecnum="'+obj["collection"]+'" data-id="' + obj["_id"] + '">'
+                    + '<span class="shoucang"></span>'
+                    + '<span class="weishoucang"></span>'
+                    + '</div>'
+                    + '</div>'
+                    + '</div>'
+                    + '<div style="clear:both;">'
+                    + '</div>'
+                    + '<div class="restime time-diff">' + projectMList + showdateList + '</div>'
+                    + '<div style="clear:both;"></div>'
+                    + '</div>'
+                    + '<div class="_061vbh43quq3">'+'</div>'
+                continue
+              }
               listhtml += '<div class="tslist" words="' + mWords + '">'
                   + '<div class="resnumb">'
                   + '<div class="one">'

+ 4 - 0
src/web/templates/weixin/search/mainSearch.html

@@ -877,6 +877,7 @@
       url: '/publicapply/bidcoll/power',
       type: 'POST'
     }).done(function (r) {
+			sessionStorage.setItem('powerStatus', JSON.stringify(r.data))
         if (r && r.error_msg == '' && r.data) {
           window.jyUserPower = {
             entniche: r.data.entniche,
@@ -909,6 +910,9 @@
     }
   })
 </script>
+<!-- 多条广告如下脚本只需引入一次 -->
+<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+</script>
 <script type="text/javascript">
   var member_status;
   var isMember = false;

+ 90 - 0
src/web/templates/weixin/wxinfocontent_rec.html

@@ -686,6 +686,54 @@ pre {
   }
 </script>
 <div class="info">
+<div class="_vt6grad49so"></div>
+<script type="text/javascript">
+		$.ajax({
+			type: 'POST',
+			url: '/publicapply/bidcoll/power?t=' + new Date().getTime(),
+			success: function(res) {
+					console.log(res)
+					// res.data.entniche = false
+					// res.data.member = false
+					// res.data.vip = 0
+					if(res.error_code == 0) {
+							if(!res.data.entniche && !res.data.member && res.data.vip <= 0) {
+									(window.slotbydup = window.slotbydup || []).push({
+											id: "u6603899",
+											container: "_vt6grad49so",
+											async: true
+									});
+									getAjaxAdv()
+									var frames = document.getElementById("iframeu6603899_0");
+									console.log(frames, 'frames')
+									IframeOnClick.track(frames, function() {
+											jQuery(document).click();
+									});
+							}
+					}
+			},
+			error: function(err) {
+							console.log(err)
+			}
+		})
+		function getAjaxAdv () {
+				$.ajax({
+				type: 'POST',
+				url: '/publicapply/adLeague/exposure',
+				data: {
+						client: 'WX',
+						id: 'ad7',
+						position: '公告详情页顶部'
+				},
+				success: function(res) {
+						console.log(res)
+				}
+				})
+		}
+</script>
+<!-- 多条广告如下脚本只需引入一次 -->
+<script type="text/javascript" src="//cpro.baidustatic.com/cpro/ui/cm.js" async="async" defer="defer" >
+</script>
 	<div class="title myfollow" id="title">{{.T.obj.title}}</div>
 	<div class="toolbar">
 		<div class="type_label clearfix">
@@ -2562,6 +2610,48 @@ $('.collec_star').on('click', function () {
     vKeepComponent.changeBid(id, shoucang)
   }
 })
+var IframeOnClick = {
+    resolution: 200,  
+    iframes: [],  
+    interval: null,  
+    Iframe: function() {  
+        this.element = arguments[0];  
+        this.cb = arguments[1];   
+        this.hasTracked = false;  
+    },  
+    track: function(element, cb) {  
+        this.iframes.push(new this.Iframe(element, cb));  
+        var _this = this;  
+            this.interval = setInterval(function() { _this.checkClick(); }, this.resolution);  
+    },  
+    checkClick: function() {  
+        if (document.activeElement) {  
+            var activeElement = document.activeElement;  
+            for (var i in this.iframes) {  
+                if (activeElement === this.iframes[i].element) { // user is in this Iframe  
+                    if (this.iframes[i].hasTracked == false) {   
+                        this.iframes[i].cb.apply(window, []);   
+												this.iframes[i].hasTracked = true;
+												$.ajax({
+														type: 'POST',
+														url: '/publicapply/adLeague/click',
+														data: {
+																client: 'WX',
+																id: 'ad7',
+																position: '公告详情页顶部'
+														},
+														success: function(res) {
+																console.log(res)
+														}
+												})
+                    }  
+                } else {  
+                    this.iframes[i].hasTracked = false;  
+                }  
+            }  
+        }  
+    }  
+};
 </script>
 {{include "/common/baiducc.html"}}
 </body>

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません