xuzhiheng 6 anni fa
parent
commit
1e33acc1dc

+ 8 - 0
src/jfw/modules/app/src/app/front/front.go

@@ -60,6 +60,9 @@ type Front struct {
 	hasPushHistory    xweb.Mapper `xweb:"/jyapp/front/hasPushHistory"`
 	showRedSpotOnMenu xweb.Mapper `xweb:"/jyapp/free/showRedSpotOnMenu"`
 	goToUpdate        xweb.Mapper `xweb:"/jyapp/free/goToUpdate"`
+
+	//静态页面通用地址
+	staticPage xweb.Mapper `xweb:"/jyapp/front/staticPage/(.+)"`
 }
 
 var sewx util.SimpleEncrypt //微信的加密方法
@@ -525,3 +528,8 @@ func (s *Front) GoToUpdate() {
 	s.T["mustupdate"] = mustupdate
 	s.Render("/app/update.html")
 }
+
+//静态页面
+func (s *Front) StaticPage(pagename string) error {
+	return s.Render("/staticpage/" + pagename)
+}

+ 292 - 0
src/jfw/modules/app/src/app/front/ws_dataExport.go

@@ -0,0 +1,292 @@
+package front
+
+import (
+	"errors"
+	"fmt"
+	"jfw/config"
+	"jfw/public"
+	"log"
+	"qfw/util"
+	"qfw/util/redis"
+	"regexp"
+	"strconv"
+	"strings"
+	"time"
+
+	"github.com/go-xweb/xweb"
+	"gopkg.in/mgo.v2/bson"
+)
+
+type WsDataExport struct {
+	*xweb.Action
+	searchExport      xweb.Mapper `xweb:"/jyapp/front/wx_dataExport/searchExport"`      //微信数据导出
+	toPreview         xweb.Mapper `xweb:"/jyapp/front/wx_dataExport/toPreview/(.*)"`    //微信数据导出-预览页面
+	paySuccessPage    xweb.Mapper `xweb:"/jyapp/front/wx_dataExport/paySuccessPage"`    //微信数据导出-支付成功页面
+	getPayParm        xweb.Mapper `xweb:"/jyapp/front/wx_dataExport/getPayParm"`        //微信数据导出-获取微信支付参数
+	toCreateOrderPage xweb.Mapper `xweb:"/jyapp/front/wx_dataExport/toCreateOrderPage"` //微信数据导出-订单微信支付
+}
+
+func init() {
+	xweb.AddAction(&WsDataExport{})
+}
+
+//
+func (w *WsDataExport) GetPayParm() error {
+	defer util.Catch()
+	userid := util.ObjToString(w.GetSession("userId"))
+	openid := util.ObjToString(w.GetSession("s_m_openid"))
+	id := util.SE.Decode4Hex(w.GetString("id"))
+	if userid == "" || id == "" {
+		log.Println("userid,id 有误!")
+		w.ServeJson(map[string]interface{}{
+			"status": 0,
+		})
+		return nil
+	}
+	token := w.GetString("token")
+	fmt.Println(userid, "---", id)
+	//查看创建过的预支付订单
+	Order := public.Mysql.FindOne("dataexport_order", map[string]interface{}{
+		"user_id":   userid,
+		"filter_id": id,
+	}, "prepay_id,order_code,order_money,id,prepay_time", "")
+	fmt.Println("Order:", Order)
+	if Order == nil {
+		log.Println("查不到订单!")
+		w.ServeJson(map[string]interface{}{
+			"status": -1,
+		})
+		return nil
+	}
+	prepayId := util.ObjToString((*Order)["prepay_id"])
+	if prepayId == "" {
+		log.Println("订单有误!")
+		w.ServeJson(map[string]interface{}{
+			"status": -2,
+		})
+		return nil
+	}
+	code := util.ObjToString((*Order)["order_code"])
+	orderid := util.Int64All((*Order)["id"])
+	orderMoney := util.IntAll((*Order)["order_money"])
+
+	realToken := public.GetWaitPayToken(orderid, orderMoney, code, userid)
+	if realToken != token {
+		log.Println("token错误!", userid, realToken, token, code, orderMoney, orderid)
+		return nil
+	}
+	prepayTime, err := time.ParseInLocation(util.Date_Full_Layout, util.ObjToString((*Order)["prepay_time"]), time.Local)
+	surplus_second := prepayTime.Unix() + 7200 - time.Now().Unix()
+	if err == nil && surplus_second <= 0 {
+		log.Println("订单过期,重新生成预订单!", userid)
+		tradeno, ret := public.WxStruct.CreatePrepayOrder(config.Sysconfig["weixinrpc"].(string), "c", w.IP(), openid, "", orderMoney)
+		if ret != nil {
+			now := time.Now()
+			if public.Mysql.Update("dataexport_order", map[string]interface{}{
+				"id": orderid,
+			}, map[string]interface{}{
+				"prepay_time":  util.FormatDate(&now, util.Date_Full_Layout),
+				"prepay_id":    (*ret)["prepayid"],
+				"out_trade_no": tradeno,
+			}) {
+				prepayId = (*ret)["prepayid"]
+			}
+		}
+	}
+	timestamp := time.Now().Unix()
+	nonceStr := util.GetRandom(16) + util.GetLetterRandom(16)
+	sign := util.WxSign(fmt.Sprintf("appId=%s&nonceStr=%s&package=%s&signType=%s&timeStamp=%d&key=%s", public.WxStruct.Appid, nonceStr, "prepay_id="+prepayId, "MD5", timestamp, public.WxStruct.Key))
+	w.ServeJson(map[string]interface{}{
+		"status":    1,
+		"appId":     public.WxStruct.Appid,
+		"timestamp": fmt.Sprint(timestamp),
+		"signType":  "MD5",
+		"sign":      sign,
+		"nonceStr":  nonceStr,
+		"prepayId":  "prepay_id=" + prepayId,
+	})
+	return nil
+}
+
+//
+func (w *WsDataExport) PaySuccessPage() error {
+	defer util.Catch()
+	w.T["email"] = w.GetString("email")
+	w.T["orderCode"] = w.GetString("orderCode")
+	payTime, _ := strconv.ParseInt(w.GetString("payTime"), 10, 64)
+	w.T["payTime"] = util.FormatDateByInt64(&payTime, util.Date_Short_Layout)
+	return w.Render("/weixin/dataExport/dataExport_paySuccess.html", &w.T)
+}
+
+//预览
+func (w *WsDataExport) ToPreview(_id string) error {
+	defer util.Catch()
+	userid, _ := w.Session().Get("userId").(string)
+	if userid == "" {
+		return errors.New("未登录")
+	}
+	w.T["id"] = _id
+	return w.Render("/dataExport/dataExport_previewData.html")
+}
+
+//创建订单页面
+func (w *WsDataExport) ToCreateOrderPage() error {
+	defer util.Catch()
+	id := util.SE.Decode4Hex(w.GetString("id"))
+	openid := util.ObjToString(w.GetSession("s_m_openid"))
+	userId := util.ObjToString(w.GetSession("userId"))
+	if userId == "" {
+		return errors.New("未登录")
+	}
+	msgCount := public.GetDataExportSearchCountUseId(id)
+	if msgCount > public.ExConf.MsgMaxCount {
+		msgCount = public.ExConf.MsgMaxCount
+	}
+	if msgCount < 1 {
+		w.Render("/dataExport/404.html", &w.T)
+		return nil
+	}
+	//订单数据存入session中
+	w.SetSession("dataexport_waitcreateorder", map[string]interface{}{
+		"id":         id,       //用户的筛选条件mongodb中的id string
+		"data_count": msgCount, //匹配到的数据总数 int
+	})
+	//邮箱验证
+	//	w.DelSession("DataExportVerifyEmail_val")
+	//	w.DelSession("DataExportVerifyPhone_val")
+	email := w.GetSession("DataExportVerifyEmail_val")
+	resPhone := w.GetSession("DataExportVerifyPhone_val")
+	if email != nil {
+		lastSendDEVerify := util.Int64All(w.GetSession("CreatEVerifyTime"))
+		timeSpaceing := lastSendDEVerify - time.Now().Unix() + 60*5
+		w.T["email"] = email
+		w.T["timeSpaceing"] = timeSpaceing
+	} else {
+		mail_phone := public.Mysql.FindOne("dataexport_order", map[string]interface{}{
+			"user_id": userId,
+		}, "user_mail,user_phone", "create_time desc")
+		if mail_phone != nil {
+			email = (*mail_phone)["user_mail"]
+			resPhone = (*mail_phone)["user_phone"]
+		}
+		if email == nil || email == "" {
+			userData, _ := mongodb.FindById("user", userId, `{"o_jy":1}`)
+			o_jy := util.ObjToMap((*userData)["o_jy"])
+			email = (*o_jy)["s_email"]
+		}
+		if email != nil && email != "" {
+			w.SetSession("EMVerifySucess", true)
+			w.SetSession("DataExportVerifyEmail_val", email)
+		}
+		w.T["email"] = email
+	}
+	//手机号
+	phone := w.GetSession("DataExportVerifyPhone_val")
+	if phone != nil && phone != "" {
+		w.T["phone"] = phone
+	} else {
+		//剑鱼助手手机号登录
+		if isPhone(openid) {
+			phone = openid
+		} else {
+			phone = resPhone
+		}
+		if phone != nil && phone != "" {
+			w.SetSession("DataExportVerifyPhone_val", phone)
+		}
+		w.T["phone"] = phone
+	}
+	w.T["_id"] = w.GetString("id")
+	w.T["msgCount"] = msgCount                                                                                      //信息总量
+	w.T["msgMaxCount"] = public.ExConf.MsgMaxCount                                                                  //规定信息最大总量
+	w.T["discount"] = public.ExConf.Discount                                                                        //折扣:0.5
+	w.T["discount10"] = public.ExConf.Discount * 10                                                                 //折扣:5折
+	w.T["unitPrice_normal"] = public.ExConf.UnitPrice_normal                                                        //标准字段-原价每条价格
+	w.T["unitPrice_senior"] = public.ExConf.UnitPrice_senior                                                        //高级字段-原价每条价格
+	w.T["unitPrice_normal_final"] = (public.ExConf.UnitPrice_normal * 100) * (public.ExConf.Discount * 100) / 10000 //标准字段折扣后的价格
+	w.T["unitPrice_senior_final"] = (public.ExConf.UnitPrice_senior * 100) * (public.ExConf.Discount * 100) / 10000 //高级字段折扣后的价格
+	w.T["orderMinPrice"] = public.ExConf.OrderMinPrice                                                              //最低售价
+	incurKey := fmt.Sprintf("PreviewData_%s_%d", w.GetSession("userId"), time.Now().Day())                          //每日限制预览次数
+	w.T["PreviewData"] = util.IntAll(redis.Get("other", incurKey))
+
+	w.Render("/dataExport/dataExport_payOrder.html", &w.T)
+	return nil
+}
+
+//
+func isPhone(value string) bool {
+	var phonePattern = regexp.MustCompile("^[1][3-9][0-9]{9}$")
+	return phonePattern.MatchString(value)
+}
+
+//微信数据导出
+func (w *WsDataExport) SearchExport() error {
+	openid := util.ObjToString(w.GetSession("s_m_openid"))
+	userId := util.ObjToString(w.GetSession("userId"))
+	if userId == "" {
+		return errors.New("未登录")
+	}
+	//接收超级搜索页面参数
+	keywords := w.GetString("searchvalue")                 //搜索词
+	publishtime := w.GetString("publishtime")              //发布时间
+	area := w.GetString("scope")                           //地区
+	subtype := w.GetString("subtype")                      //信息类型
+	minprice := w.GetString("minprice")                    //最低价格
+	maxprice := w.GetString("maxprice")                    //最高价格
+	industry := strings.TrimSpace(w.GetString("industry")) //选中的行业
+	selectType := w.GetString("selectType")                //标题 or 全文
+
+	//数据存库转换
+	areaSave := []string{}
+	if len(area) > 0 {
+		areaSave = strings.Split(area, ",")
+	}
+	industrySave := []string{}
+	if len(industry) > 0 {
+		industrySave = strings.Split(industry, ",")
+	}
+	//格式化keywords
+	KeyWordSave := []public.KeyWord{}
+
+	if len(keywords) > 0 {
+		isIntercept := false
+		if selectType == "all" {
+			isIntercept = true
+		}
+		_, _, keywords = public.InterceptSearchKW(keywords, isIntercept, len(industrySave) == 0)
+		KeyWordSave = append(KeyWordSave, public.KeyWord{Keyword: keywords})
+	}
+	//时间
+	now := time.Now()
+	if publishtime == "lately-7" { //最近7天
+		starttime := fmt.Sprint(time.Date(now.Year(), now.Month(), now.Day()-7, 0, 0, 0, 0, time.Local).Unix())
+		publishtime = fmt.Sprintf("%s_%d", starttime, now.Unix())
+	} else if publishtime == "lately-30" { //最近30天
+		starttime := fmt.Sprint(time.Date(now.Year(), now.Month(), now.Day()-30, 0, 0, 0, 0, time.Local).Unix())
+		publishtime = fmt.Sprintf("%s_%d", starttime, now.Unix())
+	} else if publishtime == "thisyear" { //去年
+		starttime := fmt.Sprint(time.Date(now.Year()-1, 1, 1, 0, 0, 0, 0, time.Local).Unix())
+		endtime := fmt.Sprint(time.Date(now.Year(), 1, 1, 0, 0, 0, 0, time.Local).Unix())
+		publishtime = fmt.Sprintf("%s_%s", starttime, endtime)
+	}
+
+	data := map[string]interface{}{
+		"keywords":    KeyWordSave,
+		"publishtime": publishtime,
+		"area":        areaSave,
+		"subtype":     subtype,
+		"minprice":    minprice,
+		"maxprice":    maxprice,
+		"industry":    industrySave,
+		"selectType":  selectType,
+		"comeintime":  now.Unix(),
+		"s_openid":    openid,
+		"comeinfrom":  "supersearchPage",
+		"s_userid":    userId,
+	}
+
+	//存入数据库
+	_id := mongodb.Save(public.ExportTable, data)
+	w.ServeJson(bson.M{"_id": util.SE.Encode2Hex(_id)})
+	return nil
+}

+ 1 - 1
src/jfw/modules/app/src/config.json

@@ -6,7 +6,7 @@
     "influxdb": "jy_logs",
     "elasticsearch": "http://192.168.3.11:9800",
     "elasticPoolSize": 30,
-    "redisaddrs": "other=192.168.3.207:3379,push=192.168.3.207:3379,pushcache_1=192.168.3.207:2001,pushcache_2_a=192.168.3.207:2002,pushcache_2_b=192.168.3.207:2003,sso=192.168.3.207:3379,session=192.168.3.207:3379,recovery=192.168.3.207:3379",
+    "redisaddrs": "other=192.168.3.11:1712,push=192.168.3.11:1712,pushcache_1=192.168.3.18:2001,pushcache_2_a=192.168.3.18:2002,pushcache_2_b=192.168.3.18:2003,sso=192.168.3.11:1712,session=192.168.3.11:1712,recovery=192.168.3.11:1712",
     "webport": "89",
     "weixinrpc": "127.0.0.1:8083",
     "cassandra": {

+ 111 - 13
src/jfw/modules/app/src/web/staticres/jyapp/wx_dataExport/css/pay_order.css

@@ -8,7 +8,9 @@
 }
 
 #pay_order {
-  padding-bottom: .94rem;
+  padding-bottom: 2.7rem;
+    font-size: .24rem !important;
+	background: rgba(245,244,249,1);
 }
 #pay_order .main .progress {
   display: -webkit-box;
@@ -193,9 +195,9 @@
       -ms-flex-align: center;
           align-items: center;
   font-size: .28rem;
-  color: #888;
+  color: #1d1d1d;
   margin-left: .3rem;
-  border-bottom: 1px solid #e0e0e0;
+/*  border-bottom: 1px solid #e0e0e0;*/
 }
 #pay_order .main .form .form-item .form-control .on {
   color: #888;
@@ -210,8 +212,10 @@
   display: flex;
 }
 #pay_order .main .form .form-item .form-control .input input[type='text'] {
-  height: 100%;
-  width: 100%;
+/*  height: 100%;*/
+      width: 2rem;
+	padding: .2rem .1rem;
+    margin-top: .05rem;
 }
 #pay_order .main .form .form-item .form-control .input input[type='number'] {
   -webkit-box-flex: 1;
@@ -220,8 +224,11 @@
 }
 #pay_order .main .form .form-item .form-control .input button {
   background: transparent;
-  color: #2cb7ca;
+  color: #888;
   font-size: .3rem;
+position: absolute;
+    top: 0.26rem;
+    right: 0.4rem;
 }
 #pay_order .main .form .form-item .way {
   position: relative;
@@ -257,14 +264,35 @@
 #pay_order .main .form .form-item .way .way-right .icon-right {
   color: #C2C2C2;
   font-size: .26rem;
+/*	display:none;*/
+    margin-top: 0.13rem;
+}
+#pay_order .main .form .form-item.phone-number {
+  margin-top: .23rem;
+}
+#pay_order .main .form .form-item.phone-number .form-control {
+  border-bottom: none;
+}
+#pay_order .main .form .form-item.phone-number .form-control .input {
+  	padding: 0 .2rem 0rem 0rem;
+	position:relative;
 }
 #pay_order .main .form .msg {
   padding: .33rem .4rem .16rem;
   color: #888;
+letter-spacing: 0.02rem;
+}
+#pay_order .main .form .fixed-bottom-box {
+  position: fixed;
+  bottom: 0;
+  left: 0;
+  right: 0;
+  z-index: 99;
+  background-color: #fff;
 }
 #pay_order .main .form .radio-form {
   background: transparent;
-  padding: .2rem .3rem;
+  padding: .12rem .12rem;
   border: 0;
   margin: 0;
 }
@@ -294,7 +322,7 @@
   -webkit-box-pack: end;
       -ms-flex-pack: end;
           justify-content: flex-end;
-  padding: .2rem .3rem;
+  padding: .12rem .12rem;
 }
 #pay_order .main .form .price span {
   text-decoration: line-through;
@@ -313,11 +341,7 @@
   -webkit-box-align: center;
       -ms-flex-align: center;
           align-items: center;
-  position: fixed;
-  bottom: 0;
-  left: 0;
-  right: 0;
-  z-index: 99;
+	border-top:1px solid #e0e0e0;
 }
 #pay_order .main .form .form-btn .btn {
   -webkit-box-flex: 1;
@@ -421,3 +445,77 @@
 #pay_order .pay_way .box .box_bd .weui-check:checked + .weui-icon-checked:before {
   color: #2cb7ca;
 }
+#pay_order #devinput{
+	position: absolute;
+    right: 0.5rem;
+    top: 0.03rem;
+}
+#pay_order #devinput i{
+	display:none;
+    color: #2cb7ca;
+}
+#pay_order #devinput span{
+	display:none;
+    color: #FE737A;
+}
+#pay_order #email-input{
+	padding: 0 .2rem 0rem 0rem;
+    position: relative;
+	height: 0.88rem;
+}
+#pay_order #email-input input{
+	width:4rem;
+}
+#pay_order #codeinput{
+	    padding: 0 .2rem;
+    position: relative;
+	    height: 0.88rem;
+}
+#pay_order #codeinput #code{
+	width:2rem;
+}
+#pay_order #codeinput #devinput{
+	right: 2.3rem !important;
+}
+
+
+body .loading_ {
+    height: 100%;
+    width: 100%;
+    position: fixed;
+    background: #382f3d;
+    z-index: 999999999990;
+	opacity: .7;
+}
+body .loading_ > p {
+    position: absolute;
+    left: 0;
+    right: 0;
+    top: 0;
+    bottom: 0;
+    margin: auto;
+    height: 60px;
+    width: 60px;
+    text-align: center;
+    line-height: 60px;
+    font-size: 0.36rem;
+    color: rgba(44, 183, 202, 0.8);
+}
+body .loading_ p span {
+    position: absolute;
+    display: block;
+    height: 40px;
+    width: 40px;
+    margin: 10px;
+    border-radius: 50%;
+    -webkit-box-shadow: 0 2px 3px rgba(44, 183, 202, 0.8);
+    animation: loading_ ease 1s infinite;
+    left: 0;
+    top: 0;
+}
+@keyframes loading_ {
+  0% {
+    transform: rotate(0deg); }
+  100% {
+    transform: rotate(360deg); } 
+}

+ 6 - 13
src/jfw/modules/app/src/web/templates/dataExport/404.html

@@ -1,26 +1,19 @@
-<!DOCTYPE html>
 <html>
 	<head>
 		<meta charset="utf-8">
 		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
 		<title>404</title>
-		<script src="../js/rem.js"></script>
-		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css"/>
-		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/no_result.css">
-		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css">
+		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/rem.js"></script>
+		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/base.css?v={{Msg "seo" "version"}}"/>
+		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/css/no_result.css?v={{Msg "seo" "version"}}">
+		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/wx_dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
 	</head>
 	<body>
 		<div id="no_result">
-			<!-- <header class="header">
-				<a href="#" class="return pull-left">
-					<i class="icon iconfont">&#xe640;</i>
-				</a>
-				<h1 class="title">支付订单</h1>
-			</header> -->
 			<main class="main">
-				<img src="../image/fish.png" >
+				<img src="{{Msg "seo" "cdn"}}/wx_dataExport/images/fish.png" >
 				<p>根据您的筛选条件,未匹配到数据</p>
-				<a href="#">返回筛选</a>
+				<a href="javascript:history.go(-1)">返回筛选</a>
 			</main>
 		</div>
 	</body>

+ 586 - 0
src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html

@@ -0,0 +1,586 @@
+<html>
+    <head>
+        <meta charset="utf-8">
+        <title>支付订单</title>
+		<meta name="format-detection" content="telephone=no" />
+		<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
+        <meta name="apple-mobile-web-app-capable" content="yes">
+        <meta name="apple-mobile-web-app-status-bar-style" content="black">
+        <script src="{{Msg "seo" "cdn"}}/jyapp/js/rem.js"></script>
+        <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/css/weui.min.css?v={{Msg "seo" "version"}}">
+        <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/css/base.css?v={{Msg "seo" "version"}}" />
+        <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
+        <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/css/pay_order.css?v={{Msg "seo" "version"}}2">
+        <script src="{{Msg "seo" "cdn"}}/jyapp/js/jquery-3.2.1.min.js"></script>
+        <script src="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/js/weui.min.js"></script>
+    </head>
+    <body>
+		<div class="loading_" style="display:none;">
+		    <p><span></span></p>
+		</div>
+        <div id="pay_order">
+            <main class="main">
+                <div class="progress">
+                    <div class="p-item">
+                        <p class="p-item-icon">
+                            <i class="icon iconfont">&#xe606;</i>
+                        </p>
+                        <span class="active">条件筛选</span>
+                        <div class="line" style="background: #2CB7CA"></div>
+                    </div>
+
+                    <div class="p-item">
+                        <p class="p-item-icon">
+                            <i class="icon iconfont">&#xe617;</i>
+                        </p>
+                        <span class="active">支付订单</span>
+                        <div class="line"></div>
+                    </div>
+
+                    <div class="p-item">
+                        <p class="p-item-icon icon-gray">
+                            <i class="icon iconfont">&#xe616;</i>
+                        </p>
+                        <span>数据导出</span>
+                    </div>
+                </div>
+                <div class="form">
+                    <div class="form-item">
+                        <div class="label-title">
+                            <span class="left">已为您筛选 <strong id="msgCount">{{.T.msgCount}}</strong> 条数据</span>
+                            <a href="javascript:history.go(-1)" class="right">返回筛选</a>
+                        </div>
+                        <!-- 选择字段包 -->
+                        <div class="choose">
+                            <div class="choose-item active">
+                                <h2>标准字段包</h2>
+                                <p>
+                                    <span class="initial">{{.T.unitPrice_normal}}元/条</span>
+                                    <span class="current">{{.T.unitPrice_normal_final}}元/条</span>
+                                </p>
+                                <!-- <i class="icon iconfont mark">&#xe611;</i> -->
+                                <img class="mark" src="/wx_dataExport/images/mark.png">
+                            </div>
+                            <div class="choose-item">
+                                <h2>
+                                    <i class="icon iconfont crown">&#xe604;</i>
+                                    <span>高级字段包</span>
+                                </h2>
+                                <p>
+                                    <span class="initial">{{.T.unitPrice_senior}}元/条</span>
+                                    <span class="current">{{.T.unitPrice_senior_final}}元/条</span>
+                                </p>
+                                <!-- <i class="icon iconfont mark">&#xe611;</i> -->
+                                <img class="mark" src="/wx_dataExport/images/mark.png">
+                            </div>
+                        </div>
+                        <!-- 字段包提示 -->
+                        <div class="tips">
+                            <span>标准字段包、高级字段包</span>
+                            <i class="icon iconfont tips-icon" data-id="dialog">&#xe63b;</i>
+                        </div>
+                    </div>
+                    <div class="form-item phone-number">
+                        <div class="form-control">
+<!--                            <label for="">手机号:</label>-->
+                            <div class="input">
+                                <input type="text" class="phone_input" maxlength="11" placeholder="手机号">
+								<div id="devinput" style="top: -0.05rem;">
+									<i class="icon iconfont phone_check_ok"></i>
+									<span class="phone_err_msg">手机号不正确</span>
+								</div>
+                            </div>
+                        </div>
+                    </div>
+                    <p class="msg">*数据导出将发送至邮箱</p>
+                    <div class="form-item" id="verify">
+                        <div class="form-control">
+<!--                            <label for="">邮箱:</label>-->
+                            <div class="input" id="email-input">
+                                <input type="text" class="email_input" placeholder="邮箱">
+								<div id="devinput">
+									<i class="icon iconfont email_check_ok"></i>
+									<span class="email_err_msg">邮箱不正确</span>
+								</div>
+                            </div>
+                        </div>
+                        <div class="form-control" style="display: none;border-top: 1px solid #e0e0e0;margin-top: 0.06rem;">
+<!--                            <label for="">验证码:</label>-->
+                            <div class="input" id="codeinput">
+                                <input type="text" value="" readonly=true class="verity_input" id="code" maxlength="6" placeholder="验证码">
+								<div id="devinput">
+									<i class="icon iconfont code_check_ok"></i>
+									<span class="code_err_msg">验证码错误</span>
+								</div>
+                                <button type="button" class="sendCode" disabled id="sendCode">发送验证码</button>
+                            </div>
+                        </div>
+                    </div>
+                    <div class="form-item" style="margin-top: .2rem;">
+                        <div class="way">
+                            <span>支付方式</span>
+                            <div class="way-right" id="choose_way"><span class="payment">微信支付</span><i class="iconfont icon-arrow icon-right"></i></div>
+                        </div>
+                    </div>
+                    <p class="msg">购买须知:最低起售{{.T.orderMinPrice}}元;标准字段包:原价{{.T.unitPrice_normal}}元/条、{{.T.discount10}}折价{{.T.unitPrice_normal_final}}元/条计费;高级字段包:原价{{.T.unitPrice_senior}}元/条、{{.T.discount10}}折价{{.T.unitPrice_senior_final}}元/条计费;</p>
+                    <div class="fixed-bottom-box">
+                        <div class="weui-cells weui-cells_checkbox radio-form">
+                            <label class="weui-cell weui-check__label" for="s11">
+                                <div class="weui-cell__hd">
+                                    <input type="checkbox" class="weui-check" name="checkbox1" id="s11" />
+                                    <i class="weui-icon-checked"></i>
+                                </div>
+                                <div class="weui-cell__bd read">
+                                    <p>我已阅读,理解并接受 <a href="/jyapp/front/staticPage/dataExport_serviceterms.html">《剑鱼标讯线上购买与服务条款》</a></p>
+                                </div>
+                            </label>
+                        </div>
+                        <div class="price">
+                            <span class="pay_before">原价:¥20,000</span>
+                            <strong class="pay_discount">¥16,300</strong>
+                        </div>
+                        <div class="form-btn">
+                            <button class="btn prew dataPreview">预览数据</button>
+                            <button class="btn enter toPay" disabled="disabled">确认支付</button>
+                        </div>
+                    </div>
+                </div>
+            </main>
+            <!-- 引用weui Dialog组件 -->
+            <div class="js_dialog" id="tipDialog" style="display: none;">
+                <div class="weui-mask"></div>
+                <div class="weui-dialog">
+                    <div class="weui-dialog__bd">
+                        <h1 class="dialog-title">字段包说明</h1>
+                        <ul class="info">
+                            <li>
+                                <label>·标准字段包</label>
+                                <p>公告标题、公告内容、剑鱼地址、省份城市、发布时间、项目名称、采购单位中标单位、中标价、币种、公告类别</p>
+                            </li>
+                            <li>
+                                <label>·高级字段包</label>
+                                <p>公告标题、公告内容、公告地址、剑鱼地址、省份、城市、发布时间、项目名称、项目编号、采购单位、采购单位联系人、采购单位联系电话、预算、开标日期、中标单位、中标单位联系方式、中标价、招标机构、项目范围、币种、公告类别</p>
+                            </li>
+                        </ul>
+                    </div>
+                    <div class="weui-dialog__ft">
+                        <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
+                    </div>
+                </div>
+            </div>
+            <!-- 选择支付方式  --> 
+            <div class="js_dialog pay_way" id="pay_way" style="display: none;">
+                <div class="weui-mask"></div>
+                <div class="box">
+                    <div class="box_hd">
+                        <span></span>
+                        <h3>支付方式</h3>
+                        <span class="cancel">取消</span>
+                    </div>
+                    <div class="box_bd">
+                        <div class="weui-cells weui-cells_checkbox choose-form">
+                            <label class="weui-cell weui-check__label wx_label" for="wx">
+                                <div class="weui-cell__bd read">
+                                    <p><img src="/wx_dataExport/images/weixin.png">微信支付</p>
+                                </div>
+                                <div class="weui-cell__hd">
+                                    <input type="radio" class="weui-check" name="way" value="微信支付" id="wx" checked />
+                                    <i class="weui-icon-checked"></i>
+                                </div>
+                            </label>
+                            <label class="weui-cell weui-check__label zfb_label" for="zfb">
+                                <div class="weui-cell__bd read">
+                                    <p><img src="/wx_dataExport/images/zhifubao.png">支付宝支付</p>
+                                </div>
+                                <div class="weui-cell__hd">
+                                    <input type="radio" class="weui-check" name="way" value="支付宝支付" id="zfb" />
+                                    <i class="weui-icon-checked"></i>
+                                </div>
+                            </label>
+                        </div>
+                    </div>
+                </div>
+            </div>
+		</div>
+
+        <script>
+			var id = {{.T._id}}
+			var msgCount={{.T.msgCount}}
+			var msgMaxCount={{.T.msgMaxCount}}
+			var discount={{.T.discount}}
+			var unitPrice_normal={{.T.unitPrice_normal}}
+			var unitPrice_senior={{.T.unitPrice_senior}}
+			var orderMinPrice={{.T.orderMinPrice}}
+			var finishEmailVerity=false;
+			var readClause=false;
+			var dataType=1;
+			var finishPhoneVerity=false;
+			//
+			var email_lastInput={{.T.email}}
+			var email_lastVerity={{.T.timeSpaceing}}
+			var previewDataTime={{.T.PreviewData}}
+			var phone_lastInput={{.T.phone}}
+			//可以支付
+			var canpay=true;
+			//订单编号
+			var order_code = ""
+			function accMul(arg1,arg2){  
+				 var m=0,s1=arg1.toString(),s2=arg2.toString();  
+				 try{m+=s1.split(".")[1].length}catch(e){}  
+				 try{m+=s2.split(".")[1].length}catch(e){} 
+				 return parseInt(Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m).toString()*100)/Math.pow(10,2);
+			}  	
+			//
+			function FormatNum(n){
+				if(n>=1000){
+					return Math.floor(n/1000)+","+("0000"+n%1000).slice(-3)
+				}
+				return n
+			}
+			//
+			function ChangePayMoney(){
+				var shouldPay=0;var beforePay=0;
+				if(dataType==1){
+					beforePay=accMul(unitPrice_normal,msgCount)
+					shouldPay=accMul(beforePay,discount)
+				}else if(dataType==2){
+					beforePay=accMul(unitPrice_senior,msgCount)
+					shouldPay=accMul(beforePay,discount)
+				}
+				shouldPay=shouldPay>orderMinPrice?shouldPay:orderMinPrice;
+				beforePay=beforePay>orderMinPrice?beforePay:orderMinPrice;
+				$(".pay_discount").text("¥"+shouldPay);
+				$(".pay_before").text("¥"+beforePay)
+			}
+            $(function() {
+				ChangePayMoney();
+				
+				if (sessionStorage.getItem("order_email"+{{.T._id}})!=null){
+					$(".email_check_ok").show();
+					$(".email_input").val(sessionStorage.getItem("order_email"+{{.T._id}}));
+					finishEmailVerity=true;
+				}else if(email_lastInput!=""){
+					$(".email_check_ok").show();
+					$(".email_input").val(email_lastInput);
+					finishEmailVerity=true;
+				}
+				if(email_lastVerity>0){
+					sendemailTimer(email_lastVerity);
+				}
+				if (sessionStorage.getItem("order_phone"+{{.T._id}})!=null){
+					$(".phone_check_ok").show();
+					$(".phone_input").val(sessionStorage.getItem("order_phone"+{{.T._id}}));
+					finishPhoneVerity=true;
+				}else if(phone_lastInput!=""){
+					$(".phone_check_ok").show();
+					$(".phone_input").val(phone_lastInput);
+					finishPhoneVerity=true;
+				}
+				//
+                $('#choose_way').click(function() {
+                    $('.pay_way').slideDown('slow')
+                })
+                /* 选择支付方式*/
+                $('input:radio[name="way"]').click(function() {
+                    var checkValue = $('input:radio[name="way"]:checked').val();
+                    console.log(checkValue);
+                    $('.pay_way').hide(200)
+                    $('.payment').html(checkValue)
+                });
+                $(".cancel").click(function() {
+                    $('.pay_way').hide(200)
+                })
+				//数据展示
+				if (sessionStorage.getItem("order_spec"+{{.T._id}})!=null){
+					dataType = sessionStorage.getItem("order_spec"+{{.T._id}});
+				}
+				if(dataType==1){
+					$(".switch-dataType .bz").addClass("active")
+					$(".switch-dataType .gj").removeClass("active")
+				}else{
+					$(".switch-dataType .bz").removeClass("active")
+					$(".switch-dataType .gj").addClass("active")
+				}
+				//
+                $('.choose .choose-item').each(function() {
+                    var index = $(this).index();
+                    $(this).click(function() {
+						//类型切换
+                        $(this).addClass("active").siblings().removeClass("active");
+						if(index==0){
+							dataType=1;
+						}else if(index==1){
+							dataType=2;
+						}
+						ChangePayMoney();
+                    })
+                })
+                $('.tips-icon').on('click', function() {
+                    $('#tipDialog').show(200);
+                    $('.weui-dialog__btn_primary').click(function() {
+                        $('#tipDialog').hide(200);
+                    })
+                });
+				//手机号输入监控
+				var Verification = {
+			    	//手机号验证
+			    	isPhone: function(value) {
+				        return /^[1][3-9][0-9]{9}$/.test(value);
+				    }
+				};
+				$(".phone_input").on("input propertychange",function() {
+					var phone_input = $(this).val().replace(/\s*/g,"");
+					if (phone_input.length == 11) {
+						if(Verification.isPhone(phone_input)){
+							$.post("/front/dataExport/checkPhoneVerify",{"phone":phone_input},function(data){
+								if(data.success){
+									$(".phone_check_ok").show();
+									$(".phone_err_msg").hide();
+									finishPhoneVerity=true;
+									if(readClause&&finishEmailVerity){
+										$(".toPay").removeAttr("disabled")
+									}
+								}else{
+									$(".phone_err_msg").show();
+									$(".phone_check_ok").hide();
+									finishPhoneVerity=false;
+									$(".toPay").attr("disabled","disabled");
+								}
+							})
+						}else{
+							$(".phone_err_msg").show();
+							$(".phone_check_ok").hide();
+							finishPhoneVerity=false;
+							$(".toPay").attr("disabled","disabled");
+						}
+					}else{
+						$(".phone_err_msg").hide();
+						$(".phone_check_ok").hide();
+						finishPhoneVerity=false;
+						$(".toPay").attr("disabled","disabled");
+					}
+				}).blur(function(){
+					var phone_input = $(this).val().replace(/\s*/g,"");
+					if (phone_input.length != 11) {
+						$(".phone_err_msg").show();
+						$(".phone_check_ok").hide();
+						finishPhoneVerity=false;
+						$(".toPay").attr("disabled","disabled");
+					}
+				});
+				//邮箱输入监控
+				$(".email_input").on("input propertychange",function() {
+					var email_input = $(this).val().replace(/\s*/g,"");
+					if(email_input.indexOf("@")>0){
+						if(email_input!=email_lastInput){
+							$(this).parents('div.form-control').siblings().slideDown();
+							console.log(email_lastVerity)
+							if(email_lastVerity>0){
+								$("#sendCode").attr("disabled", true);
+								$(".verity_input").attr("readonly",true);
+							}
+							finishEmailVerity=false;
+							$(".toPay").attr("disabled","disabled");
+							if(/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/.test(email_input)){
+								$("#sendCode").removeAttr("disabled");
+								$(".email_err_msg").hide();
+								$(".email_check_ok").hide();
+							}else{
+								$("#sendCode").attr("disabled", true);
+								$(".email_check_ok").hide();
+								$(".email_err_msg").hide();
+							}
+						}else{
+							finishEmailVerity=true;
+							if(readClause&&finishPhoneVerity){
+								$(".toPay").removeAttr("disabled")
+							}
+							$("#sendCode").attr("disabled","disabled");
+							$(".verity_input").attr("readonly",true);
+							$(".email_err_msg").hide();
+							$(".email_check_ok").show();
+							$(this).parents('div.form-control').siblings().slideUp();
+						}
+					}else{
+						$(this).parents('div.form-control').siblings().slideUp();
+						$("#sendCode").attr("disabled","disabled");
+						$(".verity_input").attr("readonly",true);
+						$(".email_err_msg").hide();
+						$(".email_check_ok").hide();
+					}
+				}).blur(function(){
+					var email=$(".email_input").val().replace(/\s*/g,"");
+					if(!/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/.test(email)){
+						$(".email_err_msg").show();
+						$(".email_check_ok").hide();
+						return
+					}
+					$("#sendCode").removeAttr("disabled");
+					$(".email_check_ok").hide();
+					$(".email_err_msg").hide();
+				});
+				//点击发送验证码-邮箱验证
+				var canVerify=true;
+				$(".sendCode").on("click",function(){
+					var email=$(".email_input").val().replace(/\s*/g,"");
+					if(!/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/.test(email)){
+						$(".email_err_msg").show();
+						$(".email_check_ok").hide();
+						return
+					}
+					if(!canVerify){
+						return
+					}
+					canVerify=false;
+					$.post("/front/dataExport/sendMailVerify",{"email":email},function(data){
+						canVerify=true;
+						if(data.success){
+							if(data.errCode==4){
+								EasyAlert.show(data.errMsg,"",3000);
+								finishEmailVerity=true;
+								$(".email_check_ok").show();
+								$(".email_input").parents('div.form-control').siblings().slideUp();
+							}else{
+								$(".toPay").attr("disabled","disabled");
+								finishEmailVerity=false;
+								//发送成功
+								sendemailTimer(60*5);
+								$(".verity_input").removeAttr("readonly");;
+								$(".sendCode").attr("disabled","disabled");
+								$(".email_input").attr("readonly",true);
+							}
+						}else{
+							EasyAlert.show(data.errMsg,"",3000)
+							if(data.errCode==2){
+								sendemailTimer(data.time);
+								$(".sendCode").attr("disabled","disabled");
+								$(".email_input").attr("readonly",true);
+							}
+						}
+					},"json")
+				});
+				//校验验证码
+				$(".verity_input").bind("input propertychange",function(){
+					var verity=$(this).val()
+					var email=$(".email_input").val().replace(/\s*/g,"");
+					if(verity.length==6){
+						$.post("/front/dataExport/checkMailVerify",{"emailVerity":verity,"email":email},function(data){
+							if(data.success){
+								finishEmailVerity=true;
+								if(readClause&&finishPhoneVerity){
+									$(".toPay").removeAttr("disabled")
+								}
+								$(".email_check_ok").show();
+								$(".email_err_msg").hide();
+								$(".verity_input").attr("readonly",true);
+								$(".email_input").parents('div.form-control').siblings().slideUp();
+							}else{
+								EasyAlert.show("验证码错误","",3000);
+							}
+						})
+					}else{
+						$(".email_err_msg").hide();
+					}
+				})
+				
+				//点击阅读条款
+				$(".weui-check").on("click", function () {
+					if($(this).is(":checked")){
+						readClause=true;
+						if(finishEmailVerity&&finishPhoneVerity){
+							$(".toPay").removeAttr("disabled")
+						} 
+					}else{
+						readClause=false;
+						$(".toPay").attr("disabled","disabled");
+					}
+				})
+				
+				//数据浏览
+				$(".dataPreview").on("click",function(){
+					if(previewDataTime<50){
+						previewDataTime++
+						window.open("/jyapp/front/wx_dataExport/toPreview/"+{{.T._id}});
+					}else{
+						EasyAlert.show("预览数据次数超出今日上限!","",3000);
+					}
+				})
+				
+				//确认支付
+				$(".toPay").on("click",function(){
+					if(!finishEmailVerity||!readClause||!canpay||!finishPhoneVerity){
+						return	
+					}
+					$(".loading_").show();
+					canpay=false;
+					
+					var param={};
+					param.pay_way="weixin";
+					param.data_spec=dataType==2?"senior":"standard";
+					param.id={{.T._id}}
+					param.sourcePage="weixin"
+					//先去创建预支付订单
+					$.post("/weixin/sacnPay/createOrder",param,function(data){
+						//alert(JSON.stringify(data))
+						if(data.status=="y"){
+							sessionStorage.setItem("order_spec"+{{.T._id}}, dataType);
+							sessionStorage.setItem("order_email"+{{.T._id}}, $(".email_input").val().replace(/\s*/g,""));
+							sessionStorage.setItem("order_phone"+{{.T._id}}, $(".phone_input").val().replace(/\s*/g,""));
+							//预支付订单创建成功后 调微信支付
+							if(data.res){
+								order_code=data.code;
+								//------
+							}
+						}else{
+							canpay=true;
+							EasyAlert.show("生成订单出错,请稍后尝试!","",3000);
+						}
+						$(".loading_").hide();
+					},"json");
+					
+				})
+            })
+			//倒计时
+			function sendemailTimer(t){
+				$(".sendCode").text(""+t+"s");
+				$(".sendCode").attr("disabled","disabled");
+				r=setInterval(function(){
+					t--;
+					$(".sendCode").text(""+t+"s")
+					if(t<=0){
+						clearInterval(r)
+						$(".sendCode").text("发送验证码");
+						if(!finishEmailVerity){
+							$(".verity_input").attr("readonly",true);
+							$(".sendCode").removeAttr("disabled");
+							$(".email_input").removeAttr("readonly");
+							$(".sendCode").css("color","#2CB7CA");
+						}
+					}
+				},1000)
+			}
+			//提示框
+			var EasyAlert = {
+				timeout: null,
+				waitTime: 1000,
+				show: function(text,css,waitTime){
+					if(this.timeout != null){
+						clearTimeout(this.timeout);
+						this.hide();
+						this.timeout = null;
+					}
+					var thisClass = this;
+					this.timeout = setTimeout(function(){
+						thisClass.hide();
+						thisClass.timeout = null;
+					},waitTime?waitTime:this.waitTime);
+					$("body").append('<div class="easyalert" id="easyAlert">'+text+'</div>');
+					$("#easyAlert").css({"left":"50%","margin-top":-($("#easyAlert").outerHeight()/2),"margin-left":-($("#easyAlert").outerWidth()/2)}).show();
+				},
+				hide: function(){
+					$("#easyAlert").remove();
+				}
+			}
+        </script>
+    </body>
+</html>

+ 59 - 0
src/jfw/modules/app/src/web/templates/dataExport/dataExport_previewData.html

@@ -0,0 +1,59 @@
+<html>
+	<head>
+		<meta charset="utf-8">
+		<title>预览数据</title>
+		<meta name="viewport" content="initial-scale=1, maximum-scale=1">
+		<meta name="apple-mobile-web-app-capable" content="yes">
+		<meta name="apple-mobile-web-app-status-bar-style" content="black">
+		<script src="{{Msg "seo" "cdn"}}/jyapp/js/rem.js"></script>
+		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/css/base.css" />
+		<link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/iconfont/iconfont.css" />
+		<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/jyapp/wx_dataExport/css/preview_data.css">
+		<style>
+			iframe{
+				border: 0px !important;
+			}
+		</style>
+	</head>
+	<body>
+		<div id="preview_data">
+			<!-- <header class="header">
+				<a href="#" class="return pull-left">
+					<i class="icon iconfont">&#xe640;</i>
+				</a>
+				<h1 class="title">预览数据</h1>
+			</header> -->
+			<main class="main">
+				<div class="buttons-tab">
+					<ul>
+						<li class="tab-link active">标准字段包</li>
+						<li class="tab-link ">高级字段包</li>
+					</ul>
+				</div>
+				<div class="tabs">
+					<div class="tab active">
+						<iframe id="one" width="100%" height="100%" src="/front/dataExport/previewData/{{.T.id}}?dataType=1"></iframe>
+					</div>
+					<div class="tab" style="display: none;">
+						<iframe id="two" width="100%" height="100%" src="/front/dataExport/previewData/{{.T.id}}?dataType=2"></iframe>
+					</div>
+				</div>
+			</main>
+		</div>
+		<script src="{{Msg "seo" "cdn"}}/wx_dataExport/js/zepto.js"></script>
+		<script>
+			$(function() {
+				$(".buttons-tab .tab-link").each(function() {
+					var index = $(this).index();
+					$(".buttons-tab .tab-link").eq(0).addClass("active");
+
+					$(this).click(function() {
+						$(this).addClass("active").siblings().removeClass("active");
+						$(".tabs>.tab").eq(index).show().siblings().hide();
+					})
+
+				})
+			})
+		</script>
+	</body>
+</html>

+ 386 - 0
src/jfw/modules/app/src/web/templates/staticPage/dataExport_serviceterms.html

@@ -0,0 +1,386 @@
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport"
+          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+	<link href="{{Msg "seo" "cdn"}}/css/dev2/reset_pc.css?v={{Msg "seo" "version"}}" rel="stylesheet">
+    <title>剑鱼标讯线上购买与服务条款</title>
+	<style type="text/css">
+	.public-nav{
+	    border-bottom: 1px solid #e0e0e0;
+		background-color: #fff;
+	}
+	/*j-wx-code Start*/
+	.j-wx-code{
+		width: 335px;
+		height: 355px;
+		background-color: #fff;
+		-webkit-border-radius: 6px;
+		   -moz-border-radius: 6px;
+		        border-radius: 6px;
+		position: relative;
+		/*margin: 100px auto;*/
+	}
+	.j-wx-code>.code-close{
+		width: 40px;
+		height: 40px;
+		position: absolute;
+		right: -20px;
+		top: -20px;
+		cursor: pointer;
+		-webkit-transition: all 1s;
+		-o-transition: all 1s;
+		-moz-transition: all 1s;
+		transition: all 1s;
+	}
+	.j-wx-code>.code-close:hover{
+		-webkit-transform: scale(1.2);
+		   -moz-transform: scale(1.2);
+		    -ms-transform: scale(1.2);
+		     -o-transform: scale(1.2);
+		        transform: scale(1.2);
+	}
+	.j-wx-code>.code-title{
+		height: 82px;
+		background:url(/images/j-wx-code-title.png) center center no-repeat;
+		-webkit-animation: moveYun 15s infinite linear both;
+		   -moz-animation: moveYun 15s infinite linear both;
+		     -o-animation: moveYun 15s infinite linear both;
+		        animation: moveYun 15s infinite linear both;
+	}
+	.j-wx-code>.code-wxm{
+		text-align: center;
+		margin-bottom: -6px;
+		margin-top: -16px;
+		
+	}
+	.j-wx-code>.code-wxm>img{
+		width: 200px;
+		height: 200px;
+		margin-top: -5px;
+	}
+	.j-wx-code>.code-text{
+		font: 16px "microsoft yahei";
+		text-align: center;
+		color: #252627;
+	}
+	.j-wx-code>.code-bottom{
+		width: 470px;
+		height: 211px;
+		position: absolute;
+		bottom: -113px;
+		left: -73px;
+		background: url({{Msg "seo" "cdn"}}/images/j-wx-code-bottom.png) 0 0 no-repeat;
+	}
+	.j-wx-code>.code-bottom>img{
+		position: absolute;
+		left: 280px;
+		top: 88px;
+		-webkit-animation: codeWxMove 10s linear both;
+		   -moz-animation: codeWxMove 10s linear both;
+		     -o-animation: codeWxMove 10s linear both;
+		        animation: codeWxMove 10s linear both;
+		-webkit-animation-fill-mode:forwards;
+		   -moz-animation-fill-mode:forwards;
+		     -o-animation-fill-mode:forwards;
+		        animation-fill-mode:forwards;
+	}
+	.main>p{
+		padding-left: 20px;
+		margin: 5px 0px;
+	}
+	.main>h1{
+		margin-bottom: .8rem;
+    	margin-top: 1.2rem;
+	}
+	.yijixuhao{
+		display: inline-block;
+		margin-left: 10px;
+	}
+	.erjixuhao{
+		display: inline-block;
+		margin-left: 10px;
+	}
+	</style>
+</head>
+<body>
+<section style="margin: auto;padding: 2rem 1rem" class="main">
+    <p>
+	<div class="MsoNormal" align="center" style="font-size:10.5pt;text-align:center;margin-bottom:20px;">
+		<b><span style="font-size: 1.5rem;line-height: 2rem;">剑鱼标讯产品与服务线上购买服务条款<span></span></span></b>
+	</div>
+	<div class="MsoNormal" style="font-size: .9rem;line-height: 1.4rem;text-indent: 2rem;">
+		<span style="line-height:21px;">欢迎<span>“</span>您<span>”</span>与北京拓普丰联信息工程有限公司(以下简称“北京拓普”)及剑鱼标讯共同签署本《剑鱼标讯产品与服务线上购买服务条款》协议(以下简称<span>“</span>本服务条款<span>”</span>),本服务条款阐述之条款和条件适用于您使用北京拓普旗下剑鱼标讯产品与服务,包含</span><span style="">www.jianyu360.com</span><span style="">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>等</span><span style="line-height:21px;">向您提供的剑鱼标讯各项产品与服务。<span></span></span>
+	</div>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">1.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">定义<span></span></span>
+	</h1>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;">
+		<span style="line-height:21px;">除本协议另有规定外,下列用语或术语应当具有以下定义<span>:</span></span>
+	</p>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">1.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普:北京拓普丰联信息工程有限公司,注册地址为</span><span style="">北京市朝阳区北四环中路华严北里健翔</span><span>3</span><span style="">号地峻峰华亭嘉园</span><span>C</span><span style="">座住宅楼</span><span>2011</span><span style="line-height:21px;">,为剑鱼标讯的管理者及运营者。<span></span></span>
+	</p>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">1.2<span class="erjixuhao"></span></span><span style="line-height:21px;">剑鱼标讯:指由北京拓普运营并管理的产品,产品形态包括</span><span style="">www.jianyu360.com</span><span style="">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>等,</span><span style="line-height:21px;">剑鱼标讯为其用户提供招标信息产品与服务。<span></span></span>
+	</p>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">1.3<span class="erjixuhao"></span></span><span style="line-height:21px;">您:指剑鱼标讯注册用户。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">2.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">接受服务条款<span></span></span>
+	</h1>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;">
+		<span style="line-height:21px;">本服务条款是北京拓普及剑鱼标讯与您就剑鱼标讯产品与服务的相关事项所订立的有效合约。您通过盖章、网络页面点击确认或以其他方式选择接受本服务条款,包括但不限于未点击确认本服务条款而事实上使用了北京拓普及剑鱼标讯产品与服务,即表示您与北京拓普及剑鱼标讯已达成协议并同意接受本服务条款的全部约定内容。如若双方盖章文本与网络页面点击确认或以其他方式选择接受之服务条款文本,存有不一致之处,以双方盖章文本为准。<span></span></span>
+	</p>
+	<p class="MsoNormal" align="left" style="font-size:10.5pt;">
+		<span style="line-height:21px;">关于本服务条款,提示您特别关注限制、免责条款,北京拓普及剑鱼标讯对您违规、违约行为的认定处理条款,以及管辖法院的选择条款等。在接受本服务条款之前,请您仔细阅读本服务条款的全部内容。如果您对本服务条款的条款有疑问</span><span style="line-height:21px;color:#0D0D0D;">的,请通过北京拓普及剑鱼标讯客服进行询问,客服将向您解释条款内容。</span><span style="line-height:21px;">如果您不同意本服务条款的任意内容,或者无法准确理解北京拓普及剑鱼标讯对条款的解释,请不要进行后续操作。<span></span></span>
+	</p>
+	<p class="MsoNormal" style="font-size:10.5pt;text-align:justify;">
+		<span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">3.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">服务内容<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">3.1<span class="erjixuhao"></span></span><span style="">本条款中<span>“</span>产品与服务<span>”</span>指:北京拓普及剑鱼标讯向您提供<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上所展示的剑鱼标讯产品与服务以及相关的技术支持服务。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">3.2<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯提供的产品与服务必须符合本服务条款的约定。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">4.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">服务费用、支付方式<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">4.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯产品与服务</span><span style="">费用将在您订购页面予以列明公示,您可自行选择具体产品与服务类型并按列明的价格,通过在线方式予以支付。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">4.2<span class="erjixuhao"></span></span><span style="">价格说明:<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">4.2.1<span class="erjixuhao"></span></span><span style="line-height:21px;">销售价:为北京拓普及剑鱼标讯产品与服务的销售价,是您最终决定是否购买商品的依据。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">4.2.2<span class="erjixuhao"></span></span><span style="line-height:21px;">划线价:北京拓普及剑鱼标讯产品与服务展示的划横线价格为参考价,并非原价,该价格可能是北京拓普及剑鱼标讯产品与服务指导价或该项数据服务曾经展示过的销售价;鉴于时间的差异性及市场因素波动,该价格仅供您参考。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">4.2.3<span class="erjixuhao"></span></span><span style="line-height:21px;">折扣:如无特殊说明,折扣指北京拓普及剑鱼标讯产品与服务在原价、或划线价等某一价格基础上计算出的优惠比例或优惠金额;如有疑问,您可在购买前联系北京拓普及剑鱼标讯客服进行咨询。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">4.2.4<span class="erjixuhao"></span></span><span style="line-height:21px;">异常问题:北京拓普及剑鱼标讯产品与服务的具体售价以订单结算页价格为准;如您发现北京拓普及剑鱼标讯产品与服务售价或促销信息有异常,建议购买前先联系北京拓普及剑鱼标讯客服进行咨询。<b><span></span></b></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">4.3<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯保留在您未按照约定支付全部费用之前不向您提供服务和<span>/</span>或技术支持,或者终止服务和<span>/</span>或技术支持的权利。同时,北京拓普及剑鱼标讯有权要求您支付终止服务前您尚未支付的服务费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">4.4<span class="erjixuhao"></span></span><span style="">您完全理解北京拓普及剑鱼标讯价格体系中所有的赠送服务项目或活动均为北京拓普及剑鱼标讯在正常服务价格之外的一次性特别优惠,优惠内容不包括赠送服务项目的修改、更新及维护费用,并且赠送服务项目不可折价冲抵服务价格。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">4.5<span class="erjixuhao"></span></span><span style="">您在支付相应的服务费用后,即可享受北京拓普及剑鱼标讯所提供相对应的产品与服务。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">5.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">权利义务<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1<span class="erjixuhao"></span></span><span style="">您的权利、义务<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.1<span class="erjixuhao"></span></span><span style="">您同意遵守本服务条款以及服务展示页面的相关管理规范及流程。您了解上述协议及规范等内容可能会不时变更。如本服务条款的任何内容发生变动,北京拓普及剑鱼标讯应通过提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>的适当版面公告向您提示修改内容。如您不同意北京拓普及剑鱼标讯对本服务条款相关条款所做的修改,您有权停止使用北京拓普及剑鱼标讯产品与服务,此等情况下,北京拓普及剑鱼标讯应与您进行服务费结算(如有)。如您继续使用北京拓普及剑鱼标讯产品与服务,则视为您接受北京拓普及剑鱼标讯对本服务条款相关条款所做的修改。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.2<span class="erjixuhao"></span></span><span style="">您应按照北京拓普及剑鱼标讯的页面提示及本服务条款的约定支付相应服务费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.3<span class="erjixuhao"></span></span><span style="">您只在内部直接或间接使用北京拓普及剑鱼标讯提供的数据。您不得直接或间接利用北京拓普及剑鱼标讯提供的数据为第三方提供服务或销售产品。如您违反此项约定,北京拓普及剑鱼标讯有权随时终止该协议的履行,不承担您的实际损失,不退还已支付款项,并保留追究您赔偿的权利。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.4<span class="erjixuhao"></span></span><span style="">您承诺:<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.1<span class="erjixuhao"></span></span><span style="line-height:21px;">除北京拓普及剑鱼标讯明示许可外,不得修改、翻译、改编、出租、转许可、在信息网络上传播或转让北京拓普及剑鱼标讯产品与服务,或将获得的数据用于和北京拓普及剑鱼标讯进行同业竞争,也不得逆向工程、反编译或试图以其他方式发现北京拓普及剑鱼标讯提供的服务或软件的源代码;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.2<span class="erjixuhao"></span></span><span style="line-height:21px;">若北京拓普及剑鱼标讯的产品与服务涉及第三方软件之许可使用的,您同意遵守相关的许可协议的约束;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3<span class="erjixuhao"></span></span><span style="line-height:21px;">不利用北京拓普及剑鱼标讯提供的资源和服务下载(<span>download</span>)、储存、发布如下信息或者内容,不为他人发布该等信息提供任何便利(包括但不限于设置<span>URL</span>、<span>BANNER</span>链接等)<span>:</span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.1<span class="erjixuhao"></span></span><span style="line-height:21px;">违反国家规定的政治宣传和<span>/</span>或新闻信息;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.2<span class="erjixuhao"></span></span><span style="line-height:21px;">涉及国家秘密和<span>/</span>或安全的信息;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.3<span class="erjixuhao"></span></span><span style="line-height:21px;">封建迷信和<span>/</span>或淫秽、色情、下流的信息或教唆犯罪的信息;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.4<span class="erjixuhao"></span></span><span style="line-height:21px;">博彩有奖、赌博游戏、<span>“</span>私服<span>”</span>、<span>“</span>外挂<span>”</span>等非法互联网出版活动;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.5<span class="erjixuhao"></span></span><span style="line-height:21px;">违反国家民族和宗教政策的信息;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.6<span class="erjixuhao"></span></span><span style="line-height:21px;">妨碍互联网运行安全的信息;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.7<span class="erjixuhao"></span></span><span style="line-height:21px;">侵害他人合法权益的信息和<span>/</span>或其他有损于社会秩序、社会治安、公共道德的信息或内容;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.3.8<span class="erjixuhao"></span></span><span style="line-height:21px;">其他违反法律法规、部门规章或国家政策的内容。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.4<span class="erjixuhao"></span></span><span style="line-height:21px;">不进行任何改变或试图改变北京拓普及剑鱼标讯提供的系统配置或破坏系统安全的行为;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.5<span class="erjixuhao"></span></span><span style="line-height:21px;">不从事其他违法、违规或违反北京拓普及剑鱼标讯服务条款的行为。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" align="left" style="font-size:10.5pt;text-indent:0cm;">
+		<span style="line-height:21px;">5.1.4.6<span class="erjixuhao"></span></span><span style="line-height:21px;">如北京拓普及剑鱼标讯发现您违反上述条款的约定,有权根据情况采取相应的处理措施,包括但不限于立即终止服务、中止服务或删除相应信息等。如果第三方机构或个人对您提出质疑或投诉,北京拓普及剑鱼标讯将通知您,您有责任在规定时间内进行说明并出具证明材料,如您未能提供相反证据或您逾期未能反馈的,北京拓普及剑鱼标讯将采取包括但不限于立即终止服务、中止服务或删除相应信息等处理措施。因您未及时更新联系方式或联系方式不正确而致使未能联系到您的,亦视为您逾期未能反馈。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.5<span class="erjixuhao"></span></span><span style="">您对自己管理北京拓普及剑鱼标讯平台上各类产品与服务的口令、密码的完整性和保密性负责。因您维护不当或保密不当致使上述数据、口令、密码等丢失或泄漏所引起的一切损失和后果均由您自行承担。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.6<span class="erjixuhao"></span></span><span style="">您了解北京拓普及剑鱼标讯无法保证其所提供的服务毫无瑕疵,但北京拓普及剑鱼标讯承诺不断提升服务质量及服务水平。所以您同意:即使北京拓普及剑鱼标讯提供的服务存在瑕疵,但上述瑕疵是当时行业技术水平所无法避免的,其将不被视为北京拓普及剑鱼标讯违约。您同意和北京拓普及剑鱼标讯一同合作解决上述瑕疵问题。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.1.7<span class="erjixuhao"></span></span><span style="">为了数据的安全,您应负责您数据的备份工作。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.2<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯的权利、义务<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.2.1<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯应按照服务条款约定的</span><span style="">产品和服务为您提供</span><span style="">。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">5.2.2<span class="erjixuhao"></span></span><span style="">北京拓普及剑鱼标讯按照您的支付金额提供增值税发票。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">6.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">用户数据<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="">用户业务数据一经删除,即不可恢复;您应自行承担数据因此被删除所引发的后果和责任,您理解并同意,北京拓普及剑鱼标讯没有继续保留、导出或者返还用户业务数据的义务。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">7.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">知识产权<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">7.1<span class="erjixuhao"></span></span><span style="line-height:21px;">您应保证提交北京拓普及剑鱼标讯的素材、对北京拓普及剑鱼标讯产品与服务的使用及使用北京拓普及剑鱼标讯产品与服务所产生的成果未侵犯任何第三方的合法权益。如有第三方基于侵犯版权、侵犯第三人之权益或违反中国法律法规或其他适用的法律等原因而向北京拓普及剑鱼标讯提起索赔、诉讼或可能向其提起诉讼<span>,</span>则您应赔偿北京拓普及剑鱼标讯因此承担的费用或损失,并使北京拓普及剑鱼标讯完全免责。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">7.2<span class="erjixuhao"></span></span><span style="line-height:21px;">如果第三方机构或个人对您使用北京拓普及剑鱼标讯产品与服务所涉及的相关素材的知识产权归属提出质疑或投诉,您有责任出具相关知识产权证明材料,并配合北京拓普及剑鱼标讯相关投诉处理工作。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">7.3<span class="erjixuhao"></span></span><span style="line-height:21px;">您承认北京拓普及剑鱼标讯向您提供的任何资料、技术或技术支持、软件、服务等的知识产权均属于北京拓普及剑鱼标讯所有。除北京拓普及剑鱼标讯明示同意外,您无权复制、传播、转让、许可或提供他人使用上述资源,否则应承担相应的责任。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">8.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">保密条款<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">8.1<span class="erjixuhao"></span></span><span style="line-height:21px;">保密资料指由一方向另一方披露的所有技术及非技术信息(包括但不限于产品资料,产品计划,价格,财务及营销规划,业务战略,客户信息,客户数据,研发资料,软件硬件,API应用数据接口,技术说明,设计,特殊公式,特殊算法等<span>)</span>。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">8.2<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款任何一方同意对获悉的对方之上述保密资料予以保密,并严格限制接触上述保密资料的员工遵守本条之保密义务。除非国家机关依法强制要求或上述保密资料已经进入公有领域外,接受保密资料的一方不得对外披露。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">8.3<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款双方明确认可保密资料是双方的重点保密信息并是各自的重要资产,本服务条款双方同意尽最大的努力保护上述保密资料等不被披露。一旦发现有上述保密资料泄露事件,双方应合作采取一切合理措施避免或者减轻损害后果的产生。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">8.4<span class="erjixuhao"></span></span><span style="line-height:21px;">本条款不因本服务条款的终止而失效。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">9.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">服务的开始、使用及终止<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.1<span class="erjixuhao"></span></span><span style="line-height:21px;">自您开通之日起即可使用该服务,同时您应保持余额充足以确保服务的持续使用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.2<span class="erjixuhao"></span></span><span style="line-height:21px;">在已开通的功能和<span>/</span>或服务的有效期内,若您中途主动取消或终止功能和<span>/</span>或服务的,北京拓普及剑鱼标讯不予退还已收取的费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.3<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯根据自身商业决策、政府行为、不可抗力等原因可能会选择中止、中断及终止您的功能和<span>/</span>或服务。如有此等情形发生,北京拓普及剑鱼标讯会采取公告的形式通知您,但不承担由此对您造成的任何损失且不退还已经收取的费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.4<span class="erjixuhao"></span></span><span style="line-height:21px;">您在开通功能和<span>/</span>或服务时,应仔细核对帐号名称、开通功能和<span>/</span>或服务类型与时长等具体信息。如因您个人原因造成充错帐号、开通错功能和<span>/</span>或服务、开通错时长,北京拓普及剑鱼标讯不予退还已收取的费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5<span class="erjixuhao"></span></span><span style="line-height:21px;">发生下列情形,北京拓普及剑鱼标讯终止向您提供该服务:<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5.1<span class="erjixuhao"></span></span><span style="line-height:21px;">双方协商一致终止;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5.2<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯由于自身经营政策的变动,提前通过</span><span style="line-height:21px;">www.jianyu360.com</span><span style="line-height:21px;">网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span></span><span style="line-height:21px;">合适版面发通知或给您发站内通知、书面通知的方式,终止本服务条款项下的服务;</span><span style="line-height:21px;"></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5.3<span class="erjixuhao"></span></span><span style="line-height:21px;">由于您严重违反本服务条款(</span><span style="line-height:21px;">包括但不限于<span>a.</span>您未按照本服务条款的约定履行付款义务,及<span>/</span>或<span>b.</span>您严重违反本服务条款中所做的承诺,及<span>/</span>或<span>c.</span>您严重违反法律规定等</span><span style="line-height:21px;">),北京拓普及剑鱼标讯有权提前终止服务,并不退还您已经支付的费用;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5.4<span class="erjixuhao"></span></span><span style="line-height:21px;">您理解并充分认可,虽然北京拓普及剑鱼标讯已经建立(并将根据技术的发展不断完善)必要的技术措施来防御包括计算机病毒、网络入侵和攻击破坏(包括但不限于<span>DDOS</span>)等危害网络安全的事项或行为(以下统称该等行为),但鉴于网络安全技术的局限性、相对性以及该等行为的不可预见性,因此如因您遭遇该等行为而给北京拓普及剑鱼标讯或者北京拓普及剑鱼标讯其他的网络或服务器(包括但不限于本地及外地和国际的网络、服务器等)带来危害,或影响北京拓普及剑鱼标讯与国际互联网或者北京拓普及剑鱼标讯与特定网络、服务器及北京拓普及剑鱼标讯内部的通畅联系,北京拓普及剑鱼标讯可决定暂停或终止服务,并不退还您已经支付的费用。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">9.5.5<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普剑鱼标讯可提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上通告或给您发网站内通知或书面通知的方式终止本服务条款。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">10.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">违约责任<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.1<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款任何一方违约均须依法承担违约责任。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.2<span class="erjixuhao"></span></span><span style="line-height:21px;">您理解,鉴于计算机、互联网的特殊性,下述情况不属于北京拓普及剑鱼标讯违约:<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.2.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯在进行服务器配置、维护时,需要短时间中断服务;<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.2.2<span class="erjixuhao"></span></span><span style="line-height:21px;">由于<span>Internet</span>上的通路阻塞造成您网站访问速度下降。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.3<span class="erjixuhao"></span></span><span style="line-height:21px;">在任何情况下,北京拓普及剑鱼标讯均不对任何间接性、后果性、惩戒性、偶然性、特殊性的损害,包括您使用北京拓普及剑鱼标讯产品与服务而遭受的利润损失承担责任(即使您已被告知该等损失的可能性)。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">10.4<span class="erjixuhao"></span></span><span style="line-height:21px;">在任何情况下,北京拓普及剑鱼标讯对本服务条款所承担的违约赔偿责任总额不超过违约服务对应之服务费总额。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">11.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">不可抗力<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">11.1<span class="erjixuhao"></span></span><span style="line-height:21px;">因不可抗力或者其他意外事件,使得本服务条款的履行不可能、不必要或者无意义的,遭受不可抗力、意外事件的一方不承担责任。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">11.2<span class="erjixuhao"></span></span><span style="line-height:21px;">不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行等以及社会事件如战争、动乱、政府行为、电信主干线路中断、黑客、网路堵塞、电信部门技术调整和政府管制等。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">12.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">法律适用及争议解决<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">12.1<span class="erjixuhao"></span></span><span style="line-height:21px;">本服务条款受中华人民共和国法律管辖。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">12.2<span class="erjixuhao"></span></span><span style="line-height:21px;">在执行本服务条款过程中如发生纠纷,双方应及时协商解决。协商不成时,任何一方可直接向</span><span style="">北京拓普及剑鱼标讯所在地</span><span style="line-height:21px;">人民法院提起诉讼。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">12.3<span class="erjixuhao"></span></span><span style="line-height:21px;">在法院审理期间,除提交法院审理的事项外,本服务条款其他部分仍应继续履行。<span></span></span>
+	</p>
+	<h1 style="text-align:justify;font-size:22pt;">
+		<span style="font-size:14pt;line-height:28px;">13.<span class="yijixuhao"></span></span><span style="font-size:14pt;line-height:28px;">附则<span></span></span>
+	</h1>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">13.1<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>相关页面上的服务说明、价格说明和您确认同意的订购页面是本服务条款不可分割的一部分。如果<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>相关页面上的服务说明、价格说明和您确认同意的订购页面与本服务条款有不一致之处,以本服务条款为准。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">13.2<span class="erjixuhao"></span></span><span style="line-height:21px;">北京拓普及剑鱼标讯有权以提前<span>30</span>天在<span>www.jianyu360.com</span>网站、剑鱼标讯微信公众号、剑鱼标讯<span>APP</span>上公布、或给您发网站内通知或书面通知的方式将本服务条款的权利义务全部或者部分转移给北京拓普及剑鱼标讯的关联公司。<span></span></span>
+	</p>
+	<p class="MsoListParagraph" style="font-size:10.5pt;text-align:justify;text-indent:0cm;">
+		<span style="line-height:21px;">13.3<span class="erjixuhao"></span></span><span style="line-height:21px;">如果任何条款在性质上或其他方面理应在此协议终止时继续存在,那么应视为继续存在的条款,这些条款包括但不局限于保证条款、保密条款、知识产权条款、法律适用及争议解决条款。<span></span></span>
+	</p>
+	<p class="MsoNormal" align="center" style="font-size:10.5pt;text-align:center;">
+		<b><span style="font-size:14pt;line-height:28px;"></span></b>
+	</p>
+</p>
+</section>
+</body>
+</html>

+ 17 - 0
src/jfw/modules/app/src/web/templates/weixin/search/mainSearch.html

@@ -131,6 +131,23 @@
             hideTab()
             $('.selected-export .options').find('i').removeClass('icon-shouqi').addClass('icon-zhankai')
         })
+		
+		//
+		$(".export").on("tap",function(){
+			SuperSearch.setSessionStorage();
+
+			$.ajax({
+				type: "post",
+				url: "/jyapp/front/wx_dataExport/searchExport",
+				data: SuperSearch.reqParam,
+				dataType: "json",
+				success: function(data){
+					if(data._id!=""){
+						window.location.href="/jyapp/front/wx_dataExport/toCreateOrderPage?id="+data._id+"&source=d"
+					}
+				}
+			})
+		})
 	})
 </script>
 </head>