浏览代码

feat: PC数据导出需求开发

tsz 3 年之前
父节点
当前提交
35b8aad15e

+ 229 - 1
src/web/staticres/dataExport/css/conditions.css

@@ -757,4 +757,232 @@ input.sm {
   background-size: 20px 20px;
   background-size: 20px 20px;
   background-repeat: no-repeat;
   background-repeat: no-repeat;
   padding-left: 25px;
   padding-left: 25px;
-}
+}
+
+/*S 新增数据预览样式 */
+.dataExport_table{
+  margin-top: 28px;
+}
+.dataExport_table .dataExport_option{
+  padding: 0 16px;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  width: 100%;
+  height: 50px;
+  background: #fff;
+}
+.fixedTr.data_fixed{
+  position: fixed;
+  top: 0;
+  margin: 114px auto;
+  z-index: 999;
+  width: 1200px;
+  overflow-x: auto;
+  overflow-y: hidden;
+}
+/* 隐藏滚动条 */
+.fixedTr.data_fixed::-webkit-scrollbar{
+  width: 0 !important 
+}
+.fixedTr.data_fixed {
+  -ms-overflow-style: none; 
+}
+.fixedTr.data_fixed{
+  overflow: -moz-scrollbars-none;
+}
+/* 隐藏滚动条 */
+.dataExport_table .dataExport_option.data_fixed{
+  position: fixed;
+  top: 0;
+  margin: 64px auto;
+  width: 1200px;
+  z-index: 999;
+}
+.data_op_left{
+  padding-left: 14px;
+  font-size: 16px;
+  font-weight: 400;
+  color: #1D1D1D;
+  line-height: 24px;
+}
+.data_op_right{
+  display: flex;
+  justify-content: flex-end;
+  align-items: center;
+}
+.data_op_right .data_specs{
+  display: flex;
+  align-items: center;
+}
+.data_op_right .data_help_img{
+  padding: 1px;
+  width: 18px;
+  height: 18px;
+}
+.data_op_right .data_standard{
+  display: flex;
+  align-items: center;
+  margin-left: 16px;
+  font-size: 14px;
+  cursor: pointer;
+}
+.data_standard.active{
+  color: #2cb7ca;
+}
+.data_op_right .data_standard img{
+  margin-right: 4px;
+  width: 20px;
+  height: 20px;
+}
+.dataExport_main{
+  position: relative;
+  width: 100%;
+  overflow-x: auto;
+  overflow-y: hidden;
+}
+.filed-tooltip {
+  padding: 8px 10px;
+  width: 418px;
+  background: rgba(0, 0, 0, 0.75);
+  border-radius: 4px;
+  font-size: 12px;
+  font-weight: 400;
+  color: #FFFFFF;
+  line-height: 18px;
+}
+.noDataDialog{
+  /* width: 380px;
+  height: 202px;
+  background: #fff;
+  border-radius: 8px; */
+}
+.noDataDialog .el-dialog{
+  padding: 32px;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  width: 380px!important;
+  height: 202px;
+  background: #fff;
+  border-radius: 8px;
+}
+.noDataDialog .el-dialog--center .el-dialog__body{
+  flex: 1;
+  padding: 0;
+}
+.noDataDialog .el-dialog__header{
+  display: none;
+}
+.noDataDialog .el-dialog--center .el-dialog__footer{
+  padding: 0;
+}
+.no-data-text{
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  justify-content: space-between;
+  padding-bottom: 32px;
+  height: 100%;
+}
+.noDataDialog .el-button.el-button--primary{
+  padding: 0;
+  width: 132px;
+  height: 36px;
+  color: #FFF;
+  background: #2CB7CA;
+  border-color: #2CB7CA;
+  font-size: 16px;
+  line-height: 36px;
+}
+.dataExport-footer{
+  /* position: fixed;
+  bottom: 0; */
+  width: 100%;
+  height: 68px;
+  background: #FFFFFF;
+  box-shadow: 0px -4px 8px 1px rgba(0, 0, 0, 0.05);
+  z-index: 999;
+}
+.dataExport-footer.bottomfixed {
+  position: fixed;
+  bottom: 0;
+}
+.data-footer-main{
+  display: flex;
+  justify-content: flex-end;
+  align-items: center;
+  width: 1200px;
+  height: 100%;
+  margin: 0 auto;
+}
+.dataBtnCom{
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  margin-left: 16px;
+  width: 180px;
+  height: 46px;
+  border-radius: 6px;
+  border: 1px solid #2CB7CA;
+  font-size: 16px;
+  color: #2CB7CA;
+  cursor: pointer;
+}
+.data-now-export{
+  border: none;
+  color: #FFFFFF;
+  background: #2CB7CA;
+}
+.dataMore-main, .dataMore-out{
+  position: relative;
+  width: 100%;
+}
+.dataMore-main{
+  height: 100px;
+  background: #fff
+}
+.dataMore-out{
+  width: 1200px;
+  bottom: 116px;
+  background: #fff;
+}
+.dataMore-content{
+  width: 100%;
+  height: 100px;
+  background: #fff;
+  position: absolute;
+}
+.dataMore-out .dataMore{
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  width: 100%;
+  height: 100px;
+  background: linear-gradient(to bottom, rgba(51,182,202,0.2), rgba(255,255,255, 0));
+}
+.dataMore .data-more-text{
+  font-size: 16px;
+  font-weight: 400;
+  color: #1D1D1D;
+  line-height: 24px;
+}
+.dataMore .data-more-btn{
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  margin-left: 20px;
+  width: 132px;
+  height: 36px;
+  background: #2CB7CA;
+  border-radius: 6px;
+  font-size: 16px;
+  font-weight: 400;
+  color: #FFFFFF;
+  cursor: pointer;
+}
+.sy.sy_gj{
+  min-width: 2800px;
+  height: 100%;
+}
+/*E 新增数据预览样式 */

+ 14 - 13
src/web/staticres/dataExport/css/previewData.css

@@ -21,12 +21,13 @@ body{
 	text-align: center;
 	text-align: center;
 	font-size: 12px;
 	font-size: 12px;
 	padding: 5px;
 	padding: 5px;
+  vertical-align: middle
 }
 }
 .d_bz tr:nth-child(1) td{
 .d_bz tr:nth-child(1) td{
 	color: #565f66;
 	color: #565f66;
 	background-color: #e9f6ff;
 	background-color: #e9f6ff;
 	height: 35px;
 	height: 35px;
-    white-space: nowrap;
+  white-space: nowrap;
 }
 }
 .d_gj tr:nth-child(1) td,.d_gj tr:nth-child(2) td{
 .d_gj tr:nth-child(1) td,.d_gj tr:nth-child(2) td{
 	color: #565f66;
 	color: #565f66;
@@ -45,44 +46,44 @@ body{
 .d_bz{
 .d_bz{
 	min-width:2000px;
 	min-width:2000px;
 }
 }
-.d_bz td:nth-child(1){
+.d_bz td:nth-child(1), .d_bz .data_fixed td:nth-child(1){
 	width: 2%;
 	width: 2%;
 }
 }
-.d_bz td:nth-child(2){
+.d_bz td:nth-child(2), .d_bz .data_fixed td:nth-child(2){
 	width: 3%;
 	width: 3%;
 	white-space: nowrap;
 	white-space: nowrap;
 }
 }
-.d_bz td:nth-child(3){
+.d_bz td:nth-child(3), .d_bz .data_fixed td:nth-child(3){
 	width: 3%;
 	width: 3%;
 	white-space: nowrap;
 	white-space: nowrap;
 
 
 }
 }
-.d_bz td:nth-child(4){
+.d_bz td:nth-child(4), .d_bz .data_fixed td:nth-child(4){
 	width: 13%;
 	width: 13%;
 }
 }
-.d_bz td:nth-child(5){
+.d_bz td:nth-child(5), .d_bz .data_fixed td:nth-child(5){
 	width: 3%;
 	width: 3%;
 }
 }
-.d_bz td:nth-child(6){
+.d_bz td:nth-child(6), .d_bz .data_fixed td:nth-child(6){
 	width: 4%;
 	width: 4%;
 	white-space: nowrap;
 	white-space: nowrap;
 }
 }
-.d_bz td:nth-child(7){
+.d_bz td:nth-child(7), .d_bz .data_fixed td:nth-child(7){
 	width: 10%;
 	width: 10%;
 }
 }
-.d_bz td:nth-child(8){
+.d_bz td:nth-child(8), .d_bz .data_fixed td:nth-child(8){
 	width: 10%;
 	width: 10%;
 }
 }
-.d_bz td:nth-child(9){
+.d_bz td:nth-child(9), .d_bz .data_fixed td:nth-child(9){
 	width: 2%;
 	width: 2%;
 }
 }
-.d_bz td:nth-child(10){
+.d_bz td:nth-child(10), .d_bz .data_fixed td:nth-child(10){
 	width: 13%;
 	width: 13%;
 }
 }
-.d_bz td:nth-child(11){
+.d_bz td:nth-child(11), .d_bz .data_fixed td:nth-child(11){
 	width: 24%;
 	width: 24%;
 }
 }
-.d_bz td:nth-child(12){
+.d_bz td:nth-child(12), .d_bz .data_fixed td:nth-child(12){
 	width: 13%;
 	width: 13%;
 	word-break: break-all;
 	word-break: break-all;
 }
 }

二进制
src/web/staticres/dataExport/image/icon-field.png


二进制
src/web/staticres/dataExport/image/icon-gray-field.png


+ 7 - 1
src/web/templates/pc/createOrderPage.html

@@ -184,7 +184,7 @@
               <div style="font-size: 14px;flex: 1;">
               <div style="font-size: 14px;flex: 1;">
                 <span style="color: #2CB7CA">包含:</span>省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯地址、项目名称、项目范围、预算金额、中标金额、开标日期、采购单位、采购单位信息(采购单位联系人、采购单位联系电话、招标代理机构)、中标单位信息(中标单位、中标单位联系人、中标单位联系电话)(来源:招标公告网站)、中标单位信息(中标单位联系人、中标单位联系电话、电子邮箱)(来源:国家企业公示网站
                 <span style="color: #2CB7CA">包含:</span>省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯地址、项目名称、项目范围、预算金额、中标金额、开标日期、采购单位、采购单位信息(采购单位联系人、采购单位联系电话、招标代理机构)、中标单位信息(中标单位、中标单位联系人、中标单位联系电话)(来源:招标公告网站)、中标单位信息(中标单位联系人、中标单位联系电话、电子邮箱)(来源:国家企业公示网站
               </div>
               </div>
-              <div class="dataPreview" style="color: #2CB7CA;width: 56px;font-size: 14px;margin-right: 20px;margin-left: 38px;cursor: pointer">预览数据</div>
+              <div class="dataPreview" type="gj" style="color: #2CB7CA;width: 56px;font-size: 14px;margin-right: 20px;margin-left: 38px;cursor: pointer">预览数据</div>
             </div>
             </div>
         </div>
         </div>
         <div class="email" id="email">
         <div class="email" id="email">
@@ -1537,6 +1537,12 @@
                     window.open("/front/dataExport/previewData/{{.T._id}}?dataType=" + tempDataType);
                     window.open("/front/dataExport/previewData/{{.T._id}}?dataType=" + tempDataType);
                     return
                     return
                 }
                 }
+                let type = $(this).attr('type')
+                if (type) {
+                  pageDataMap.typeMap['个人支付'].type = 2
+                } else {
+                  pageDataMap.typeMap['个人支付'].type = 1
+                }
                 window.open("/front/dataExport/previewData/{{.T._id}}?dataType=" + pageDataMap.typeMap['个人支付'].type)
                 window.open("/front/dataExport/previewData/{{.T._id}}?dataType=" + pageDataMap.typeMap['个人支付'].type)
             } else {
             } else {
                 $.confirm({
                 $.confirm({

+ 380 - 9
src/web/templates/pc/dataExport_sieve.html

@@ -22,6 +22,8 @@
     <script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
     <script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
     <link href="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/theme-chalk/index.css" rel="stylesheet" />
     <link href="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/theme-chalk/index.css" rel="stylesheet" />
     <script src=//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/index.js></script>
     <script src=//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/index.js></script>
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/dataExport/css/previewData.css?v={{Msg "seo" "version"}}">
+    <script src="{{Msg "seo" "cdn"}}/dataExport/js/html2canvas.min.js"></script>
     <script type="text/javascript" src="{{Msg "seo" "cdn"}}/js/public-nav.js?v={{Msg "seo" "version"}}"></script>
     <script type="text/javascript" src="{{Msg "seo" "cdn"}}/js/public-nav.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/swiper/swiper.min.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/swiper/swiper.min.js?v={{Msg "seo" "version"}}"></script>
     <title>数据导出_拟建项目导出_招标采购数据导出_中标数据导出-剑鱼标讯</title>
     <title>数据导出_拟建项目导出_招标采购数据导出_中标数据导出-剑鱼标讯</title>
@@ -569,7 +571,7 @@
       </div>
       </div>
     </div>
     </div>
     <!--指示条-->
     <!--指示条-->
-    <div class="progress_">
+    <div class="progress_" id="progress_">
         <div class="pro l c3">
         <div class="pro l c3">
             1.条件筛选
             1.条件筛选
         </div>
         </div>
@@ -873,8 +875,191 @@
             <button id="reset">重置</button>
             <button id="reset">重置</button>
         </div>
         </div>
     </div>
     </div>
-    <div id="dataExport_table" class="dataExport_table">
-      ${num}
+    <div id="dataExport_table"  v-if="tableShow" class="dataExport_table">
+      <div class="dataExport_option" v-if="isfixed" :class="isfixed? 'data_fixed' : ''">
+        <div class="data_op_left">
+          为您筛选到 <span style="color:#2CB7CA">${dataInfo.total}</span> 条数据
+        </div>
+        <div class="data_op_right">
+          <div class="data_specs">数据规格
+            <el-tooltip popper-class="filed-tooltip" class="item" effect="dark" placement="top">
+              <template #content>
+                标准地段包:<br/>
+                省份、城市、公告标题、剑鱼标讯地址、公告类别、发布时间、采购单位、中标单位、中标金额、项目名称、公告内容<br/>
+                高级字段包:<br/>
+                省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯地址、项目名称、项目范围、预算金额、中标金额、开标日期、采购单位、采购单位信息(采购单位联系人、采购单位联系电话、招标代理机构)、中标单位信息(中标单位、中标单位联系人、中标单位联系电话)(来源:招标公告网站)、中标单位信息(中标单位联系人、中标单位联系电话、电子邮箱)(来源:国家企业公示网站)
+              </template>
+              <img class="data_help_img" src='{{Msg "seo" "cdn"}}/images/help-b.png' />
+            </el-tooltip>
+            :</div>
+            <div class="data_standard" @click="selectField('1')" :class="dataType==='1'?'active' : ''">
+              <img v-if="dataType==='1'" src='{{Msg "seo" "cdn"}}/dataExport/image/icon-field.png' alt="" />
+              <img v-else src='{{Msg "seo" "cdn"}}/dataExport/image/icon-gray-field.png' alt="" />
+              <span>标准字段包</span>
+            </div>
+            <div class="data_standard" @click="selectField('2')" :class="dataType==='2'?'active' : ''">
+              <img v-if="dataType==='2'" src='{{Msg "seo" "cdn"}}/dataExport/image/icon-field.png' alt="" />
+              <img v-else src='{{Msg "seo" "cdn"}}/dataExport/image/icon-gray-field.png' alt="" />
+              <span>高级字段包</span>
+            </div>
+        </div>
+      </div>
+      <div class="dataExport_option">
+        <div class="data_op_left">
+          为您筛选到 <span style="color:#2CB7CA">${dataInfo.total}</span> 条数据
+        </div>
+        <div class="data_op_right">
+          <div class="data_specs">数据规格
+            <el-tooltip popper-class="filed-tooltip" class="item" effect="dark" placement="top">
+              <template #content>
+                标准地段包:<br/>
+                省份、城市、公告标题、剑鱼标讯地址、公告类别、发布时间、采购单位、中标单位、中标金额、项目名称、公告内容<br/>
+                高级字段包:<br/>
+                省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯地址、项目名称、项目范围、预算金额、中标金额、开标日期、采购单位、采购单位信息(采购单位联系人、采购单位联系电话、招标代理机构)、中标单位信息(中标单位、中标单位联系人、中标单位联系电话)(来源:招标公告网站)、中标单位信息(中标单位联系人、中标单位联系电话、电子邮箱)(来源:国家企业公示网站)
+              </template>
+              <img class="data_help_img" src='{{Msg "seo" "cdn"}}/images/help-b.png' />
+            </el-tooltip>
+            :</div>
+            <div class="data_standard" @click="selectField('1')" :class="dataType==='1'?'active' : ''">
+              <img v-if="dataType==='1'" src='{{Msg "seo" "cdn"}}/dataExport/image/icon-field.png' alt="" />
+              <img v-else src='{{Msg "seo" "cdn"}}/dataExport/image/icon-gray-field.png' alt="" />
+              <span>标准字段包</span>
+            </div>
+            <div class="data_standard" @click="selectField('2')" :class="dataType==='2'?'active' : ''">
+              <img v-if="dataType==='2'" src='{{Msg "seo" "cdn"}}/dataExport/image/icon-field.png' alt="" />
+              <img v-else src='{{Msg "seo" "cdn"}}/dataExport/image/icon-gray-field.png' alt="" />
+              <span>高级字段包</span>
+            </div>
+        </div>
+      </div>
+      <div class="dataExport_main">
+        <div v-if="isfixed && dataType === '1'" class="fixedTr data_fixed">
+          <table class="d_bz" cellspacing="0" cellpadding="0">
+            <tr>
+              <td :rowspan="item.rowspan" :colspan="item.colspan" v-for="(item, index) in title" :key="index">
+                <span v-if="index===8&&dataType === '1'">${item.title}<br/>(万元)</span>
+                <span v-else>${item.title}</span>
+              </td>
+            </tr>
+          </table>
+        </div>
+        <table v-if="dataType === '1'" class="d_bz" cellspacing="0" cellpadding="0">  
+          <tr>
+            <td :rowspan="item.rowspan" :colspan="item.colspan" v-for="(item, index) in title" :key="index">
+              <span v-if="index===8&&dataType === '1'">${item.title}<br/>(万元)</span>
+              <span v-else>${item.title}</span>
+            </td>
+					</tr>
+            <tr v-for="(item, index) in dataInfo.list" :key="index">
+              <td>${index+1}</td>
+              <td>${item.area}</td>
+              <td>${item.city}</td>
+              <td>${item.title}</td>
+              <td>${item.subtype}</td>
+              <td>${item.publishtime}</td>
+              <td>${item.buyer}</td>
+              <td>${item.s_winner}</td>
+              <td>${item.bidamount}</td>
+              <td>${item.projectname}</td>
+              <td>${item.detail}</td>
+              <td>${item.url}</td>
+            </tr>
+        </table>
+        <div v-if="isfixed && dataType === '2'" class="fixedTr data_fixed">
+          <table class="d_gj" cellspacing="0" cellpadding="0">
+            <tr>
+              <td :rowspan="item.rowspan" :colspan="item.colspan" v-for="(item, index) in title" :key="index">
+                <span v-if="index===13&&dataType === '2'||index===12&&dataType === '2'">${item.title}<br/>(万元)</span>
+                <span v-else>${item.title}</span>
+              </td>
+            </tr>
+            <tr>
+              <td>单位名称</td>
+              <td>联系人</td>
+              <td>联系电话</td>
+    
+              <td>单位名称</td>
+              <td>联系人</td>
+              <td>联系电话</td>
+    
+              <td>联系人</td>
+              <td>联系电话</td>
+              <td>电子邮箱</td>
+            </tr>
+          </table>
+        </div>
+        <table v-if="dataType === '2'" class="d_gj" cellspacing="0" cellpadding="0">
+          <tr>
+            <td :rowspan="item.rowspan" :colspan="item.colspan" v-for="(item, index) in title" :key="index">
+              <span v-if="index===13&&dataType === '2'||index===12&&dataType === '2'">${item.title}<br/>(万元)</span>
+              <span v-else>${item.title}</span>
+            </td>
+					</tr>
+          <tr>
+            <td>单位名称</td>
+            <td>联系人</td>
+            <td>联系电话</td>
+  
+            <td>单位名称</td>
+            <td>联系人</td>
+            <td>联系电话</td>
+  
+            <td>联系人</td>
+            <td>联系电话</td>
+            <td>电子邮箱</td>
+          </tr>
+            <tr v-for="(item, index) in dataInfo.list" :key="index">
+              <td>${index+1}</td>
+              <td>${item.area}</td>
+              <td>${item.city}</td>
+              <td>${item.title}</td>
+              <td>${item.subtype}</td>
+              <td>${item.detail}</td>
+              <td>${item.publishtime}</td>
+              <td>${item.href}</td>
+              <td>${item.url}</td>
+              <td>${item.projectname}</td>
+              <td>${item.projectcode}</td>
+              <td>${item.projectscope}</td>
+              <td>${item.budget}</td>
+              <td>${item.bidamount}</td>
+              <td>${item.bidopentime}</td>
+              <td>${item.buyer}</td>
+              <td>${item.buyerperson}</td>
+              <td>${item.buyertel}</td>
+              <td>${item.agency}</td>
+              <td>${item.s_winner}</td>
+              <td name="name">${item.winnerperson}</td>
+              <td name="phone">${item.winnertel}</td>
+              <td name="name">${item.legal_person}</td>
+              <td name="phone">${item.company_phone}</td>
+              <td>${item.company_email}</td>
+            </tr>
+        </table>
+        <div class="sy" :class="dataType==='2'?'sy_gj':''"></div>
+        <div class="dataMore-main" v-if="dataInfo.total>20"></div>
+      </div>
+      <el-dialog
+      class="noDataDialog"
+        :visible.sync="noDataDialog"
+        width="30%"
+        center>
+        <div class="no-data-text">
+          <p>未匹配到数据</p>
+          <p>对不起,没有匹配到数据,请修改数据导出条件</p>
+        </div>
+        <span slot="footer" class="dialog-footer">
+          <el-button type="primary" @click="noDataDialog = false">立即修改</el-button>
+        </span>
+      </el-dialog>
+    </div>
+    <div class="dataMore-out" style="display: none;">
+      <div class="dataMore-content">
+        <div class="dataMore">
+          <span class="data-more-text">导出后可查看更多数据</span>
+          <div class="data-more-btn data-now-export">立即导出</div>
+        </div>
+      </div>
     </div>
     </div>
     <!--底部banner-->
     <!--底部banner-->
     <div class="banner" style="height: 120px;margin-top:32px;">
     <div class="banner" style="height: 120px;margin-top:32px;">
@@ -926,6 +1111,20 @@
         swiper1.init();
         swiper1.init();
     </script>
     </script>
 </section>
 </section>
+<div class="dataExport-footer footer-one" style="display: none;">
+  <div class="data-footer-main">
+    <div style="margin-right: 16px;">为您筛选到 <span class="dataExNum" style="color:#2CB7CA"></span> 条数据</div>
+    <div class="data-modify dataBtnCom">修改条件</div>
+    <div class="data-now-export dataBtnCom">立即导出</div>
+  </div>
+</div>
+<div class="dataExport-footer footer-two" style="display: none;">
+  <div class="data-footer-main">
+    <div style="margin-right: 16px;">为您筛选到 <span class="dataExNum" style="color:#2CB7CA"></span> 条数据</div>
+    <div class="data-modify dataBtnCom">修改条件</div>
+    <div class="data-now-export dataBtnCom">立即导出</div>
+  </div>
+</div>
 {{include "/common/pcbottom.html"}}
 {{include "/common/pcbottom.html"}}
 {{include "/common/baiducc.html"}}
 {{include "/common/baiducc.html"}}
 <script>
 <script>
@@ -933,9 +1132,161 @@
     delimiters: ['${', '}'],
     delimiters: ['${', '}'],
     el: '#dataExport_table',
     el: '#dataExport_table',
     data: {
     data: {
-      num: 11111
+      title: [
+        {rowspan: 1,colspan: 1,title: '序号',},
+        {rowspan: 1,colspan: 1,title: '省份',},
+        {rowspan: 1,colspan: 1,title: '城市',},
+        {rowspan: 1,colspan: 1,title: '公告标题',},
+        {rowspan: 1,colspan: 1,title: '公告类别',},
+        {rowspan: 1,colspan: 1,title: '发布时间',},
+        {rowspan: 1,colspan: 1,title: '采购单位',},
+        {rowspan: 1,colspan: 1,title: '中标单位',},
+        {rowspan: 1,colspan: 1,title: '项目名称',},
+        {rowspan: 1,colspan: 1,title: '中标金额',},
+        {rowspan: 1,colspan: 1,title: '公告内容',},
+        {rowspan: 1,colspan: 1,title: '剑鱼标讯地址',}
+      ],
+      bottomfixed: false,
+      isfixed: false,
+      tableShow: false,
+      noDataDialog: false,
+      dataType: '1',
+      dataInfo: {
+        list: []
+      }
+    },
+    mounted () {
+      window.addEventListener('scroll', this.handleScroll)
+    },
+    destroyed () {
+      window.removeEventListener('scroll', this.handleScroll)
     },
     },
-    method: {}
+    watch: {
+      isfixed (newval, oldval) {
+        if (newval) {
+          $(function() {
+            // 获取表格td宽度
+            if(this.dataType === '1') {
+              var topTds = $(".d_bz tr:last");
+            } else {
+              var topTds = $(".d_gj:nth-child(2) tr:first");
+              var topTdsMin = $(".d_gj:nth-child(2) tr:last");
+            }
+            // 获取顶部title DOM
+            if(this.dataType === '1') {
+              var fixedTds = $('.fixedTr.data_fixed .d_bz tr').children()
+              topTds = topTds.children();
+            } else {
+              debugger
+              let $widthMinArr = []
+              var fixedTds = $('.fixedTr.data_fixed .d_gj tr:nth-child(1)').children()
+              var fixedMinTds = $('.fixedTr.data_fixed .d_gj tr:nth-child(2)').children()
+              topTds = topTds.children();
+              topTdsMin = topTdsMin.children()
+              for(let m = 0; m < topTdsMin.length; m++){
+                const $width = $(topTds.eq(m)).outerWidth()
+                $widthMinArr.push($width)
+              }
+              // 把取到的宽度赋值给顶部title
+              for(var f = 0; f < fixedMinTds.length; f++) {
+                const $Dom = $(fixedMinTds.eq(f))
+                $($Dom).css("width", $widthMinArr[f]+'px')
+              }
+            }
+            let $widthArr = []
+            for(let m = 0; m < topTds.length; m++){
+              const $width = $(topTds.eq(m)).outerWidth()
+              $widthArr.push($width)
+            }
+            // 把取到的宽度赋值给顶部title
+            for(var f = 0; f < fixedTds.length; f++) {
+              const $Dom = $(fixedTds.eq(f))
+              $($Dom).css("width", $widthArr[f]+'px')
+            }
+          })
+        }
+      }
+    },
+    methods: {
+      renderImg () {
+        var w=$(".d_bz").width();
+        var h=$(".d_bz").height();
+        $(".sy").width($(".d_bz").width()).height($(".d_bz").height());
+        html2canvas(document.querySelector(".d_bz")).then(function(canvas){
+          var url=canvas.toDataURL('image/png');
+          $(".d_bz").append("<img class=\"fimg\" src=\""+url+"\">")
+          $(".d_bz img").width(w);
+        });
+      },
+      // 监听滚动
+      handleScroll () {
+        var st =
+            window.pageYOffset ||
+            document.documentElement.scrollTop ||
+            document.body.scrollTop
+            console.log(st)
+        var $bottomDom =  $(".j-bottom").offset().top;
+        var $height = $(window).height()
+        if ($bottomDom - 750 >= st) {
+          $('.footer-two').addClass('bottomfixed')
+          if(this.dataInfo.list.length > 0) {
+            $('.footer-two').show()
+          }
+        } else {
+          $('.footer-two').removeClass('bottomfixed').hide()
+        }
+        st > 1300 ? (this.isfixed = true) : (this.isfixed = false)
+      },
+      selectField (data) {
+        this.dataType = data
+        if(data === '1') {
+          this.title = [{rowspan: 1,colspan: 1,title: '序号',},
+        {rowspan: 1,colspan: 1,title: '省份',},
+        {rowspan: 1,colspan: 1,title: '城市',},
+        {rowspan: 1,colspan: 1,title: '公告标题',},
+        {rowspan: 1,colspan: 1,title: '公告类别',},
+        {rowspan: 1,colspan: 1,title: '发布时间',},
+        {rowspan: 1,colspan: 1,title: '采购单位',},
+        {rowspan: 1,colspan: 1,title: '中标单位',},
+        {rowspan: 1,colspan: 1,title: '项目名称',},
+        {rowspan: 1,colspan: 1,title: '中标金额',},
+        {rowspan: 1,colspan: 1,title: '公告内容',},
+        {rowspan: 1,colspan: 1,title: '剑鱼标讯地址',}]
+        } else if(data === '2'){
+          // this.title = ['序号', '省份', '城市', '公告标题', '公告类别', '公告内容', '发布时间', '公告地址', '剑鱼标讯地址', '项目名称', '项目编号', '项目范围', '预算金额', '中标金额', '开标日期', '采购单位信息', '招标代理机构', '中标单位信息(来源:招标公告网站)', '中标单位信息(来源:国家企业公示网站)']
+          this.title = [
+            {rowspan: 2,colspan: 1,title: '序号',},
+            {rowspan: 2,colspan: 1,title: '省份',},
+            {rowspan: 2,colspan: 1,title: '城市',},
+            {rowspan: 2,colspan: 1,title: '公告标题',},
+            {rowspan: 2,colspan: 1,title: '公告类别',},
+            {rowspan: 2,colspan: 1,title: '公告内容',},
+            {rowspan: 2,colspan: 1,title: '发布时间',},
+            {rowspan: 2,colspan: 1,title: '公告地址',},
+            {rowspan: 2,colspan: 1,title: '剑鱼标讯地址',},
+            {rowspan: 2,colspan: 1,title: '项目名称',},
+            {rowspan: 2,colspan: 1,title: '项目编号',},
+            {rowspan: 2,colspan: 1,title: '项目范围',},
+            {rowspan: 2,colspan: 1,title: '预算金额',},
+            {rowspan: 2,colspan: 1,title: '中标金额',},
+            {rowspan: 2,colspan: 1,title: '开标日期',},
+            {rowspan: 1,colspan: 3,title: '采购单位信息',},
+            {rowspan: 2,colspan: 1,title: '招标代理机构',},
+            {rowspan: 1,colspan: 3,title: '中标单位信息(来源:招标公告网站)',},
+            {rowspan: 1,colspan: 3,title: '中标单位信息(来源:国家企业公示网站)',},
+          ]
+        }
+        $("#sieve").click()
+      }
+    }
+  })
+  $('.data-modify').click(function() {
+    var $progress = document.getElementById('progress_')
+    $progress.scrollIntoView()
+  })
+  $('.data-now-export').click(function() {
+    let redirectUrl = '/front/dataExport/toCreateOrderPage/' + dataNode._data.dataInfo._id
+    window.location.href = redirectUrl + "?from=" + GetQueryString("from")+ "&source=" +GetQueryString("source")
   })
   })
 </script>
 </script>
 <script type="text/javascript">
 <script type="text/javascript">
@@ -1601,6 +1952,7 @@
         var subType = getSubType();
         var subType = getSubType();
         var buyer = getBuyers();
         var buyer = getBuyers();
         var winner = getWinners();
         var winner = getWinners();
+        var dataType = dataNode._data.dataType
         //关键词匹配方式
         //关键词匹配方式
         var select = $(".selectType .select").text();
         var select = $(".selectType .select").text();
         var selectType = '';
         var selectType = '';
@@ -1624,14 +1976,33 @@
             "maxprice": price[1],
             "maxprice": price[1],
             "subtype": subType.toString() == "全部" ? "" : subType.toString(),
             "subtype": subType.toString() == "全部" ? "" : subType.toString(),
             "buyer": buyer.toString(),
             "buyer": buyer.toString(),
-            "winner": winner.toString()
+            "winner": winner.toString(),
+            "dataType": dataType
         };
         };
         setLocalStorage(param);
         setLocalStorage(param);
         // console.log(param);
         // console.log(param);
-        $.post("/front/dataExport/sieveData", param, function (data) {
-            if (data.success) {
-                window.location.href = data.redirectUrl + "?from=" + GetQueryString("from")+ "&source=" +GetQueryString("source");
+        $.post("/front/dataExport/sieveData", param, function (res) {
+          if(res.error_code == 0) {
+            if(res.data.list.length > 0) {
+              dataNode._data.tableShow = true
+              dataNode._data.dataInfo = res.data
+              $('.dataExNum').text(res.data.total)
+              $('.dataExport-footer').show()
+              if(res.data.total > 20) {
+                $('.dataMore-out').show()
+              }
+              $(function(){
+                dataNode.renderImg()
+                var ele = document.getElementById("dataExport_table");
+                ele.scrollIntoView()
+              })
+            } else {
+              dataNode._data.noDataDialog = true
             }
             }
+          }
+          // if (data.success) {
+          //     window.location.href = data.redirectUrl + "?from=" + GetQueryString("from")+ "&source=" +GetQueryString("source");
+          // }
         }, 'json');
         }, 'json');
     });
     });