浏览代码

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

wangshan 5 年之前
父节点
当前提交
5e4c892cfe
共有 62 个文件被更改,包括 1681 次插入401 次删除
  1. 2 0
      README.md
  2. 10 9
      src/jfw/front/supsearch.go
  3. 20 18
      src/jfw/front/swordfish.go
  4. 17 1
      src/jfw/front/wxMyOrder.go
  5. 30 13
      src/jfw/modules/app/src/app/front/myorder.go
  6. 10 9
      src/jfw/modules/app/src/app/front/swordfish.go
  7. 4 1
      src/jfw/modules/app/src/web/staticres/jyapp/css/myorder/order_detail.css
  8. 6 1
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/base.css
  9. 29 9
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/industry.css
  10. 3 0
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/keyWord.css
  11. 29 19
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/messageType.css
  12. 5 0
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/order_detail.css
  13. 415 33
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/win_bid.css
  14. 10 7
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/js/additionWord.js
  15. 8 6
      src/jfw/modules/app/src/web/staticres/jyapp/dataExport/js/keyWord.js
  16. 15 3
      src/jfw/modules/app/src/web/staticres/jyapp/js/wxEntsesearch.js
  17. 二进制
      src/jfw/modules/app/src/web/staticres/jyapp/res/dataexport/20190926105536_105530500413_YUDpw.xlsx
  18. 二进制
      src/jfw/modules/app/src/web/staticres/jyapp/res/dataexport/20190927155823_155814021519_FnKsP.xlsx
  19. 7 7
      src/jfw/modules/app/src/web/templates/dataExport/dataExport.html
  20. 39 22
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_appended.html
  21. 2 2
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_appendedInput.html
  22. 1 0
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_area.html
  23. 10 6
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_buyerEdit.html
  24. 1 1
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_buyerInput.html
  25. 38 19
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_exclude.html
  26. 3 7
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_excludeInput.html
  27. 4 3
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_industry.html
  28. 4 4
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWord.html
  29. 2 2
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_keyWordInput.html
  30. 1 1
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_price.html
  31. 14 2
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_subType.html
  32. 10 0
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_toMyOrder.html
  33. 25 5
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_toOrderDetail.html
  34. 20 15
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_winnerEdit.html
  35. 1 1
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_winnerInput.html
  36. 3 2
      src/jfw/modules/app/src/web/templates/followent/add.html
  37. 14 2
      src/jfw/modules/entsesearch/src/web/templates/weixin/entseSearch.html
  38. 3 2
      src/jfw/modules/followent/src/web/templates/weixin/add.html
  39. 35 0
      src/jfw/public/public.go
  40. 14 2
      src/web/staticres/js/wxEntsesearch.js
  41. 5 0
      src/web/staticres/wx_dataExport/css/base.css
  42. 112 0
      src/web/staticres/wx_dataExport/css/base_myorder.css
  43. 28 9
      src/web/staticres/wx_dataExport/css/industry.css
  44. 29 19
      src/web/staticres/wx_dataExport/css/messageType.css
  45. 5 1
      src/web/staticres/wx_dataExport/css/order_detail.css
  46. 415 33
      src/web/staticres/wx_dataExport/css/win_bid.css
  47. 8 8
      src/web/staticres/wx_dataExport/js/additionWord.js
  48. 6 5
      src/web/staticres/wx_dataExport/js/keyWord.js
  49. 4 2
      src/web/templates/weixin/applysub/infoPage.html
  50. 37 20
      src/web/templates/weixin/dataExport/dataExport_appended.html
  51. 1 1
      src/web/templates/weixin/dataExport/dataExport_appendedInput.html
  52. 1 0
      src/web/templates/weixin/dataExport/dataExport_area.html
  53. 9 5
      src/web/templates/weixin/dataExport/dataExport_buyerEdit.html
  54. 35 18
      src/web/templates/weixin/dataExport/dataExport_exclude.html
  55. 1 1
      src/web/templates/weixin/dataExport/dataExport_excludeInput.html
  56. 10 10
      src/web/templates/weixin/dataExport/dataExport_industry.html
  57. 20 0
      src/web/templates/weixin/dataExport/dataExport_keyWordInput.html
  58. 13 1
      src/web/templates/weixin/dataExport/dataExport_subType.html
  59. 11 3
      src/web/templates/weixin/dataExport/dataExport_toMyOrder.html
  60. 38 2
      src/web/templates/weixin/dataExport/dataExport_toOrderDetail.html
  61. 25 24
      src/web/templates/weixin/dataExport/dataExport_winnerEdit.html
  62. 4 5
      src/web/templates/weixin/search/mainSearch.html

+ 2 - 0
README.md

@@ -7,3 +7,5 @@ v2.8
 1.移动端数据导出
 2.微信、app搜索结果只显示500条
 3.剑鱼所有页面(pc、微信、app端)增加百度统计代码
+4、数据导出支持标题查询   
+5、数据导出如果是全文检索,预览时优先展示标题中有关键词的数据

+ 10 - 9
src/jfw/front/supsearch.go

@@ -259,15 +259,16 @@ func (p *Pcsearch) PcSearchIndex() error {
 				public.BidListConvert(industry, secRel)
 			}
 			if list != nil {
-				for _, v := range *list {
-					for n, m := range *secRel {
-						if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
-							*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
-							break
-						}
-					}
-				}
-				*list = append(*list, *secRel...)
+				// for _, v := range *list {
+				// 	for n, m := range *secRel {
+				// 		if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
+				// 			*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
+				// 			break
+				// 		}
+				// 	}
+				// }
+				// *list = append(*list, *secRel...)
+				list = public.MapArrSortMerge(*list, *secRel, "_id", "publishtime")
 			} else {
 				list = secRel
 			}

+ 20 - 18
src/jfw/front/swordfish.go

@@ -502,15 +502,16 @@ func (m *Front) PcAjaxReq() {
 						public.BidListConvert(industry, secRel)
 					}
 					if list != nil {
-						for _, v := range *list {
-							for n, m := range *secRel {
-								if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
-									*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
-									break
-								}
-							}
-						}
-						*list = append(*list, *secRel...)
+						// for _, v := range *list {
+						// 	for n, m := range *secRel {
+						// 		if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
+						// 			*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
+						// 			break
+						// 		}
+						// 	}
+						// }
+						// *list = append(*list, *secRel...)
+						list = public.MapArrSortMerge(*list, *secRel, "_id", "publishtime")
 					} else {
 						list = secRel
 					}
@@ -883,15 +884,16 @@ func (m *Front) WxsearchlistPaging() {
 							v["_id"] = util.EncodeArticleId2ByCheck(util.ObjToString(v["_id"]))
 						}
 						if list != nil {
-							for _, v := range *list {
-								for n, m := range *secRel {
-									if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
-										*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
-										break
-									}
-								}
-							}
-							*list = append(*list, *secRel...)
+							// for _, v := range *list {
+							// 	for n, m := range *secRel {
+							// 		if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
+							// 			*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
+							// 			break
+							// 		}
+							// 	}
+							// }
+							// *list = append(*list, *secRel...)
+							list = public.MapArrSortMerge(*list, *secRel, "_id", "publishtime")
 						} else {
 							list = secRel
 						}

+ 17 - 1
src/jfw/front/wxMyOrder.go

@@ -234,6 +234,8 @@ func (w *WxMyOrder) MyOrder() error {
 			status = orderStatus_unPaid
 		} else if typ == "2" {
 			status = orderStatus_paid
+		} else if typ == "3" {
+			status = orderStatus_cancel
 		}
 		queryM["order_status"] = status
 	} else {
@@ -265,6 +267,7 @@ func (w *WxMyOrder) MyOrder() error {
 			}
 		}
 	}
+	log.Println("------", len(res), "---------", count)
 	w.ServeJson(map[string]interface{}{
 		"res":         res,
 		"count":       count,
@@ -292,6 +295,8 @@ func (w *WxMyOrder) MyOrderPaging() error {
 			status = orderStatus_unPaid
 		} else if typ == "2" {
 			status = orderStatus_paid
+		} else if typ == "3" {
+			status = orderStatus_cancel
 		}
 		queryM["order_status"] = status
 	} else {
@@ -438,6 +443,7 @@ func (w *WxMyOrder) WxToOrderDetail() error {
 	//加密
 	orderDetail["filter_id"] = util.SE.Encode2Hex(orderDetail["filter_id"].(string))
 	orderStatus := util.IntAll((orderDetail)["order_status"])
+	orderDetail["order_status"] = orderStatus
 	if orderStatus == 1 && (util.ObjToString(orderDetail["pay_way"]) == "wx_js" || util.ObjToString(orderDetail["pay_way"]) == "wx_pc") {
 		//微信订单编号
 		wxPayMap := map[string]interface{}{}
@@ -545,6 +551,7 @@ func (w *WxMyOrder) WxDeleteOrder() error {
 		nextPage := false
 		// 0全部 1未支付 2已支付
 		typ := w.GetString("type")
+		cancel := w.GetString("cancel")
 		pageNum, _ := w.GetInteger("pageNum")
 		if typ != "0" && typ != "" {
 			var status string
@@ -552,6 +559,8 @@ func (w *WxMyOrder) WxDeleteOrder() error {
 				status = orderStatus_unPaid
 			} else if typ == "2" {
 				status = orderStatus_paid
+			} else if typ == "3" {
+				status = orderStatus_cancel
 			}
 			queryM["order_status"] = status
 		} else {
@@ -586,7 +595,14 @@ func (w *WxMyOrder) WxDeleteOrder() error {
 				}
 			}
 		}
-		boo := public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -1})
+		var boo = false
+		if cancel == "cancel" {
+			//取消订单
+			boo = public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -2})
+		} else {
+			//删除订单
+			boo = public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -1})
+		}
 		w.ServeJson(map[string]interface{}{
 			"success":     boo,
 			"res":         res,

+ 30 - 13
src/jfw/modules/app/src/app/front/myorder.go

@@ -32,15 +32,14 @@ func init() {
 }
 
 var (
-	pagesize_max int = 10
-	//	haveNextPage        bool = false
-	//	res                 []map[string]interface{}
-	layout_date         = "2006.01.02"
-	orderStatus_unPaid  = "0"                //订单状态-待支付
-	orderStatus_paid    = "1"                //订单状态-已完成
-	orderStatus_deleted = "-1"               //订单状态-已删除
-	tableName_order     = "dataexport_order" //订单表
-	order_pageSize      = 10
+	pagesize_max        int = 10
+	layout_date             = "2006.01.02"
+	orderStatus_unPaid      = "0"                //订单状态-待支付
+	orderStatus_paid        = "1"                //订单状态-已完成
+	orderStatus_deleted     = "-1"               //订单状态-已删除
+	orderStatus_cancel      = "-2"               //order_status  : 0:待支付; 1:已完成;  -1:已删除; -2:已取消
+	tableName_order         = "dataexport_order" //订单表
+	order_pageSize          = 10
 )
 
 /*
@@ -149,7 +148,7 @@ func (m *MyOrder) QueryMyOrder() error {
 	} else {
 		queryM["user_id"] = userId
 	}
-	// 0全部 1未支付 2已支付
+	// order_status  : 0:待支付; 1:已完成;  -1:已删除; -2:已取消
 	typ := m.GetString("type")
 	if typ != "0" && typ != "" {
 		var status string
@@ -157,6 +156,8 @@ func (m *MyOrder) QueryMyOrder() error {
 			status = orderStatus_unPaid
 		} else if typ == "2" {
 			status = orderStatus_paid
+		} else if typ == "3" {
+			status = orderStatus_cancel
 		}
 		queryM["order_status"] = status
 	} else {
@@ -216,6 +217,8 @@ func (m *MyOrder) MyOrderPaging() error {
 			status = orderStatus_unPaid
 		} else if typ == "2" {
 			status = orderStatus_paid
+		} else if typ == "3" {
+			status = orderStatus_cancel
 		}
 		queryM["order_status"] = status
 	} else {
@@ -323,26 +326,30 @@ func (m *MyOrder) ToOrderDetail() error {
 		orderDetail["filter_id"] = util.SE.Encode2Hex(orderDetail["filter_id"].(string))
 	}
 	orderStatus := util.IntAll((orderDetail)["order_status"])
+	orderDetail["order_status"] = orderStatus
+	log.Println((orderDetail)["order_status"], "---", orderStatus, "---", orderDetail["order_status"])
 	if orderStatus == 1 {
 		orderDetail["transaction_id"] = func() string {
 			table := ""
 			// 0微信支付 1支付宝支付
 			if util.ObjToString(orderDetail["pay_way"]) == "wx_pc" || util.ObjToString(orderDetail["pay_way"]) == "wx_js" || util.ObjToString(orderDetail["pay_way"]) == "wx_app" {
 				table = "weixin_pay"
-				orderDetail["pay_way"] = 0
+				//orderDetail["pay_way"] = 0
 			} else if util.ObjToString(orderDetail["pay_way"]) == "ali_pc" || util.ObjToString(orderDetail["pay_way"]) == "ali_app" {
-				orderDetail["pay_way"] = 1
+				//orderDetail["pay_way"] = 1
 				table = "ali_pay"
 			} else {
 				return ""
 			}
 			wxPayMap := map[string]interface{}{}
 			wxPayMap["out_trade_no"] = orderDetail["out_trade_no"]
+			log.Println("-------")
 			wxpay := public.Mysql.FindOne(table, wxPayMap, "", "")
 			return util.ObjToString((*wxpay)["transaction_id"])
 		}()
 	}
 	m.T["o"] = orderDetail
+	log.Println(orderDetail)
 	error := m.Render("/dataExport/dataExport_toOrderDetail.html", &m.T)
 	log.Println(error)
 	return nil
@@ -429,12 +436,15 @@ func (m *MyOrder) DeleteOrder() error {
 		// 0全部 1未支付 2已支付
 		typ := m.GetString("type")
 		pageNum, _ := m.GetInteger("pageNum")
+		cancel := m.GetString("cancel")
 		if typ != "0" && typ != "" {
 			var status string
 			if typ == "1" {
 				status = orderStatus_unPaid
 			} else if typ == "2" {
 				status = orderStatus_paid
+			} else if typ == "3" {
+				status = orderStatus_cancel
 			}
 			queryM["order_status"] = status
 		} else {
@@ -467,7 +477,14 @@ func (m *MyOrder) DeleteOrder() error {
 				}
 			}
 		}
-		boo := public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -1})
+		//取消订单
+		var boo = false
+		if cancel == "cancel" {
+			boo = public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -2})
+		} else {
+			//删除订单
+			boo = public.Mysql.Update(tableName_order, queryMap, map[string]interface{}{"order_status": -1})
+		}
 		m.ServeJson(map[string]interface{}{
 			"success":     boo,
 			"res":         res,

+ 10 - 9
src/jfw/modules/app/src/app/front/swordfish.go

@@ -480,15 +480,16 @@ func (m *Front) WxsearchlistPaging() {
 							v["_id"] = util.EncodeArticleId2ByCheck(util.ObjToString(v["_id"]))
 						}
 						if list != nil {
-							for _, v := range *list {
-								for n, m := range *secRel {
-									if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
-										*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
-										break
-									}
-								}
-							}
-							*list = append(*list, *secRel...)
+							// for _, v := range *list {
+							// 	for n, m := range *secRel {
+							// 		if util.ObjToString(v["_id"]) == util.ObjToString(m["_id"]) {
+							// 			*secRel = append((*secRel)[0:n], (*secRel)[n+1:]...)
+							// 			break
+							// 		}
+							// 	}
+							// }
+							// *list = append(*list, *secRel...)
+							list = public.MapArrSortMerge(*list, *secRel, "_id", "publishtime")
 						} else {
 							list = secRel
 						}

+ 4 - 1
src/jfw/modules/app/src/web/staticres/jyapp/css/myorder/order_detail.css

@@ -64,7 +64,6 @@
   -webkit-box-pack: start;
   -ms-flex-pack: start;
   justify-content: flex-start;
-  line-height:0.384rem;
 }
 #order_detail .main .lists .card .card-content .item-list .item-list-parents li {
   margin-right: 0.1rem;
@@ -77,6 +76,10 @@
   border-radius: 0.06rem;
   font-size: .28rem;
   color: #2cb7ca;
+/*padding-top:0.03rem;*/
+	display: inline-block;
+	height: 1.60em;
+	    line-height: 1.6em;
 }
 #order_detail .main .lists .card .unit p {
   display: -webkit-box;

+ 6 - 1
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/base.css

@@ -150,4 +150,9 @@ body .loading_ p span {
     transform: rotate(0deg); }
   100% {
     transform: rotate(360deg); } 
-}
+}
+button{
+    -webkit-tap-highlight-color:rgba(0,0,0,0);
+    /*-webkit-user-modify:read-write-plaintext-only;*/
+}
+

+ 29 - 9
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/industry.css

@@ -1,17 +1,28 @@
 body {
   background: #fff;
   font-size: 0.3rem;
-  padding-bottom: 0.94rem;
 }
+
+body .industry {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  overflow: hidden;
+}
+
 body .industry .content {
   flex: 1;
   overflow-y: scroll;
 }
+
 body .industry .all {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .all span {
   background: #F4F4F9;
   display: inline-block;
@@ -22,11 +33,18 @@ body .industry .all span {
   line-height: .7rem;
   font-weight: bold;
 }
+
+body .industry .all span.active {
+  background: #2cb7ca;
+  color: #fff;
+}
+
 body .industry .list ul li {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .list ul li dt {
   background: #F4F4F9;
   display: block;
@@ -38,6 +56,7 @@ body .industry .list ul li dt {
   font-weight: bold;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li dd {
   background: #F4F4F9;
   display: inline-block;
@@ -49,16 +68,19 @@ body .industry .list ul li dd {
   margin-right: .05rem;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li .active {
   background: #2cb7ca;
   color: #fff;
 }
+
 body .industry .consfirm {
-  position: fixed;
-  left: 0;
-  bottom: 0;
+  /*position: fixed;*/
+  /*left: 0;*/
+  /*bottom: 0;*/
   width: 100%;
 }
+
 body .industry .consfirm button {
   width: 100%;
   height: 0.94rem;
@@ -66,14 +88,11 @@ body .industry .consfirm button {
   font-size: .36rem;
   color: #fff;
 }
+
 body .industry .resetOne {
-  position: fixed;
-  left: 0;
-  bottom: 0;
   width: 100%;
-  border-top: 1px solid #F4F4F9;
-  display: none;
 }
+
 body .industry .resetOne button {
   width: 50%;
   height: 0.94rem;
@@ -82,6 +101,7 @@ body .industry .resetOne button {
   color: #fff;
   float: left;
 }
+
 body .industry .resetOne button:first-child {
   background: #fff;
   color: #2cb7ca;

+ 3 - 0
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/keyWord.css

@@ -5,6 +5,9 @@
   padding: .2rem;
   line-height: .85rem;
 }
+.keyWord .enter{
+  overflow: hidden;
+}
 .keyWord .enter .enterOne {
   min-height: 0.94rem;
   display: block;

+ 29 - 19
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/messageType.css

@@ -1,17 +1,28 @@
 body {
   background: #fff;
   font-size: 0.3rem;
-  padding-bottom: 0.94rem;
 }
+
+body .industry {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  overflow: hidden;
+}
+
 body .industry .content {
   flex: 1;
   overflow-y: scroll;
 }
+
 body .industry .all {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .all span {
   background: #F4F4F9;
   display: inline-block;
@@ -22,11 +33,18 @@ body .industry .all span {
   line-height: .7rem;
   font-weight: bold;
 }
+
+body .industry .all span.active {
+  background: #2cb7ca;
+  color: #fff;
+}
+
 body .industry .list ul li {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .list ul li dt {
   background: #F4F4F9;
   display: block;
@@ -38,6 +56,7 @@ body .industry .list ul li dt {
   font-weight: bold;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li dd {
   background: #F4F4F9;
   display: inline-block;
@@ -49,26 +68,19 @@ body .industry .list ul li dd {
   margin-right: .05rem;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li .active {
   background: #2cb7ca;
   color: #fff;
 }
-body .industry .list ul li .question {
-  display: inline-block;
-}
-body .industry .list ul li i {
-  font-size: .52rem;
-  color: #2cb7ca;
-  margin-left: 0.2rem;
-  position: relative;
-  top: 0.08rem;
-}
+
 body .industry .consfirm {
-  position: fixed;
-  left: 0;
-  bottom: 0;
+  /*position: fixed;*/
+  /*left: 0;*/
+  /*bottom: 0;*/
   width: 100%;
 }
+
 body .industry .consfirm button {
   width: 100%;
   height: 0.94rem;
@@ -76,14 +88,11 @@ body .industry .consfirm button {
   font-size: .36rem;
   color: #fff;
 }
+
 body .industry .resetOne {
-  position: fixed;
-  left: 0;
-  bottom: 0;
   width: 100%;
-  border-top: 1px solid #F4F4F9;
-  display: none;
 }
+
 body .industry .resetOne button {
   width: 50%;
   height: 0.94rem;
@@ -92,6 +101,7 @@ body .industry .resetOne button {
   color: #fff;
   float: left;
 }
+
 body .industry .resetOne button:first-child {
   background: #fff;
   color: #2cb7ca;

+ 5 - 0
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/order_detail.css

@@ -68,6 +68,9 @@
   margin-right: 0.1rem;
   font-size: .28rem;
   color: #686868;
+  font-weight: 500;
+	display: block;
+	white-space: nowrap;
 }
 #order_detail .main .lists .card .invoicing {
   padding: 0 .12rem;
@@ -76,6 +79,8 @@
   font-size: .28rem;
   color: #2cb7ca;
 /*padding-top:0.03rem;*/
+	display: inline-block;
+	height: 1.60em;
 }
 #order_detail .main .lists .card .unit p {
   display: -webkit-box;

+ 415 - 33
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/css/win_bid.css

@@ -1,3 +1,4 @@
+@charset "UTF-8";
 .main {
   width: 100%;
   overflow: scroll;
@@ -7,34 +8,416 @@
   display: none;
 }
 
+.layout_top-bottom {
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  height: 100%;
+}
+
+.layout_top-bottom .layou_top {
+  flex: 1;
+  overflow: scroll;
+}
+
+.bottom_button {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  width: 100%;
+  height: .94rem;
+}
+
+.bottom_button .left_btn,
+.bottom_button .right_btn {
+  flex: 1;
+  height: 100%;
+  font-size: .34rem;
+}
+
+.bottom_button .left_btn {
+  color: #2cb7ca;
+  background-color: #fff;
+  border-top: 1px solid #e0e0e0;
+}
+
+.bottom_button .right_btn {
+  color: #fff;
+  background-color: #2cb7ca;
+  border-top: 1px solid #2cb7ca;
+}
+
+.bottom_button button[disabled] {
+  opacity: .5;
+}
+
+.public_btn {
+  width: 100%;
+  height: .94rem;
+  line-height: .94rem;
+  text-align: center;
+  background: #2CB7CA;
+  color: #fff;
+  border-radius: 0.06rem;
+  font-size: .34rem;
+}
+
+.tips_btn {
+  display: flex;
+  position: relative;
+  flex-direction: column;
+  align-items: center;
+  justify-content: space-between;
+}
+
+.tips_btn .tips_discount {
+  width: 100%;
+}
+
+.tips_btn .tips_discount .tips_d_money {
+  display: none;
+  position: absolute;
+  left: 50%;
+  top: -.2rem;
+  padding: 0 .4rem;
+  height: .64rem;
+  line-height: .64rem;
+  color: #2CB7CA;
+  font-size: .32rem;
+  background-color: #fff;
+  border-radius: .32rem;
+  transform: translate(-50%, -100%);
+  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
+}
+
+.tips_btn .tips_discount .tips_d_text {
+  display: none;
+  height: .72rem;
+  line-height: .72rem;
+  color: #fff;
+  font-size: .28rem;
+  text-align: center;
+  background-color: #FFB901;
+}
+
+.tips_btn .btns {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  width: 100%;
+  height: .94rem;
+  line-height: .94rem;
+  color: #fff;
+  font-size: .34rem;
+}
+
+.tips_btn .btns .save-btn,
+.tips_btn .btns .reset-btn {
+  flex: 1;
+  width: 50%;
+  text-align: center;
+  height: 100%;
+  font-size: .34rem;
+}
+
+.tips_btn .btns .reset-btn {
+  background: #fff;
+  color: #2cb7ca;
+  border-top: 1px solid #e0e0e0;
+}
+
+.tips_btn .btns .save-btn {
+  background: #2cb7ca;
+  color: #fff;
+  border-top: 1px solid #2cb7ca;
+}
+
+.tips_btn .btns button[disabled] {
+  opacity: .5;
+}
+
+.jy_icon {
+  position: relative;
+  width: 100%;
+  height: 100%;
+}
+
+.jy_icon.decrease:before,
+.jy_icon.increase:before,
+.jy_icon.increase:after {
+  position: absolute;
+  left: 50%;
+  top: 50%;
+  content: '';
+  width: 0.4rem;
+  height: 0.04rem;
+  background-color: #686868;
+  transform: translate(-50%, -50%);
+}
+
+.jy_icon.increase:after {
+  transform: translate(-50%, -50%) rotate(90deg);
+}
+
+/*禁止长按复制 加给body*/
+.no-touch {
+  -webkit-touch-callout: none;
+  -webkit-user-select: none;
+  -khtml-user-select: none;
+  -moz-user-select: none;
+  -ms-user-select: none;
+  user-select: none;
+}
+
+/* 弹性盒子布局 */
+.flex_alginC {
+  display: flex;
+  align-items: center;
+}
+
+.flex_alginC_justB {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+}
+
+.flex_alginC_justC {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+}
+
+.flex_column {
+  display: flex;
+  flex-direction: column;
+}
+
+.flex_column_alignC {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+
+/* 自定义弹窗*/
+@-webkit-keyframes c {
+  0% {
+    opacity: 0;
+  }
+  to {
+    opacity: 1;
+  }
+}
+
+@keyframes c {
+  0% {
+    opacity: 0;
+  }
+  to {
+    opacity: 1;
+  }
+}
+
+.custom-dialog .weui-animate-fade-in {
+  -webkit-animation: c ease 0s forwards;
+  animation: c ease 0s forwards;
+}
+
+@-webkit-keyframes d {
+  0% {
+    opacity: 1;
+  }
+  to {
+    opacity: 0;
+  }
+}
+
+@keyframes d {
+  0% {
+    opacity: 1;
+  }
+  to {
+    opacity: 0;
+  }
+}
+
+.custom-dialog .weui-animate-fade-out {
+  -webkit-animation: d ease 0s forwards;
+  animation: d ease 0s forwards;
+}
+
+.custom-dialog .weui-dialog__hd {
+  background: #F5F4F9;
+  padding: .17rem 0;
+  color: #000;
+  font-size: .34rem;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__bd {
+  padding: .37rem 0;
+  color: #1D1D1D;
+  font-size: .32rem;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__ft:after {
+  border: 0;
+}
+
+.custom-dialog .weui-dialog__btn:after {
+  border: 0;
+}
+
+.custom-dialog .weui-dialog__ft {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  padding-bottom: .38rem;
+  box-sizing: border-box;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__btn {
+  display: block;
+  width: 1.72rem;
+  height: .72rem;
+  line-height: .72rem;
+  color: #fff;
+  padding: 0;
+  flex: none;
+  text-align: center;
+  border-radius: 3px;
+}
+
+.custom-dialog .weui-dialog__btn_primary {
+  background-color: #2CB7CA;
+  margin-right: 1rem;
+}
+
+.custom-dialog .weui-dialog__btn_default {
+  background-color: #BFBFC3;
+}
+
+/* 自定义switch按钮 */
+.custom-switch {
+  position: relative;
+  width: 52px;
+  height: 32px;
+  border: 1px solid #dfdfdf;
+  outline: 0;
+  border-radius: 16px;
+  box-sizing: border-box;
+  background-color: #dfdfdf;
+  -webkit-transition: background-color .1s,border .1s;
+  transition: background-color .1s,border .1s;
+  -webkit-appearance: none;
+}
+
+.custom-switch:before {
+  content: " ";
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 50px;
+  height: 30px;
+  border-radius: 15px;
+  background-color: #fdfdfd;
+  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: transform 0.35s cubic-bezier(0.45, 1, 0.4, 1), -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+}
+
+.custom-switch:after {
+  content: " ";
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 30px;
+  height: 30px;
+  border-radius: 15px;
+  background-color: #fff;
+  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
+  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35), -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+}
+
+.custom-switch.checked {
+  border-color: #04be02;
+  background-color: #04be02;
+}
+
+.custom-switch.checked:before {
+  transform: scale(0);
+}
+
+.custom-switch.checked:after {
+  transform: translateX(20px);
+}
+
+.custom-toast .weui-toast {
+  font-size: .3rem;
+  padding: 0.2rem;
+  width: auto;
+  max-width: 6rem;
+  min-height: 0;
+  height: auto;
+  top: 50%;
+  left: 50%;
+  margin-left: 0;
+  margin-top: -0.47rem;
+  transform: translateX(-50%) translateY(-50%);
+}
+
+.custom-toast .weui-icon_toast {
+  display: none;
+}
+
+.custom-toast .weui-toast__content {
+  margin: 0;
+}
+
+.win_bid {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+}
+
+.win_bid .main {
+  flex: 1;
+  overflow-y: scroll;
+}
+
 .win_bid .main .query {
-  display: -webkit-box;
-  display: -ms-flexbox;
   display: flex;
-  -webkit-box-align: center;
-      -ms-flex-align: center;
-          align-items: center;
-  -webkit-box-pack: end;
-      -ms-flex-pack: end;
-          justify-content: flex-end;
+  align-items: center;
+  justify-content: flex-end;
   padding: .3rem;
   color: #2cb7ca;
   font-size: .3rem;
 }
+
 .win_bid .main .query i {
   font-size: .4rem;
   margin-left: .1rem;
 }
+
 .win_bid .main .form .form-item {
   padding: .3rem;
   margin: .2rem 0;
   background: #fff;
 }
+
 .win_bid .main .form .form-item input {
   width: 100%;
   height: 100%;
   font-size: .28rem;
 }
+
 .win_bid .main .form .btn {
   width: 100%;
   height: .94rem;
@@ -43,45 +426,38 @@
   font-size: .34rem;
   text-align: center;
 }
+
 .win_bid .main .form-edit .item-control {
-  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;
+  align-items: center;
+  justify-content: space-between;
   background: #fff;
   height: .88rem;
   line-height: .88rem;
   padding: 0 .3rem;
   margin-top: .2rem;
 }
+
 .win_bid .main .form-edit .item-control input {
   height: 100%;
-  -webkit-box-flex: 1;
-      -ms-flex: 1;
-          flex: 1;
+  flex: 1;
   background: transparent;
   font-size: .28rem;
 }
+
 .win_bid .main .form-edit .item-control .edit {
-  display: -webkit-box;
-  display: -ms-flexbox;
   display: flex;
-  -webkit-box-align: center;
-      -ms-flex-align: center;
-          align-items: center;
+  align-items: center;
   color: #2cb7ca;
   height: .4rem;
   padding: 0 .2rem;
   border-left: 1px solid #e0e0e0;
 }
+
 .win_bid .main .form-edit .item-control .edit i {
   margin-right: .1rem;
 }
+
 .win_bid .main .form-edit .item-btn {
   width: 100%;
   height: .88rem;
@@ -90,54 +466,60 @@
   margin-top: .1rem;
   display: none;
 }
+
 .win_bid .main .form-edit .item-btn .btn {
   width: 50%;
   height: 100%;
-  -webkit-box-flex: 1;
-      -ms-flex: 1;
-          flex: 1;
+  flex: 1;
   color: #fff;
   float: left;
   font-size: .3rem;
 }
+
 .win_bid .main .form-edit .item-btn .del {
   background: #fe737a;
 }
+
 .win_bid .main .form-edit .item-btn .enter {
   background: #2cb7ca;
 }
-.win_bid .main .add {
+
+.win_bid .add {
   width: 1rem;
   height: 1rem;
   display: block;
-  position: fixed;
-  bottom: .72rem;
-  left: 50%;
-  margin-left: -.5rem;
+  margin: 0 auto 0.72rem;
 }
-.win_bid .main .add img {
+
+.win_bid .add img {
   width: 100%;
   height: 100%;
 }
+
 .win_bid #tipDialog {
   text-align: left;
 }
+
 .win_bid #tipDialog .dialog-title {
   font-size: .34rem;
 }
+
 .win_bid #tipDialog .info li {
   text-align: left !important;
   font-size: .28rem;
 }
+
 .win_bid #tipDialog .info li label {
   display: block;
   font-weight: bold;
   margin: .24rem 0;
 }
+
 .win_bid #tipDialog .info li p {
   font-size: .28rem;
   line-height: 1.4;
 }
+
 .win_bid #tipDialog .weui-dialog__btn_primary {
   color: #2cb7ca;
 }

+ 10 - 7
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/js/additionWord.js

@@ -85,13 +85,14 @@ $(function(){
 
     // 编辑
     $(".showKeyWord").on('click', '.editKeyWord',function(e){
-        $('.modify span').each(function(item){
-            $('.modify span')[0].contentEditable = true
-        })
-        keepLastIndex(e.target)
-        // console.log($(this).parent().siblings().find('span').text())
-        $(this).parent().hide()
-        $(this).parent().siblings().css('display','block')
+        let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+        oSpan.focus();
+        setTimeout(() => {
+            keepLastIndex(oSpan)
+        }, 40);
+        $(this).parent().hide();
+        $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
+        $(".addKeyWord").hide();
     })
 
     // 编辑 删除
@@ -100,6 +101,7 @@ $(function(){
         buyerArr.splice($.inArray(buyer, buyerArr),1);
         localStorage.buyer = buyerArr.toString();
         $(this).parents('li').remove();
+        $(".addKeyWord").show();
         hasWords()
         // console.log('删除附加词:',$(this).parent().find('span').text())
     })
@@ -136,6 +138,7 @@ $(function(){
             $(this).parent().siblings().find('.key').text(keyWord)
             $(this).parent().hide().siblings().show()
         }
+        $(".addKeyWord").show();
     })
 
     //去空格方法

+ 8 - 6
src/jfw/modules/app/src/web/staticres/jyapp/dataExport/js/keyWord.js

@@ -231,10 +231,12 @@ $(function(){
 
     // 编辑
     $(".showKeyWord").on('click', '.editKeyWord',function(e){
-        $('.modify span').each(function(item){
-            $('.modify span')[0].contentEditable = true
-        });
-        keepLastIndex(e.target);
+        let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+        oSpan.focus()
+        setTimeout(() => {
+            keepLastIndex(oSpan)
+        }, 40)
+
         var keyWord = $(this).prev().children().find(".key").text();
         for(var i in keyWordArr){
             if(keyWordArr[i].keyWord === keyWord){
@@ -264,8 +266,8 @@ $(function(){
                 $(this).parent().next().find(".addExclusion").text(strs);
             }
         }
-        $(this).parent().hide();
-        $(this).parent().siblings().css('display','block');
+        $(this).parent().hide()
+        $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
         $(".addKeyWord").hide();
     });
 

+ 15 - 3
src/jfw/modules/app/src/web/staticres/jyapp/js/wxEntsesearch.js

@@ -612,7 +612,7 @@ var EntSearch = {
             }
             var sourceinfoid = EntSearch.operStr(list[i].sourceinfoid);
             var projectcode = EntSearch.operStr(list[i].projectcode);
-            html +="<tr onclick=\"EntSearch.toDetail('"+sourceinfoid+"','"+projectcode+"','"+projectname+"')\"><td>"+(index)+"</td><td>"+bidtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
+            html +="<tr onclick=\"EntSearch.toDetail('"+sourceinfoid+"','"+projectcode+"','"+this.html2Escape(projectname)+"')\"><td>"+(index)+"</td><td>"+bidtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
         }
         return html;
     },
@@ -653,9 +653,11 @@ var EntSearch = {
         }
     },
     //企业推荐列表
+    getRecListXHR:null,
     getRecList: function (entName_key) {
         $("#entsearchPage #recList").html("");
-        $.post("/jyapp/followent/recList",{entName:entName_key},function(r){
+        if(this.getRecListXHR) this.getRecListXHR.abort();//取消请求响应
+        this.getRecListXHR=$.post("/jyapp/followent/recList",{entName:entName_key},function(r){
             if(r){
                 if(typeof (r.recList)!="undefined"){
                     var recList = r.recList;
@@ -743,5 +745,15 @@ var EntSearch = {
 		$("#entsearchPage #ent_searchinput").blur();
         $("#entsearchPage #money_from").blur();
         $("#entsearchPage #money_to").blur();
+	},
+	html2Escape:function(sHtml) {
+	    return sHtml.replace(/[<>&"]/g, function(c) {
+	        return {
+	            '<': '&lt;',
+	            '>': '&gt;',
+	            '&': '&amp;',
+	            '"': '&quot;'
+	        }[c];
+	    });
 	}
-}
+}  

二进制
src/jfw/modules/app/src/web/staticres/jyapp/res/dataexport/20190926105536_105530500413_YUDpw.xlsx


二进制
src/jfw/modules/app/src/web/staticres/jyapp/res/dataexport/20190927155823_155814021519_FnKsP.xlsx


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

@@ -128,7 +128,7 @@
         top: 0;
         color: #444444;
     }
-    .app-layout-header>.app-back{
+    .app-layout-header>.app-back_{
         position: absolute;
         font-size: 19px;
         padding-top: 20px;
@@ -162,10 +162,10 @@
 </style>
 <body>
     <div class="app-layout-header">
-        <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
+        <span class="app-back_ jyapp-icon jyapp-icon-zuojiantou"></span>
         数据导出
     </div>
-    <div class="page" style="margin-top:60px">
+    <div class="page" style="padding-top:60px">
         <div class="progress">
         	<div class="p-item">
         		<p class="p-item-icon" style="background: #2cb7ca;">
@@ -738,10 +738,10 @@
             } else {
                 localStorage.index = -1;
                 if($("#starttime").attr("value")!=undefined){
-               		start = new Date(Date.parse($("#starttime").attr("value").replace("年","-").replace("月","-").replace("日","") + " 00:00:00")).getTime() / 1000;
+               		start = new Date(Date.parse($("#starttime").attr("value").replace("年","/").replace("月","/").replace("日","") + " 00:00:00")).getTime() / 1000;
                 }
                 if($("#endtime").attr("value")!=undefined){
-               		 end = new Date(Date.parse($("#endtime").attr("value").replace("年","-").replace("月","-").replace("日","") + " 23:59:59")).getTime() / 1000;
+                    end = new Date(Date.parse($("#endtime").attr("value").replace("年","/").replace("月","/").replace("日","") + " 23:59:59")).getTime() / 1000;
                 }
             }
             if(!start){
@@ -779,8 +779,8 @@
             return n[1] ? n : '0' + n
         }
         //
-        $(".app-back").on("tip", function () {
-            history.back();
+        $(".app-back_").on("click", function () {
+            history.go(-1);
         });
     })
 </script>

+ 39 - 22
src/jfw/modules/app/src/web/templates/dataExport/dataExport_appended.html

@@ -62,7 +62,7 @@
     <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
     附加词
 </div>
-<div class="keyWord" style="margin-top: 50px">
+<div class="keyWord" style="padding-top: 50px">
     <p class="title">示例:开发(附加词)</p>
 <!-- 添加附加词 -->
 <div class="enter addkeyWord">
@@ -197,9 +197,10 @@
                     }
                 }
                 $('.showKeyWord > ul').prepend(html);
+                $(".enter.addKeyWord").hide();
+                $(".showKeyWord").show();
             }
         }
-
         $(function(){
 
             $('.knowBtn').on('click',function(){
@@ -285,9 +286,10 @@
                             else j++;
                         }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordArr);
+                }else{
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 var html = `<li>
                                 <div class="one">
                                     <div>
@@ -317,14 +319,13 @@
 
             // 编辑
             $(".showKeyWord").on('click', '.editKeyWord',function(e){
-                $('.modify span').each(function(item){
-                    $('.modify span')[0].contentEditable = true
-                });
-                keepLastIndex(e.target);
-                // console.log($(this).parent().siblings().find('span').text())
+                let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+                oSpan.focus();
+                setTimeout(() => {
+                    keepLastIndex(oSpan)
+                }, 40);
                 $(this).parent().hide();
-                $(this).parent().siblings().css('display','block')
-                //
+                $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
                 $(".addKeyWord").hide();
             });
 
@@ -332,13 +333,21 @@
             $('.showKeyWord').on('click', '.deleteKey', function(e) {
                 var appended = $(this).parent().prev().find('.key').text();
                 appendedArr.splice($.inArray(appended, appendedArr),1);
-                for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === tokens){
-                        keyWordArr[i].appended = appendedArr
+                if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                    for(var i in keyWordsArr){
+                        if(keyWordsArr[i].keyWord === tokens){
+                            keyWordsArr[i].appended = appendedArr
+                        }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    for(var i in keyWordArr){
+                        if(keyWordArr[i].keyWord === tokens){
+                            keyWordArr[i].appended = appendedArr
+                        }
+                    }
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
                 $(".addKeyWord").show();
                 hasWords();
@@ -373,13 +382,21 @@
                             appendedArr[i] = appended;
                         }
                     }
-                    for(var m in keyWordArr){
-                        if(keyWordArr[m].keyWord === tokens){
-                            keyWordArr[m].appended = appendedArr
+                    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                        for(var i in keyWordsArr){
+                            if(keyWordsArr[i].keyWord === tokens){
+                                keyWordsArr[i].appended = appendedArr
+                            }
                         }
+                        sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                    }else{
+                        for(var i in keyWordArr){
+                            if(keyWordArr[i].keyWord === tokens){
+                                keyWordArr[i].appended = appendedArr
+                            }
+                        }
+                        localStorage.keyWord = JSON.stringify(keyWordArr);
                     }
-                    sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(appended);
                     $(this).parent().hide().siblings().show()
                 }
@@ -409,7 +426,7 @@
                     range.select();
                 }
             }
-        });
+        })
         $(".app-back").on("click", function () {
             history.back();
         });

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

@@ -52,7 +52,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         附加词
     </div>
-    <div class="keyWord" style="margin-top: 50px;">
+    <div class="keyWord" style="padding-top: 50px;">
         <p class="title">示例:开发(附加词)</p>
     <!-- 添加附加词 -->
     <div class="enter addkeyWord">
@@ -205,8 +205,8 @@
                     //         else j++;
                     //     }
                     // }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 if(token.indexOf("_in")===-1){
                     localStorage.keyWord = JSON.stringify(keyWordArr);
                 }

+ 1 - 0
src/jfw/modules/app/src/web/templates/dataExport/dataExport_area.html

@@ -416,6 +416,7 @@
 				</div>
 		<script src="/jyapp/dataExport/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
 		<script src="/jyapp/dataExport/js/mapJSON.js?v={{Msg "seo" "version"}}"></script>
+		<script src="/jyapp/dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
 		<script>
 			chinaMapJSON.forEach(function(item,index){
 				// console.log(item,index)

+ 10 - 6
src/jfw/modules/app/src/web/templates/dataExport/dataExport_buyerEdit.html

@@ -46,11 +46,15 @@
 		top: 18px;
 		color: #444444;
 	}
-	.keyWord .addKeyWord {
+	.addKeyWord i {
+		font-size: 1rem;
+		color: #2cb7ca;
+	}
+	.addKeyWord {
 		width: 100%;
 		position: fixed;
-		/*top: 100%;*/
 		text-align: center;
+		bottom: 10%;
 	}
 	.ios-user-select{
 		-webket-user-select: text;
@@ -62,7 +66,7 @@
 	<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
 	采购单位
 </div>
-<div class="keyWord" style="margin-top:70px">
+<div class="keyWord" style="padding-top:70px">
 	<div class="enter addkeyWord">
 		<input type="text" class="enterOne" placeholder="采购单位名称" />
 		<div class="btn">
@@ -78,11 +82,11 @@
 
 		</ul>
 
-		<div class="addKeyWord">
-			<i class="iconfont icon-tianjia"></i>
-		</div>
 	</div>
 </div>
+<div class="addKeyWord">
+	<i class="iconfont icon-tianjia"></i>
+</div>
 <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/zepto.js"></script>
 <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/weui.min.js"></script>
 <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/additionWord.js?v={{Msg "seo" "version"}}31"></script>

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

@@ -59,7 +59,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         采购单位
     </div>
-    <div class="keyWord" style="margin-top: 70px;">
+    <div class="keyWord" style="padding-top: 70px;">
         <div class="enter addkeyWord">
         <input type="text" class="enterOne" placeholder="采购单位名称" />
         <div class="btn">

+ 38 - 19
src/jfw/modules/app/src/web/templates/dataExport/dataExport_exclude.html

@@ -62,7 +62,7 @@
     <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
     排除词
 </div>
-<div class="keyWord" style="margin-top: 50px">
+<div class="keyWord" style="padding-top: 50px">
     <p class="title">示例:运维(排除词)</p>
 <!-- 添加附加词 -->
 <div class="enter addkeyWord">
@@ -197,6 +197,8 @@
                     }
                 }
                 $('.showKeyWord > ul').prepend(html);
+                $(".enter.addKeyWord").hide();
+                $(".showKeyWord").show();
             }
         }
 
@@ -285,9 +287,10 @@
                             else j++;
                         }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 var html = `<li>
                                     <div class="one">
                                         <div>
@@ -317,13 +320,13 @@
 
             // 编辑
             $(".showKeyWord").on('click', '.editKeyWord',function(e){
-                $('.modify span').each(function(item){
-                    $('.modify span')[0].contentEditable = true
-                });
-                keepLastIndex(e.target)
-                // console.log($(this).parent().siblings().find('span').text())
+                let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+                oSpan.focus();
+                setTimeout(() => {
+                    keepLastIndex(oSpan)
+                }, 40);
                 $(this).parent().hide();
-                $(this).parent().siblings().css('display','block');
+                $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
                 $(".addKeyWord").hide();
             });
 
@@ -331,13 +334,21 @@
             $('.showKeyWord').on('click', '.deleteKey', function(e) {
                 var exclude = $(this).parent().prev().find('.key').text();
                 excludeArr.splice($.inArray(exclude, excludeArr),1);
-                for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === tokens){
-                        keyWordArr[i].exclude = excludeArr
+                if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                    for(var i in keyWordsArr){
+                        if(keyWordsArr[i].keyWord === tokens){
+                            keyWordsArr[i].exclude = excludeArr
+                        }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    for(var i in keyWordArr){
+                        if(keyWordArr[i].keyWord === tokens){
+                            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()
@@ -372,13 +383,21 @@
                             excludeArr[i] = exclude;
                         }
                     }
-                    for(var m in keyWordArr){
-                        if(keyWordArr[m].keyWord === tokens){
-                            keyWordArr[m].exclude = excludeArr
+                    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                        for(var i in keyWordsArr){
+                            if(keyWordsArr[i].keyWord === tokens){
+                                keyWordsArr[i].exclude = excludeArr
+                            }
+                        }
+                        sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                    }else{
+                        for(var i in keyWordArr){
+                            if(keyWordArr[i].keyWord === tokens){
+                                keyWordArr[i].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()
                 }

+ 3 - 7
src/jfw/modules/app/src/web/templates/dataExport/dataExport_excludeInput.html

@@ -52,7 +52,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         排除词
     </div>
-    <div class="keyWord" style="margin-top: 50px;">
+    <div class="keyWord" style="padding-top: 50px;">
         <p class="title">示例:运维(排除词)</p>
     <!-- 添加附加词 -->
     <div class="enter addkeyWord">
@@ -71,10 +71,6 @@
 
         </div>
 
-        <div class="addKeyWord">
-        <i class="iconfont icon-tianjia"></i>
-        </div>
-
         <div class="problem">
         疑问解答 <i class="iconfont icon-wenhao"></i>
         </div>
@@ -178,7 +174,7 @@
                     weui.toast('排除词不能超过20字', {
                         duration: 2000,
                         className: 'text-overflow100',
-                        callback: function(){}
+                        callback: function(){ console.log('close') }
                     });
                     return
                 }
@@ -213,8 +209,8 @@
                     //         else j++;
                     //     }
                     // }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 if(token.indexOf("_in")===-1){
                     localStorage.keyWord = JSON.stringify(keyWordArr);
                 }

+ 4 - 3
src/jfw/modules/app/src/web/templates/dataExport/dataExport_industry.html

@@ -6,9 +6,9 @@
     <meta http-equiv="X-UA-Compatible" content="ie=edge">
     <title>行业</title>
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/rem.js?v={{Msg "seo" "version"}}"></script>
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/base.css?v={{Msg "seo" "version"}}3">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/base.css?v={{Msg "seo" "version"}}5">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/industry.css?v={{Msg "seo" "version"}}3">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/industry.css?v={{Msg "seo" "version"}}6">
     <script src="{{Msg "seo" "cdn"}}/jyapp/js/jquery.js"></script>
     <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}" />
 </head>
@@ -59,7 +59,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         行业
     </div>
-    <div class="industry" style="margin-top:65px">
+    <div class="industry" style="padding-top:65px">
         <div class="content">
             <div class="all"><span class="active">全部</span> </div>
             <div class="list">
@@ -193,6 +193,7 @@
 
     </div>
     <script src="/jyapp/dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/jyapp/dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     <script>
 
             function hasActive(){

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

@@ -9,7 +9,7 @@
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/base.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/keyWord.css?v={{Msg "seo" "version"}}16">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/keyWord.css?v={{Msg "seo" "version"}}17">
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/rem.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/jyapp/js/jquery.js"></script>
     <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}" />
@@ -71,7 +71,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         关键词
     </div>
-    <div class="keyWord" style="margin-top:53px">
+    <div class="keyWord" style="padding-top:53px">
         <p class="title">示例:软件系统(关键词);  开发(附加词);  运维(排除词)</p>
         <!-- 添加关键词 -->
         <div class="enter addkeyWord">
@@ -139,7 +139,7 @@
     </div>
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
-    <script src="/jyapp/dataExport/js/keyWord.js?v={{Msg "seo" "version"}}37"></script>
+    <script src="/jyapp/dataExport/js/keyWord.js?v={{Msg "seo" "version"}}39"></script>
     <script>
         $(window).bind("pageshow", function(event){
             if(event.originalEvent.persisted){
@@ -335,7 +335,7 @@
             //
             var obj = [{"keyWord":keyWord}];
             sessionStorage.keyWord = JSON.stringify(obj);
-            window.location.href = "jyapp/front/dataExport/exclude?keyWord="+keyWord;
+            window.location.href = "/jyapp/front/dataExport/exclude?keyWord="+keyWord;
         });
         //
         $(".showKeyWord").on('click', '.addAdjunctWord',function(e){

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

@@ -9,7 +9,7 @@
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/base.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/keyWord.css?v={{Msg "seo" "version"}}3">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/dataExport/css/keyWord.css?v={{Msg "seo" "version"}}5">
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/rem.js?v={{Msg "seo" "version"}}"></script>
     <script src="{{Msg "seo" "cdn"}}/jyapp/js/jquery.js"></script>
     <link rel="stylesheet" type="text/css" href="/jyapp/css/font.css?v={{Msg "seo" "version"}}" />
@@ -52,7 +52,7 @@
     <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
     关键词
 </div>
-<div class="keyWord" style="margin-top: 50px;">
+<div class="keyWord" style="padding-top: 50px;">
     <p class="title">示例:软件系统(关键词);  开发(附加词);  运维(排除词)</p>
     <!-- 添加关键词 -->
     <div class="enter addkeyWord">

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

@@ -51,7 +51,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         金额
     </div>
-    <div class="industry" style="margin-top:65px">
+    <div class="industry" style="padding-top:65px">
         <div class="all"><span class="active">全部</span> </div>
         
         <div class="connect">

+ 14 - 2
src/jfw/modules/app/src/web/templates/dataExport/dataExport_subType.html

@@ -107,19 +107,30 @@
             overflow: hidden;
             width: 280px;
         }
+        body .industry .list ul li i {
+            font-size: .52rem;
+            color: #2cb7ca;
+            margin-left: 0.2rem;
+            position: relative;
+            top: 0.08rem;
+        }
+        .nijian{
+            display: flex;
+            display: -webkit-flex;
+        }
     </style>
 <body>
     <div class="app-layout-header">
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
         信息类型
     </div>
-    <div class="industry" style="margin-top:60px">
+    <div class="industry" style="padding-top:60px">
         <div class="content">
             <div class="all"><span class="active">全部</span> </div>
             <div class="list">
                 <ul>
                     <li>
-                    <dl>
+                    <dl class="nijian">
                     <dt class="question" data-value="拟建">拟建项目</dt><i class="iconfont icon-wenhao q-mark"></i>
                     </dl>
                     </li>
@@ -181,6 +192,7 @@
         </div>
     </div>
     <script src="{{Msg "seo" "cdn"}}/jyapp/dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
+    <script src="/jyapp/dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
     <script>
            
             function hasActive(){

文件差异内容过多而无法显示
+ 10 - 0
src/jfw/modules/app/src/web/templates/dataExport/dataExport_toMyOrder.html


+ 25 - 5
src/jfw/modules/app/src/web/templates/dataExport/dataExport_toOrderDetail.html

@@ -247,12 +247,24 @@
                     if (keywords && keywords.length>0){
 		                for (var i=0;i<keywords.length;i++){
 		                    var keywordObj = keywords[i];
+		                    //关键词
 		                    var word = keywordObj["keyword"];
+		                    //附加词
 		                    var appended = keywordObj["appended"];
+		                    var appendedStr =""+appended;
+							var reg = RegExp(/,/);
+							if(appendedStr.match(reg)){
+								appendedStr=appendedStr.replace(/,/g," ");
+							}
+							//排除词
 		                    var exclude = keywordObj["exclude"];
+		                    var excludeStr =exclude+"";
+							if(excludeStr.match(reg)){
+								excludeStr=excludeStr.replace(/,/g," ");
+							}
 		                    keywordsHtml +="<span>" + word + "&nbsp</span>";
-		                    appendedHtml +="<span>" + appended + "&nbsp</span>";
-		                    excludeHtml +="<span>" + exclude + "&nbsp</span>";
+		                    appendedHtml +="<span>" + appendedStr + "&nbsp</span>";
+		                    excludeHtml +="<span>" + excludeStr + "&nbsp</span>";
 		                }
 		            }else{
 		            	 keywordsHtml +="<p></p>";
@@ -434,11 +446,15 @@
 					<div class="card">
 						<div class="card-header">
 							<img src="/jyapp/images/myorder/line.png" >
+							{{if ne .T.o.order_status -2}}
 							{{if .T.o.pay_time}}
 							<h3>已完成</h3>
 							{{else}}
 							<h3>待付款</h3>
 							{{end}}
+							{{else}}
+							<h3>已取消</h3>
+							{{end}}
 							<img src="/jyapp/images/myorder/line.png" >
 						</div>
 						<div class="card-content font_color">
@@ -446,11 +462,11 @@
 							<p class="text ellipsis">下单时间:{{.T.o.create_time}}</p>
 							<p class="text ellipsis">支付时间:{{.T.o.pay_time}}</p>
 							<p class="text ellipsis">产品类型:{{.T.o.product_type}}</p>
-							{{if .T.o.order_status}}
-							{{if eq .T.o.pay_way 0}}        
+							{{if ne .T.o.order_status -2}}
+							{{if eq .T.o.pay_way "wx_js"}}        
 								<p class="text ellipsis">微信支付单号:{{.T.o.transaction_id}}</p>
 					        {{end}}
-					        {{if eq .T.o.pay_way 1}}        
+					        {{if eq .T.o.pay_way "ali_app"}}        
 								<p class="text ellipsis">支付宝单号:{{.T.o.transaction_id}}</p>
 					        {{end}}
 					        {{end}}
@@ -571,11 +587,15 @@
 							</div>
 						</div>
 					</div>
+					{{if ne .T.o.order_status -2}}
 					{{if .T.o.pay_time}}
 					<div class="button align" onclick="payAgain()">再次购买</div>
 					{{else}}
 					<div class="button align" onclick="choosePayWay({{.T.o.order_money}},{{.T.o.data_spec}},{{.T.o.filter_id}},this)" >去支付</div>
 					{{end}}
+					{{else}}
+					<div class="button align" onclick="payAgain()">再次购买</div>
+					{{end}}
 				</div>
 				
 				<!-- 选择支付方式  --> 

+ 20 - 15
src/jfw/modules/app/src/web/templates/dataExport/dataExport_winnerEdit.html

@@ -46,11 +46,15 @@
 			top: 18px;
 			color: #444444;
 		}
-		.keyWord .addKeyWord {
+		.addKeyWord i {
+			font-size: 1rem;
+			color: #2cb7ca;
+		}
+		.addKeyWord {
 			width: 100%;
 			position: fixed;
-			/*top: 100%;*/
 			text-align: center;
+			bottom: 10%;
 		}
 		.ios-user-select{
 			-webket-user-select: text;
@@ -61,7 +65,7 @@
 		<span class="app-back jyapp-icon jyapp-icon-zuojiantou"></span>
 		中标单位
 	</div>
-	<div class="keyWord" style="margin-top:70px;">
+	<div class="keyWord" style="padding-top:70px;">
 			<div class="enter addkeyWord">
 			<input type="text" class="enterOne" placeholder="中标单位名称" />
 			<div class="btn">
@@ -76,14 +80,13 @@
 
 			</ul>
 
-			<div class="addKeyWord">
-			<i class="iconfont icon-tianjia"></i>
-			</div>
-
 			</div>
 
 			</div>
-			<script src="/jyapp/dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
+	<div class="addKeyWord">
+		<i class="iconfont icon-tianjia"></i>
+	</div>
+	<script src="/jyapp/dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
 	<script src="/jyapp/dataExport/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
 	<script>
 		$(window).bind("pageshow", function(event){
@@ -203,13 +206,14 @@
 
 			// 编辑
 			$(".showKeyWord").on('click', '.editKeyWord',function(e){
-				$('.modify span').each(function(item){
-					$('.modify span')[0].contentEditable = true
-				});
-				keepLastIndex(e.target)
-				// console.log($(this).parent().siblings().find('span').text())
+				let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+				oSpan.focus();
+				setTimeout(() => {
+					keepLastIndex(oSpan)
+				}, 40);
 				$(this).parent().hide();
-				$(this).parent().siblings().css('display','block')
+				$(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
+				$(".addKeyWord").hide();
 			});
 
 			// 编辑 删除
@@ -218,6 +222,7 @@
 				winnerArr.splice($.inArray(winner, winnerArr),1);
 				localStorage.winner = winnerArr.toString();
 				$(this).parents('li').remove();
+				$(".addKeyWord").show();
 				hasWords()
 				// console.log('删除附加词:',$(this).parent().find('span').text())
 			});
@@ -254,7 +259,7 @@
 					$(this).parent().siblings().find('.key').text(keyWord);
 					$(this).parent().hide().siblings().show()
 				}
-
+				$(".addKeyWord").show();
 			});
 
 			//去空格方法

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

@@ -55,7 +55,7 @@
     </style>
     <body>
 
-    <div class="keyWord" style="margin-top: 70px;">
+    <div class="keyWord" style="padding-top: 70px;">
         <div class="enter addkeyWord">
         <input type="text" class="enterOne" placeholder="中标单位名称" />
         <div class="btn">

+ 3 - 2
src/jfw/modules/app/src/web/templates/followent/add.html

@@ -99,10 +99,11 @@
             });
         });
     });
-
+  var getRecListXHR;
 	function getRecList(entName_key) {
 		$("#recList").html("");
-		$.post("/jyapp/followent/recList",{entName:entName_key},function(r){
+    if(getRecListXHR) getRecListXHR.abort();//取消请求响应
+		getRecListXHR=$.post("/jyapp/followent/recList",{entName:entName_key},function(r){
 			if(r){
 				if(typeof(r.recList)!="undefined" && r.recList != null && r.recList.length > 0){
 					var recList = r.recList;

+ 14 - 2
src/jfw/modules/entsesearch/src/web/templates/weixin/entseSearch.html

@@ -897,9 +897,11 @@
     }
 
     //企业推荐列表
+    var getRecListXHR;
     function getRecList(entName_key) {
         $("#recList").html("");
-        $.post("/jylab/entsesearch/recList",{entName:entName_key},function(r){
+        if(getRecListXHR) getRecListXHR.abort();//取消请求响应
+        getRecListXHR=$.post("/jylab/entsesearch/recList",{entName:entName_key},function(r){
             if(r){
                 if(typeof (r.recList)!="undefined"){
                     var recList = r.recList;
@@ -1065,10 +1067,20 @@
             }
             var sourceinfoid = operStr(list[i].sourceinfoid);
             var projectcode = operStr(list[i].projectcode);
-            html +="<tr onclick=\"toDetail('"+sourceinfoid+"','"+projectcode+"','"+projectname+"')\"><td>"+(index)+"</td><td>"+jgtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
+            html +="<tr onclick=\"toDetail('"+sourceinfoid+"','"+projectcode+"','"+html2Escape(projectname)+"')\"><td>"+(index)+"</td><td>"+jgtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
         }
         return html;
     }
+    function html2Escape(sHtml) {
+  	    return sHtml.replace(/[<>&"]/g, function(c) {
+  	        return {
+  	            '<': '&lt;',
+  	            '>': '&gt;',
+  	            '&': '&amp;',
+  	            '"': '&quot;'
+  	        }[c];
+  	    });
+  	}
     function hasNoData(){
         $(".nullcontent").removeClass("hidden");
         $("#wrapper tbody tr").remove();

+ 3 - 2
src/jfw/modules/followent/src/web/templates/weixin/add.html

@@ -102,10 +102,11 @@
             });
         });
     });
-
+  var getRecListXHR;
 	function getRecList(entName_key) {
 		$("#recList").html("");
-		$.post("/jylab/followent/recList",{entName:entName_key},function(r){
+    if(getRecListXHR) getRecListXHR.abort();//取消请求响应
+		getRecListXHR=$.post("/jylab/followent/recList",{entName:entName_key},function(r){
 			if(r){
 				if(typeof(r.recList)!="undefined" && r.recList != null && r.recList.length > 0){
 					var recList = r.recList;

+ 35 - 0
src/jfw/public/public.go

@@ -187,3 +187,38 @@ func DelRelRedis(userid interface{}, relationinfo interface{}) {
 		redis.Del("push", "push_"+uid+"_"+sid)
 	}
 }
+
+//合并两次检索结果(根据filed从大到小)
+//sortFiled 排序字段
+//Mergefiled 判重字段
+func MapArrSortMerge(arr1, arr2 []map[string]interface{}, mergeFiled, sortFiled string) *[]map[string]interface{} {
+	var tmp []map[string]interface{}
+	i, j := 0, 0
+	MaxLenArr1, MaxLenArr2 := len(arr1), len(arr2)
+	for i < MaxLenArr1 || j < MaxLenArr2 {
+		var mergeTmp interface{}
+		var sign map[string]interface{}
+
+		if len(tmp) > 0 {
+			mergeTmp = tmp[len(tmp)-1][mergeFiled]
+		}
+
+		if i <= MaxLenArr1-1 {
+			sign = arr1[i]
+		}
+		if j <= MaxLenArr2-1 {
+			if util.Int64All(sign[sortFiled]) > util.Int64All(arr2[j][sortFiled]) {
+				i++
+			} else {
+				sign = arr2[j]
+				j++
+			}
+		} else {
+			i++
+		}
+		if mergeTmp != sign[mergeFiled] {
+			tmp = append(tmp, sign)
+		}
+	}
+	return &tmp
+}

+ 14 - 2
src/web/staticres/js/wxEntsesearch.js

@@ -570,7 +570,7 @@ var EntSearch = {
             }
             var sourceinfoid = EntSearch.operStr(list[i].sourceinfoid);
             var projectcode = EntSearch.operStr(list[i].projectcode);
-            html +="<tr onclick=\"EntSearch.toDetail('"+sourceinfoid+"','"+projectcode+"','"+projectname+"')\"><td>"+(index)+"</td><td>"+bidtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
+            html +="<tr onclick=\"EntSearch.toDetail('"+sourceinfoid+"','"+projectcode+"','"+this.html2Escape(projectname)+"')\"><td>"+(index)+"</td><td>"+bidtime+"</td><td>"+projectname+"</td><td>"+bidamount+"</td></tr>";
         }
         return html;
     },
@@ -610,10 +610,12 @@ var EntSearch = {
             $("#entsearchPage .money-inp").removeClass("money-inp-active");
         }
     },
+    getRecListXHR:null,
     //企业推荐列表
     getRecList: function (entName_key) {
         $("#entsearchPage #recList").html("");
-        $.post("/jylab/entsesearch/recList",{entName:entName_key},function(r){
+        if(this.getRecListXHR) this.getRecListXHR.abort();//取消请求响应
+        this.getRecListXHR=$.post("/jylab/entsesearch/recList",{entName:entName_key},function(r){
             if(r){
                 if(typeof (r.recList)!="undefined"){
                     var recList = r.recList;
@@ -699,5 +701,15 @@ var EntSearch = {
 		$("#entsearchPage #ent_searchinput").blur();
         $("#entsearchPage #money_from").blur();
         $("#entsearchPage #money_to").blur();
+	},
+	html2Escape:function(sHtml) {
+	    return sHtml.replace(/[<>&"]/g, function(c) {
+	        return {
+	            '<': '&lt;',
+	            '>': '&gt;',
+	            '&': '&amp;',
+	            '"': '&quot;'
+	        }[c];
+	    });
 	}
 }

+ 5 - 0
src/web/staticres/wx_dataExport/css/base.css

@@ -109,4 +109,9 @@ em,i{
 	max-width: 260px;
 	text-align: center;
 	display: none;
+}
+
+button{
+    -webkit-tap-highlight-color:rgba(0,0,0,0);
+    /*-webkit-user-modify:read-write-plaintext-only;*/
 }

+ 112 - 0
src/web/staticres/wx_dataExport/css/base_myorder.css

@@ -0,0 +1,112 @@
+    * {
+        -webkit-box-sizing: border-box;
+        box-sizing: border-box;
+        -webkit-overflow-scrolling: touch;
+    }
+    body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, hr, button, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, sumary {
+        margin: 0;
+        padding: 0;
+    }
+    html,body {
+        /* max-width: 750px; */
+    /*    -webkit-text-size-adjust: 100%;*/
+        margin: 0 auto;
+    /*    height: 100%;*/
+    /*    overflow-x: hidden;*/
+    /*    -webkit-box-sizing: border-box;
+        box-sizing: border-box;
+        font-size: .24rem;
+        background:rgba(245,244,249,1);;
+        color: #3d3d3d;*/
+    /*    font-family:  "Microsoft YaHei","Helvetica Neue", "Roboto", "Segoe UI", "PingFang SC", "Hiragino Sans GB", sans-serif;*/
+    }
+
+    ul,ol {
+        list-style: none;
+    }
+    /*清除输入框内阴影*/
+    input,textarea,select,button{
+        outline: none;
+        border: 0;
+        -webkit-appearance: none;
+        appearance:none;
+    }
+
+    img {
+        border: 0;
+        vertical-align: middle;
+        max-width: 100%;
+        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
+    }
+
+    a {
+        text-decoration: none;
+        color: #3d3d3d;
+    	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
+    	-webkit-user-select: none;
+    	-moz-user-focus: none;
+    	-moz-user-select: none;
+    }
+    /*禁用长按页面时的弹出菜单(iOS下有效) ,img和a标签都要加*/
+    img,a{
+        -webkit-touch-callout:none;
+    }
+    em,i{
+    	font-style: normal;
+    }
+    /*兼容ios调取h5页面的头部*/
+    .ios-head {
+        display: none;
+        position: fixed;
+        top: 0;
+        padding-top: 15px;
+        background: #18974b;
+        width: 100%;
+        z-index: 100;
+    }
+    /*base*/
+    .clearfix{
+        zoom: 1;
+    }
+    .clearfix:after{
+        clear: both;
+        height: 0;
+        overflow: hidden;
+        display: block;
+        visibility: hidden;
+        content: "";
+    }
+
+    .left {
+        float: left;
+    }
+
+    .right {
+        float: right;
+    }
+    .ellipsis {
+        overflow:hidden;
+        text-overflow:ellipsis;
+        white-space:nowrap;
+    }
+    .show{
+    	display: block;
+    }
+    .hide{
+    	display: none;
+    }
+
+    .easyalert{
+    	position: fixed;
+    	background-color: rgba(0,0,0,0.7);
+    	top: 50%;
+    	color: #fff;
+    	z-index: 999;
+    	border-radius: 6px;
+    	padding: 17px 20px;
+        font-size: 15px;
+    	line-height: 22px;
+    	max-width: 260px;
+    	text-align: center;
+    	display: none;
+    }

+ 28 - 9
src/web/staticres/wx_dataExport/css/industry.css

@@ -1,8 +1,17 @@
 body {
   background: #fff;
   font-size: 0.3rem;
-  padding-bottom: 0.94rem;
 }
+
+body .industry {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  overflow: hidden;
+}
+
 body .industry .content {
   flex: 1;
   overflow-y: scroll;
@@ -13,6 +22,7 @@ body .industry .all {
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .all span {
   background: #F4F4F9;
   display: inline-block;
@@ -23,11 +33,18 @@ body .industry .all span {
   line-height: .7rem;
   font-weight: bold;
 }
+
+body .industry .all span.active {
+  background: #2cb7ca;
+  color: #fff;
+}
+
 body .industry .list ul li {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .list ul li dt {
   background: #F4F4F9;
   display: block;
@@ -39,6 +56,7 @@ body .industry .list ul li dt {
   font-weight: bold;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li dd {
   background: #F4F4F9;
   display: inline-block;
@@ -50,16 +68,19 @@ body .industry .list ul li dd {
   margin-right: .05rem;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li .active {
   background: #2cb7ca;
   color: #fff;
 }
+
 body .industry .consfirm {
-  position: fixed;
-  left: 0;
-  bottom: 0;
+  /*position: fixed;*/
+  /*left: 0;*/
+  /*bottom: 0;*/
   width: 100%;
 }
+
 body .industry .consfirm button {
   width: 100%;
   height: 0.94rem;
@@ -67,14 +88,11 @@ body .industry .consfirm button {
   font-size: .36rem;
   color: #fff;
 }
+
 body .industry .resetOne {
-  position: fixed;
-  left: 0;
-  bottom: 0;
   width: 100%;
-  border-top: 1px solid #F4F4F9;
-  display: none;
 }
+
 body .industry .resetOne button {
   width: 50%;
   height: 0.94rem;
@@ -83,6 +101,7 @@ body .industry .resetOne button {
   color: #fff;
   float: left;
 }
+
 body .industry .resetOne button:first-child {
   background: #fff;
   color: #2cb7ca;

+ 29 - 19
src/web/staticres/wx_dataExport/css/messageType.css

@@ -1,17 +1,28 @@
 body {
   background: #fff;
   font-size: 0.3rem;
-  padding-bottom: 0.94rem;
 }
+
+body .industry {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  overflow: hidden;
+}
+
 body .industry .content {
   flex: 1;
   overflow-y: scroll;
 }
+
 body .industry .all {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .all span {
   background: #F4F4F9;
   display: inline-block;
@@ -22,11 +33,18 @@ body .industry .all span {
   line-height: .7rem;
   font-weight: bold;
 }
+
+body .industry .all span.active {
+  background: #2cb7ca;
+  color: #fff;
+}
+
 body .industry .list ul li {
   margin: 0 0.3rem;
   padding: 0.3rem 0;
   border-bottom: 1px solid #E0E0E0;
 }
+
 body .industry .list ul li dt {
   background: #F4F4F9;
   display: block;
@@ -38,6 +56,7 @@ body .industry .list ul li dt {
   font-weight: bold;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li dd {
   background: #F4F4F9;
   display: inline-block;
@@ -49,26 +68,19 @@ body .industry .list ul li dd {
   margin-right: .05rem;
   margin-bottom: 0.2rem;
 }
+
 body .industry .list ul li .active {
   background: #2cb7ca;
   color: #fff;
 }
-body .industry .list ul li .question {
-  display: inline-block;
-}
-body .industry .list ul li i {
-  font-size: .52rem;
-  color: #2cb7ca;
-  margin-left: 0.2rem;
-  position: relative;
-  top: 0.08rem;
-}
+
 body .industry .consfirm {
-  position: fixed;
-  left: 0;
-  bottom: 0;
+  /*position: fixed;*/
+  /*left: 0;*/
+  /*bottom: 0;*/
   width: 100%;
 }
+
 body .industry .consfirm button {
   width: 100%;
   height: 0.94rem;
@@ -76,14 +88,11 @@ body .industry .consfirm button {
   font-size: .36rem;
   color: #fff;
 }
+
 body .industry .resetOne {
-  position: fixed;
-  left: 0;
-  bottom: 0;
   width: 100%;
-  border-top: 1px solid #F4F4F9;
-  display: none;
 }
+
 body .industry .resetOne button {
   width: 50%;
   height: 0.94rem;
@@ -92,6 +101,7 @@ body .industry .resetOne button {
   color: #fff;
   float: left;
 }
+
 body .industry .resetOne button:first-child {
   background: #fff;
   color: #2cb7ca;

+ 5 - 1
src/web/staticres/wx_dataExport/css/order_detail.css

@@ -64,12 +64,14 @@
   -webkit-box-pack: start;
   -ms-flex-pack: start;
   justify-content: flex-start;
-  line-height:0.384rem;
 }
 #order_detail .main .lists .card .card-content .item-list .item-list-parents li {
   margin-right: 0.1rem;
   font-size: .28rem;
   color: #686868;
+  font-weight: 500;
+	display: block;
+	white-space: nowrap;
 }
 #order_detail .main .lists .card .invoicing {
   padding: 0 .12rem;
@@ -78,6 +80,8 @@
   font-size: .28rem;
   color: #2cb7ca;
 /*padding-top:0.03rem;*/
+	display: inline-block;
+	height: 1.60em;
 }
 #order_detail .main .lists .card .unit p {
   display: -webkit-box;

+ 415 - 33
src/web/staticres/wx_dataExport/css/win_bid.css

@@ -1,3 +1,4 @@
+@charset "UTF-8";
 .main {
   width: 100%;
   overflow: scroll;
@@ -7,34 +8,416 @@
   display: none;
 }
 
+.layout_top-bottom {
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+  height: 100%;
+}
+
+.layout_top-bottom .layou_top {
+  flex: 1;
+  overflow: scroll;
+}
+
+.bottom_button {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  width: 100%;
+  height: .94rem;
+}
+
+.bottom_button .left_btn,
+.bottom_button .right_btn {
+  flex: 1;
+  height: 100%;
+  font-size: .34rem;
+}
+
+.bottom_button .left_btn {
+  color: #2cb7ca;
+  background-color: #fff;
+  border-top: 1px solid #e0e0e0;
+}
+
+.bottom_button .right_btn {
+  color: #fff;
+  background-color: #2cb7ca;
+  border-top: 1px solid #2cb7ca;
+}
+
+.bottom_button button[disabled] {
+  opacity: .5;
+}
+
+.public_btn {
+  width: 100%;
+  height: .94rem;
+  line-height: .94rem;
+  text-align: center;
+  background: #2CB7CA;
+  color: #fff;
+  border-radius: 0.06rem;
+  font-size: .34rem;
+}
+
+.tips_btn {
+  display: flex;
+  position: relative;
+  flex-direction: column;
+  align-items: center;
+  justify-content: space-between;
+}
+
+.tips_btn .tips_discount {
+  width: 100%;
+}
+
+.tips_btn .tips_discount .tips_d_money {
+  display: none;
+  position: absolute;
+  left: 50%;
+  top: -.2rem;
+  padding: 0 .4rem;
+  height: .64rem;
+  line-height: .64rem;
+  color: #2CB7CA;
+  font-size: .32rem;
+  background-color: #fff;
+  border-radius: .32rem;
+  transform: translate(-50%, -100%);
+  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
+}
+
+.tips_btn .tips_discount .tips_d_text {
+  display: none;
+  height: .72rem;
+  line-height: .72rem;
+  color: #fff;
+  font-size: .28rem;
+  text-align: center;
+  background-color: #FFB901;
+}
+
+.tips_btn .btns {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  width: 100%;
+  height: .94rem;
+  line-height: .94rem;
+  color: #fff;
+  font-size: .34rem;
+}
+
+.tips_btn .btns .save-btn,
+.tips_btn .btns .reset-btn {
+  flex: 1;
+  width: 50%;
+  text-align: center;
+  height: 100%;
+  font-size: .34rem;
+}
+
+.tips_btn .btns .reset-btn {
+  background: #fff;
+  color: #2cb7ca;
+  border-top: 1px solid #e0e0e0;
+}
+
+.tips_btn .btns .save-btn {
+  background: #2cb7ca;
+  color: #fff;
+  border-top: 1px solid #2cb7ca;
+}
+
+.tips_btn .btns button[disabled] {
+  opacity: .5;
+}
+
+.jy_icon {
+  position: relative;
+  width: 100%;
+  height: 100%;
+}
+
+.jy_icon.decrease:before,
+.jy_icon.increase:before,
+.jy_icon.increase:after {
+  position: absolute;
+  left: 50%;
+  top: 50%;
+  content: '';
+  width: 0.4rem;
+  height: 0.04rem;
+  background-color: #686868;
+  transform: translate(-50%, -50%);
+}
+
+.jy_icon.increase:after {
+  transform: translate(-50%, -50%) rotate(90deg);
+}
+
+/*禁止长按复制 加给body*/
+.no-touch {
+  -webkit-touch-callout: none;
+  -webkit-user-select: none;
+  -khtml-user-select: none;
+  -moz-user-select: none;
+  -ms-user-select: none;
+  user-select: none;
+}
+
+/* 弹性盒子布局 */
+.flex_alginC {
+  display: flex;
+  align-items: center;
+}
+
+.flex_alginC_justB {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+}
+
+.flex_alginC_justC {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+}
+
+.flex_column {
+  display: flex;
+  flex-direction: column;
+}
+
+.flex_column_alignC {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+
+/* 自定义弹窗*/
+@-webkit-keyframes c {
+  0% {
+    opacity: 0;
+  }
+  to {
+    opacity: 1;
+  }
+}
+
+@keyframes c {
+  0% {
+    opacity: 0;
+  }
+  to {
+    opacity: 1;
+  }
+}
+
+.custom-dialog .weui-animate-fade-in {
+  -webkit-animation: c ease 0s forwards;
+  animation: c ease 0s forwards;
+}
+
+@-webkit-keyframes d {
+  0% {
+    opacity: 1;
+  }
+  to {
+    opacity: 0;
+  }
+}
+
+@keyframes d {
+  0% {
+    opacity: 1;
+  }
+  to {
+    opacity: 0;
+  }
+}
+
+.custom-dialog .weui-animate-fade-out {
+  -webkit-animation: d ease 0s forwards;
+  animation: d ease 0s forwards;
+}
+
+.custom-dialog .weui-dialog__hd {
+  background: #F5F4F9;
+  padding: .17rem 0;
+  color: #000;
+  font-size: .34rem;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__bd {
+  padding: .37rem 0;
+  color: #1D1D1D;
+  font-size: .32rem;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__ft:after {
+  border: 0;
+}
+
+.custom-dialog .weui-dialog__btn:after {
+  border: 0;
+}
+
+.custom-dialog .weui-dialog__ft {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  padding-bottom: .38rem;
+  box-sizing: border-box;
+  text-align: center;
+}
+
+.custom-dialog .weui-dialog__btn {
+  display: block;
+  width: 1.72rem;
+  height: .72rem;
+  line-height: .72rem;
+  color: #fff;
+  padding: 0;
+  flex: none;
+  text-align: center;
+  border-radius: 3px;
+}
+
+.custom-dialog .weui-dialog__btn_primary {
+  background-color: #2CB7CA;
+  margin-right: 1rem;
+}
+
+.custom-dialog .weui-dialog__btn_default {
+  background-color: #BFBFC3;
+}
+
+/* 自定义switch按钮 */
+.custom-switch {
+  position: relative;
+  width: 52px;
+  height: 32px;
+  border: 1px solid #dfdfdf;
+  outline: 0;
+  border-radius: 16px;
+  box-sizing: border-box;
+  background-color: #dfdfdf;
+  -webkit-transition: background-color .1s,border .1s;
+  transition: background-color .1s,border .1s;
+  -webkit-appearance: none;
+}
+
+.custom-switch:before {
+  content: " ";
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 50px;
+  height: 30px;
+  border-radius: 15px;
+  background-color: #fdfdfd;
+  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+  transition: transform 0.35s cubic-bezier(0.45, 1, 0.4, 1), -webkit-transform 0.35s cubic-bezier(0.45, 1, 0.4, 1);
+}
+
+.custom-switch:after {
+  content: " ";
+  position: absolute;
+  top: 0;
+  left: 0;
+  width: 30px;
+  height: 30px;
+  border-radius: 15px;
+  background-color: #fff;
+  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
+  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+  transition: transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35), -webkit-transform 0.35s cubic-bezier(0.4, 0.4, 0.25, 1.35);
+}
+
+.custom-switch.checked {
+  border-color: #04be02;
+  background-color: #04be02;
+}
+
+.custom-switch.checked:before {
+  transform: scale(0);
+}
+
+.custom-switch.checked:after {
+  transform: translateX(20px);
+}
+
+.custom-toast .weui-toast {
+  font-size: .3rem;
+  padding: 0.2rem;
+  width: auto;
+  max-width: 6rem;
+  min-height: 0;
+  height: auto;
+  top: 50%;
+  left: 50%;
+  margin-left: 0;
+  margin-top: -0.47rem;
+  transform: translateX(-50%) translateY(-50%);
+}
+
+.custom-toast .weui-icon_toast {
+  display: none;
+}
+
+.custom-toast .weui-toast__content {
+  margin: 0;
+}
+
+.win_bid {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+}
+
+.win_bid .main {
+  flex: 1;
+  overflow-y: scroll;
+}
+
 .win_bid .main .query {
-  display: -webkit-box;
-  display: -ms-flexbox;
   display: flex;
-  -webkit-box-align: center;
-      -ms-flex-align: center;
-          align-items: center;
-  -webkit-box-pack: end;
-      -ms-flex-pack: end;
-          justify-content: flex-end;
+  align-items: center;
+  justify-content: flex-end;
   padding: .3rem;
   color: #2cb7ca;
   font-size: .3rem;
 }
+
 .win_bid .main .query i {
   font-size: .4rem;
   margin-left: .1rem;
 }
+
 .win_bid .main .form .form-item {
   padding: .3rem;
   margin: .2rem 0;
   background: #fff;
 }
+
 .win_bid .main .form .form-item input {
   width: 100%;
   height: 100%;
   font-size: .28rem;
 }
+
 .win_bid .main .form .btn {
   width: 100%;
   height: .94rem;
@@ -43,45 +426,38 @@
   font-size: .34rem;
   text-align: center;
 }
+
 .win_bid .main .form-edit .item-control {
-  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;
+  align-items: center;
+  justify-content: space-between;
   background: #fff;
   height: .88rem;
   line-height: .88rem;
   padding: 0 .3rem;
   margin-top: .2rem;
 }
+
 .win_bid .main .form-edit .item-control input {
   height: 100%;
-  -webkit-box-flex: 1;
-      -ms-flex: 1;
-          flex: 1;
+  flex: 1;
   background: transparent;
   font-size: .28rem;
 }
+
 .win_bid .main .form-edit .item-control .edit {
-  display: -webkit-box;
-  display: -ms-flexbox;
   display: flex;
-  -webkit-box-align: center;
-      -ms-flex-align: center;
-          align-items: center;
+  align-items: center;
   color: #2cb7ca;
   height: .4rem;
   padding: 0 .2rem;
   border-left: 1px solid #e0e0e0;
 }
+
 .win_bid .main .form-edit .item-control .edit i {
   margin-right: .1rem;
 }
+
 .win_bid .main .form-edit .item-btn {
   width: 100%;
   height: .88rem;
@@ -90,54 +466,60 @@
   margin-top: .1rem;
   display: none;
 }
+
 .win_bid .main .form-edit .item-btn .btn {
   width: 50%;
   height: 100%;
-  -webkit-box-flex: 1;
-      -ms-flex: 1;
-          flex: 1;
+  flex: 1;
   color: #fff;
   float: left;
   font-size: .3rem;
 }
+
 .win_bid .main .form-edit .item-btn .del {
   background: #fe737a;
 }
+
 .win_bid .main .form-edit .item-btn .enter {
   background: #2cb7ca;
 }
-.win_bid .main .add {
+
+.win_bid .add {
   width: 1rem;
   height: 1rem;
   display: block;
-  position: fixed;
-  bottom: .72rem;
-  left: 50%;
-  margin-left: -.5rem;
+  margin: 0 auto 0.72rem;
 }
-.win_bid .main .add img {
+
+.win_bid .add img {
   width: 100%;
   height: 100%;
 }
+
 .win_bid #tipDialog {
   text-align: left;
 }
+
 .win_bid #tipDialog .dialog-title {
   font-size: .34rem;
 }
+
 .win_bid #tipDialog .info li {
   text-align: left !important;
   font-size: .28rem;
 }
+
 .win_bid #tipDialog .info li label {
   display: block;
   font-weight: bold;
   margin: .24rem 0;
 }
+
 .win_bid #tipDialog .info li p {
   font-size: .28rem;
   line-height: 1.4;
 }
+
 .win_bid #tipDialog .weui-dialog__btn_primary {
   color: #2cb7ca;
 }

+ 8 - 8
src/web/staticres/wx_dataExport/js/additionWord.js

@@ -85,14 +85,14 @@ $(function(){
 
     // 编辑
     $(".showKeyWord").on('click', '.editKeyWord',function(e){
-        $('.modify span').each(function(item){
-            $('.modify span')[0].contentEditable = true
-        })
-        keepLastIndex(e.target)
-        // console.log($(this).parent().siblings().find('span').text())
-        $(this).parent().hide()
-        $(this).parent().siblings().css('display','block')
-        $(".addKeyWord").hide()
+        let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+        oSpan.focus();
+        setTimeout(() => {
+            keepLastIndex(oSpan)
+        }, 40);
+        $(this).parent().hide();
+        $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
+        $(".addKeyWord").hide();
     })
 
     // 编辑 删除

+ 6 - 5
src/web/staticres/wx_dataExport/js/keyWord.js

@@ -220,10 +220,11 @@ $(function(){
 
     // 编辑
     $(".showKeyWord").on('click', '.editKeyWord',function(e){
-        $('.modify span').each(function(item){
-            $('.modify span')[0].contentEditable = true
-        });
-        keepLastIndex(e.target);
+        let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+        oSpan.focus();
+        setTimeout(() => {
+            keepLastIndex(oSpan)
+        }, 40);
         var keyWord = $(this).prev().children().find(".key").text();
         for(var i in keyWordArr){
             if(keyWordArr[i].keyWord === keyWord){
@@ -254,7 +255,7 @@ $(function(){
             }
         }
         $(this).parent().hide();
-        $(this).parent().siblings().css('display','block');
+        $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
         $(".addKeyWord").hide();
     });
 

+ 4 - 2
src/web/templates/weixin/applysub/infoPage.html

@@ -312,9 +312,11 @@
 		}, 1000)
 	}
 	//
+  var getRecListXHR;
 	function  getRecList(name){
-		$(".input_company .company_name").html("");
-        $.post("/front/entsesearch/recList",{entName:name},function(r){
+		    $(".input_company .company_name").html("");
+        if(getRecListXHR) getRecListXHR.abort();//取消请求响应
+        getRecListXHR=$.post("/front/entsesearch/recList",{entName:name},function(r){
             if(r){
                 if(typeof (r.recList)!="undefined"){
                     var recList = r.recList;

+ 37 - 20
src/web/templates/weixin/dataExport/dataExport_appended.html

@@ -170,9 +170,10 @@
                     }
                 }
                 $('.showKeyWord > ul').prepend(html);
+                $(".enter.addKeyWord").hide();
+                $(".showKeyWord").show();
             }
         }
-
         $(function(){
 
             $('.knowBtn').on('click',function(){
@@ -258,9 +259,10 @@
                             else j++;
                         }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordArr);
+                }else{
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 var html = `<li>
                                 <div class="one">
                                     <div>
@@ -290,14 +292,13 @@
 
             // 编辑
             $(".showKeyWord").on('click', '.editKeyWord',function(e){
-                $('.modify span').each(function(item){
-                    $('.modify span')[0].contentEditable = true
-                });
-                keepLastIndex(e.target);
-                // console.log($(this).parent().siblings().find('span').text())
+                let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+                oSpan.focus();
+                setTimeout(() => {
+                    keepLastIndex(oSpan)
+                }, 40);
                 $(this).parent().hide();
-                $(this).parent().siblings().css('display','block')
-                //
+                $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
                 $(".addKeyWord").hide();
             });
 
@@ -305,13 +306,21 @@
             $('.showKeyWord').on('click', '.deleteKey', function(e) {
                 var appended = $(this).parent().prev().find('.key').text();
                 appendedArr.splice($.inArray(appended, appendedArr),1);
-                for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === tokens){
-                        keyWordArr[i].appended = appendedArr
+                if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                    for(var i in keyWordsArr){
+                        if(keyWordsArr[i].keyWord === tokens){
+                            keyWordsArr[i].appended = appendedArr
+                        }
+                    }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    for(var i in keyWordArr){
+                        if(keyWordArr[i].keyWord === tokens){
+                            keyWordArr[i].appended = appendedArr
+                        }
                     }
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
                 $(this).parents('li').remove();
                 $(".addKeyWord").show();
                 hasWords();
@@ -346,13 +355,21 @@
                             appendedArr[i] = appended;
                         }
                     }
-                    for(var m in keyWordArr){
-                        if(keyWordArr[m].keyWord === tokens){
-                            keyWordArr[m].appended = appendedArr
+                    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                        for(var i in keyWordsArr){
+                            if(keyWordsArr[i].keyWord === tokens){
+                                keyWordsArr[i].appended = appendedArr
+                            }
+                        }
+                        sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                    }else{
+                        for(var i in keyWordArr){
+                            if(keyWordArr[i].keyWord === tokens){
+                                keyWordArr[i].appended = appendedArr
+                            }
                         }
+                        localStorage.keyWord = JSON.stringify(keyWordArr);
                     }
-                    sessionStorage.keyWord = JSON.stringify(keyWordArr);
-                    // localStorage.keyWord = JSON.stringify(keyWordArr);
                     $(this).parent().siblings().find('.key').text(appended);
                     $(this).parent().hide().siblings().show()
                 }

+ 1 - 1
src/web/templates/weixin/dataExport/dataExport_appendedInput.html

@@ -175,8 +175,8 @@
                     //         else j++;
                     //     }
                     // }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 if(token.indexOf("_in")===-1){
                     localStorage.keyWord = JSON.stringify(keyWordArr);
                 }

+ 1 - 0
src/web/templates/weixin/dataExport/dataExport_area.html

@@ -375,6 +375,7 @@
 	</div>
 		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
 		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/mapJSON.js?v={{Msg "seo" "version"}}3"></script>
+		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
 		<script>
 			initShare({{.T.signature}},{{.T.openid}},2,"jy_wxmyorder",{{.T.nickname}},{{.T.avatar}});
 			chinaMapJSON.forEach(function(item,index){

+ 9 - 5
src/web/templates/weixin/dataExport/dataExport_buyerEdit.html

@@ -15,11 +15,15 @@
 	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>
 </head>
 <style>
-	.keyWord .addKeyWord {
+	.addKeyWord i {
+		font-size: 1rem;
+		color: #2cb7ca;
+	}
+	.addKeyWord {
 		width: 100%;
 		position: fixed;
-		top: 100%;
 		text-align: center;
+		bottom: 10%;
 	}
 	.keyWord .enter .btn .save-btn {
 		float: right;
@@ -50,11 +54,11 @@
 
 		</ul>
 
-		<div class="addKeyWord">
-			<i class="iconfont icon-tianjia"></i>
-		</div>
 	</div>
 </div>
+<div class="addKeyWord">
+	<i class="iconfont icon-tianjia"></i>
+</div>
 <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js"></script>
 <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/weui.min.js"></script>
 <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/additionWord.js?v={{Msg "seo" "version"}}37"></script>

+ 35 - 18
src/web/templates/weixin/dataExport/dataExport_exclude.html

@@ -258,9 +258,10 @@
                             else j++;
                         }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    localStorage.keyWord = JSON.stringify(keyWordArr);
                 }
-                // localStorage.keyWord = JSON.stringify(keyWordArr);
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 var html = `<li>
                                     <div class="one">
                                         <div>
@@ -290,13 +291,13 @@
 
             // 编辑
             $(".showKeyWord").on('click', '.editKeyWord',function(e){
-                $('.modify span').each(function(item){
-                    $('.modify span')[0].contentEditable = true
-                });
-                keepLastIndex(e.target)
-                // console.log($(this).parent().siblings().find('span').text())
+                let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+                oSpan.focus();
+                setTimeout(() => {
+                    keepLastIndex(oSpan)
+                }, 40);
                 $(this).parent().hide();
-                $(this).parent().siblings().css('display','block');
+                $(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
                 $(".addKeyWord").hide();
             });
 
@@ -304,13 +305,21 @@
             $('.showKeyWord').on('click', '.deleteKey', function(e) {
                 var exclude = $(this).parent().prev().find('.key').text();
                 excludeArr.splice($.inArray(exclude, excludeArr),1);
-                for(var i in keyWordArr){
-                    if(keyWordArr[i].keyWord === tokens){
-                        keyWordArr[i].exclude = excludeArr
+                if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                    for(var i in keyWordsArr){
+                        if(keyWordsArr[i].keyWord === tokens){
+                            keyWordsArr[i].exclude = excludeArr
+                        }
                     }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                }else{
+                    for(var i in keyWordArr){
+                        if(keyWordArr[i].keyWord === tokens){
+                            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()
@@ -345,13 +354,21 @@
                             excludeArr[i] = exclude;
                         }
                     }
-                    for(var m in keyWordArr){
-                        if(keyWordArr[m].keyWord === tokens){
-                            keyWordArr[m].exclude = excludeArr
+                    if(sessionStorage.keyWord!==""&&sessionStorage.keyWord!==undefined){
+                        for(var i in keyWordsArr){
+                            if(keyWordsArr[i].keyWord === tokens){
+                                keyWordsArr[i].exclude = excludeArr
+                            }
+                        }
+                        sessionStorage.keyWord = JSON.stringify(keyWordsArr);
+                    }else{
+                        for(var i in keyWordArr){
+                            if(keyWordArr[i].keyWord === tokens){
+                                keyWordArr[i].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()
                 }

+ 1 - 1
src/web/templates/weixin/dataExport/dataExport_excludeInput.html

@@ -182,8 +182,8 @@
                     //         else j++;
                     //     }
                     // }
+                    sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 }
-                sessionStorage.keyWord = JSON.stringify(keyWordsArr);
                 if(token.indexOf("_in")===-1){
                     localStorage.keyWord = JSON.stringify(keyWordArr);
                 }

+ 10 - 10
src/web/templates/weixin/dataExport/dataExport_industry.html

@@ -6,11 +6,12 @@
     <meta http-equiv="X-UA-Compatible" content="ie=edge">
     <title>行业</title>
     <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/rem.js?v={{Msg "seo" "version"}}"></script>
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css?v={{Msg "seo" "version"}}4">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css?v={{Msg "seo" "version"}}5">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/industry.css?v={{Msg "seo" "version"}}3">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/industry.css?v={{Msg "seo" "version"}}5">
     {{include "/common/weixin.html"}}
     <script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
 </head>
     <style>
         .active{
@@ -154,14 +155,13 @@
                 </ul>
             </div>
         </div>
-        
-        <div class="consfirm">
-            <button class="save-btn">确认</button>
-        </div>
-        <div class="resetOne">
-            <button class="reset">重置</button>
-            <button class="save-btn">确认</button>
-        </div>
+    <div class="consfirm">
+        <button class="save-btn">确认</button>
+    </div>
+    <div class="resetOne">
+        <button class="reset">重置</button>
+        <button class="save-btn">确认</button>
+    </div>
 
     </div>
     <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>

+ 20 - 0
src/web/templates/weixin/dataExport/dataExport_keyWordInput.html

@@ -220,6 +220,16 @@
     }
     $(".appended").on('click', function () {
         var keyWord = $(this).parent().prev().val();
+        for (var a in keyWordArr){
+            if (keyWord === keyWordArr[a].keyWord){
+                weui.toast('关键词重复了', {
+                    duration: 2000,
+                    className: 'text-overflow100',
+                    callback: function(){}
+                });
+                return
+            }
+        }
         var buttonDOM = $('.enter.addkeyWord .btnChoose .appended');
         buttonDOM.prop("disabled", true);
         //
@@ -239,6 +249,16 @@
     });
     $(".exclude").on('click', function () {
         var keyWord = $(this).parent().prev().val();
+        for (var a in keyWordArr){
+            if (keyWord === keyWordArr[a].keyWord){
+                weui.toast('关键词重复了', {
+                    duration: 2000,
+                    className: 'text-overflow100',
+                    callback: function(){}
+                });
+                return
+            }
+        }
         var buttonDOM = $('.enter.addkeyWord .btnChoose .exclude');
         buttonDOM.prop("disabled", true);
         //

+ 13 - 1
src/web/templates/weixin/dataExport/dataExport_subType.html

@@ -11,6 +11,7 @@
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/messageType.css?v={{Msg "seo" "version"}}3">
     {{include "/common/weixin.html"}}
     <script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>
+    <script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/fastclick.js?v={{Msg "seo" "version"}}"></script>
 </head>
     <style>
         .active{
@@ -82,6 +83,17 @@
             overflow: hidden;
             width: 280px;
         }
+        body .industry .list ul li i {
+            font-size: .52rem;
+            color: #2cb7ca;
+            margin-left: 0.2rem;
+            position: relative;
+            top: 0.08rem;
+        }
+        .nijian{
+            display: flex;
+            display: -webkit-flex;
+        }
     </style>
 <body>
 
@@ -91,7 +103,7 @@
             <div class="list">
                 <ul>
                         <li>
-                            <dl>
+                            <dl class="nijian">
                                 <dt class="question" data-value="拟建">拟建项目</dt><i class="iconfont icon-wenhao q-mark"></i>
                             </dl>
                         </li>

文件差异内容过多而无法显示
+ 11 - 3
src/web/templates/weixin/dataExport/dataExport_toMyOrder.html


+ 38 - 2
src/web/templates/weixin/dataExport/dataExport_toOrderDetail.html

@@ -15,6 +15,21 @@
 		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/order_detail.css?v={{Msg "seo" "version"}}1">
 	</head>
 	<body>
+		<style>
+			html, body {
+			    max-width: 750px;
+			    -webkit-text-size-adjust: 100%;
+			    margin: 0 auto;
+			    height: 100%;
+			    overflow-x: hidden;
+			    -webkit-box-sizing: border-box;
+			    box-sizing: border-box;
+			    font-size: .24rem;
+			    background: #F5F4F9 !important;
+			    color: #3d3d3d;
+			    font-family: "Microsoft YaHei","Helvetica Neue", "Roboto", "Segoe UI", "PingFang SC", "Hiragino Sans GB", sans-serif;
+			}
+		</style>
 		<script>
 			initShare({{.T.signature}},{{.T.openid}},2,"jy_wxmyorder",{{.T.nickname}},{{.T.avatar}});
 			
@@ -162,12 +177,25 @@
                     if (keywords && keywords.length>0){
 		                for (var i=0;i<keywords.length;i++){
 		                    var keywordObj = keywords[i];
+		                    //关键词
 		                    var word = keywordObj["keyword"];
+		                    //附加词
 		                    var appended = keywordObj["appended"];
+		                    var appendedStr =""+appended;
+							var reg = RegExp(/,/);
+							if(appendedStr.match(reg)){
+								appendedStr=appendedStr.replace(/,/g," ");
+							}
+							//排除词
 		                    var exclude = keywordObj["exclude"];
+		                    var excludeStr =exclude+"";
+							console.log(excludeStr)
+							if(excludeStr.match(reg)){
+								excludeStr=excludeStr.replace(/,/g," ");
+							}
 		                    keywordsHtml +="<span>" + word + "&nbsp</span>";
-		                    appendedHtml +="<span>" + appended + "&nbsp</span>";
-		                    excludeHtml +="<span>" + exclude + "&nbsp</span>";
+		                    appendedHtml +="<span>" + appendedStr + "&nbsp</span>";
+		                    excludeHtml +="<span>" + excludeStr + "&nbsp</span>";
 		                }
 		            }else{
 		            	 keywordsHtml +="<p></p>";
@@ -264,11 +292,15 @@
 					<div class="card">
 						<div class="card-header">
 							<img src="/wx_dataExport/images/line.png" >
+							{{if ne .T.o.order_status -2}}
 							{{if .T.o.pay_time}}
 							<h3>已完成</h3>
 							{{else}}
 							<h3>待付款</h3>
 							{{end}}
+							{{else}}
+							<h3>已取消</h3>
+							{{end}}
 							<img src="/wx_dataExport/images/line.png" >
 						</div>
 						<div class="card-content font_color">
@@ -397,11 +429,15 @@
 							</div>
 						</div>
 					</div>
+					{{if ne .T.o.order_status -2}}
 					{{if .T.o.pay_time}}
 					<div class="button align bottomButton" id="buytwo" onclick="window.location.href='/front/wx_dataExport/toSieve'">再次购买</div>
 					{{else}}
 					<div class="button align bottomButton" id="buy" onclick="goPay()">去支付</div>
 					{{end}}
+					{{else}}
+					<div class="button align bottomButton" id="buytwo" onclick="window.location.href='/front/wx_dataExport/toSieve'">再次购买</div>
+					{{end}}
 				</div>
 			</main>
 		</div>

+ 25 - 24
src/web/templates/weixin/dataExport/dataExport_winnerEdit.html

@@ -15,11 +15,15 @@
 	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>
 	</head>
 	<style>
-		.keyWord .addKeyWord {
+		.addKeyWord i {
+			font-size: 1rem;
+			color: #2cb7ca;
+		}
+		.addKeyWord {
 			width: 100%;
 			position: fixed;
-			top: 100%;
 			text-align: center;
+			bottom: 10%;
 		}
 		.keyWord .enter .btn .save-btn {
 			float: right;
@@ -32,30 +36,27 @@
 		}
 	</style>
 	<body>
-
 	<div class="keyWord">
-			<div class="enter addkeyWord">
+		<div class="enter addkeyWord">
 			<input type="text" class="enterOne" placeholder="中标单位名称" />
 			<div class="btn">
-			<button class="save-btn" disabled>确认</button>
-			<button class="close">取消</button>
-	</div>
-	</div>
-
-	<!-- 添加附加词显示列表 -->
-	<div class="showKeyWord">
+				<button class="save-btn" disabled>确认</button>
+				<button class="close">取消</button>
+			</div>
+		</div>
+		<!-- 添加附加词显示列表 -->
+		<div class="showKeyWord">
 			<ul>
 
 			</ul>
 
-			<div class="addKeyWord">
-			<i class="iconfont icon-tianjia"></i>
-			</div>
-
-			</div>
+		</div>
 
-			</div>
-			<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js?v={{Msg "seo" "version"}}"></script>
+	</div>
+	<div class="addKeyWord">
+		<i class="iconfont icon-tianjia"></i>
+	</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>
 		initShare({{.T.signature}},{{.T.openid}},2,"jy_wxmyorder",{{.T.nickname}},{{.T.avatar}});
@@ -176,13 +177,13 @@
 
 			// 编辑
 			$(".showKeyWord").on('click', '.editKeyWord',function(e){
-				$('.modify span').each(function(item){
-					$('.modify span')[0].contentEditable = true
-				});
-				keepLastIndex(e.target)
-				// console.log($(this).parent().siblings().find('span').text())
+				let oSpan = e.target.parentNode.nextElementSibling.firstElementChild
+				oSpan.focus();
+				setTimeout(() => {
+					keepLastIndex(oSpan)
+				}, 40);
 				$(this).parent().hide();
-				$(this).parent().siblings().css('display','block')
+				$(this).parent().siblings().show().parent().siblings().children('.modify').hide().siblings('.one').show()
 				$(".addKeyWord").hide();
 			});
 

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

@@ -1004,11 +1004,10 @@
 	}
   initScroll()
 	function initScroll() {
-
-	(/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', (e) => {
-		// 这里加了个类型判断,因为a等元素也会触发blur事件
-		['input', 'textarea'].includes(e.target.localName) && document.body.scrollIntoView(false)
-	}, true)
+    (/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', function(e){
+    	// 这里加了个类型判断,因为a等元素也会触发blur事件
+    	['input', 'textarea'].includes(e.target.localName) && document.body.scrollIntoView(false)
+    }, true)
 	}
 
 </script>

部分文件因为文件数量过多而无法显示