Browse Source

Merge branch 'dev2.8' of http://192.168.3.207:10080/qmx/jy into dev2.8

zhangxinlei1996 6 years ago
parent
commit
d028ffa9c3
26 changed files with 1250 additions and 413 deletions
  1. 46 1
      src/jfw/front/ws_dataExport.go
  2. 47 12
      src/jfw/modules/app/src/app/front/ws_dataExport.go
  3. BIN
      src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/1.0_pc.eot
  4. BIN
      src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/1.0_pc.ttf
  5. BIN
      src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/mapping/1.0_pc.mapping
  6. 1 0
      src/jfw/modules/app/src/web/staticres/jyapp/js/common.js
  7. 1 1
      src/jfw/modules/app/src/web/templates/common/js.html
  8. 69 85
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_appended.html
  9. 33 21
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_appendedInput.html
  10. 63 82
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_exclude.html
  11. 26 18
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_excludeInput.html
  12. 66 9
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWord.html
  13. 88 6
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWordInput.html
  14. 4 1
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html
  15. 234 28
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_previewData.html
  16. 2 1
      src/jfw/modules/app/src/web/templates/weixin/search/mainSearch.html
  17. 3 1
      src/web/staticres/wx_dataExport/css/pay_order.css
  18. 117 13
      src/web/staticres/wx_dataExport/js/keyWord.js
  19. 11 31
      src/web/templates/weixin/dataExport/dataExport_appended.html
  20. 27 14
      src/web/templates/weixin/dataExport/dataExport_appendedInput.html
  21. 11 32
      src/web/templates/weixin/dataExport/dataExport_exclude.html
  22. 22 14
      src/web/templates/weixin/dataExport/dataExport_excludeInput.html
  23. 60 6
      src/web/templates/weixin/dataExport/dataExport_keyWord.html
  24. 81 3
      src/web/templates/weixin/dataExport/dataExport_keyWordInput.html
  25. 3 2
      src/web/templates/weixin/dataExport/dataExport_payOrder.html
  26. 235 32
      src/web/templates/weixin/dataExport/dataExport_previewData.html

+ 46 - 1
src/jfw/front/ws_dataExport.go

@@ -28,13 +28,56 @@ type WsDataExport struct {
 	paySuccessPage xweb.Mapper `xweb:"/front/wx_dataExport/paySuccessPage"` //微信数据导出-支付成功页面
 	getPayParm     xweb.Mapper `xweb:"/front/wx_dataExport/getPayParm"`     //微信数据导出-获取微信支付参数
 	//微信端支付
-	toCreateOrderPage xweb.Mapper `xweb:"/weixin/pay/dataexport"` //微信数据导出-订单微信支付
+	toCreateOrderPage xweb.Mapper `xweb:"/weixin/pay/dataexport"`          //微信数据导出-订单微信支付
+	getPreview        xweb.Mapper `xweb:"/front/wx_dataExport/getPreview"` //微信数据导出-预览数据
 }
 
 func init() {
 	xweb.AddAction(&WsDataExport{})
 }
 
+//
+func (w *WsDataExport) GetPreview() error {
+	userId := util.ObjToString(w.GetSession("userId"))
+	if userId == "" {
+		return errors.New("未登录")
+	}
+	_res := make(map[string]interface{})
+	//数据预览每天限制50次
+	incurKey := fmt.Sprintf("PreviewData_%s_%d", w.GetSession("userId"), time.Now().Day())
+	times := util.IntAll(redis.Get("other", incurKey))
+	if times >= 50 {
+		_res["msg"] = "超出预览次数"
+		w.ServeJson(map[string]interface{}{
+			"res": _res,
+		})
+		return nil
+	}
+	if times == 0 {
+		redis.Put("other", incurKey, 1, 24*60*60)
+	} else {
+		redis.Incr("other", incurKey)
+	}
+	_id := util.SE.Decode4Hex(w.GetString("_id"))
+	dataType := w.GetString("dataType")
+	//从500条数据中筛选字段最全五条
+	res := public.GetDataExportSearchResultUseId(_id, dataType, -1)
+	if res == nil {
+		w.Render("/pc/dataExport_noDataErr.html", &w.T)
+		log.Println("PreviewData查询出错")
+		return nil
+	}
+	//格式化字段
+	res_screen := public.ScreenData(res, dataType, 20)
+	list := public.FormatExportData(&res_screen, config.Sysconfig["webdomain"].(string), dataType, true)
+	_res["data"] = subUrl(list, dataType)
+	_res["dataType"] = dataType
+	w.ServeJson(map[string]interface{}{
+		"res": _res,
+	})
+	return nil
+}
+
 //
 func (w *WsDataExport) GetPayParm() error {
 	defer util.Catch()
@@ -167,6 +210,8 @@ func (w *WsDataExport) ToPreview(_id string) error {
 		userid = util.ObjToString(w.GetSession("userId"))
 	}
 	w.T["id"] = _id
+	w.T["dataType"] = w.GetString("dataType")
+	w.T["ttf"] = public.GetFontVersion() + "_" + public.PC
 	return w.Render("/weixin/dataExport/dataExport_previewData.html")
 }
 

+ 47 - 12
src/jfw/modules/app/src/app/front/ws_dataExport.go

@@ -27,13 +27,57 @@ type WsDataExport struct {
 	sendMailVerify    xweb.Mapper `xweb:"/jyapp/front/dataExport/sendMailVerify"`    //发送邮箱验证码
 	checkMailVerify   xweb.Mapper `xweb:"/jyapp/front/dataExport/checkMailVerify"`   //验证邮箱验证码
 	checkPhoneVerify  xweb.Mapper `xweb:"/jyapp/front/dataExport/checkPhoneVerify"`  //验证手机号
-	previewData       xweb.Mapper `xweb:"/jyapp/front/dataExport/previewData/(.*)"`  //app数据导出-数据预览
+	previewData       xweb.Mapper `xweb:"/jyapp/front/dataExport/previewData/(.*)"`  //app数据导出-数据预览页面
+	getPreview        xweb.Mapper `xweb:"/jyapp/front/dataExport/getPreview"`        //app数据导出-预览数据
 }
 
 func init() {
 	xweb.AddAction(&WsDataExport{})
 }
 
+//
+func (w *WsDataExport) GetPreview() error {
+	userId := util.ObjToString(w.GetSession("userId"))
+	if userId == "" {
+		return errors.New("未登录")
+	}
+	_res := make(map[string]interface{})
+	//数据预览每天限制50次
+	incurKey := fmt.Sprintf("PreviewData_%s_%d", w.GetSession("userId"), time.Now().Day())
+	times := util.IntAll(redis.Get("other", incurKey))
+	log.Println("times:", times)
+	if times >= 50 {
+		_res["msg"] = "超出预览次数"
+		w.ServeJson(map[string]interface{}{
+			"res": _res,
+		})
+		return nil
+	}
+	if times == 0 {
+		redis.Put("other", incurKey, 1, 24*60*60)
+	} else {
+		redis.Incr("other", incurKey)
+	}
+	_id := util.SE.Decode4Hex(w.GetString("_id"))
+	dataType := w.GetString("dataType")
+	//从500条数据中筛选字段最全五条
+	res := public.GetDataExportSearchResultUseId(_id, dataType, -1)
+	if res == nil {
+		w.Render("/pc/dataExport_noDataErr.html", &w.T)
+		log.Println("PreviewData查询出错")
+		return nil
+	}
+	//格式化字段
+	res_screen := public.ScreenData(res, dataType, 20)
+	list := public.FormatExportData(&res_screen, config.Sysconfig["webdomain"].(string), dataType, true)
+	_res["data"] = subUrl(list, dataType)
+	_res["dataType"] = dataType
+	w.ServeJson(map[string]interface{}{
+		"res": _res,
+	})
+	return nil
+}
+
 //发送邮件
 func (w *WsDataExport) SendMailVerify() {
 	email := w.GetString("email")
@@ -139,18 +183,9 @@ func (w *WsDataExport) PreviewData(_id string) error {
 	if userId == "" {
 		return errors.New("未登录")
 	}
-	//数据预览每天限制50次
-	incurKey := fmt.Sprintf("PreviewData_%s_%d", w.GetSession("userId"), time.Now().Day())
-	times := util.IntAll(redis.Get("other", incurKey))
-	if times >= 50 {
-		return errors.New("超出预览次数")
-	}
-	if times == 0 {
-		redis.Put("other", incurKey, 1, 24*60*60)
-	} else {
-		redis.Incr("other", incurKey)
-	}
 	w.T["id"] = _id
+	w.T["dataType"] = w.GetString("dataType")
+	w.T["ttf"] = public.GetFontVersion() + "_" + public.PC
 	w.Render("/dataExport/dataExport_previewData.html", &w.T)
 	return nil
 }

BIN
src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/1.0_pc.eot


BIN
src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/1.0_pc.ttf


BIN
src/jfw/modules/app/src/web/staticres/jyapp/fonts/ttf/mapping/1.0_pc.mapping


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

@@ -31,6 +31,7 @@ $(function(){
 		$target.trigger("tap",e);
     });
 	$(".app-layout-header .app-back").unbind("tap").on("tap",function(){
+		$(".app-layout-header .app-back").unbind("tap");
 		if(typeof(clickBack)=="function"){
 			clickBack();
 		}else{

+ 1 - 1
src/jfw/modules/app/src/web/templates/common/js.html

@@ -1,2 +1,2 @@
 <script src="/jyapp/js/rem.js?v={{Msg "seo" "version"}}" type="text/javascript" charset="utf-8"></script>
-<script src="/jyapp/js/common.js?v={{Msg "seo" "version"}}"></script>
+<script src="/jyapp/js/common.js?v={{Msg "seo" "version"}}1"></script>

+ 69 - 85
src/jfw/modules/app/src/web/templates/dataExport/dataExport_appended.html

@@ -128,33 +128,6 @@
             tokens = token;
         }else{
             tokens = token.split("_")[0];
-            window.onload = function(){
-                backListen();
-            };
-            // 监听浏览器回退事件
-            function backListen () {
-                if (window.history && window.history.pushState) {
-                    $(window).on('popstate', function () { // 点击后退会触发popstate事件
-                        var hashLocation = location.hash; // 获取点击后的页面的hash值
-                        var hashSplit = hashLocation.split("#!/"); // 将哈希值装进数组(这里可以在控制台打印看效果)
-                        var hashName = hashSplit[1]; // 取数组的第一个
-
-                        // 点击后的页面哈希值与上一个页面不同,借助这个区别可以判断是否离开了页面,从而做一些操作
-                        if (hashName !== '') {
-                            var hash = window.location.hash;
-                            if (hash === '') { // 如果当前页面没有哈希值
-
-                                sessionStorage.removeItem("flag"); // 这里我做了清除sessionStorage的操作
-
-                                // 强行回退一步,就不用多点一次了😎
-                                history.go(-1); // 直接跳过没有哈希值的页面,就不会出现要点两次才能回到真正的上一页了
-                            }
-                        }
-                    });
-                    // 将含有哈希值的页面,强行插入浏览器历史记录中,此时相当于该页面有两个url在历史记录中,一个是有hash的,一个是没有hash的。
-                    window.history.pushState('forward', null, '#');
-                }
-            }
         }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
@@ -170,25 +143,27 @@
                         for(var y in appendedArr){
                             shtml +=
                                 `<li>
-                                        <div class="one">
-                                            <div>
-                                                <span>
-                                                    <p class="key">${ appendedArr[y] }</p>
-                                                </span>
-                                            </div>
-                                            <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                        </div>
-                                        <div class="modify">
-                                            <span class="ios-user-select" contentEditable="true">${ appendedArr[y] }</span>
-                                            <button class="deleteKey">删除</button>
-                                            <button class="ascertainKey">确定</button>
+                                    <div class="one">
+                                        <div>
+                                            <span>
+                                                <p class="key">${ appendedArr[y] }</p>
+                                            </span>
                                         </div>
-                                    </li>`
+                                        <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                                    </div>
+                                    <div class="modify">
+                                        <span class="ios-user-select" contentEditable="true">${ appendedArr[y] }</span>
+                                        <button class="deleteKey">删除</button>
+                                        <button class="ascertainKey">确定</button>
+                                    </div>
+                                </li>`
                         }
                     }
                 }
             }
             $('.showKeyWord > ul').prepend(shtml);
+            $(".enter.addKeyWord").hide();
+            $(".showKeyWord").show();
         }else{
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
                 var keyWord = localStorage.keyWord;
@@ -203,20 +178,20 @@
                             for(var m in appendeds){
                                 html +=
                                     `<li>
-                                <div class="one">
-                                    <div>
-                                        <span>
-                                            <p class="key">${ appendeds[m] }</p>
-                                        </span>
-                                    </div>
-                                    <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                </div>
-                                <div class="modify">
-                                    <span contentEditable="true">${ appendeds[m] }</span>
-                                    <button class="deleteKey">删除</button>
-                                    <button class="ascertainKey">确定</button>
+                            <div class="one">
+                                <div>
+                                    <span>
+                                        <p class="key">${ appendeds[m] }</p>
+                                    </span>
                                 </div>
-                            </li>`
+                                <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                            </div>
+                            <div class="modify">
+                                <span contentEditable="true">${ appendeds[m] }</span>
+                                <button class="deleteKey">删除</button>
+                                <button class="ascertainKey">确定</button>
+                            </div>
+                        </li>`
                             }
                         }
                     }
@@ -251,8 +226,12 @@
             // 添加按钮
             $(".addKeyWord i").on('click',function(){
                 var keyWord = tokens;
-                sessionStorage.removeItem("keyWord");
-                window.location.href="/jyapp/front/dataExport/appendedInput?keyWord="+keyWord;
+                // sessionStorage.removeItem("keyWord");
+                if(token.indexOf("_in")===-1){
+                    window.location.href="/front/wx_dataExport/appendedInput?keyWord="+keyWord;
+                }else{
+                    window.location.href="/front/wx_dataExport/appendedInput?keyWord="+keyWord+"_in";
+                }
             });
 
             // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
@@ -280,7 +259,7 @@
             });
 
             // 添加 按钮的点击事件
-            $('.addkeyWord .btn .save').on('click', function(){
+            $('.addkeyWord .btn button').on('click', function(){
                 var appended = $('.addkeyWord input.enterOne').val();
                 if(appendedArr===undefined){
                     appendedArr = [];
@@ -308,22 +287,22 @@
                     }
                 }
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 var html = `<li>
-                                    <div class="one">
-                                        <div>
-                                            <span>
-                                                <p class="key">${ appended }</p>
-                                            </span>
-                                        </div>
-                                        <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                    </div>
-                                    <div class="modify">
-                                        <span contentEditable="true">${ appended }</span>
-                                        <button class="deleteKey">删除</button>
-                                        <button class="ascertainKey">确定</button>
+                                <div class="one">
+                                    <div>
+                                        <span>
+                                            <p class="key">${ appended }</p>
+                                        </span>
                                     </div>
-                                </li>`;
+                                    <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                                </div>
+                                <div class="modify">
+                                    <span contentEditable="true">${ appended }</span>
+                                    <button class="deleteKey">删除</button>
+                                    <button class="ascertainKey">确定</button>
+                                </div>
+                            </li>`;
                 $('.showKeyWord > ul').prepend(html);
 
                 // 隐藏
@@ -335,6 +314,7 @@
                 buttonDOM.style.opacity = .5;
                 buttonDOM.setAttribute("disabled", true)
             });
+
             // 编辑
             $(".showKeyWord").on('click', '.editKeyWord',function(e){
                 $('.modify span').each(function(item){
@@ -344,6 +324,8 @@
                 // console.log($(this).parent().siblings().find('span').text())
                 $(this).parent().hide();
                 $(this).parent().siblings().css('display','block')
+                //
+                $(".addKeyWord").hide();
             });
 
             // 编辑 删除
@@ -356,9 +338,10 @@
                     }
                 }
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
-                hasWords()
+                $(".addKeyWord").show();
+                hasWords();
                 // console.log('删除附加词:',$(this).parent().find('span').text())
             });
             // 编辑 确定
@@ -375,14 +358,13 @@
                         }
                     });
                     return
-                }else if(appended.length >= 20){
-                    var s = $(this).siblings('span').text().slice(0,19);
-                    $(this).siblings('span').text(s);
-
+                }else if($(this).parent().find("span").text().length >= 20){
+                    var s = $(this).parent().find("span").text().slice(0,19);
+                    $(this).parent().find("span").text(s);
                     weui.toast('附加词不能超过20字', {
                         duration: 2000,
                         className: 'text-overflow100',
-                        callback: function(){ console.log('close') }
+                        callback: function(){}
                     });
                     return
                 }else{
@@ -397,10 +379,12 @@
                         }
                     }
                     sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                    localStorage.keyWord = JSON.stringify(keyWordArr);
+                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(appended);
                     $(this).parent().hide().siblings().show()
                 }
+                //
+                $(".addKeyWord").show();
             });
 
             //去空格方法
@@ -412,11 +396,11 @@
             $('.modify span').keydown(function(){
                 var olength = $(this).text().replace(/\s+/g,'').length;
                 // console.log(olength)
-                if(olength >= 100){
+                if(olength >= 20){
                     $('.fontLength').show();
-                    var s = $(this).text().slice(0,100);
+                    var s = $(this).text().slice(0,19);
                     $(this).text(s);
-                    weui.toast('附加词不能超过100字', {
+                    weui.toast('附加词不能超过20字', {
                         duration: 2000,
                         className: 'text-overflow100',
                         callback: function(){ console.log('close') }
@@ -427,9 +411,6 @@
             $('.addkeyWord .btn .close').on('click', function () {
                 window.history.back();
             });
-            $(".app-back").on("click", function () {
-                history.back();
-            });
             function keepLastIndex(obj) {
                 if (window.getSelection) {//ie11 10 9 ff safari
                     obj.focus(); //解决ff不获取焦点无法定位问题
@@ -444,7 +425,10 @@
                     range.select();
                 }
             }
-        })
+        });
+        $(".app-back").on("click", function () {
+            history.back();
+        });
 
     </script>
 </body>

+ 33 - 21
src/jfw/modules/app/src/web/templates/dataExport/dataExport_appendedInput.html

@@ -102,6 +102,12 @@
         var appendedArr = [];
         var url = location.href;
         var token = decodeURI(url.match(/=.*/)).replace("=", "");
+        var tokens = "";
+        if(token.indexOf("_in")===-1){
+            tokens = token;
+        }else{
+            tokens = token.split("_")[0];
+        }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
@@ -119,7 +125,7 @@
             for(var i in keyWordArr) {
                 var keyWords = keyWordArr[i].keyWord;
                 var appendeds = keyWordArr[i].appended;
-                if (keyWords === token) {
+                if (keyWords === tokens) {
                     appendedArr = appendeds;
                 }
             }
@@ -136,11 +142,11 @@
 
             // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
             $('.addkeyWord input.enterOne').on('input', function() {
-                if ($(this).val().length >= 100) {
-                    var s = $(this).val().slice(0,99);
+                if ($(this).val().length >= 20) {
+                    var s = $(this).val().slice(0,19);
                     $(this).val(s);
 
-                    weui.toast('附加词不能超过100字', {
+                    weui.toast('附加词不能超过20字', {
                         duration: 2000,
                         className: 'text-overflow100',
                         callback: function(){ console.log('close') }
@@ -176,28 +182,34 @@
                 }
                 appendedArr.push(appended);
                 for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === token){
+                    if(keyWordArr[i].keyWord === tokens){
                         keyWordArr[i].appended = appendedArr
                     }
                 }
                 if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
                     for(var m in keyWordsArr){
-                        if(keyWordsArr[m].keyWord === token){
+                        if(keyWordsArr[m].keyWord === tokens){
                             keyWordsArr[m].appended = appendedArr
                         }
                     }
-                    keyWordArr.push(keyWordsArr[0]);
-                    for (var x = 0; x < keyWordArr.length; x++) {
-                        for (var j =x+1; j <keyWordArr.length; ) {
-                            if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
-                                keyWordArr.splice(j, 1);
-                            }
-                            else j++;
-                        }
-                    }
+                    // alert(JSON.stringify(keyWordsArr));
+                    // alert(JSON.stringify(keyWordsArr.pop()));
+                    // alert(JSON.stringify(keyWordArr));
+                    // keyWordArr.push(keyWordsArr.pop());
+                    // alert(JSON.stringify(keyWordArr));
+                    // for (var x = 0; x < keyWordArr.length; x++) {
+                    //     for (var j =x+1; j <keyWordArr.length; ) {
+                    //         if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
+                    //             keyWordArr.splice(j, 1);
+                    //         }
+                    //         else j++;
+                    //     }
+                    // }
+                }
+                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                if(token.indexOf("_in")===-1){
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
                 window.history.back();
             });
 
@@ -225,10 +237,10 @@
             $('.addkeyWord .btn .close').on('click', function () {
                 window.history.back();
             });
-            $(".app-back").on("click", function () {
-                history.back();
-            });
-        })
+        });
+        $(".app-back").on("click", function () {
+            history.back();
+        });
 
     </script>
 <!--百度统计end-->

+ 63 - 82
src/jfw/modules/app/src/web/templates/dataExport/dataExport_exclude.html

@@ -128,33 +128,6 @@
             tokens = token;
         }else{
             tokens = token.split("_")[0];
-            window.onload = function(){
-                backListen();
-            };
-            // 监听浏览器回退事件
-            function backListen () {
-                if (window.history && window.history.pushState) {
-                    $(window).on('popstate', function () { // 点击后退会触发popstate事件
-                        var hashLocation = location.hash; // 获取点击后的页面的hash值
-                        var hashSplit = hashLocation.split("#!/"); // 将哈希值装进数组(这里可以在控制台打印看效果)
-                        var hashName = hashSplit[1]; // 取数组的第一个
-
-                        // 点击后的页面哈希值与上一个页面不同,借助这个区别可以判断是否离开了页面,从而做一些操作
-                        if (hashName !== '') {
-                            var hash = window.location.hash;
-                            if (hash === '') { // 如果当前页面没有哈希值
-
-                                sessionStorage.removeItem("flag"); // 这里我做了清除sessionStorage的操作
-
-                                // 强行回退一步,就不用多点一次了😎
-                                history.go(-1); // 直接跳过没有哈希值的页面,就不会出现要点两次才能回到真正的上一页了
-                            }
-                        }
-                    });
-                    // 将含有哈希值的页面,强行插入浏览器历史记录中,此时相当于该页面有两个url在历史记录中,一个是有hash的,一个是没有hash的。
-                    window.history.pushState('forward', null, '#');
-                }
-            }
         }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
@@ -170,25 +143,27 @@
                         for(var y in excludeArr){
                             shtml +=
                                 `<li>
-                                    <div class="one">
-                                        <div>
-                                            <span>
-                                                <p class="key">${ excludeArr[y] }</p>
-                                            </span>
-                                        </div>
-                                        <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                    </div>
-                                    <div class="modify">
-                                        <span class="ios-user-select" contentEditable="true">${ excludeArr[y] }</spanclass>
-                                        <button class="deleteKey">删除</button>
-                                        <button class="ascertainKey">确定</button>
+                                <div class="one">
+                                    <div>
+                                        <span>
+                                            <p class="key">${ excludeArr[y] }</p>
+                                        </span>
                                     </div>
-                                </li>`
+                                    <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                                </div>
+                                <div class="modify">
+                                    <span class="ios-user-select" contentEditable="true">${ excludeArr[y] }</span>
+                                    <button class="deleteKey">删除</button>
+                                    <button class="ascertainKey">确定</button>
+                                </div>
+                            </li>`
                         }
                     }
                 }
             }
             $('.showKeyWord > ul').prepend(shtml);
+            $(".enter.addKeyWord").hide();
+            $(".showKeyWord").show();
         }else{
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
                 var keyWord = localStorage.keyWord;
@@ -203,20 +178,20 @@
                             for(var m in excludes){
                                 html +=
                                     `<li>
-                                    <div class="one">
-                                        <div>
-                                            <span>
-                                                <p class="key">${ excludes[m] }</p>
-                                            </span>
-                                        </div>
-                                        <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                    </div>
-                                    <div class="modify">
-                                        <span contentEditable="true">${ excludes[m] }</span>
-                                        <button class="deleteKey">删除</button>
-                                        <button class="ascertainKey">确定</button>
+                                <div class="one">
+                                    <div>
+                                        <span>
+                                            <p class="key">${ excludes[m] }</p>
+                                        </span>
                                     </div>
-                                </li>`
+                                    <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                                </div>
+                                <div class="modify">
+                                    <span contentEditable="true">${ excludes[m] }</span>
+                                    <button class="deleteKey">删除</button>
+                                    <button class="ascertainKey">确定</button>
+                                </div>
+                            </li>`
                             }
                         }
                     }
@@ -251,8 +226,12 @@
             // 添加按钮
             $(".addKeyWord i").on('click',function(){
                 var keyWord = tokens;
-                sessionStorage.removeItem("keyWord");
-                window.location.href="/jyapp/front/dataExport/excludeInput?keyWord="+keyWord;
+                // sessionStorage.removeItem("keyWord");
+                if(token.indexOf("_in")===-1){
+                    window.location.href="/front/wx_dataExport/excludeInput?keyWord="+keyWord;
+                }else{
+                    window.location.href="/front/wx_dataExport/excludeInput?keyWord="+keyWord+"_in";
+                }
             });
 
             // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
@@ -280,7 +259,7 @@
             });
 
             // 添加 按钮的点击事件
-            $('.addkeyWord .btn .save').on('click', function(){
+            $('.addkeyWord .btn button').on('click', function(){
                 var exclude = $('.addkeyWord input.enterOne').val();
                 if(excludeArr===undefined){
                     excludeArr = [];
@@ -307,23 +286,23 @@
                         }
                     }
                 }
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 var html = `<li>
-                                        <div class="one">
-                                            <div>
-                                                <span>
-                                                    <p class="key">${ exclude }</p>
-                                                </span>
-                                            </div>
-                                            <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
-                                        </div>
-                                        <div class="modify">
-                                            <span contentEditable="true">${ exclude }</span>
-                                            <button class="deleteKey">删除</button>
-                                            <button class="ascertainKey">确定</button>
+                                    <div class="one">
+                                        <div>
+                                            <span>
+                                                <p class="key">${ exclude }</p>
+                                            </span>
                                         </div>
-                                    </li>`;
+                                        <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                                    </div>
+                                    <div class="modify">
+                                        <span contentEditable="true">${ exclude }</span>
+                                        <button class="deleteKey">删除</button>
+                                        <button class="ascertainKey">确定</button>
+                                    </div>
+                                </li>`;
                 $('.showKeyWord > ul').prepend(html);
 
                 // 隐藏
@@ -341,10 +320,11 @@
                 $('.modify span').each(function(item){
                     $('.modify span')[0].contentEditable = true
                 });
-                keepLastIndex(e.target);
+                keepLastIndex(e.target)
                 // console.log($(this).parent().siblings().find('span').text())
                 $(this).parent().hide();
-                $(this).parent().siblings().css('display','block')
+                $(this).parent().siblings().css('display','block');
+                $(".addKeyWord").hide();
             });
 
             // 编辑 删除
@@ -356,9 +336,10 @@
                         keyWordArr[i].exclude = excludeArr
                     }
                 }
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
+                $(".addKeyWord").show();
                 hasWords()
                 // console.log('删除附加词:',$(this).parent().find('span').text())
             })
@@ -396,12 +377,12 @@
                             keyWordArr[m].exclude = excludeArr
                         }
                     }
-                    localStorage.keyWord = JSON.stringify(keyWordArr);
+                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     sessionStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(exclude);
                     $(this).parent().hide().siblings().show()
                 }
-
+                $(".addKeyWord").show();
             });
 
             //去空格方法
@@ -413,11 +394,11 @@
             $('.modify span').keydown(function(){
                 var olength = $(this).text().replace(/\s+/g,'').length;
                 // console.log(olength)
-                if(olength >= 100){
+                if(olength >= 20){
                     $('.fontLength').show();
-                    var s = $(this).text().slice(0,100);
+                    var s = $(this).text().slice(0,19);
                     $(this).text(s);
-                    weui.toast('附加词不能超过100字', {
+                    weui.toast('排除词不能超过20字', {
                         duration: 2000,
                         className: 'text-overflow100',
                         callback: function(){ console.log('close') }
@@ -426,10 +407,7 @@
             });
 
             $('.addkeyWord .btn .close').on('click', function () {
-                history.back();
-            });
-            $(".app-back").on("click", function () {
-                history.back();
+                window.history.back();
             });
             function keepLastIndex(obj) {
                 if (window.getSelection) {//ie11 10 9 ff safari
@@ -446,6 +424,9 @@
                 }
             }
         })
+        $(".app-back").on("click", function () {
+            history.back();
+        });
 
     </script>
 <!--百度统计end-->

+ 26 - 18
src/jfw/modules/app/src/web/templates/dataExport/dataExport_excludeInput.html

@@ -114,6 +114,12 @@
         var excludeArr = [];
         var url = location.href;
         var token = decodeURI(url.match(/=.*/)).replace("=", "");
+        var tokens = "";
+        if(token.indexOf("_in")===-1){
+            tokens = token;
+        }else{
+            tokens = token.split("_")[0];
+        }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
@@ -131,7 +137,7 @@
             for(var i in keyWordArr){
                 var keyWords = keyWordArr[i].keyWord;
                 var excludes = keyWordArr[i].exclude;
-                if(keyWords === token){
+                if(keyWords === tokens){
                     excludeArr = excludes;
                 }
             }
@@ -171,7 +177,7 @@
             });
 
             // 添加 按钮的点击事件
-            $('.addkeyWord .btn .save').on('click', function(){
+            $('.addkeyWord .btn button').on('click', function(){
                 var exclude = $('.addkeyWord input.enterOne').val();
                 if(excludeArr===undefined){
                     excludeArr = [];
@@ -188,28 +194,30 @@
                 }
                 excludeArr.push(exclude);
                 for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === token){
+                    if(keyWordArr[i].keyWord === tokens){
                         keyWordArr[i].exclude = excludeArr
                     }
                 }
                 if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
                     for(var m in keyWordsArr){
-                        if(keyWordsArr[m].keyWord === token){
+                        if(keyWordsArr[m].keyWord === tokens){
                             keyWordsArr[m].exclude = excludeArr
                         }
                     }
-                    keyWordArr.push(keyWordsArr[0]);
-                    for (var x = 0; x < keyWordArr.length; x++) {
-                        for (var j =x+1; j <keyWordArr.length; ) {
-                            if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
-                                keyWordArr.splice(j, 1);
-                            }
-                            else j++;
-                        }
-                    }
+                    // keyWordArr.push(keyWordsArr[0]);
+                    // for (var x = 0; x < keyWordArr.length; x++) {
+                    //     for (var j =x+1; j <keyWordArr.length; ) {
+                    //         if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
+                    //             keyWordArr.splice(j, 1);
+                    //         }
+                    //         else j++;
+                    //     }
+                    // }
+                }
+                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                if(token.indexOf("_in")===-1){
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
                 window.history.back();
             });
 
@@ -237,10 +245,10 @@
             $('.addkeyWord .btn .close').on('click', function () {
                 window.history.back();
             });
-            $(".app-back").on("click", function () {
-                history.back();
-            });
         })
+        $(".app-back").on("click", function () {
+            history.back();
+        });
 
     </script>
 <!--百度统计end-->

+ 66 - 9
src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWord.html

@@ -250,6 +250,42 @@
             }
             $('.showKeyWord > ul').prepend(keyWordHtml);
             //
+
+        }
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var turn = $('.addkeyWord input.enterOne').val();
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var a in keys){
+                if (keys[a].keyWord === turn){
+                    $(".btnChoose").show();
+                    //数量
+                    var str = "";
+                    var strs = "";
+                    if(keys[a].appended !== undefined){
+                        var appended = keys[a].appended.length;
+                        if(appended < 1){
+                            str =  "添加 附加词";
+                        }else{
+                            str = "编辑 附加词 ("+appended+")";
+                        }
+                    }else{
+                        str =  "添加 附加词";
+                    }
+                    $(".addAdjunctWord").text(str);
+                    if(keys[a].exclude !== undefined){
+                        var exclude =keys[a].exclude.length;
+                        if(exclude < 1){
+                            strs = "添加 排除词";
+                        }else{
+                            strs = "编辑 排除词 ("+exclude+")";
+                        }
+                    }else{
+                        strs = "添加 排除词";
+                    }
+                    $(".addExclusion").text(strs);
+                }
+            }
         }
         //
         if($(".enterOne").val()!==""){
@@ -262,36 +298,54 @@
             var keyWord = $(this).parent().prev().val();
             var buttonDOM = $('.enter.addkeyWord .btnChoose .appended');
             buttonDOM.prop("disabled", true);
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for(var i in keys){
+                    if(keys[i].keyWord===keyWord){
+                        window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
+                        return
+                    }
+                }
+            }
+            //
             var obj = [{"keyWord":keyWord}];
             sessionStorage.keyWord = JSON.stringify(obj);
-            window.location.href = "/jyapp/front/dataExport/appended?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
         });
         $(".exclude").on('click', function () {
             var keyWord = $(this).parent().prev().val();
             var buttonDOM = $('.enter.addkeyWord .btnChoose .exclude');
             buttonDOM.prop("disabled", true);
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for(var i in keys){
+                    if(keys[i].keyWord===keyWord){
+                        window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
+                        return
+                    }
+                }
+            }
+            //
             var obj = [{"keyWord":keyWord}];
             sessionStorage.keyWord = JSON.stringify(obj);
-            window.location.href = "/jyapp/front/dataExport/exclude?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
         });
         //
         $(".showKeyWord").on('click', '.addAdjunctWord',function(e){
             var keyWord = $(this).parent().prev().find('.key').text();
             sessionStorage.removeItem("keyWord");
-            window.location.href = "/jyapp/front/dataExport/appended?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
         });
         $(".showKeyWord").on('click', '.addExclusion',function(e){
             var keyWord = $(this).parent().prev().find('.key').text();
             sessionStorage.removeItem("keyWord");
-            window.location.href = "/jyapp/front/dataExport/exclude?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
         });
 
         $('.addkeyWord .btn .close').on('click', function () {
-            history.back();
-        });
-        //
-        $(".app-back").on("click", function () {
-            history.back();
+            window.history.back();
         });
         //
         $(".showKeyWord ul li .one").each(function () {
@@ -304,6 +358,9 @@
                 $(this).children().find("p.exclusion").parent().remove();
             }
         });
+        $(".app-back").on("click", function () {
+            history.back();
+        });
 
     </script>
 <!--百度统计end-->

+ 88 - 6
src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWordInput.html

@@ -118,17 +118,18 @@
         $(".problem").on('click', function () {
             $(".problemPop").css("display", 'flex');
         });
-
         // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
-        $('.addkeyWord input.enterOne').on('input', function() {
+        $('.addkeyWord input.enterOne').on('input', function () {
             if ($(this).val().length >= 20) {
-                var s = $(this).val().slice(0,19);
+                var s = $(this).val().slice(0, 19)
                 $(this).val(s)
 
                 weui.toast('关键词不能超过20字', {
                     duration: 2000,
                     className: 'text-overflow100',
-                    callback: function(){ console.log('close') }
+                    callback: function () {
+                        console.log('close')
+                    }
                 });
                 return
             }
@@ -153,6 +154,29 @@
         $('.addkeyWord .btn .save').on('click', function () {
             var keyWord = $('.addkeyWord input.enterOne').val();
             var Obj = {"keyWord": keyWord};
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined) {
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for (var i in keys) {
+                    if (keys[i].keyWord === keyWord) {
+                        for (var a in keyWordArr){
+                            if (keyWord === keyWordArr[a].keyWord){
+                                weui.toast('关键词重复了', {
+                                    duration: 2000,
+                                    className: 'text-overflow100',
+                                    callback: function(){}
+                                });
+                                return
+                            }
+                        }
+                        keyWordArr.push(keys[i]);
+                        localStorage.setItem("keyWord", JSON.stringify(keyWordArr));
+                        window.history.back();
+                        return
+                    }
+                }
+            }
+            //
             for (var a in keyWordArr){
                 if (keyWord === keyWordArr[a].keyWord){
                     weui.toast('关键词重复了', {
@@ -196,6 +220,42 @@
         })
     });
 
+    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+        var turn = $('.addkeyWord input.enterOne').val();
+        var keys = JSON.parse(sessionStorage.keyWord);
+        for(var a in keys){
+            if (keys[a].keyWord === turn){
+                $(".btnChoose").show();
+                //数量
+                var str = "";
+                var strs = "";
+                if(keys[a].appended !== undefined){
+                    var appended = keys[a].appended.length;
+                    if(appended < 1){
+                        str =  "添加 附加词";
+                    }else{
+                        str = "编辑 附加词 ("+appended+")";
+                    }
+                }else{
+                    str =  "添加 附加词";
+                }
+                $(".addAdjunctWord").text(str);
+                if(keys[a].exclude !== undefined){
+                    var exclude =keys[a].exclude.length;
+                    if(exclude < 1){
+                        strs = "添加 排除词";
+                    }else{
+                        strs = "编辑 排除词 ("+exclude+")";
+                    }
+                }else{
+                    strs = "添加 排除词";
+                }
+                $(".addExclusion").text(strs);
+            }
+        }
+    }
+
+
     if($(".enterOne").val()!==""){
         $('.enter.addkeyWord .btnChoose .appended').prop("disabled", false);
         $('.enter.addkeyWord .btnChoose .exclude').prop("disabled", false);
@@ -206,17 +266,39 @@
         var keyWord = $(this).parent().prev().val();
         var buttonDOM = $('.enter.addkeyWord .btnChoose .appended');
         buttonDOM.prop("disabled", true);
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var i in keys){
+                if(keys[i].keyWord===keyWord){
+                    window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
+                    return
+                }
+            }
+        }
+        //
         var obj = [{"keyWord":keyWord}];
         sessionStorage.keyWord = JSON.stringify(obj);
-        window.location.href = "/jyapp/front/dataExport/appended?keyWord="+keyWord+"_in";
+        window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
     });
     $(".exclude").on('click', function () {
         var keyWord = $(this).parent().prev().val();
         var buttonDOM = $('.enter.addkeyWord .btnChoose .exclude');
         buttonDOM.prop("disabled", true);
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var i in keys){
+                if(keys[i].keyWord===keyWord){
+                    window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
+                    return
+                }
+            }
+        }
+        //
         var obj = [{"keyWord":keyWord}];
         sessionStorage.keyWord = JSON.stringify(obj);
-        window.location.href = "/jyapp/front/dataExport/exclude?keyWord="+keyWord+"_in";
+        window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
     });
     $(".app-back").on("click", function () {
         history.back();

+ 4 - 1
src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html

@@ -21,6 +21,9 @@
 		    left: 0px;
 		    right: 0px;
 		}
+		.weui-check__label:active {
+		    background-color: #fff;
+		}
 		</style>
 	</head>
   <body>
@@ -551,7 +554,7 @@
 				$(".dataPreview").on("tap",function(){
 					if(previewDataTime<50){
 						previewDataTime++
-						window.location.href="/jyapp/front/dataExport/previewData/"+{{.T._id}};
+						window.location.href="/jyapp/front/dataExport/previewData/"+{{.T._id}}+"?dataType="+dataType;
 					}else{
 						EasyAlert.show("预览数据次数超出今日上限!","",3000);
 					}

+ 234 - 28
src/jfw/modules/app/src/web/templates/dataExport/dataExport_previewData.html

@@ -1,27 +1,147 @@
 <html>
 	<head>
 		<meta charset="utf-8">
-		<title>预览数据</title>
-		<meta name="viewport" content="initial-scale=1, maximum-scale=1">
-		<meta name="apple-mobile-web-app-capable" content="yes">
-		<meta name="apple-mobile-web-app-status-bar-style" content="black">
+		<title>预览数据</title>		
+		<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 		<script src="{{Msg "seo" "cdn"}}/jyapp/js/rem.js"></script>
 		<link href="/jyapp/css/layout.css?v={{Msg "seo" "version"}}" rel="stylesheet">
 		<link href="/jyapp/css/font.css?v={{Msg "seo" "version"}}" rel="stylesheet">
-		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/base.css" />
 		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/iconfont/iconfont.css" />
 		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/preview_data.css">
 		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/previewData.css?v={{Msg "seo" "version"}}">
 		<script src="https://cdn.bootcss.com/js-polyfills/0.1.42/polyfill.min.js"></script>
-		<script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/html2canvas.min.js"></script>
-        <script src="{{Msg "seo" "cdn"}}/jyapp/js/jquery-3.2.1.min.js"></script>
 		<style>
-			iframe{
-				border: 0px !important;
+			@font-face {
+				font-style: normal;
+			    font-weight: normal;
+				font-family: 'MyNewFont';
+				src: url('/jyapp/fonts/ttf/{{.T.ttf}}.eot');  /* IE 9 - 11 */
+    			src: url('/jyapp/fonts/ttf/{{.T.ttf}}.eot?#iefix') format('embedded-opentype'), /* IE Fix for IE 6-8*/
+				url("/jyapp/fonts/ttf/{{.T.ttf}}.ttf") format("truetype");  /* chrome、firefox、opera、Safari, Android, iOS 4.2+ */
+			}
+			body .loading_ {
+			    height: 100%;
+			    width: 100%;
+			    position: fixed;
+			    background: #382f3d;
+			    z-index: 999999999990;
+				opacity: .7;
+				    margin-top: -55px;
+			}
+			body .loading_ > p {
+			    position: absolute;
+			    left: 0;
+			    right: 0;
+			    top: 0;
+			    bottom: 0;
+			    margin: auto;
+			    height: 60px;
+			    width: 60px;
+			    text-align: center;
+			    line-height: 60px;
+			    font-size: 0.36rem;
+			    color: rgba(44, 183, 202, 0.8);
+			}
+			body .loading_ p span {
+			    position: absolute;
+			    display: block;
+			    height: 40px;
+			    width: 40px;
+			    margin: 10px;
+			    border-radius: 50%;
+			    -webkit-box-shadow: 0 2px 3px rgba(44, 183, 202, 0.8);
+			    animation: loading_ ease 1s infinite;
+			    left: 0;
+			    top: 0;
+			}
+			@keyframes loading_ {
+			  0% {
+			    transform: rotate(0deg); }
+			  100% {
+			    transform: rotate(360deg); } 
+			}
+			.buttons-tab{
+				position: fixed;
+			    top: 0px;
+			    left: 0px;
+			    right: 0px;
+				z-index: 9999;    
+				height: 51px;
+    			background: #fff;
+    			font-size: 16px;
+				top: 65px;
+			}
+			.d_bz{
+				margin-top:55px;
+				position:relative;
+				margin-bottom:10px;
+			}
+			.fimg{
+				margin-top:55px;
+				margin-bottom:10px;
+			}
+			ul,ol {
+			    list-style: none;
+				margin: 0px;
+    			padding: 0px;
+			}
+			.buttons-tab > ul {
+			    width: 100%;
+			    height: 1rem;
+			    line-height: 1rem;
+			    display: -webkit-box;
+			    display: -ms-flexbox;
+			    display: flex;
+			    -webkit-box-align: center;
+			    -ms-flex-align: center;
+			    align-items: center;
+			    -webkit-box-pack: justify;
+			    -ms-flex-pack: justify;
+			    justify-content: space-between;
+			    padding: 0 .6rem;
+			    background: #fff;
+			    border-bottom: 1px solid #e0e0e0;
+			    -webkit-box-sizing: border-box;
+			    box-sizing: border-box;
+			}
+			.buttons-tab > ul .active {
+			    color: #2cb7ca !important;
+			    border-bottom: 2px solid #2cb7ca  !important;
+			    -webkit-box-sizing: border-box !important;
+			    box-sizing: border-box !important;
+			}
+			.buttons-tab > ul .tab-link {
+			    display: block;
+			    -webkit-box-flex: 1;
+			    -ms-flex: 1;
+			    flex: 1;
+			    text-align: center;
+			    color: #1d1d1d;
+			    font-size: .34rem;
+			    -webkit-box-sizing: border-box;
+			    box-sizing: border-box;
+			    height: 99%;
+			}
+			.fimg {
+		    	opacity: 1 !important;
+				z-index: 9999;
+			}
+			.noData{
+				width: 200px;
+			    height: 50px;
+			    position: absolute;
+			    top: 40%;
+			    left: 50%;
+			    margin-left: -100px;
+			    font-size: 16px;
+				text-align: center;
 			}
 			.app-layout-header{
 				position:fixed;
 			}
+			.tabs{
+				margin-top: 117px;
+			}
 		</style>
 	</head>
 	<body>
@@ -29,42 +149,128 @@
 			<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
 			预览数据
 		</div>
-		<div id="preview_data" style="    margin-top: 64px;">
-			<main class="main">
-				<div class="buttons-tab">
-					<ul>
-						<li class="tab-link active">标准字段包</li>
-						<li class="tab-link ">高级字段包</li>
-					</ul>
-				</div>
-				<div class="tabs">
-					<div class="tab active">
-						<iframe id="one" width="100%" height="100%" src="/front/app_dataExport/previewData/{{.T.id}}?dataType=1"></iframe>
-					</div>
-					<div class="tab" style="display: none;">
-						<iframe id="two" width="100%" height="100%" src="/front/app_dataExport/previewData/{{.T.id}}?dataType=2"></iframe>
-					</div>
-				</div>
-			</main>
+		<div class="loading_" style="display:none;">
+			<p><span></span></p>
+		</div>
+		<div class="buttons-tab">
+			<ul>
+				<li class="tab-link active">标准字段包</li>
+				<li class="tab-link ">高级字段包</li>
+			</ul>
+		</div>
+		<div class="tabs"  style="min-width:2020px;">
+			<table class="d_bz" cellspacing="0" cellpadding="0" >
+				
+			</table>
+			<div class="sy">
+			</div>
 		</div>
+		<div class="noData" style="display:none;">今日已超出预览次数</div>
 		<script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/zepto.js"></script>
 		<script>
+			var bz = '<tr><td>序号</td><td>公告标题</td><td>公告内容</td><td>剑鱼标讯地址</td><td>省份</td><td>城市</td><td>发布时间</td><td>项目名称</td><td>采购单位</td><td>中标单位</td><td>中标价<br>(万元)</td><td>币种</td><td>公告类别</td></tr>';
+			var gj = '<tr><td>序号</td><td>公告标题</td><td>公告内容</td><td>公告地址</td><td>剑鱼标讯地址</td><td>省份</td><td>城市</td><td>发布时间</td><td>项目名称</td><td>项目编号</td><td>采购单位</td><td>采购单位<br>联系人</td><td>采购单位<br>联系电话</td><td>预算<br>(万元)</td><td>开标日期</td><td>中标单位</td><td>中标价<br>(万元)</td><td>招标机构</td><td>项目范围</td><td>币种</td><td>公告类别</td></tr>';
 			$(function() {
+				loading(true);
+				tab({{.T.dataType}});
 				$(".buttons-tab .tab-link").each(function() {
 					var index = $(this).index();
 					$(".buttons-tab .tab-link").eq(0).addClass("active");
 
 					$(this).click(function() {
+						loading(true);
+						tab(parseInt(index)+1);
 						$(this).addClass("active").siblings().removeClass("active");
-						$(".tabs>.tab").eq(index).show().siblings().hide();
 					})
-
 				})
 				//
 				$(".app-layout-header .app-back").click(function(){
 					window.history.back();
 				})
 			})
+			//
+			function tab(t){
+				$.post("/jyapp/front/dataExport/getPreview",{dataType:t,_id:{{.T.id}}},function(r){
+					console.log(r.res)
+					if(r.res.data){
+						var res = r.res.data;
+						var aHtml = bz;
+						if(t==2){
+							$(".tabs").css("min-width","2820px");
+							aHtml = gj;
+							for(var i in res){
+								aHtml+='<tr><td>'+(Number(i)+Number(1))+'</td>'
+										+'<td>'+res[i]["title"]+'</td>'
+										+'<td>'+res[i]["detail"]+'</td>'
+										+'<td>'+res[i]["href"]+'</td>'
+										+'<td>'+res[i]["url"]+'</td>'
+										+'<td>'+res[i]["area"]+'</td>'
+										+'<td>'+res[i]["city"]+'</td>'
+										+'<td>'+res[i]["publishtime"]+'</td>'
+										+'<td>'+res[i]["projectname"]+'</td>'
+										+'<td>'+res[i]["projectcode"]+'</td>'
+										+'<td>'+res[i]["buyer"]+'</td>'
+										+'<td>'+res[i]["buyerperson"]+'</td>'
+										+'<td>'+res[i]["buyertel"]+'</td>'
+										+'<td>'+res[i]["budget"]+'</td>'
+										+'<td>'+res[i]["bidopentime"]+'</td>'
+										+'<td>'+res[i]["s_winner"]+'</td>'
+										+'<td>'+res[i]["bidamount"]+'</td>'
+										+'<td>'+res[i]["agency"]+'</td>'
+										+'<td>'+res[i]["projectscope"]+'</td>'
+										+'<td>'+res[i]["currency"]+'</td>'
+										+'<td>'+res[i]["subtype"]+'</td>'
+										+'</tr>'
+							}
+						}else{
+							$(".tabs").css("min-width","2020px");
+							for(var i in res){
+								aHtml+='<tr><td>'+(Number(i)+Number(1))+'</td>'
+										+'<td>'+res[i]["title"]+'</td>'
+										+'<td>'+res[i]["detail"]+'</td>'
+										+'<td>'+res[i]["url"]+'</td>'
+										+'<td>'+res[i]["area"]+'</td>'
+										+'<td>'+res[i]["city"]+'</td>'
+										+'<td>'+res[i]["publishtime"]+'</td>'
+										+'<td>'+res[i]["projectname"]+'</td>'
+										+'<td>'+res[i]["buyer"]+'</td>'
+										+'<td>'+res[i]["s_winner"]+'</td>'
+										+'<td>'+res[i]["bidamount"]+'</td>'
+										+'<td>'+res[i]["currency"]+'</td>'
+										+'<td>'+res[i]["subtype"]+'</td>'
+										+'</tr>'
+							}
+						}
+						$(".d_bz").html(aHtml);
+						$('td').each(function(){
+						    var tt = this.innerText;
+							if(tt=="undefined"||tt=="null"){
+								$(this).html("");
+							}
+						});
+						makeP();
+					}else{
+						$(".tabs").css({"min-width":"0px","display": "none"});
+						$(".noData").show();
+						loading(false);
+					}
+				})
+			}
+			//loading...
+			function loading(flag){
+				if(flag){
+					$(".loading_").show();
+				}else{
+					$(".loading_").hide();
+				}
+			}
+			//picture
+			function makeP(){
+				var w=$("table").width();
+				var h=$("table").height();
+				$(".sy").width($("table").width()).height($("table").height());
+				loading(false);
+			}
 		</script>
 <!--百度统计end-->
 {{include "/common/baiducc.html"}}

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

@@ -817,7 +817,8 @@
 		//}
 		
 		//历史数据导出
-	    $(".content ul li a:eq(2)").unbind("tap").on("tap",function(){
+	    $(".content ul li a:eq(2)").unbind("tap").on("tap",function(event){
+			event.stopPropagation();
 			setTimeout(function(){
 				window.location.href='/jyapp/front/dataExport/toSieve';
 			},100);

+ 3 - 1
src/web/staticres/wx_dataExport/css/pay_order.css

@@ -479,7 +479,9 @@ letter-spacing: 0.02rem;
 #pay_order #codeinput #devinput{
 	right: 2.3rem !important;
 }
-
+.weui-check__label:active {
+    background-color: #fff !important;
+}
 
 body .loading_ {
     height: 100%;

+ 117 - 13
src/web/staticres/wx_dataExport/js/keyWord.js

@@ -73,39 +73,142 @@ $(function(){
     // 添加 按钮的点击事件
     $('.addkeyWord .btn .save').on('click', function(){
         var keyWord = $('.addkeyWord input.enterOne').val();
-        var Obj = {"keyWord": keyWord};
-        keyWordArr.push(Obj);
-        localStorage.setItem("keyWord", JSON.stringify(keyWordArr));
-        var html = `<li>
+        var keyWordHtml = "";
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var i in keys){
+                var append = keys[i].appended;
+                var exclude = keys[i].exclude;
+                if(keys[i].keyWord === keyWord){
+                    keyWordArr.push(keys[i]);
+                    localStorage.setItem("keyWord", JSON.stringify(keyWordArr));
+                    //
+                    if(append !== undefined && exclude === undefined){
+                        keyWordHtml += `
+                    <li>
+                        <div class="one">
+                            <div>
+                                <span>
+                                    <strong> 关键词:</strong>
+                                    <p class="key">${ keys[i].keyWord }</p>
+                                </span>
+                                <span>
+                                    <strong> 附加词:</strong>
+                                    <p class="addition">${ append }</p>
+                                </span>
+                            </div>
+                            <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                        </div>
+                        <div class="modify">
+                            <span class="ios-user-select" contentEditable="true">${ keys[i].keyWord }</span>
+                            <button class="addAdjunctWord">编辑 附加词</button>
+                            <button class="addExclusion">添加 排除词</button>
+                            <button class="deleteKey">删除</button>
+                            <button class="ascertainKey">确定</button>
+                        </div>
+                    </li>`;
+                    }else if(append === undefined && exclude !== undefined){
+                        keyWordHtml += `
+                    <li>
                         <div class="one">
                             <div>
                                 <span>
                                     <strong> 关键词:</strong>
-                                    <p class="key">${ keyWord }</p>
+                                    <p class="key">${ keys[i].keyWord }</p>
+                                </span>
+                                <span>
+                                    <strong> 排除词:</strong>
+                                    <p class="exclusion">${ exclude }</p>
                                 </span>
                             </div>
                             <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
                         </div>
                         <div class="modify">
-                            <span contentEditable="true">${ keyWord }</span>
+                            <span class="ios-user-select" contentEditable="true">${ keys[i].keyWord }</span>
                             <button class="addAdjunctWord">编辑 附加词</button>
                             <button class="addExclusion">添加 排除词</button>
                             <button class="deleteKey">删除</button>
                             <button class="ascertainKey">确定</button>
                         </div>
-                    </li>`
+                    </li>`;
+                    }else if(append !== undefined && exclude !== undefined){
+                        keyWordHtml += `
+                    <li>
+                        <div class="one">
+                            <div>
+                                <span>
+                                    <strong> 关键词:</strong>
+                                    <p class="key">${ keys[i].keyWord }</p>
+                                </span>
+                                <span>
+                                    <strong> 附加词:</strong>
+                                    <p class="addition">${ append }</p>
+                                </span>
+                                <span>
+                                    <strong> 排除词:</strong>
+                                    <p class="exclusion">${ exclude }</p>
+                                </span>
+                            </div>
+                            <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                        </div>
+                        <div class="modify">
+                            <span class="ios-user-select" contentEditable="true">${ keys[i].keyWord }</span>
+                            <button class="addAdjunctWord">编辑 附加词</button>
+                            <button class="addExclusion">添加 排除词</button>
+                            <button class="deleteKey">删除</button>
+                            <button class="ascertainKey">确定</button>
+                        </div>
+                    </li>`;
+                    }else if(append === undefined && exclude === undefined){
+                        keyWordHtml += `
+                    <li>
+                        <div class="one">
+                            <div>
+                                <span>
+                                    <strong> 关键词:</strong>
+                                    <p class="key">${ keys[i].keyWord }</p>
+                                </span>
+                            </div>
+                            <button class="editKeyWord"><i class="iconfont icon-xiugai"></i> 修改</button>
+                        </div>
+                        <div class="modify">
+                            <span class="ios-user-select" contentEditable="true">${ keys[i].keyWord }</span>
+                            <button class="addAdjunctWord">编辑 附加词</button>
+                            <button class="addExclusion">添加 排除词</button>
+                            <button class="deleteKey">删除</button>
+                            <button class="ascertainKey">确定</button>
+                        </div>
+                    </li>`;
+                    }
+                    keyWordHtml = keyWordHtml.replace(/,/g, " ");
+                    //
+                    $('.showKeyWord > ul').prepend(keyWordHtml);
+                    // 隐藏
+                    $(".enter.addkeyWord").hide();
+                    $(".showKeyWord").show();
+                    $(".addKeyWord").show();
+                    $('.enter.addkeyWord > input').val('');
+                    var buttonDOM = $('.enter.addkeyWord .btn button')[0];
+                    buttonDOM.style.opacity = .5;
+                    buttonDOM.setAttribute("disabled", true);
+                    return
+                }
+            }
+        }
+        var Obj = {"keyWord": keyWord};
+        keyWordArr.push(Obj);
+        localStorage.setItem("keyWord", JSON.stringify(keyWordArr));
         $('.showKeyWord > ul').prepend(html);
-        
         // 隐藏
         $(".enter.addkeyWord").hide();
         $(".showKeyWord").show();
         $(".addKeyWord").show();
-        $('.enter.addkeyWord > input').val('')
-        var buttonDOM = $('.enter.addkeyWord .btn button')[0]
-        buttonDOM.style.opacity = .5
-        buttonDOM.setAttribute("disabled", true)
+        $('.enter.addkeyWord > input').val('');
+        var buttonDOM = $('.enter.addkeyWord .btn button')[0];
+        buttonDOM.style.opacity = .5;
+        buttonDOM.setAttribute("disabled", true);
 
-    })
+    });
 
     // 编辑
     $(".showKeyWord").on('click', '.editKeyWord',function(e){
@@ -164,6 +267,7 @@ $(function(){
                     keyWordArr = keyWordArr.filter((e=>{return e.keyWord!==keyWord}));
                     localStorage.keyWord = JSON.stringify(keyWordArr);
                     jQueryDOM.remove();
+                    sessionStorage.removeItem("keyWord");
                     $(".addKeyWord").show();
                     hasWords()
                 }

+ 11 - 31
src/web/templates/weixin/dataExport/dataExport_appended.html

@@ -101,32 +101,6 @@
             tokens = token;
         }else{
             tokens = token.split("_")[0];
-            window.onload = function(){
-                backListen();
-            };
-            // 监听浏览器回退事件
-            function backListen () {
-                if (window.history && window.history.pushState) {
-                    $(window).on('popstate', function () { // 点击后退会触发popstate事件
-                        var hashLocation = location.hash; // 获取点击后的页面的hash值
-                        var hashSplit = hashLocation.split("#!/"); // 将哈希值装进数组(这里可以在控制台打印看效果)
-                        var hashName = hashSplit[1]; // 取数组的第一个
-
-                        // 点击后的页面哈希值与上一个页面不同,借助这个区别可以判断是否离开了页面,从而做一些操作
-                        if (hashName !== '') {
-                            var hash = window.location.hash;
-                            if (hash === '') { // 如果当前页面没有哈希值
-
-                                sessionStorage.removeItem("flag"); // 这里我做了清除sessionStorage的操作
-
-                                history.go(-1);
-                            }
-                        }
-                    });
-                    // 将含有哈希值的页面,强行插入浏览器历史记录中,此时相当于该页面有两个url在历史记录中,一个是有hash的,一个是没有hash的。
-                    window.history.pushState('forward', null, '#');
-                }
-            }
         }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
@@ -161,6 +135,8 @@
                 }
             }
             $('.showKeyWord > ul').prepend(shtml);
+            $(".enter.addKeyWord").hide();
+            $(".showKeyWord").show();
         }else{
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
                 var keyWord = localStorage.keyWord;
@@ -223,8 +199,12 @@
             // 添加按钮
             $(".addKeyWord i").on('click',function(){
                 var keyWord = tokens;
-                sessionStorage.removeItem("keyWord");
-                window.location.href="/front/wx_dataExport/appendedInput?keyWord="+keyWord;
+                // sessionStorage.removeItem("keyWord");
+                if(token.indexOf("_in")===-1){
+                    window.location.href="/front/wx_dataExport/appendedInput?keyWord="+keyWord;
+                }else{
+                    window.location.href="/front/wx_dataExport/appendedInput?keyWord="+keyWord+"_in";
+                }
             });
 
             // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
@@ -280,7 +260,7 @@
                     }
                 }
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 var html = `<li>
                                 <div class="one">
                                     <div>
@@ -331,7 +311,7 @@
                     }
                 }
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
                 $(".addKeyWord").show();
                 hasWords();
@@ -372,7 +352,7 @@
                         }
                     }
                     sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                    localStorage.keyWord = JSON.stringify(keyWordArr);
+                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(appended);
                     $(this).parent().hide().siblings().show()
                 }

+ 27 - 14
src/web/templates/weixin/dataExport/dataExport_appendedInput.html

@@ -67,11 +67,18 @@
         <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
     <script>
+        initShare({{.T.signature}},{{.T.openid}},2,"jy_wxmyorder",{{.T.nickname}},{{.T.avatar}});
         var keyWordArr = [];
         var keyWordsArr = [];
         var appendedArr = [];
         var url = location.href;
         var token = decodeURI(url.match(/=.*/)).replace("=", "");
+        var tokens = "";
+        if(token.indexOf("_in")===-1){
+            tokens = token;
+        }else{
+            tokens = token.split("_")[0];
+        }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
@@ -89,7 +96,7 @@
             for(var i in keyWordArr) {
                 var keyWords = keyWordArr[i].keyWord;
                 var appendeds = keyWordArr[i].appended;
-                if (keyWords === token) {
+                if (keyWords === tokens) {
                     appendedArr = appendeds;
                 }
             }
@@ -146,28 +153,34 @@
                 }
                 appendedArr.push(appended);
                 for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === token){
+                    if(keyWordArr[i].keyWord === tokens){
                         keyWordArr[i].appended = appendedArr
                     }
                 }
                 if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
                     for(var m in keyWordsArr){
-                        if(keyWordsArr[m].keyWord === token){
+                        if(keyWordsArr[m].keyWord === tokens){
                             keyWordsArr[m].appended = appendedArr
                         }
                     }
-                    keyWordArr.push(keyWordsArr[0]);
-                    for (var x = 0; x < keyWordArr.length; x++) {
-                        for (var j =x+1; j <keyWordArr.length; ) {
-                            if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
-                                keyWordArr.splice(j, 1);
-                            }
-                            else j++;
-                        }
-                    }
+                    // alert(JSON.stringify(keyWordsArr));
+                    // alert(JSON.stringify(keyWordsArr.pop()));
+                    // alert(JSON.stringify(keyWordArr));
+                    // keyWordArr.push(keyWordsArr.pop());
+                    // alert(JSON.stringify(keyWordArr));
+                    // for (var x = 0; x < keyWordArr.length; x++) {
+                    //     for (var j =x+1; j <keyWordArr.length; ) {
+                    //         if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
+                    //             keyWordArr.splice(j, 1);
+                    //         }
+                    //         else j++;
+                    //     }
+                    // }
+                }
+                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                if(token.indexOf("_in")===-1){
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
                 window.history.back();
             });
 

+ 11 - 32
src/web/templates/weixin/dataExport/dataExport_exclude.html

@@ -101,33 +101,6 @@
             tokens = token;
         }else{
             tokens = token.split("_")[0];
-            window.onload = function(){
-                backListen();
-            };
-        }
-        // 监听浏览器回退事件
-        function backListen () {
-            if (window.history && window.history.pushState) {
-                $(window).on('popstate', function () { // 点击后退会触发popstate事件
-                    var hashLocation = location.hash; // 获取点击后的页面的hash值
-                    var hashSplit = hashLocation.split("#!/"); // 将哈希值装进数组(这里可以在控制台打印看效果)
-                    var hashName = hashSplit[1]; // 取数组的第一个
-
-                    // 点击后的页面哈希值与上一个页面不同,借助这个区别可以判断是否离开了页面,从而做一些操作
-                    if (hashName !== '') {
-                        var hash = window.location.hash;
-                        if (hash === '') { // 如果当前页面没有哈希值
-
-                            sessionStorage.removeItem("flag"); // 这里我做了清除sessionStorage的操作
-
-                            // 强行回退一步,就不用多点一次了😎
-                            history.go(-1); // 直接跳过没有哈希值的页面,就不会出现要点两次才能回到真正的上一页了
-                        }
-                    }
-                });
-                // 将含有哈希值的页面,强行插入浏览器历史记录中,此时相当于该页面有两个url在历史记录中,一个是有hash的,一个是没有hash的。
-                window.history.pushState('forward', null, '#');
-            }
         }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
@@ -162,6 +135,8 @@
                 }
             }
             $('.showKeyWord > ul').prepend(shtml);
+            $(".enter.addKeyWord").hide();
+            $(".showKeyWord").show();
         }else{
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
                 var keyWord = localStorage.keyWord;
@@ -224,8 +199,12 @@
             // 添加按钮
             $(".addKeyWord i").on('click',function(){
                 var keyWord = tokens;
-                sessionStorage.removeItem("keyWord");
-                window.location.href="/front/wx_dataExport/excludeInput?keyWord="+keyWord;
+                // sessionStorage.removeItem("keyWord");
+                if(token.indexOf("_in")===-1){
+                    window.location.href="/front/wx_dataExport/excludeInput?keyWord="+keyWord;
+                }else{
+                    window.location.href="/front/wx_dataExport/excludeInput?keyWord="+keyWord+"_in";
+                }
             });
 
             // 添加keyWords检查输入框内是否有文字,如果有才能点击添加按钮
@@ -280,7 +259,7 @@
                         }
                     }
                 }
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 var html = `<li>
                                     <div class="one">
@@ -330,7 +309,7 @@
                         keyWordArr[i].exclude = excludeArr
                     }
                 }
-                localStorage.keyWord = JSON.stringify(keyWordArr);
+                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 sessionStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
                 $(".addKeyWord").show();
@@ -371,7 +350,7 @@
                             keyWordArr[m].exclude = excludeArr
                         }
                     }
-                    localStorage.keyWord = JSON.stringify(keyWordArr);
+                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     sessionStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(exclude);
                     $(this).parent().hide().siblings().show()

+ 22 - 14
src/web/templates/weixin/dataExport/dataExport_excludeInput.html

@@ -87,6 +87,12 @@
         var excludeArr = [];
         var url = location.href;
         var token = decodeURI(url.match(/=.*/)).replace("=", "");
+        var tokens = "";
+        if(token.indexOf("_in")===-1){
+            tokens = token;
+        }else{
+            tokens = token.split("_")[0];
+        }
         //
         if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
             if(localStorage.keyWord !== "" && localStorage.keyWord !== undefined){
@@ -104,7 +110,7 @@
             for(var i in keyWordArr){
                 var keyWords = keyWordArr[i].keyWord;
                 var excludes = keyWordArr[i].exclude;
-                if(keyWords === token){
+                if(keyWords === tokens){
                     excludeArr = excludes;
                 }
             }
@@ -161,28 +167,30 @@
                 }
                 excludeArr.push(exclude);
                 for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === token){
+                    if(keyWordArr[i].keyWord === tokens){
                         keyWordArr[i].exclude = excludeArr
                     }
                 }
                 if(sessionStorage.keyWord!==undefined && sessionStorage.keyWord!==""){
                     for(var m in keyWordsArr){
-                        if(keyWordsArr[m].keyWord === token){
+                        if(keyWordsArr[m].keyWord === tokens){
                             keyWordsArr[m].exclude = excludeArr
                         }
                     }
-                    keyWordArr.push(keyWordsArr[0]);
-                    for (var x = 0; x < keyWordArr.length; x++) {
-                        for (var j =x+1; j <keyWordArr.length; ) {
-                            if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
-                                keyWordArr.splice(j, 1);
-                            }
-                            else j++;
-                        }
-                    }
+                    // keyWordArr.push(keyWordsArr[0]);
+                    // for (var x = 0; x < keyWordArr.length; x++) {
+                    //     for (var j =x+1; j <keyWordArr.length; ) {
+                    //         if (keyWordArr[x].keyWord === keyWordArr[j].keyWord && keyWordArr[x].exclude === keyWordArr[j].exclude && keyWordArr[x].appended === keyWordArr[j].appended) {
+                    //             keyWordArr.splice(j, 1);
+                    //         }
+                    //         else j++;
+                    //     }
+                    // }
+                }
+                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                if(token.indexOf("_in")===-1){
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                localStorage.keyWord = JSON.stringify(keyWordArr);
                 window.history.back();
             });
 

+ 60 - 6
src/web/templates/weixin/dataExport/dataExport_keyWord.html

@@ -112,7 +112,7 @@
     </div>
     <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
-    <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/keyWord.js?v={{Msg "seo" "version"}}41"></script>
+    <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/keyWord.js?v={{Msg "seo" "version"}}46"></script>
     <script>
         initShare({{.T.signature}},{{.T.openid}},2,"jy_wxmyorder",{{.T.nickname}},{{.T.avatar}});
         var keyWordArr = [];
@@ -226,7 +226,41 @@
             //
 
         }
-
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var turn = $('.addkeyWord input.enterOne').val();
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var a in keys){
+                if (keys[a].keyWord === turn){
+                    $(".btnChoose").show();
+                    //数量
+                    var str = "";
+                    var strs = "";
+                    if(keys[a].appended !== undefined){
+                        var appended = keys[a].appended.length;
+                        if(appended < 1){
+                            str =  "添加 附加词";
+                        }else{
+                            str = "编辑 附加词 ("+appended+")";
+                        }
+                    }else{
+                        str =  "添加 附加词";
+                    }
+                    $(".addAdjunctWord").text(str);
+                    if(keys[a].exclude !== undefined){
+                        var exclude =keys[a].exclude.length;
+                        if(exclude < 1){
+                            strs = "添加 排除词";
+                        }else{
+                            strs = "编辑 排除词 ("+exclude+")";
+                        }
+                    }else{
+                        strs = "添加 排除词";
+                    }
+                    $(".addExclusion").text(strs);
+                }
+            }
+        }
         //
         if($(".enterOne").val()!==""){
             $('.enter.addkeyWord .btnChoose .appended').prop("disabled", false);
@@ -234,23 +268,43 @@
             $('.enter.addkeyWord .btn > button').prop("disabled", false);
             $('.enter.addkeyWord .btn > button').css("opacity", 1);
         }
-    // $(".showKeyWord").on('click', '.append',function(e){
         $(".appended").on('click', function () {
             var keyWord = $(this).parent().prev().val();
             var buttonDOM = $('.enter.addkeyWord .btnChoose .appended');
             buttonDOM.prop("disabled", true);
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for(var i in keys){
+                    if(keys[i].keyWord===keyWord){
+                        window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
+                        return
+                    }
+                }
+            }
+            //
             var obj = [{"keyWord":keyWord}];
             sessionStorage.keyWord = JSON.stringify(obj);
-            window.location.href = "/front/wx_dataExport/appendedInput?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
         });
-        // $(".showKeyWord").on('click', '.exclude',function(e){
         $(".exclude").on('click', function () {
             var keyWord = $(this).parent().prev().val();
             var buttonDOM = $('.enter.addkeyWord .btnChoose .exclude');
             buttonDOM.prop("disabled", true);
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for(var i in keys){
+                    if(keys[i].keyWord===keyWord){
+                        window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
+                        return
+                    }
+                }
+            }
+            //
             var obj = [{"keyWord":keyWord}];
             sessionStorage.keyWord = JSON.stringify(obj);
-            window.location.href = "/front/wx_dataExport/excludeInput?keyWord="+keyWord;
+            window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
         });
         //
         $(".showKeyWord").on('click', '.addAdjunctWord',function(e){

+ 81 - 3
src/web/templates/weixin/dataExport/dataExport_keyWordInput.html

@@ -128,6 +128,29 @@
         $('.addkeyWord .btn .save').on('click', function () {
             var keyWord = $('.addkeyWord input.enterOne').val();
             var Obj = {"keyWord": keyWord};
+            //
+            if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined) {
+                var keys = JSON.parse(sessionStorage.keyWord);
+                for (var i in keys) {
+                    if (keys[i].keyWord === keyWord) {
+                        for (var a in keyWordArr){
+                            if (keyWord === keyWordArr[a].keyWord){
+                                weui.toast('关键词重复了', {
+                                    duration: 2000,
+                                    className: 'text-overflow100',
+                                    callback: function(){}
+                                });
+                                return
+                            }
+                        }
+                        keyWordArr.push(keys[i]);
+                        localStorage.setItem("keyWord", JSON.stringify(keyWordArr));
+                        window.history.back();
+                        return
+                    }
+                }
+            }
+            //
             for (var a in keyWordArr){
                 if (keyWord === keyWordArr[a].keyWord){
                     weui.toast('关键词重复了', {
@@ -171,7 +194,40 @@
         })
     });
 
-
+    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+        var turn = $('.addkeyWord input.enterOne').val();
+        var keys = JSON.parse(sessionStorage.keyWord);
+        for(var a in keys){
+            if (keys[a].keyWord === turn){
+                $(".btnChoose").show();
+                //数量
+                var str = "";
+                var strs = "";
+                if(keys[a].appended !== undefined){
+                    var appended = keys[a].appended.length;
+                    if(appended < 1){
+                        str =  "添加 附加词";
+                    }else{
+                        str = "编辑 附加词 ("+appended+")";
+                    }
+                }else{
+                    str =  "添加 附加词";
+                }
+                $(".addAdjunctWord").text(str);
+                if(keys[a].exclude !== undefined){
+                    var exclude =keys[a].exclude.length;
+                    if(exclude < 1){
+                        strs = "添加 排除词";
+                    }else{
+                        strs = "编辑 排除词 ("+exclude+")";
+                    }
+                }else{
+                    strs = "添加 排除词";
+                }
+                $(".addExclusion").text(strs);
+            }
+        }
+    }
 
 
     if($(".enterOne").val()!==""){
@@ -184,17 +240,39 @@
         var keyWord = $(this).parent().prev().val();
         var buttonDOM = $('.enter.addkeyWord .btnChoose .appended');
         buttonDOM.prop("disabled", true);
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var i in keys){
+                if(keys[i].keyWord===keyWord){
+                    window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
+                    return
+                }
+            }
+        }
+        //
         var obj = [{"keyWord":keyWord}];
         sessionStorage.keyWord = JSON.stringify(obj);
-        window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord+"_in";
+        window.location.href = "/front/wx_dataExport/appended?keyWord="+keyWord;
     });
     $(".exclude").on('click', function () {
         var keyWord = $(this).parent().prev().val();
         var buttonDOM = $('.enter.addkeyWord .btnChoose .exclude');
         buttonDOM.prop("disabled", true);
+        //
+        if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+            var keys = JSON.parse(sessionStorage.keyWord);
+            for(var i in keys){
+                if(keys[i].keyWord===keyWord){
+                    window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
+                    return
+                }
+            }
+        }
+        //
         var obj = [{"keyWord":keyWord}];
         sessionStorage.keyWord = JSON.stringify(obj);
-        window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord+"_in";
+        window.location.href = "/front/wx_dataExport/exclude?keyWord="+keyWord;
     });
 
 </script>

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

@@ -10,7 +10,7 @@
         <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/weui.min.css?v={{Msg "seo" "version"}}">
         <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css?v={{Msg "seo" "version"}}" />
         <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
-        <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/pay_order.css?v={{Msg "seo" "version"}}2">
+        <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/pay_order.css?v={{Msg "seo" "version"}}21">
         <script src="{{Msg "seo" "cdn"}}/js/jquery-3.2.1.min.js"></script>
         <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/weui.min.js"></script>
 		{{include "/common/weixin.html"}}
@@ -532,7 +532,8 @@
 				$(".dataPreview").on("click",function(){
 					if(previewDataTime<50){
 						previewDataTime++
-						window.open("/front/wx_dataExport/toPreview/"+{{.T._id}});
+						var dataType = $(".choose").find("div.active").index()+1;
+						window.open("/front/wx_dataExport/toPreview/"+{{.T._id}}+"?dataType="+dataType);
 					}else{
 						EasyAlert.show("预览数据次数超出今日上限!","",3000);
 					}

+ 235 - 32
src/web/templates/weixin/dataExport/dataExport_previewData.html

@@ -2,58 +2,261 @@
 	<head>
 		<meta charset="utf-8">
 		<title>预览数据</title>
-		<meta name="viewport" content="initial-scale=1, maximum-scale=1">
-		<meta name="apple-mobile-web-app-capable" content="yes">
-		<meta name="apple-mobile-web-app-status-bar-style" content="black">
+		<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 		<script src="{{Msg "seo" "cdn"}}/js/rem.js"></script>
-		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css" />
-		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css" />
+		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css" />					<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/dataExport/css/previewData.css?v={{Msg "seo" "version"}}">
 		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/preview_data.css">
+		<script src="https://cdn.bootcss.com/js-polyfills/0.1.42/polyfill.min.js"></script>
 		<style>
-			iframe{
-				border: 0px !important;
+			@font-face {
+				font-style: normal;
+			    font-weight: normal;
+				font-family: 'MyNewFont';
+				src: url('/fonts/ttf/{{.T.ttf}}.eot');  /* IE 9 - 11 */
+    			src: url('/fonts/ttf/{{.T.ttf}}.eot?#iefix') format('embedded-opentype'), /* IE Fix for IE 6-8*/
+				url("/fonts/ttf/{{.T.ttf}}.ttf") format("truetype");  /* chrome、firefox、opera、Safari, Android, iOS 4.2+ */
+			}
+			body .loading_ {
+			    height: 100%;
+			    width: 100%;
+			    position: fixed;
+			    background: #382f3d;
+			    z-index: 999999999990;
+				opacity: .7;
+				    margin-top: -55px;
+			}
+			body .loading_ > p {
+			    position: absolute;
+			    left: 0;
+			    right: 0;
+			    top: 0;
+			    bottom: 0;
+			    margin: auto;
+			    height: 60px;
+			    width: 60px;
+			    text-align: center;
+			    line-height: 60px;
+			    font-size: 0.36rem;
+			    color: rgba(44, 183, 202, 0.8);
+			}
+			body .loading_ p span {
+			    position: absolute;
+			    display: block;
+			    height: 40px;
+			    width: 40px;
+			    margin: 10px;
+			    border-radius: 50%;
+			    -webkit-box-shadow: 0 2px 3px rgba(44, 183, 202, 0.8);
+			    animation: loading_ ease 1s infinite;
+			    left: 0;
+			    top: 0;
+			}
+			@keyframes loading_ {
+			  0% {
+			    transform: rotate(0deg); }
+			  100% {
+			    transform: rotate(360deg); } 
+			}
+			.buttons-tab{
+				position: fixed;
+			    top: 0px;
+			    left: 0px;
+			    right: 0px;
+				z-index: 9999;    
+				height: 51px;
+    			background: #fff;
+    			font-size: 16px;
+			}
+			.d_bz{
+				margin-top:55px;
+				position:relative;
+				margin-bottom:10px;
+			}
+			.fimg{
+				margin-top:55px;
+				margin-bottom:10px;
+			}
+			ul,ol {
+			    list-style: none;
+				margin: 0px;
+    			padding: 0px;
+			}
+			.buttons-tab > ul {
+			    width: 100%;
+			    height: 1rem;
+			    line-height: 1rem;
+			    display: -webkit-box;
+			    display: -ms-flexbox;
+			    display: flex;
+			    -webkit-box-align: center;
+			    -ms-flex-align: center;
+			    align-items: center;
+			    -webkit-box-pack: justify;
+			    -ms-flex-pack: justify;
+			    justify-content: space-between;
+			    padding: 0 .6rem;
+			    background: #fff;
+			    border-bottom: 1px solid #e0e0e0;
+			    -webkit-box-sizing: border-box;
+			    box-sizing: border-box;
+			}
+			.buttons-tab > ul .active {
+			    color: #2cb7ca !important;
+			    border-bottom: 2px solid #2cb7ca  !important;
+			    -webkit-box-sizing: border-box !important;
+			    box-sizing: border-box !important;
+			}
+			.buttons-tab > ul .tab-link {
+			    display: block;
+			    -webkit-box-flex: 1;
+			    -ms-flex: 1;
+			    flex: 1;
+			    text-align: center;
+			    color: #1d1d1d;
+			    font-size: .34rem;
+			    -webkit-box-sizing: border-box;
+			    box-sizing: border-box;
+			    height: 99%;
+			}
+			.fimg {
+		    	opacity: 1 !important;
+				z-index: 9999;
+			}
+			.noData{
+				width: 200px;
+			    height: 50px;
+			    position: absolute;
+			    top: 40%;
+			    left: 50%;
+			    margin-left: -100px;
+			    font-size: 16px;
+				text-align: center;
 			}
 		</style>
 	</head>
 	<body>
-		<div id="preview_data">
-			<!-- <header class="header">
-				<a href="#" class="return pull-left">
-					<i class="icon iconfont">&#xe640;</i>
-				</a>
-				<h1 class="title">预览数据</h1>
-			</header> -->
-			<main class="main">
-				<div class="buttons-tab">
-					<ul>
-						<li class="tab-link active">标准字段包</li>
-						<li class="tab-link ">高级字段包</li>
-					</ul>
-				</div>
-				<div class="tabs">
-					<div class="tab active">
-						<iframe id="one" width="100%" height="100%" src="/front/dataExport/previewData/{{.T.id}}?dataType=1"></iframe>
-					</div>
-					<div class="tab" style="display: none;">
-						<iframe id="two" width="100%" height="100%" src="/front/dataExport/previewData/{{.T.id}}?dataType=2"></iframe>
-					</div>
-				</div>
-			</main>
+		<div class="loading_" style="display:none;">
+			<p><span></span></p>
+		</div>
+		<div class="buttons-tab">
+			<ul>
+				<li class="tab-link active">标准字段包</li>
+				<li class="tab-link ">高级字段包</li>
+			</ul>
+		</div>
+		<div class="tabs"  style="min-width:2020px;">
+			<table class="d_bz" cellspacing="0" cellpadding="0" >
+				
+			</table>
+			<div class="sy">
+			</div>
 		</div>
+		<div class="noData" style="display:none;">今日已超出预览次数</div>
 		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js"></script>
 		<script>
+			var bz = '<tr><td>序号</td><td>公告标题</td><td>公告内容</td><td>剑鱼标讯地址</td><td>省份</td><td>城市</td><td>发布时间</td><td>项目名称</td><td>采购单位</td><td>中标单位</td><td>中标价<br>(万元)</td><td>币种</td><td>公告类别</td></tr>';
+			var gj = '<tr><td>序号</td><td>公告标题</td><td>公告内容</td><td>公告地址</td><td>剑鱼标讯地址</td><td>省份</td><td>城市</td><td>发布时间</td><td>项目名称</td><td>项目编号</td><td>采购单位</td><td>采购单位<br>联系人</td><td>采购单位<br>联系电话</td><td>预算<br>(万元)</td><td>开标日期</td><td>中标单位</td><td>中标价<br>(万元)</td><td>招标机构</td><td>项目范围</td><td>币种</td><td>公告类别</td></tr>';
 			$(function() {
+				loading(true);
+				tab({{.T.dataType}});
 				$(".buttons-tab .tab-link").each(function() {
 					var index = $(this).index();
 					$(".buttons-tab .tab-link").eq(0).addClass("active");
 
 					$(this).click(function() {
+						loading(true);
+						tab(parseInt(index)+1);
 						$(this).addClass("active").siblings().removeClass("active");
-						$(".tabs>.tab").eq(index).show().siblings().hide();
 					})
-
 				})
 			})
+			//
+			function tab(t){
+				$.post("/front/wx_dataExport/getPreview",{dataType:t,_id:{{.T.id}}},function(r){
+					if(r.res.data){
+						var res = r.res.data;
+						var aHtml = bz;
+						if(t==2){
+							$(".tabs").css("min-width","2820px");
+							aHtml = gj;
+							for(var i in res){
+								aHtml+='<tr><td>'+(Number(i)+Number(1))+'</td>'
+										+'<td>'+res[i]["title"]+'</td>'
+										+'<td>'+res[i]["detail"]+'</td>'
+										+'<td>'+res[i]["href"]+'</td>'
+										+'<td>'+res[i]["url"]+'</td>'
+										+'<td>'+res[i]["area"]+'</td>'
+										+'<td>'+res[i]["city"]+'</td>'
+										+'<td>'+res[i]["publishtime"]+'</td>'
+										+'<td>'+res[i]["projectname"]+'</td>'
+										+'<td>'+res[i]["projectcode"]+'</td>'
+										+'<td>'+res[i]["buyer"]+'</td>'
+										+'<td>'+res[i]["buyerperson"]+'</td>'
+										+'<td>'+res[i]["buyertel"]+'</td>'
+										+'<td>'+res[i]["budget"]+'</td>'
+										+'<td>'+res[i]["bidopentime"]+'</td>'
+										+'<td>'+res[i]["s_winner"]+'</td>'
+										+'<td>'+res[i]["bidamount"]+'</td>'
+										+'<td>'+res[i]["agency"]+'</td>'
+										+'<td>'+res[i]["projectscope"]+'</td>'
+										+'<td>'+res[i]["currency"]+'</td>'
+										+'<td>'+res[i]["subtype"]+'</td>'
+										+'</tr>'
+							}
+						}else{
+							$(".tabs").css("min-width","2020px");
+							for(var i in res){
+								aHtml+='<tr><td>'+(Number(i)+Number(1))+'</td>'
+										+'<td>'+res[i]["title"]+'</td>'
+										+'<td>'+res[i]["detail"]+'</td>'
+										+'<td>'+res[i]["url"]+'</td>'
+										+'<td>'+res[i]["area"]+'</td>'
+										+'<td>'+res[i]["city"]+'</td>'
+										+'<td>'+res[i]["publishtime"]+'</td>'
+										+'<td>'+res[i]["projectname"]+'</td>'
+										+'<td>'+res[i]["buyer"]+'</td>'
+										+'<td>'+res[i]["s_winner"]+'</td>'
+										+'<td>'+res[i]["bidamount"]+'</td>'
+										+'<td>'+res[i]["currency"]+'</td>'
+										+'<td>'+res[i]["subtype"]+'</td>'
+										+'</tr>'
+							}
+						}
+						$(".d_bz").html(aHtml);
+						$('td').each(function(){
+						    var tt = this.innerText;
+							if(tt=="undefined"||tt=="null"){
+								$(this).html("");
+							}
+						});
+						makeP();
+					}else{
+						$(".tabs").css({"min-width":"0px","display": "none"});
+						$(".noData").show();
+						loading(false);
+					}
+				})
+			}
+			//loading...
+			function loading(flag){
+				if(flag){
+					$(".loading_").show();
+				}else{
+					$(".loading_").hide();
+				}
+			}
+			//picture
+			function makeP(){
+				var w=$("table").width();
+				var h=$("table").height();
+				$(".sy").width($("table").width()).height($("table").height());
+				//html2canvas(document.querySelector(".tabs")).then(function(canvas){
+				//		var url=canvas.toDataURL('image/png');
+				//		$("body").append("<img class=\"fimg\" src=\""+url+"\">");
+				//		$("body img").width(w);
+				//});
+				loading(false);
+			}
 		</script>
 	{{include "/common/baiducc.html"}}
 	</body>