Prechádzať zdrojové kódy

Merge remote-tracking branch 'origin/dev4.5.8.9' into dev4.5.8.9

wangkaiyue 4 rokov pred
rodič
commit
294c69fd2e
29 zmenil súbory, kde vykonal 461 pridanie a 188 odobranie
  1. 67 65
      src/db.json
  2. 1 0
      src/jfw/front/distribution.go
  3. 1 1
      src/jfw/modules/app/src/app/front/distrib.go
  4. 9 9
      src/jfw/modules/app/src/web/templates/dataExport/dataExport_payOrder.html
  5. 5 5
      src/jfw/modules/app/src/web/templates/weixin/wxinfocontent.html
  6. 5 4
      src/jfw/modules/distribution/src/config.json
  7. 36 18
      src/jfw/modules/distribution/src/service/action/capital.go
  8. 3 1
      src/jfw/modules/distribution/src/service/action/partner.go
  9. 43 5
      src/jfw/modules/distribution/src/service/action/share.go
  10. 2 4
      src/jfw/modules/distribution/src/service/filter/filter.go
  11. 2 3
      src/jfw/modules/distribution/src/service/filter/sessionfilter.go
  12. 4 4
      src/jfw/modules/subscribepay/src/config.json
  13. 2 5
      src/jfw/modules/subscribepay/src/entity/dataReportStruct.go
  14. 3 3
      src/jfw/modules/subscribepay/src/entity/dataexport.go
  15. 21 19
      src/jfw/modules/subscribepay/src/entity/distribution.go
  16. 4 6
      src/jfw/modules/subscribepay/src/entity/subscribeVip.go
  17. 0 1
      src/jfw/modules/subscribepay/src/service/afterPay.go
  18. 2 2
      src/jfw/modules/subscribepay/src/service/dataExportPay.go
  19. 2 2
      src/jfw/modules/subscribepay/src/service/vipSubscribeChange.go
  20. 4 4
      src/jfw/modules/subscribepay/src/service/vipSubscribePay.go
  21. 0 1
      src/jfw/modules/subscribepay/src/timetask/dataExportMail.go
  22. 0 1
      src/jfw/modules/weixin/src/oauth/oauth.go
  23. 7 5
      src/jfw/modules/weixin/src/wx/wx.go
  24. 46 0
      src/web/staticres/common-module/vipsubscribe/css/vip-party.css
  25. BIN
      src/web/staticres/common-module/vipsubscribe/image/vip_intro_bg@2x.png
  26. 172 0
      src/web/templates/frontRouter/wx/vipIntro/free/party.html
  27. 10 10
      src/web/templates/pc/createOrderPage.html
  28. 1 1
      src/web/templates/pc/dataPack/createOrderForDataPackage.html
  29. 9 9
      src/web/templates/weixin/dataExport/dataExport_payOrder.html

+ 67 - 65
src/db.json

@@ -1,72 +1,74 @@
 {
-  "mongodb": {
-    "main": {
-      "address": "192.168.3.206:27080",
-      "size": 5,
-      "dbName": "qfw",
-      "replSet": ""
-    },
-    "log": {
-      "address": "192.168.3.206:27090",
-      "size": 5,
-      "dbName": "qfw",
-      "replSet": "",
-      "userName": "admin",
-      "password": "123456"
-    },
-    "ent": {
-      "address": "192.168.3.207:27001,192.168.3.206:27002",
-      "size": 5,
-      "dbName": "mixdata",
-      "userName": "jyDevGroup",
-      "password": "jy@DevGroup"
-    },
-    "qyfw": {
-      "address": "192.168.3.206:27080",
-      "size": 5,
-      "dbName": "jyqyfw"
-    },
-    "bidding": {
-      "address": "192.168.3.207:27001,192.168.3.206:27002",
-      "size": 5,
-      "dbName": "qfw_data",
-      "replSet": "",
-      "collection": "bidding",
-      "collection_back": "bidding_back",
-      "userName": "jyDevGroup",
-      "password": "jy@DevGroup"
-    }
-  },
-  "elasticsearch": {
-    "main": {
-      "address": "http://192.168.3.206:9800",
-      "size": 5
-    }
+<<<<<<< HEAD
+	"mongodb": {
+		"main": {
+			"address": "192.168.3.206:27080",
+	 		"size": 5,
+	 		"dbName": "qfw",
+			"replSet": ""
+		},
+		"log": {
+			"address": "192.168.3.206:27090",
+	 		"size": 5,
+	 		"dbName": "qfw",
+			"replSet": "",
+			"userName": "admin",
+			"password": "123456"
+		},
+		"ent": {
+			"address": "192.168.3.207:27001,192.168.3.206:27002",
+	 		"size": 5,
+	 		"dbName": "mixdata",
+			"userName": "jyDevGroup",
+			"password": "jy@DevGroup"
+		},
+		"qyfw": {
+			"address": "192.168.3.206:27080",
+	 		"size": 5,
+	 		"dbName": "jyqyfw"
+		},
+		"bidding": {
+			"address": "192.168.3.207:27001,192.168.3.206:27002",
+	 		"size": 5,
+	 		"dbName": "qfw_data",
+			"replSet": "",
+			"collection": "bidding",
+			"collection_back": "bidding_back",
+			"userName": "jyDevGroup",
+			"password": "jy@DevGroup"
+		}
+	},
+	"elasticsearch": {
+		"main": {
+			"address": "http://192.168.3.206:9800",
+	    	"size": 5
+		}
     },
     "redis": {
-      "main":{
-      "address": "other=192.168.3.206:1712,push=192.168.3.206:1712,pushcache_1=192.168.3.206:5000,pushcache_2_a=192.168.3.206:5001,pushcache_2_b=192.168.3.206:5002,sso=192.168.3.206:1712,session=192.168.3.206:1712,recovery=192.168.3.206:1712,merge=192.168.3.206:1712"
-    },
-    "login": {
-      "address": "login=192.168.3.206:1712"
-    }
+    	"main":{
+			"address": "other=192.168.3.206:1712,push=192.168.3.206:1712,pushcache_1=192.168.3.206:5000,pushcache_2_a=192.168.3.206:5001,pushcache_2_b=192.168.3.206:5002,sso=192.168.3.206:1712,session=192.168.3.206:1712,recovery=192.168.3.206:1712,merge=192.168.3.206:1712"
+		},
+		"login": {
+			"address": "login=192.168.3.206:1712"
+		}
     },
     "mysql": {
-      "main": {
-          "dbName": "jianyu",
-          "address": "192.168.3.11:3366",
-          "userName": "root",
-          "passWord": "Topnet123",
-      "maxOpenConns": 5,
-      "maxIdleConns": 5
-      },
-    "push": {
-          "dbName": "jianyu",
-          "address": "192.168.3.11:3366",
-          "userName": "root",
-          "passWord": "Topnet123",
-      "maxOpenConns": 5,
-      "maxIdleConns": 5
-      }
+	    "main": {
+	        "dbName": "jianyu",
+	        "address": "192.168.3.11:3366",
+	        "userName": "root",
+	        "passWord": "Topnet123",
+			"maxOpenConns": 5,
+			"maxIdleConns": 5
+	    },
+		"push": {
+	        "dbName": "jianyu",
+	        "address": "192.168.3.11:3366",
+	        "userName": "root",
+	        "passWord": "Topnet123",
+			"maxOpenConns": 5,
+			"maxIdleConns": 5
+	    }
+
     }
 }

+ 1 - 0
src/jfw/front/distribution.go

@@ -123,6 +123,7 @@ func (this *Distrib) LinkShareX(discored string) error {
 	}
 	return this.Redirect("/distribution/share/" + discored)
 }
+
 //企业分销
 func (this *Distrib) LinkShareG(discored string) error {
 	defer util.Catch()

+ 1 - 1
src/jfw/modules/app/src/app/front/distrib.go

@@ -45,7 +45,7 @@ func (this *Distrib) GetERCode(disword string) error {
 	return nil
 }
 
-//
+
 func (this *Distrib) RedirectTo() error {
 	defer util.Catch()
 	userId, _ := this.GetSession("userId").(string)

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

@@ -85,11 +85,11 @@
             <div class="select-type-group">
                 <div class="select-type-title">请选择支付方式</div>
                 <div class="select-card-group">
-                    <div class="select-card-item" @click="togglePayType('数据流量包')" v-show="payMap['数据流量包'].show" :class="{active: payType == '数据流量包'}">数据流量包</div>
-                    <div class="select-card-item" @click="togglePayType('单日限量包')" v-show="payMap['单日限量包'].show" :class="{active: payType == '单日限量包'}">单日限量数据包</div>
+                    <div id="select-data-pack-item" class="select-card-item" @click="togglePayType('数据流量包')" v-show="payMap['数据流量包'].show" :class="{active: payType == '数据流量包'}">数据流量包</div>
+                    <div id="select-day-pack-item" class="select-card-item" @click="togglePayType('单日限量包')" v-show="payMap['单日限量包'].show" :class="{active: payType == '单日限量包'}">单日限量数据包</div>
                     <div class="select-card-item" @click="togglePayType('个人支付')" v-show="payMap['个人支付'].show" :class="{active: payType == '个人支付'}">个人支付</div>
                 </div>
-                <div class="buy-data-pack-tip">数据流量包已上线,特惠充值随心导,2年有效。<a href="/jyapp/dataPack/createOrder">立即购买  ></a></div>
+                <div class="buy-data-pack-tip">数据流量包已上线,特惠充值随心导,2年有效。<a id="buy-data-pack-for-link" href="/jyapp/dataPack/createOrder">立即购买  ></a></div>
             </div>
             <div class="select-type-group" v-show="payType == '个人支付'" style="margin-top: 0.16rem">
                 <div class="select-type-title">请选择数据规格</div>
@@ -250,8 +250,8 @@
                 </div>
             </div>
             <div class="form-btn j-button-group">
-                <button class="btn prew dataPreview j-button-cancel1" style="flex:none;line-height: normal;">预览数据</button>
-                <button data-need-bind-phone class="btn enter toPay toDataPack j-button-confirm1" style="flex:none;line-height: normal;" disabled="disabled">
+                <button id="track-data-preview-for-button" class="btn prew dataPreview j-button-cancel1" style="flex:none;line-height: normal;">预览数据</button>
+                <button id="pay-button-for-datapack" data-need-bind-phone class="btn enter toPay toDataPack j-button-confirm1" style="flex:none;line-height: normal;" disabled="disabled">
                     确认扣除
                 </button>
             </div>
@@ -324,14 +324,14 @@
                     <p class="tip-warning error-admin"  data-pay-type="数据流量包-线下" style="display: none">您的每日导出限额已超过管理员设置数量,请联系管理员或选择个人支付</p>
                 </div>
                 <div class="weui-dialog__ft" data-pay-type="单日限量包" style="display: none;">
-                    <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
+                    <a href="javascript:;" id="read-day-tip-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
                 </div>
                 <div class="weui-dialog__ft" data-pay-type="数据流量包-线下" style="display: none;">
-                    <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
+                    <a href="javascript:;" id="read-datapack-tip-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
                 </div>
                 <div class="weui-dialog__ft" data-pay-type="数据流量包-线上" style="display: none;">
-                    <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_cancel">取消</a>
-                    <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">立即充值</a>
+                    <a href="javascript:;" id="cancel-buy-data-pack-for-dialog" class="weui-dialog__btn weui-dialog__btn_cancel">取消</a>
+                    <a href="javascript:;" id="buy-data-pack-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">立即充值</a>
                 </div>
             </div>
         </div>

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

@@ -61,7 +61,7 @@
         <span class="app-back jyapp-icon jyapp-icon-zuojiantou share-back"></span>
         <span class="header-title">公告信息</span>
         <span class="header-share" id="share">
-		<img src="{{Cdns .Host "seo" "cdn"|SafeUrl}}/jyapp/images/hongbao.png?v={{Msg "seo" "version"}}">
+		<img src="/jyapp/images/jianyubi.png">
 		<p style="font-size: 10px; line-height: 12px">分享有礼</p>
             <!-- 分享 star -->
 {{/*    <div class="overlay">*/}}
@@ -82,11 +82,11 @@
           <h4>分享有礼</h4>
           <img src="/jyapp/images/img/close.png" alt="" class="close">
         </div>
-        <div class="description">
+        <!-- <div class="description">
           <img src="/jyapp/images/hongbao.png" alt="">
           <p>分享剑鱼标讯产品给好友,购买成功您得佣金</p>
           <a href="/page_partner/partner/partner.html?flag=1">了解详情</a>
-        </div>
+        </div> -->
         <div class="description">
           <img src="/jyapp/images/jianyubi.png" alt="">
           <p>分享招标信息及文档,好友访问立得剑鱼币</p>
@@ -106,7 +106,7 @@
               <img src="/jyapp/images/img/qq.png" alt="">
               <span>QQ</span>
             </li>
-            <li id="kouling">
+            <!-- <li id="kouling">
               <img src="/jyapp/images/img/kouling.png" alt="">
               <span>口令分享</span>
             </li>
@@ -117,7 +117,7 @@
             <li id="tupian1">
               <img src="/jyapp/images/img/tupian.png" alt="">
               <span>图片分享</span>
-            </li>
+            </li> -->
           </ul>
         </div>
       </div>

+ 5 - 4
src/jfw/modules/distribution/src/config.json

@@ -1,14 +1,14 @@
 {
 	"webport": "8086",
 	"webdomain":"http://web-jydev-wh.jianyu360.cn",
-	"mongodb": {
+	"1": {
 		"main": {
-			"address": "192.168.3.11:27090",
+			"address": "192.168.3.206:27090",
 	 		"size": 5,
 	 		"dbName": "qfw"
 		},
 		"log": {
-			"address": "192.168.3.11:27090",
+			"address": "192.168.3.206:27090",
 	 		"size": 5,
 	 		"dbName": "qfw",
 			"userName": "admin",
@@ -55,7 +55,8 @@
     	"A":{
 			"name":"超级订阅",
 			"url":"/front/vipsubscribe/introducePage",
-			"appUrl":"/jyapp/vipsubscribe/introducePage"
+			"appUrl":"/jyapp/vipsubscribe/introducePage",
+			"upgradeUrl":"/front/vipsubscribe/toSubVipSetPage"
 			},
     	"B":{
 			"name":"数据导出",

+ 36 - 18
src/jfw/modules/distribution/src/service/action/capital.go

@@ -9,7 +9,6 @@ import (
 	"sort"
 	"strings"
 	"time"
-
 	"github.com/go-xweb/xweb"
 )
 
@@ -19,12 +18,15 @@ type Capital struct {
 }
 
 type CapitalList struct {
-	Type     string //提现、上月结算、佣金、实名认证、代扣个税
-	Money    string //
-	Date     string //
-	Status   string //已申请、未结算
-	TaxCash  string //代扣个税
-	AuthCash string //实名认证
+	Type        string //提现、上月结算、佣金、实名认证、代扣个税
+	Money       string //
+	Date        string //
+	Status      string //已申请、未结算
+	TaxCash     string //代扣个税
+	AuthCash    string //实名认证
+	ProductName string //商品名称
+	ShareType   string //分享模式
+	Phone       string //手机号
 }
 
 type SortList []*CapitalList
@@ -50,20 +52,23 @@ func init() {
 //资金列表
 func (l *Capital) List() {
 	userId, _ := l.GetSession("userId").(string)
-	//userId:="5c89fead1c298a4d75fef39e"
+	//userId := "5f699d4723d21d06a4815b27"
 	sl := SortList{}
-	dis_sale := Mysql.SelectBySql(`select commission,sale_status,createtime from dis_sale where uid=?`, userId)
+	dis_sale := Mysql.SelectBySql(`select product_name,commission,sale_status,createtime,phone,(CASE shareType WHEN 1 THEN '链接' WHEN 2 THEN '二维码' WHEN 3 THEN '海报' ELSE '未知' END) as shareType from dis_sale where uid=?`, userId)
 	if dis_sale != nil {
 		for _, v := range *dis_sale {
 			sl = append(sl, &CapitalList{
-				Type:   "佣金",
-				Money:  fmt.Sprintf("+%.2f", util.Float64All(v["commission"])/100),
-				Date:   util.ObjToString(v["createtime"]),
-				Status: "",
+				Type:        "佣金",
+				Money:       fmt.Sprintf("+%.2f", util.Float64All(v["commission"])/100),
+				Date:        util.ObjToString(v["createtime"]),
+				Status:      "",
+				ProductName: fmt.Sprint(v["product_name"]),
+				ShareType:   fmt.Sprint(v["shareType"]),
+				Phone:       fmt.Sprint(v["phone"]),
 			})
 		}
 	}
-	dis_count := Mysql.SelectBySql(`select commission,count_cash,auth_cash,tax_cash,count_status,createtime from dis_count where uid=?`, userId)
+	dis_count := Mysql.SelectBySql(`select commission,count_cash,auth_cash,tax_cash,count_status,createtime  from dis_count where uid=?`, userId)
 	if dis_count != nil {
 		for _, v := range *dis_count {
 			cl := &CapitalList{
@@ -79,6 +84,7 @@ func (l *Capital) List() {
 				if count_cash := util.Float64All(v["count_cash"]); count_cash > 0 {
 					cl.Money = fmt.Sprintf("%.2f", count_cash/100)
 				}
+				cl.Status = "已结算"
 			}
 			if tax_cash := util.Float64All(v["tax_cash"]); tax_cash > 0 {
 				cl.TaxCash = fmt.Sprintf("-%.2f", tax_cash/100)
@@ -98,6 +104,8 @@ func (l *Capital) List() {
 			cashout_status := util.IntAll(v["cashout_status"])
 			if cashout_status == 0 {
 				status = "已申请"
+			}else if cashout_status == 1 {
+				status = "已完成"
 			} else if cashout_status == -1 {
 				continue
 			}
@@ -142,10 +150,13 @@ func (l *Capital) List() {
 			})
 		}
 		array = append(array, M{
-			"day":    day,
-			"type":   v.Type,
-			"status": v.Status,
-			"money":  v.Money,
+			"day":         day,
+			"type":        v.Type,
+			"status":      v.Status,
+			"money":       v.Money,
+			"phone":       phoneHandle(v.Phone),
+			"productName": v.ProductName,
+			"shareType":   v.ShareType,
 		})
 		if v.AuthCash != "" {
 			array = append(array, M{
@@ -168,3 +179,10 @@ func (l *Capital) List() {
 		Data: all,
 	})
 }
+func phoneHandle(phone string) string {
+	if len(phone) == 11 {
+		profilePicture := strings.Replace(phone, phone[3:7], "****", 1)
+		return profilePicture
+	}
+	return phone
+}

+ 3 - 1
src/jfw/modules/distribution/src/service/action/partner.go

@@ -94,9 +94,11 @@ func (p *Partner) AddPartner() {
 			log.Println("user_phone:",user_phone)
 			if phone != user_phone {
 				return -1, "验证码错误"
+
 			}
 		}
-		typ, _ := p.GetInt("type") // 1个人伙伴 2企业伙伴
+		//typ, _ := p.GetInt("type") // 1个人伙伴 2企业伙伴
+		typ:=int64(2)
 		if typ != 1 && typ != 2 {
 			return -1, "type参数格式错误"
 		}

+ 43 - 5
src/jfw/modules/distribution/src/service/action/share.go

@@ -2,7 +2,9 @@ package action
 
 import (
 	"database/sql"
+	"encoding/base64"
 	"fmt"
+	"github.com/SKatiyar/qr"
 	"log"
 	"qfw/util"
 	qu "qfw/util"
@@ -26,6 +28,7 @@ type Share struct {
 	linkShare         xweb.Mapper `xweb:"/share/(.*)"`              //链接分享获取用户信息
 	productInfo       xweb.Mapper `xweb:"/share/productInfo"`       //产品信息
 	shareLogs         xweb.Mapper `xweb:"/share/shareLogs"`         //分享记录日志
+	shareLink        xweb.Mapper `xweb:"/share/shareLink"`         //分享链接获取
 }
 
 //1000:请求方式有误;1001:需要登录;1002:缺失参数;1003:无效参数;1004:没有权限
@@ -63,9 +66,9 @@ func (this *Share) ProductInfo() error {
 				dis_res := *Mysql.SelectBySql("SELECT DISTINCT a.product_name,SUM(a.sale_money) AS t_sale,SUM(a.commission) AS t_com,COUNT(a.product_name) AS t_count FROM dis_sale a  WHERE a.uid = '" + userId + "'  GROUP BY a.product_name")
 				for key, v := range *p_data {
 					delete(v, "_id")
-					if (v["s_name"]=="超级订阅企业版"){
-						v["s_name"]="超级订阅"
-						(*p_data)[key]["s_name"]="超级订阅"
+					if (v["s_name"] == "超级订阅企业版") {
+						v["s_name"] = "超级订阅"
+						(*p_data)[key]["s_name"] = "超级订阅"
 					}
 					for _, dv := range dis_res {
 						if dv["product_name"] == v["s_name"].(string) {
@@ -95,6 +98,7 @@ func (this *Share) ProductInfo() error {
 func (this *Share) LinkShare(discored string) error {
 	defer util.Catch()
 	openid, _ := this.Session().Get("s_m_openid").(string)
+	//openid := "o-Icg57Mkto-BVwmDk-VuDujNFG0"
 	log.Println("微信自动回复 或者访问复制链接discored:", discored)
 	if openid == "" || discored == "" {
 		//提示关注页面
@@ -102,8 +106,24 @@ func (this *Share) LinkShare(discored string) error {
 	}
 	userId, _ := this.Session().Get("userId").(string)
 	//userId := "5c89fead1c298a4d75fef39e"
-
-	_, url, _, _ := analyseWord(discored, userId)
+	url := ""
+	fmt.Println(userId,openid,"user", `{"s_m_openid":"`+openid+`}`, `{"o_jy":1:"o_vipjy":1,"i_vip_status":1}`)
+	if discored[len(discored)-4:len(discored)-2]  == "GX" {
+		user, ok := MQFW.FindOneByField("user", `{"s_m_openid":"`+openid+`"}`, `{"o_jy":1:"o_vipjy":1,"i_vip_status":1}`)
+		log.Println(user)
+		if ok && user != nil {
+			i_vip_status := qu.IntAll((*user)["i_vip_status"])
+			if i_vip_status > 0 {
+				modular := util.ObjToMap(Sysconfig.Modular[discored[:1]])
+				url = (*modular)["upgradeUrl"].(string)
+			}else{
+				modular := util.ObjToMap(Sysconfig.Modular[discored[:1]])
+				url = (*modular)["url"].(string)+"?disWord=" + discored
+			}
+		}
+	} else {
+		_, url, _, _ = analyseWord(discored, userId)
+	}
 	log.Println("获取三级页面地址:", url)
 	return this.Redirect(url)
 }
@@ -242,9 +262,11 @@ func (this *Share) GetOtherWordShare() {
 		url := this.GetString("url")
 		if modular != "" {
 			userId, _ := this.GetSession("userId").(string)
+			//userId := "123"
 			partner_user := false
 			if userId != "" {
 				s_nickname, _ := this.GetSession("s_nickname").(string)
+				//s_nickname := "232"
 				if s_nickname == "" {
 					s_nickname, _ = this.GetSession("app_name").(string)
 				}
@@ -416,3 +438,19 @@ func (this *Share) ShareLogs() {
 		log.Println(this.GetSession("userId"), msg)
 	}
 }
+
+func (this *Share) ShareLink() {
+	res := map[string]interface{}{
+		"error_code": error_code[0],
+		"error_msg":  error_msg[0],
+		"data":"",
+	}
+	disWord := this.GetString("disWord")
+	url:=Sysconfig.Webdomain+"/G/"+disWord
+	r, _ := qr.Encode(url, qr.M)
+	pngdat := r.PNG()
+	res["error_code"]=0
+	res["error_msg"]="二维码获取"
+	res["data"]=base64.StdEncoding.EncodeToString(pngdat)
+	this.ServeJson(res)
+}

+ 2 - 4
src/jfw/modules/distribution/src/service/filter/filter.go

@@ -1,8 +1,6 @@
 package filter
 
-import "github.com/go-xweb/xweb"
-
 func init() {
-	xweb.AddFilter(&logfilter{App: xweb.RootApp()})
-	xweb.AddFilter(&sessionfilter{App: xweb.RootApp()})
+/*	xweb.AddFilter(&logfilter{App: xweb.RootApp()})
+	xweb.AddFilter(&sessionfilter{App: xweb.RootApp()})*/
 }

+ 2 - 3
src/jfw/modules/distribution/src/service/filter/sessionfilter.go

@@ -2,10 +2,9 @@ package filter
 
 import (
 	. "api"
+	"github.com/go-xweb/xweb"
 	"net/http"
 	"strings"
-
-	"github.com/go-xweb/xweb"
 )
 
 //登录限制
@@ -16,7 +15,7 @@ type sessionfilter struct {
 //继承过滤器方法
 func (l *sessionfilter) Do(w http.ResponseWriter, req *http.Request) bool {
 	rqu := req.URL.Path
-	if strings.HasPrefix(rqu, "/distribution/share/getWordInfo") || strings.HasPrefix(rqu, "/distribution/logo/*") {
+	if strings.HasPrefix(rqu, "/distribution/share/getWordInfo") || strings.HasPrefix(rqu, "/distribution/logo/*") || strings.HasPrefix(rqu, "/share/shareLink") {
 		return true
 	}
 	session := l.App.SessionManager.Session(req, w)

+ 4 - 4
src/jfw/modules/subscribepay/src/config.json

@@ -3,14 +3,14 @@
     "mongodbPoolSize": 5,
     "mongodbName": "qfw",
     "mongoent":{
-    	"address": "192.168.3.207:27001,192.168.3.206:27002",
+    	"address": "192.168.3.206:27001,192.168.3.206:27002",
 		"size": 5,
 		"dbName": "qfw_data",
 		"userName": "jyDevGroup",
 		"password": "jy@DevGroup"
     },
 	"mongobidding":{
-		"address": "192.168.3.207:27001,192.168.3.206:27002",
+		"address": "192.168.3.206:27001,192.168.3.206:27002",
 		"size": 5,
 		"dbName": "qfw_data",
 		"replSet": "",
@@ -27,13 +27,13 @@
 		"userName": "admin",
 		"password": "123456"
 	},
+    "redisaddrs": "other=127.0.0.1:6379,session=127.0.0.1:1713,push=127.0.0.1:1712,pushcache_1=127.0.0.1:5000,pushcache_2_a=127.0.0.1:5001",
+    "elasticsearch": "http://127.0.0.1:1800",
     "mongoqyfw": {
       "address": "192.168.3.206:27080",
       "size": 5,
       "dbName": "jyqyfw"
     },
-    "redisaddrs": "other=192.168.3.206:1712,session=192.168.3.206:1712,push=192.168.3.206:1712,pushcache_1=192.168.3.206:1712,pushcache_2_a=192.168.3.206:1712",
-    "elasticsearch": "http://192.168.3.206:9800",
     "elasticPoolSize": 30,
     "appid": "wx5b1c6e7cc4dac0e4",
     "appsecret": "b026103ffebd2291b3edb7a269612112",

+ 2 - 5
src/jfw/modules/subscribepay/src/entity/dataReportStruct.go

@@ -56,17 +56,14 @@ func (this *dataReportStruct) PayCallBack(param *CallBackParam) (update bool) {
 				report_name := qutil.ObjToString(str["report_name"])
 				go sendtemp(openid, orderCode, report_name+" "+product_type, payTime)
 				go SendDatareportMailToPayUser(report_id, prices, param.OutTradeno, email, orderCode, phone, company, createTime, payTime, config.GmailAuth)
-				if qutil.ObjToString((*orderdata)["dis_word"]) != "" {
-					/*//分销系统 分销记录
-					go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "数据报告", qutil.ObjToString((*orderdata)["dis_word"]))
-					*/
+				/*if qutil.ObjToString((*orderdata)["dis_word"]) != "" {
 					suffix := qutil.ObjToString((*orderdata)["dis_word"])[len(qutil.ObjToString((*orderdata)["dis_word"]))-3 : len(qutil.ObjToString((*orderdata)["dis_word"]))]
 					if suffix == suffix_msgt {
 						go OtherDisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "数据报告", qutil.ObjToString((*orderdata)["dis_word"]), qutil.ObjToString((*orderdata)["user_id"]), qutil.ObjToString((*orderdata)["create_time"]))
 					} else {
 						go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "数据报告", qutil.ObjToString((*orderdata)["dis_word"]))
 					}
-				}
+				}*/
 			}
 		}
 	}

+ 3 - 3
src/jfw/modules/subscribepay/src/entity/dataexport.go

@@ -74,7 +74,7 @@ func (d *dataExportStruct) PayCallBack(param *CallBackParam) bool {
 		order_code := qutil.ObjToString((*orderdata)["order_code"])
 		userId := qutil.ObjToString((*orderdata)["user_id"])
 		order_status := qutil.IntAll((*orderdata)["order_status"])
-		dis_word := qutil.ObjToString((*orderdata)["dis_word"])
+		//dis_word := qutil.ObjToString((*orderdata)["dis_word"])
 		filter := qutil.ObjToString((*orderdata)["filter"])
 		user_phone := qutil.ObjToString((*orderdata)["user_phone"])
 		sc := new(dataexport.SieveCondition)
@@ -106,7 +106,7 @@ func (d *dataExportStruct) PayCallBack(param *CallBackParam) bool {
 				//发送邮件移至定时任务
 				//go SendMailToPayUser(orderdata, float64(param.CashFee)/100, pay_time, download_url, config.GmailAuth)
 
-				if dis_word != "" {
+				/*if dis_word != "" {
 					//分销系统 分销记录
 					suffix := dis_word[len(dis_word)-3 : len(dis_word)]
 					if suffix == suffix_msgt {
@@ -114,7 +114,7 @@ func (d *dataExportStruct) PayCallBack(param *CallBackParam) bool {
 					} else {
 						go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "数据导出", dis_word)
 					}
-				}
+				}*/
 				//取消其他订单
 				go PayCancel(userId, "历史数据", "")
 				//卡卷使用

+ 21 - 19
src/jfw/modules/subscribepay/src/entity/distribution.go

@@ -14,38 +14,26 @@ import (
 	"util"
 )
 
-func DisWordRecode(order_id, sale_money int, product_name, disWord string) {
+func DisWordRecode(order_id, sale_money int, product_name, disWord, userId string) {
 	//redis 获取分销者信息
-	redisDis := redis.GetStr("other", "DIS_"+disWord[1:])
+	log.Println("佣金计算")
+	redisDis := redis.GetStr("other", "DIS_"+disWord[1:len(disWord)])
 	log.Println("redisDis:", redisDis)
 	if redisDis != "" {
 		//分销者id
 		shareUId := strings.Split(redisDis, "##")[1]
-		/*//查询用户是企业还是个人账户
-		parentList := util.Mysql.SelectBySql("select  * from  dis_partner where uid=? ", shareUId)
-		parentType := 1
-		if len(*parentList) > 0 {
-			parentTypeInt, _ := strconv.Atoi(fmt.Sprint((*parentList)[0]["type"]))
-			parentType = parentTypeInt
-		}*/
-		//if (parentType == 2) {
-		//	return
-		//}
 		//查询产品信息   获取  rate 佣金比例
 		var c_rate float64 = 0
 		if p_data, ok := util.MQFW.Find("dis_product", nil, `{"l_createdate":1}`, nil, false, -1, -1); ok && p_data != nil {
-
 			for _, v := range *p_data {
-				fmt.Println(v)
 				if product_name == qutil.ObjToString(v["s_name"]) {
 					c_rate = qutil.Float64All(v["f_rate"])
 				}
 			}
 		}
-		if product_name=="超级订阅企业版" {
-			product_name="超级订阅"
+		if product_name == "超级订阅企业版" {
+			product_name = "超级订阅"
 		}
-		fmt.Println("佣金比例:",fmt.Sprint(c_rate))
 		//四舍五入 取整
 		c_money_f := float64(sale_money) * c_rate
 		c_money_i := int(qutil.RetainDecimal(c_money_f, 0))
@@ -61,12 +49,26 @@ func DisWordRecode(order_id, sale_money int, product_name, disWord string) {
 		// 	"sale_status":     0,                                              //状态;0:未结算,1:已结算
 		// 	"createtime":      qutil.FormatDate(&now, qutil.Date_Full_Layout), //保存时间
 		// 	"timestamp":       qutil.FormatDate(&now, qutil.Date_Full_Layout), //修改时间
+		shareType := ""
+		/*if len(strings.Split(disWord, ",")) == 3 {
+			shareType = strings.Split(disWord, ",")[2]
+		}*/
+		if (userId==shareUId){
+			return
+		}
+		phone := ""
+		userMsg, _ := util.MQFW.FindById("user", userId, ``)
+		if userMsg == nil || len(*userMsg) == 0 {
+
+		} else {
+			phone = qutil.ObjToString(qutil.If((*userMsg)["s_phone"] != nil, (*userMsg)["s_phone"], (*userMsg)["s_m_phone"]))
+			shareType = qutil.ObjToString((*userMsg)["shareType"])
+		}
 		if !util.Mysql.ExecTx("分销记录和个人账户统计", func(tx *sql.Tx) bool {
 			//新增分销记录
-			s_count := util.Mysql.InsertBySqlByTx(tx, "INSERT INTO dis_sale (uid,order_id,product_name,sale_money,commission_rate,commission,code,sale_status,createtime,timestamp) VALUES (?,?,?,?,?,?,?,?,?,?)", shareUId, order_id, product_name, sale_money, c_rate, c_money_i, code, 0, qutil.FormatDate(&now, qutil.Date_Full_Layout), qutil.FormatDate(&now, qutil.Date_Full_Layout))
+			s_count := util.Mysql.InsertBySqlByTx(tx, "INSERT INTO dis_sale (uid,order_id,product_name,sale_money,commission_rate,commission,code,sale_status,createtime,timestamp,phone,shareType) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", shareUId, order_id, product_name, sale_money, c_rate, c_money_i, code, 0, qutil.FormatDate(&now, qutil.Date_Full_Layout), qutil.FormatDate(&now, qutil.Date_Full_Layout),phone,shareType)
 			//个人账户更新
 			p_count := util.Mysql.UpdateOrDeleteBySql("UPDATE account a SET a.dis_sales = a.dis_sales+? , a.dis_order = a.dis_order+1 , a.dis_commission=a.dis_commission+? WHERE a.uid = ?", sale_money, c_money_i, shareUId)
-
 			util.MsgRemind.DistributionSuccess(order_id, shareUId, c_money_i, product_name)
 			return s_count > 0 && p_count > 0
 		}) {

+ 4 - 6
src/jfw/modules/subscribepay/src/entity/subscribeVip.go

@@ -212,13 +212,11 @@ func (this *vipSubscribeStruct) PayCallBack(param *CallBackParam) bool {
 			//分销系统 分销记录
 			suffix := dis_word[len(dis_word)-3 : len(dis_word)]
 			if suffix == suffix_msgt {
-				go OtherDisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅", dis_word, qutil.ObjToString((*orderdata)["user_id"]), qutil.ObjToString((*orderdata)["create_time"]))
+				//go OtherDisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅", dis_word, qutil.ObjToString((*orderdata)["user_id"]), qutil.ObjToString((*orderdata)["create_time"]))
 			} else if suffix == "_GX" {
-				go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅企业版", dis_word)
-
+				go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅企业版", dis_word, userId)
 			} else {
-				go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅", dis_word)
-
+				//go DisWordRecode(qutil.IntAll((*orderdata)["id"]), qutil.IntAll((*orderdata)["order_money"]), "超级订阅", dis_word)
 			}
 		}
 		//卡卷使用
@@ -542,7 +540,7 @@ func (this *vipSubscribeStruct) GetSubVipPriceByBuySet(buySet *SubvipBuySet, cou
 		pCount := buySet.AreaCount            //省份数量
 		industryNum := buySet.BuyerclassCount //行业数量
 		newCityArr := []int{}                 //选择城市数量 防止操作cityCountArr 影响原数据
-		if buySet.Upgrade != 1 {              //未升级超级订阅计价规则
+		if buySet.Upgrade != 1 { //未升级超级订阅计价规则
 			//城市选择过多时,转为省份
 			for _, cityCount := range buySet.NewCitys {
 				if cityCount > SubVipPrice.Old.CityMaxCount {

+ 0 - 1
src/jfw/modules/subscribepay/src/service/afterPay.go

@@ -39,7 +39,6 @@ type AfterPay struct {
 func (a *AfterPay) Modification() error {
 	defer qutil.Catch()
 	userId, _ := a.GetSession("userId").(string)
-	fmt.Println("userid:", userId)
 	mflag := false
 	if userId != "" {
 		data, ok := util.MQFW.FindById("user", userId, `{"o_vipjy":1}`)

+ 2 - 2
src/jfw/modules/subscribepay/src/service/dataExportPay.go

@@ -123,14 +123,14 @@ func (p *DataExportPay) CreateOrder() {
 			filter_publishtime = qutil.ObjToString((*userfilter)["publishtime"])
 			disWord = qutil.ObjToString((*userfilter)["disWord"])
 			log.Println("口令:", disWord, config.Config.TermValidity)
-			if disWord == "" {
+			/*if disWord == "" {
 				start_time := TimeProcessing(time.Now().Format(DateFullLayout), -config.Config.TermValidity).Format(DateFullLayout)
 				stop_time := TimeProcessing(time.Now().Format(DateFullLayout), config.Config.TermValidity).Format(DateFullLayout)
 				infoList := util.Mysql.SelectBySql("select  * from  dis_word where userId=?  and  ?<=start_time  and stop_time<? ORDER BY id ", userId, start_time, stop_time)
 				if len(*infoList) > 0 {
 					disWord = fmt.Sprint((*infoList)[0]["password"])
 				}
-			}
+			}*/
 			delete(*userfilter, "selectIds")
 			filterByte, _ := json.Marshal(userfilter)
 			filter = string(filterByte)

+ 2 - 2
src/jfw/modules/subscribepay/src/service/vipSubscribeChange.go

@@ -282,14 +282,14 @@ func (this *SubscribeChange) Upgrade() {
 			disWord = disWordStr
 		}
 		ordercode := pay.GetOrderCode(userId)
-		if disWord == "" {
+		/*if disWord == "" {
 			start_time := TimeProcessing(time.Now().Format(DateFullLayout), -config.Config.TermValidity).Format(DateFullLayout)
 			stop_time := TimeProcessing(time.Now().Format(DateFullLayout), config.Config.TermValidity).Format(DateFullLayout)
 			infoList := util.Mysql.SelectBySql("select  * from  dis_word where userId=?  and  ?<=start_time  and stop_time<? ORDER BY id ", userId, start_time, stop_time)
 			if len(*infoList) != 0 {
 				disWord = fmt.Sprint((*infoList)[0]["password"])
 			}
-		}
+		}*/
 		insertMap := map[string]interface{}{
 			"order_money":    final_price,
 			"order_status":   order_status,

+ 4 - 4
src/jfw/modules/subscribepay/src/service/vipSubscribePay.go

@@ -97,14 +97,14 @@ func (this *SubVipPayOrder) CreateOrder() {
 		}
 		req_price, _ := this.GetInteger("price")     //前端展示金额
 		order_phone := this.GetString("order_phone") //p19.3用户信息采集 手机号
-		if disWord == "" {
+		/*if disWord == "" {
 			start_time := TimeProcessing(time.Now().Format(DateFullLayout), -config.Config.TermValidity).Format(DateFullLayout)
 			stop_time := TimeProcessing(time.Now().Format(DateFullLayout), config.Config.TermValidity).Format(DateFullLayout)
 			infoList := util.Mysql.SelectBySql("select  * from  dis_word where userId=? and  ?<=start_time  and stop_time<? ORDER BY id ", userId, start_time, stop_time)
 			if len(*infoList) != 0 {
 				disWord = fmt.Sprint((*infoList)[0]["password"])
 			}
-		}
+		}*/
 		now := time.Now()
 		userData, oldBuyset, _ := entity.JyVipSubStruct.GetVipDetail(userId)
 		isgive := false
@@ -305,7 +305,7 @@ func (this *SubVipPayOrder) Renew() {
 		if disWordStr != "" {
 			disWord = disWordStr
 		}
-		if disWord == "" {
+		/*if disWord == "" {
 			start_time := TimeProcessing(time.Now().Format(DateFullLayout), -config.Config.TermValidity).Format(DateFullLayout)
 			stop_time := TimeProcessing(time.Now().Format(DateFullLayout), config.Config.TermValidity).Format(DateFullLayout)
 			infoList := util.Mysql.SelectBySql("select  * from  dis_word where userId=? and  ?<=start_time  and stop_time<? ORDER BY id ", userId, start_time, stop_time)
@@ -314,7 +314,7 @@ func (this *SubVipPayOrder) Renew() {
 			if len(*infoList) != 0 {
 				disWord = fmt.Sprint((*infoList)[0]["password"])
 			}
-		}
+		}*/
 		fmt.Println("disWordStr3:", disWord)
 		now := time.Now()
 		date_count, date_unit, err := checkReqDate(this.GetString("time"))

+ 0 - 1
src/jfw/modules/subscribepay/src/timetask/dataExportMail.go

@@ -22,7 +22,6 @@ func SendDataExportMailForPayed() {
 	}()
 
 	unServiceList := util.Mysql.Find("dataexport_order", map[string]interface{}{"product_type": "历史数据", "order_status": 1, "service_status": 0}, "download_url,user_mail,data_count,pay_time,order_code", "", -1, -1)
-	fmt.Println("SendDataExportMailForPayed find no service order num", len(*unServiceList))
 	if unServiceList == nil || len(*unServiceList) == 0 {
 		log.Printf("SendDataExportMailForPayed not find Payed order")
 		return

+ 0 - 1
src/jfw/modules/weixin/src/oauth/oauth.go

@@ -67,7 +67,6 @@ func WeixinOauth(w http.ResponseWriter, r *http.Request) {
 	if err == nil {
 		//取得openid,unionid
 		bs, _ := ioutil.ReadAll(resp.Body)
-		//fmt.Println("data:", string(bs))
 		tmp := map[string]interface{}{}
 		err = json.Unmarshal(bs, &tmp)
 		if err != nil {

+ 7 - 5
src/jfw/modules/weixin/src/wx/wx.go

@@ -438,7 +438,7 @@ func saveUser(u *UserInfo, source, pre, RSource, CSource string) (bool, string,
 		newUser["s_province"] = u.Province
 		newUser["s_city"] = u.City
 		newUser["i_applystatus"] = 1
-		if len(strings.Split(source, "_")) > 2 {
+		if len(strings.Split(source, "_")) > 3 {
 			if strings.Split(source, "_")[2] == "GX" {
 				disStr := strings.Split(source, "_")[0] + "_" + strings.Split(source, "_")[1][1:] + "_" + strings.Split(source, "_")[2]
 				log.Println("disStr", disStr)
@@ -453,6 +453,7 @@ func saveUser(u *UserInfo, source, pre, RSource, CSource string) (bool, string,
 				endTime := time.Unix(startTimeInt64, 0)
 				newUser["endTime"] = endTime.AddDate(1, 0, 0).Unix()
 				newUser["disWords"] = strings.Split(source, "_")[1] + "_" + strings.Split(source, "_")[2]
+				newUser["shareType"] =strings.Split(source, "_")[3]
 			}
 		}
 		if isJyopUser {
@@ -945,7 +946,7 @@ func Subscribe(w ResponseWriter, r *Request) {
 		ek := strings.SplitN(r.EventKey, "_", 3)[2]
 		log.Println("ek:", ek)
 		encry := ek[:1]
-		if len(strings.Split(ek, "_")) > 1 {
+		if len(strings.Split(ek, "_")) > 2 {
 			suffix := strings.Split(ek, "_")[1]
 			fmt.Println(r.EventKey, ek, suffix)
 			if suffix == "GX" {
@@ -1125,7 +1126,7 @@ func ScanHandler(w ResponseWriter, r *Request) {
 	if strings.Contains(r.EventKey, "DIS_") {
 		ek := strings.Split(r.EventKey, "_")[1]
 		encry := ek[:1]
-		if len(strings.Split(r.EventKey, "_")) > 2 {
+		if len(strings.Split(r.EventKey, "_")) > 3 {
 			suffix := strings.Split(r.EventKey, "_")[2]
 			if suffix == "GX" {
 				encry = "G"
@@ -1134,10 +1135,11 @@ func ScanHandler(w ResponseWriter, r *Request) {
 		modular := util.ObjToMap(config.DistribConfig.Modular[encry])
 		if encry == "X" {
 			suffix := strings.Split(r.EventKey, "_")[2]
-			ek = ek + "_" + suffix
+			ek = ek + "_" + suffix+strings.Split(r.EventKey, "_")[3]
 		}
 		if encry == "G" {
-			ek = ek + "_GX"
+			suffix := strings.Split(r.EventKey, "_")[2]
+			ek = ek + "_GX"+suffix+strings.Split(r.EventKey, "_")[3]
 		}
 		fmt.Println(ek)
 		if modular != nil {

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 46 - 0
src/web/staticres/common-module/vipsubscribe/css/vip-party.css


BIN
src/web/staticres/common-module/vipsubscribe/image/vip_intro_bg@2x.png


+ 172 - 0
src/web/templates/frontRouter/wx/vipIntro/free/party.html

@@ -0,0 +1,172 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta name="keywords" content="剑鱼标讯">
+    <meta name="description" content="剑鱼标讯">
+    <meta name="author" content="剑鱼标讯">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
+    <meta name="browsermode" content="application">
+    <meta name="x5-orientation" content="portrait">
+    <meta name="screen-orientation" content="portrait">
+    <meta name="x5-page-mode" content="app">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="format-detection" content="telephone=no">
+    <title>超级订阅</title>
+    <script src="/big-member/js/rem.js"></script>
+    <!--S-当前页面的css资源-->
+    <link rel="stylesheet" href=//cdn-common.jianyu360.com/cdn/lib/reset-css/5.0.1/reset.min.css />
+    <link rel="stylesheet" href=//cdn-common.jianyu360.com/cdn/lib/vant/2.12.24/lib/index.css />
+    <link rel="stylesheet" href=//cdn-common.jianyu360.com/cdn/lib/vant/2.12.24/lib/icon/local.css />
+    <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/common-module/vipsubscribe/css/vip-party.css?v={{Msg "seo" "version"}}' />
+</head>
+<body>
+<div class="j-container">
+    <div class="j-main vip_introduce">
+        <div class="main">
+            <div class="banner power group">
+                <div class="group-title">
+                    <span class="title-text line-title">超级订阅服务特权</span>
+                    <span class="title-bg-text">DINGYUEFUWU</span>
+                </div>
+                <div class="group-content grid">
+                    <span class="grid-item">
+                        <span class="circle-icon circle-icon-1"></span>
+                        <p class="item-desc">最多 300 组关键词</p>
+                    </span>
+                    <span class="grid-item">
+                        <span class="circle-icon circle-icon-2"></span>
+                        <p class="item-desc">每天最多接收 2000 条</p>
+                    </span>
+                    <span class="grid-item">
+                        <span class="circle-icon circle-icon-3"></span>
+                        <p class="item-desc">数据周报、月报</p>
+                    </span>
+                    <span class="grid-item">
+                        <span class="circle-icon circle-icon-4"></span>
+                        <p class="item-desc">订阅区域精确到市</p>
+                    </span>
+                    <span class="grid-item" style="height: 2.48rem;">
+                        <span class="circle-icon circle-icon-5"></span>
+                        <p class="item-desc">每购买一个省<br />可查看50个企业画像</p>
+                    </span>
+                    <span class="grid-item">
+                        <span class="circle-icon circle-icon-6"></span>
+                        <p class="item-desc">搜索全国超七千万企业</p>
+                    </span>
+                </div>
+            </div>
+            <div class="comparison group">
+                <div class="group-title">
+                    <span class="title-text line-title">整体服务对比</span>
+                    <span class="title-bg-text">FUWUDUIBI</span>
+                </div>
+                <div class="group-content">
+                    <div class="table">
+                        <div class="c-thead row">
+                            <span class="free column column-l">免费版</span>
+                            <span class="prop column column-r color-deep-gold">超级订阅专属服务</span>
+                        </div>
+                        <div class="c-tbody">
+                          <div class="row">
+                              <span class="column column-l">-</span>
+                              <span class="column column-r">
+                                  <p class="col-hd">
+                                      <span class="icon-new">企业画像</span>
+                                  </p>
+                                  <p class="col-bd">对企业进行全景透视,提供企业基本信息,中标项目分析、重点客户等,帮你挖掘销售线索。</p>
+                              </span>
+                          </div>
+                          <div class="row">
+                              <span class="column column-l">-</span>
+                              <span class="column column-r">
+                                  <p class="col-hd">
+                                      <span class="icon-new">企业搜索</span>
+                                  </p>
+                                  <p class="col-bd">搜索全国超七千万企业,获取企业情报信息,全方位监控竞争对手或用户关注的企业。</p>
+                              </span>
+                          </div>
+                            <div class="row">
+                                <span class="column column-l">-</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">标讯高级搜索</p>
+                                    <p class="col-bd">支持按采购单位类型、采购单位联系方式、中标企业联系方式搜索,搜索招标采购项目更精准。</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                                <span class="column column-l">-</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">标讯收藏</p>
+                                    <p class="col-bd">关注的项目信息,一键收藏。支持创建收藏标签、标签分类检索,重要信息不遗漏,只看你最关注的。</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                                <span class="column column-l">匹配单次公告信息</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">匹配项目信息</p>
+                                    <p class="col-bd">根据你的订阅,为你推送所匹配项目后续的全部动态</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                                <span class="column column-l">-</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">按行业订阅</p>
+                                    <p class="col-bd">不知道如何设置关键词的时候,也可以按行业订阅</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                                <span class="column column-l">-</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">中标企业联系方式</p>
+                                    <p class="col-bd">招标公告与国家企业公示2种提取模式,让你直击企业</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                                <span class="column column-l">最多10组关键词</span>
+                                <span class="column column-r">
+                                    <p class="col-hd">最多300组关键词</p>
+                                    <p class="col-bd">更多关键词,招标信息更全面</p>
+                                </span>
+                            </div>
+                            <div class="row">
+                              <span class="column column-l">仅支持标题匹配</span>
+                              <span class="column column-r">
+                                  <p class="col-hd">支持标题匹配+全文匹配</p>
+                                  <p class="col-bd">关键词匹配标题或全文 任你选</p>
+                              </span>
+                          </div>
+                          <div class="row">
+                            <span class="column column-l">订阅区域精确到省</span>
+                            <span class="column column-r">
+                                <p class="col-hd">订阅区域精确到市</p>
+                                <p class="col-bd">只看你最关注的招标信息</p>
+                            </span>
+                          </div>
+                        </div>
+                    </div>
+                </div>
+                <div class="er-code">
+                  <img id="imgSrc" >
+                  <p>长按关注剑鱼标讯</p>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<script src=//cdn-common.jianyu360.com/cdn/lib/jquery/3.6.0/jquery.min.js></script>
+<script>
+    $(document).ready(function () {
+        var roter = window.location.search.substring(1)
+        $.ajax({
+            url: '/distribution/share/shareLink?disWord=' + roter,
+            type: 'GET',
+            success: function (res) {
+                $('#imgSrc').attr('src', 'data:image/jpg;base64,' + res.data)
+            }
+        })
+    })
+</script>
+</body>
+</html>

+ 10 - 10
src/web/templates/pc/createOrderPage.html

@@ -52,7 +52,7 @@
         <div class="infotitle clearfix">
             <span>当前搜索到<i class="msgCount"></i>条信息</span>
             <em style="display:none">最大限额20,000条</em>
-            <a class="dataPreview"><span class="iconfont icon-yulan"></span>预览数据</a>
+            <a class="dataPreview" id="track-data-preview-for-link"><span class="iconfont icon-yulan"></span>预览数据</a>
             <a class="fr goback" style="position: relative;text-decoration: none;">
                 <img class="goback" src="{{Msg "seo" "cdn"}}/dataExport/image/sieve.png"
                 style="width: 16px;height: 16px;position: absolute;left: -19px;top: 2px;">返回筛选</a>
@@ -60,7 +60,7 @@
         <div id="entuserguige" hidden="hidden">
             <div class="title">支付方式</div>
             <div class="inner clearfix switch-dataType" id="payTypeSelect">
-                <div class="qy no-select" data-pay-type="数据流量包" style="display: none;">
+                <div class="qy no-select" id="select-data-pack-item" data-pay-type="数据流量包" style="display: none;">
                     <p>数据流量包扣除</p>
                     <div id="llb-tip-block" style="width: 164px;height: 28px;opacity: 1;background: rgba(0,0,0,0.75);text-align: center;padding: 4px;
                         border-radius: 4px;box-shadow: 0px 0px 28px 0px rgba(0,0,0,0.08);
@@ -70,14 +70,14 @@
                             position: relative;left: 46%;"></div>
                     </div>
                 </div>
-                <div class="dr no-select" data-pay-type="单日限量包" style="display: none;">
+                <div id="select-day-pack-item" class="dr no-select" data-pay-type="单日限量包" style="display: none;">
                     <p>单日限量数据包扣除</p>
                 </div>
                 <div class="gr no-select" data-pay-type="个人支付"><p>个人支付</p></div>
             </div>
             <div class="datapackage-buy-tip-group">
                 <span>数据流量包已上线,特惠充值随心导,2年有效</span>
-                <a href="/front/dataPack/createOrder">立即购买数据流量包  ></a>
+                <a id="buy-data-pack-for-link" href="/front/dataPack/createOrder">立即购买数据流量包  ></a>
             </div>
         </div>
         <div id="select-ent-datapack" class="guige" data-show-type="数据流量包">
@@ -198,9 +198,9 @@
 
                 </p>
                 <p class="btn_createOrder">
-                    <button class="dataPreview">预览数据</button>
-                    <button class="toPay" data-need-bind-phone disabled="disabled">确认支付</button>
-                    <button class="toDeduction" data-need-bind-phone style="display: none" disabled="disabled">确认扣除
+                    <button class="dataPreview" id="track-data-preview-for-button">预览数据</button>
+                    <button id="pay-button-for-money" class="toPay" data-need-bind-phone disabled="disabled">确认支付</button>
+                    <button id="pay-button-for-datapack" class="toDeduction" data-need-bind-phone style="display: none" disabled="disabled">确认扣除
                     </button>
                 </p>
             </div>
@@ -244,11 +244,11 @@
 
                 </div>
                 <div class="modal-footers">
-                    <button type="button" class="btn btn-primary">我知道了</button>
+                    <button id="read-tip-for-dialog" type="button" class="btn btn-primary">我知道了</button>
                 </div>
                 <div class="modal-footers cancel" style="display: none">
-                    <button type="button" class="btn btn-primary">立即充值</button>
-                    <button type="button" class="btn btn-cancel">取消</button>
+                    <button id="buy-data-pack-for-dialog" type="button" class="btn btn-primary">立即充值</button>
+                    <button id="cancel-buy-data-pack-for-dialog" type="button" class="btn btn-cancel">取消</button>
                 </div>
             </div>
         </div>

+ 1 - 1
src/web/templates/pc/dataPack/createOrderForDataPackage.html

@@ -108,7 +108,7 @@
 
                 </p>
                 <p class="btn_createOrder">
-                    <button class="toPay" data-need-bind-phone disabled="disabled">确认支付</button>
+                    <button id="buy-datapack-pay-button" class="toPay" data-need-bind-phone disabled="disabled">确认支付</button>
                 </p>
             </div>
         </div>

+ 9 - 9
src/web/templates/weixin/dataExport/dataExport_payOrder.html

@@ -68,11 +68,11 @@
             <div class="select-type-group">
                 <div class="select-type-title">请选择支付方式</div>
                 <div class="select-card-group">
-                    <div class="select-card-item" @click="togglePayType('数据流量包')" v-show="payMap['数据流量包'].show" :class="{active: payType == '数据流量包'}">数据流量包</div>
-                    <div class="select-card-item" @click="togglePayType('单日限量包')" v-show="payMap['单日限量包'].show" :class="{active: payType == '单日限量包'}">单日限量数据包</div>
+                    <div id="select-data-pack-item" class="select-card-item" @click="togglePayType('数据流量包')" v-show="payMap['数据流量包'].show" :class="{active: payType == '数据流量包'}">数据流量包</div>
+                    <div id="select-day-pack-item" class="select-card-item" @click="togglePayType('单日限量包')" v-show="payMap['单日限量包'].show" :class="{active: payType == '单日限量包'}">单日限量数据包</div>
                     <div class="select-card-item" @click="togglePayType('个人支付')" v-show="payMap['个人支付'].show" :class="{active: payType == '个人支付'}">个人支付</div>
                 </div>
-                <div class="buy-data-pack-tip">数据流量包已上线,特惠充值随心导,2年有效。<a href="/swordfish/dataPack/createOrder">立即购买  ></a></div>
+                <div class="buy-data-pack-tip">数据流量包已上线,特惠充值随心导,2年有效。<a id="buy-data-pack-for-link" href="/swordfish/dataPack/createOrder">立即购买  ></a></div>
             </div>
             <div class="select-type-group" v-show="payType == '个人支付'"  style="margin-top: 0.16rem">
                 <div class="select-type-title">请选择数据规格</div>
@@ -233,8 +233,8 @@
             </div>
         </div>
         <div class="form-btn j-button-group">
-            <button class="btn prew dataPreview j-button-cancel" style="flex:none;line-height: normal;">预览数据</button>
-            <button data-need-bind-phone  class="btn enter toPay toDataPack j-button-confirm" style="flex:none;line-height: normal;" disabled="disabled">
+            <button id="track-data-preview-for-button" class="btn prew dataPreview j-button-cancel" style="flex:none;line-height: normal;">预览数据</button>
+            <button id="pay-button-for-datapack" data-need-bind-phone  class="btn enter toPay toDataPack j-button-confirm" style="flex:none;line-height: normal;" disabled="disabled">
                 确认扣除
             </button>
         </div>
@@ -307,14 +307,14 @@
                 <p class="tip-warning error-admin"  data-pay-type="数据流量包-线下" style="display: none">您的每日导出限额已超过管理员设置数量,请联系管理员或选择个人支付</p>
             </div>
             <div class="weui-dialog__ft" data-pay-type="单日限量包" style="display: none;">
-                <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
+                <a href="javascript:;" id="read-day-tip-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
             </div>
             <div class="weui-dialog__ft" data-pay-type="数据流量包-线下" style="display: none;">
-                <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
+                <a href="javascript:;" id="read-datapack-tip-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">我知道了</a>
             </div>
             <div class="weui-dialog__ft" data-pay-type="数据流量包-线上" style="display: none;">
-                <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_cancel">取消</a>
-                <a href="javascript:;" class="weui-dialog__btn weui-dialog__btn_primary">立即充值</a>
+                <a href="javascript:;" id="cancel-buy-data-pack-for-dialog" class="weui-dialog__btn weui-dialog__btn_cancel">取消</a>
+                <a href="javascript:;" id="buy-data-pack-for-dialog" class="weui-dialog__btn weui-dialog__btn_primary">立即充值</a>
             </div>
         </div>
     </div>

Niektoré súbory nie sú zobrazené, pretože je v týchto rozdielových dátach zmenené mnoho súborov