浏览代码

Merge branch 'dev4.5' of http://192.168.3.207:8080/qmx/jy into dev4.5

TANGSHIZHE 4 年之前
父节点
当前提交
89c3211a64
共有 33 个文件被更改,包括 1469 次插入1518 次删除
  1. 8 5
      src/jfw/front/dataExport.go
  2. 1 1
      src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/contrast_trial.js
  3. 15 3
      src/jfw/modules/app/src/web/staticres/jyapp/js/searchindex.js
  4. 0 0
      src/jfw/modules/app/src/web/templates/big-member/page_contrast.html
  5. 13 4
      src/jfw/modules/app/src/web/templates/weixin/historypush.html
  6. 3 1
      src/jfw/modules/app/src/web/templates/weixin/search/tabSearch.html
  7. 13 4
      src/jfw/modules/app/src/web/templates/weixin/wxinfocontent.html
  8. 160 0
      src/jfw/modules/common/src/qfw/util/dataexport/dataExportRecord.go
  9. 19 6
      src/jfw/modules/common/src/qfw/util/jy/bigVipPower.go
  10. 1 1
      src/jfw/modules/publicapply/src/enterpriseSearch/entity/entQuery.go
  11. 80 3
      src/jfw/modules/subscribepay/src/service/dataExportPay.go
  12. 2 3
      src/jfw/modules/subscribepay/src/util/dataExportExcel.go
  13. 1 1
      src/web/staticres/big-member/js/contrast_trial.js
  14. 4 4
      src/web/staticres/big-member/js/previewTable.js
  15. 11 0
      src/web/staticres/common-module/collection/js/index-wx.js
  16. 11 0
      src/web/staticres/common-module/collection/js/index.js
  17. 0 491
      src/web/staticres/common-module/ent-search/ent-search-template.css
  18. 0 7
      src/web/staticres/common-module/ent-search/ent-search-template.css.map
  19. 22 13
      src/web/staticres/common-module/ent-search/ent-search-template.prefixer.css
  20. 0 445
      src/web/staticres/common-module/ent-search/ent-search-template.scss
  21. 1 0
      src/web/staticres/css/dev2/newBidSearch.css
  22. 679 230
      src/web/staticres/dataExport/css/payment_order.css
  23. 21 6
      src/web/staticres/js/biddingSearch.js
  24. 6 6
      src/web/staticres/js/superSearch.js
  25. 13 1
      src/web/staticres/js/wxSupersearch.js
  26. 0 0
      src/web/templates/big-member/pc/page_custom.html
  27. 0 0
      src/web/templates/big-member/pc/page_index.html
  28. 0 0
      src/web/templates/big-member/wx/page_index.html
  29. 359 277
      src/web/templates/pc/createOrderPage.html
  30. 1 1
      src/web/templates/pc/orderDetail.html
  31. 12 4
      src/web/templates/weixin/historypush.html
  32. 3 1
      src/web/templates/weixin/search/tabSearch.html
  33. 10 0
      src/web/templates/weixin/wxinfocontent_rec.html

+ 8 - 5
src/jfw/front/dataExport.go

@@ -380,11 +380,6 @@ func (d *DataExport) ToCreateOrderPage(_id string) error {
 	if userId == "" {
 		return errors.New("未登录")
 	}
-	// 企业数据导出开始
-	// isEntUser := redis.Get("other", "isEntUser"+userId)
-	// if isEntUser != nil {
-	// 	d.T["isEntUser"] = true
-	// } else {
 	user_phone := ""
 	userData, ok := mongodb.FindById("user", userId, `{"s_phone":1,"s_m_phone":1}`)
 	if userData != nil && ok {
@@ -480,6 +475,14 @@ func (d *DataExport) ToCreateOrderPage(_id string) error {
 			d.T["phone"] = lastPhone
 		}
 	}
+	//每日流量包查询
+	vipStatus := jy.GetBigVipUserBaseMsg(userId, public.Mysql, public.MQFW)
+	if vipStatus.Status > 0 && vipStatus.DailyNum > 0 {
+		packetMsg := dataexport.GetDataPacketMsg(vipStatus.GetUseId(), vipStatus.DailyNum)
+		d.T["hasDaily"] = true
+		d.T["dailyNum"] = vipStatus.DailyNum       //每日限量
+		d.T["dailyUsed"] = packetMsg.GetUsed(true) //已使用
+	}
 	d.T["_id"] = _id
 	d.T["msgCount"] = msgCount
 	incurKey := fmt.Sprintf("PreviewData_%s_%d", d.GetSession("userId"), time.Now().Day())

+ 1 - 1
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/contrast_trial.js

@@ -150,7 +150,7 @@ var CustomData = {
         '结构化数据': {
             '在线数据导出': [
                 '用户可指定关键词、时间、地区或行业,以excel表格形式自助导出数据,可分析中标单位市场占比、各地区招标动态、 行业规模等,辅助市场决策。',
-                '单独购买'
+                '单独购买(可选择流量包或单日限量包)'
             ],
             'API接口': [
                 '提供结构化招标数据API接口,实时获取项目名称、采购单位、预算、采购单位电话等多达30+信息字段,帮助分析数据、潜在渠道合作伙伴来获取商机,制定行业分析报告,辅助战略决策。',

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

@@ -2044,11 +2044,23 @@ var SuperSearch = {
 				    var h = $(this).find("a.bt").attr("s");
 				    var sid = $(this).find("a.bt").attr("sid");
 					var industry = $(this).find(".industry").text();
-          if (SuperSearch.checkIsStartFn(event, { sid: sid })) {
-            SuperSearch.myredirect(h,sid,industry);
-          }
+		            if (SuperSearch.checkIsStartFn(event, { sid: sid })) {
+		            	SuperSearch.myredirect(h,sid,industry);
+		            }
 				});
 				$("#supersearchPage #list").html(ListContent);
+				//收藏处理
+				var listCollSessionId = sessionStorage.getItem('listCollSessionId')
+				if (listCollSessionId){
+					var listCollSessionBool = sessionStorage.getItem('listCollSessionBool');
+					if (listCollSessionBool=="1"){
+						$("a[sid='"+listCollSessionId+"']").parent().next().addClass("fill");
+					}else{
+						$("a[sid='"+listCollSessionId+"']").parent().next().removeClass("fill");
+					}
+					sessionStorage.removeItem('listCollSessionId')
+					sessionStorage.removeItem('listCollSessionBool')
+				}
 				//
 				var TableContent=$(sessionStorage.superSearch_tableContent);
 				TableContent.on("tap",function(event){

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


+ 13 - 4
src/jfw/modules/app/src/web/templates/weixin/historypush.html

@@ -1125,6 +1125,12 @@ function hasNoData() {
                   continue
               }
           }
+          //收藏处理
+          if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==obj["_id"]){
+            obj["collection"] = sessionStorage.getItem('listCollSessionBool');
+    				sessionStorage.removeItem('listCollSessionId')
+    				sessionStorage.removeItem('listCollSessionBool')
+          }
           listhtml += '<div class="tslist ' + visited + '" words="' + mWords + '">'
               + '<div class="resnumb">'
               + '<div class="one">'
@@ -1144,6 +1150,7 @@ function hasNoData() {
               + '<div style="clear:both;"></div>'
               + '</div>'
       }
+      console.log("-------:"+listhtml)
       if (object.length <= 3 && ad != undefined && ad != "" && !closeAdvert && showAd) {
           appendList($("<div>" + listhtml + "<div class='adv-wxpush-center' id='E1'>" + ad + "</div></div>"));
       } else {
@@ -1657,10 +1664,12 @@ function hasNoData() {
                 tempS.removeClass('hover')
             }, 50)
         })
-        document.querySelector('.screen').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.tab_left').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.tab_right').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.handle_menu').addEventListener('touchmove', stopScroll, {passive: false});
+        try{
+          document.querySelector('.screen').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.tab_left').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.tab_right').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.handle_menu').addEventListener('touchmove', stopScroll, {passive: false});
+        }catch(e){}
         if (firstTime != "" && firstTime != null) {
             date = formatDate(firstTime / 1000, "1");
         }

+ 3 - 1
src/jfw/modules/app/src/web/templates/weixin/search/tabSearch.html

@@ -563,7 +563,9 @@
                                         </div>
                                     </div>
                                     <div class="ent-info-bottom ent-row" v-show="item.status >= 0 || item.address">
-                                        <span class="ent-info-status" v-show="item.status >= 0" :class="'status-' + item.status">@@statusEnum[item.status]@@</span>
+                                        <div class="ent-info-status-box">
+                                            <span class="ent-info-status" v-show="item.status >= 0" :class="'status-' + item.status">@@statusEnum[item.status]@@</span>
+                                        </div>
                                         <div  class="ent-row ent-address"  v-show="item.address">
                                             <div class="van-multi-ellipsis--l2">@@item.address@@</div>
                                             <i class="j-icon base-icon icon-address"></i>

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

@@ -892,7 +892,7 @@
                 infoId:{{.T.obj._id}}
             },
             success:function(data){
-                if(data.data.attachment !=null&&data.data.attachment.length!=0){
+                if(data.data&&data.data.attachment !=null&&data.data.attachment.length!=0){
                     var html = ''
                     if(mySysIsIos()){
                         for(var i=0;i<data.data.attachment.length;i++) {
@@ -918,10 +918,10 @@
                     $('.atta-download-have').hide()
                 }
 
-                if(data.data.len===0){ //此文章无附件
+                if(data.data&&data.data.len===0){ //此文章无附件
                     $(".atta-download").hide();
                 } else { //有附件
-                    if(data.data.attachment.length==0){ //有附件,无权限下载
+                    if(data.data&&data.data.attachment.length==0){ //有附件,无权限下载
                         $('.atta-download').css("display","flex")
                     }
                 }
@@ -1858,11 +1858,20 @@
             },
             changeKeepStatus (type) {
                 changeCollectStatus(type)
+                changeListSessionData(type)
             }
         }
     })
 
-
+    //调整列表页收藏状态
+    function changeListSessionData(b){
+      sessionStorage.setItem('listCollSessionId', id)
+      sessionStorage.setItem('listCollSessionBool', 0)
+      if(b){
+        sessionStorage.setItem('listCollSessionBool', 1)
+      }
+    }
+    //
     function changeCollectStatus (f) {
         var $collButton = $('.collec_star')
         var $icon = $collButton.children('.icon')

+ 160 - 0
src/jfw/modules/common/src/qfw/util/dataexport/dataExportRecord.go

@@ -0,0 +1,160 @@
+package dataexport
+
+import (
+	"encoding/json"
+	"fmt"
+	"qfw/util/mysql"
+	"qfw/util/redis"
+	"strings"
+	"time"
+)
+
+//数据包导出记录
+type DataPacketRecord struct {
+	InfoIds []string //导出数据ids
+	Date    int64    //导出时间戳
+}
+
+//DataPacketManager 数据包
+//MasterUser 主账户id
+//RecordArr 缓存于redis一天,导出后清除、只插入不更新 key:dataPacketRecord_masterUser
+//RepeatMap 限定时间内已导出的信息id,去重时使用
+//Quota 根据大会员套餐内每日数据包额度
+//Used 已使用额度
+type DataPacketMsg struct {
+	masterId  string              //主账户id
+	quota     int                 //每日额度
+	used      int                 //已使用额度
+	recordArr []*DataPacketRecord //导出记录
+	repeatMap map[string]bool     //数据导出去重使用
+}
+
+const (
+	DataPacketCacheKey     = "dataPacketRecord_%s_%d"
+	DataPacketUsedNum      = "dataPacketUsed_%s_%d"
+	DataPacKetUpDateNumKey = "dataPacketUpdateIng_%s_%d"
+
+	redisCacheDb = "other"
+	cacheOneDay  = 60 * 60 * 24
+
+	recordTable = "datapacket_record"
+)
+
+//1企业导出 2大会员流量包 3个人
+const (
+	EntExport = iota
+	BigMemberDaily
+	PersonalExport
+)
+
+//GetDataPacketMsg 获取数据导出记录
+//masterId主账户id
+//Quota 限额
+//Db mysql数据库链接
+func GetDataPacketMsg(masterId string, quota int) *DataPacketMsg {
+	dpm := &DataPacketMsg{}
+
+	dpm.masterId = masterId
+	dpm.quota = quota
+
+	return dpm
+}
+
+func (dpm *DataPacketMsg) GetUsed(isNewest bool) int {
+	if isNewest || dpm.used == 0 {
+		dpm.used = redis.GetInt(redisCacheDb, fmt.Sprintf(DataPacketUsedNum, dpm.masterId, time.Now().Day()))
+	}
+	return dpm.used
+}
+
+func (dpm *DataPacketMsg) getDataPacketRecord(mysql *mysql.Mysql) (dpr []*DataPacketRecord) {
+	cacheKey := fmt.Sprintf(DataPacketCacheKey, dpm.masterId, time.Now().Day())
+	if bytes, err := redis.GetBytes(redisCacheDb, cacheKey); err == nil && bytes != nil {
+		if err := json.Unmarshal(*bytes, dpr); err == nil {
+			return
+		}
+	}
+	//查询数据库
+	dpr = []*DataPacketRecord{}
+	for _, val := range *mysql.Find("datapacket_record", map[string]interface{}{"master_id": dpm.masterId}, "date,infoids", "date", -1, -1) {
+		if idStr, _ := val["infoids"].(string); idStr != "" {
+			dpr = append(dpr, &DataPacketRecord{
+				InfoIds: strings.Split(idStr, ","),
+				Date:    val["date"].(int64),
+			})
+		}
+	}
+	go func() {
+		if bytes, err := json.Marshal(dpr); err == nil && bytes != nil {
+			_ = redis.PutBytes(redisCacheDb, cacheKey, &bytes, cacheOneDay)
+		}
+	}()
+	return
+}
+
+//数据导出去重
+func (dpm *DataPacketMsg) GetRepeatMap(db *mysql.Mysql) map[string]bool {
+	if dpm.repeatMap != nil {
+		return dpm.repeatMap
+	}
+	if dpm.recordArr == nil {
+		dpm.recordArr = dpm.getDataPacketRecord(db)
+	}
+	dpm.repeatMap = make(map[string]bool)
+	for _, arr := range dpm.recordArr {
+		for _, infoId := range arr.InfoIds {
+			dpm.repeatMap[infoId] = true
+		}
+	}
+	return dpm.repeatMap
+}
+
+//数据导出数量更新
+func (dpm *DataPacketMsg) AddNum(num int) (err error) {
+	//redis分布式锁,保证同一时刻只会有一个进程更改数量
+	runningKey := fmt.Sprintf(DataPacKetUpDateNumKey, dpm.masterId, time.Now().Day())
+	if redis.Incr(redisCacheDb, runningKey) == 1 {
+		defer redis.Del(redisCacheDb, runningKey) //执行完毕 清除锁
+
+		//查询当前使用
+		used := dpm.GetUsed(true)
+
+		//更新
+		used += num
+		if used > dpm.quota {
+			err = fmt.Errorf("余额不足")
+			return
+		}
+
+		numKey := fmt.Sprintf(DataPacketUsedNum, dpm.masterId, time.Now().Day())
+		if redis.Put(redisCacheDb, numKey, used, cacheOneDay) {
+			dpm.used = used
+		} else {
+			err = fmt.Errorf("余额扣除失败")
+		}
+		return
+	}
+	return fmt.Errorf("稍后重试")
+}
+
+func (dpm *DataPacketMsg) SaveRecord(db *mysql.Mysql, useId, selectId string, t int, list *[]map[string]interface{}) error {
+	listId := []string{}
+	//rMap := dpm.GetRepeatMap(db) //去重
+	for _, v := range *list {
+		if id, _ := v["_id"].(string); id != "" {
+			listId = append(listId, id)
+		}
+	}
+
+	if db.Insert(recordTable, map[string]interface{}{
+		"infoids":   strings.Join(listId, ","),
+		"type":      t,
+		"master_id": dpm.masterId,
+		"useid":     useId,
+		"query_id":  selectId,
+		"date":      time.Now().Unix(),
+	}) == 0 {
+		return fmt.Errorf("数据导出记录保存出错 userId:%s,selectId:%s,类型:%d,导出数据:%v", useId, selectId, t, listId)
+	}
+	return nil
+}

+ 19 - 6
src/jfw/modules/common/src/qfw/util/jy/bigVipPower.go

@@ -15,12 +15,14 @@ import (
 type BigVipBaseMsg struct {
 	Status    int          `json:"status"`     //大会员状态
 	VipStatus int          `json:"vip_status"` //超级订阅状态
-	Viper     bool         `json:"viper"`      //是否是升级版超级订阅
+	Viper     bool         `json:"viper"`      //超级订阅状态
 	Used      bool         `json:"used"`       //是否首次使用大会员
 	PowerMap  map[int]bool `json:"p_map"`      //权限列表
 	ProNum    int          `json:"p_num"`      //可关注项目数量
 	EntNum    int          `json:"e_num"`      //可关注企业数量(取企业情报监控和企业中标动态中最大的值)
+	DailyNum  int          `json:"d_num"`      //数据包导出数量
 	Pid       string       `json:"pid"`        //若为子账号此处为父节点userid
+	Uid       string       `json:"uid"`        //用户id
 	HasTrial  bool         `json:"has_trial"`  //是否试用过
 }
 
@@ -30,9 +32,9 @@ const (
 	BigmemberServiceTable   = "bigmember_service"
 	BigmemberUserPowerTable = "bigmember_service_user"
 
-	PowerCacheDb   = "other"
-	PowerCaheeTime = 60 * 60 * 24
-	PowerCacheKey  = "bigmember_power_v4.5_%s"
+	PowerCacheDb  = "other"
+	PowerCacheKey = "bigmember_power_%s"
+	OneDay        = 60 * 60 * 24
 )
 
 //初始化大会员权益
@@ -76,6 +78,7 @@ func GetBigVipUserBaseMsg(userId string, mysql *mysql.Mysql, mg MongodbSim) *Big
 	if userId == "" {
 		return &userPower
 	}
+	userPower.Uid = userId
 	cacheKey := fmt.Sprintf(PowerCacheKey, userId)
 
 	if bytes, err := redis.GetBytes(PowerCacheDb, cacheKey); err == nil && bytes != nil {
@@ -117,7 +120,7 @@ func GetBigVipUserBaseMsg(userId string, mysql *mysql.Mysql, mg MongodbSim) *Big
 	//用户购买的服务
 	serviceList := mysql.Find(BigmemberUserPowerTable, map[string]interface{}{"s_userid": queryId, "i_status": 0}, "DISTINCT(s_serviceid),i_frequency", "", -1, -1)
 	if serviceList != nil && len(*serviceList) != 0 {
-		pCount, eCount := 0, 0
+		pCount, eCount, dailyNum := 0, 0, 0
 		for _, item := range *serviceList {
 			serviceid := qutil.IntAll(item["s_serviceid"])
 			userPower.PowerMap[serviceid] = true
@@ -128,16 +131,19 @@ func GetBigVipUserBaseMsg(userId string, mysql *mysql.Mysql, mg MongodbSim) *Big
 				if tEcount > eCount {
 					eCount = tEcount
 				}
+			} else if serviceid == 17 || serviceid == 18 { //每日数据包
+				dailyNum = qutil.IntAll(item["i_frequency"])
 			}
 		}
 		userPower.EntNum = eCount
 		userPower.ProNum = pCount
+		userPower.DailyNum = dailyNum
 	}
 
 	//存储缓存
 	go func() {
 		if bytes, err := json.Marshal(userPower); err == nil && bytes != nil {
-			_ = redis.PutBytes(PowerCacheDb, cacheKey, &bytes, PowerCaheeTime)
+			_ = redis.PutBytes(PowerCacheDb, cacheKey, &bytes, OneDay)
 		}
 	}()
 	return &userPower
@@ -178,3 +184,10 @@ func (this *BigVipBaseMsg) checkPower(reqFlag string, servicesPower map[string][
 	}
 	return false
 }
+
+func (this *BigVipBaseMsg) GetUseId() string {
+	if this.Pid != "" {
+		return this.Pid
+	}
+	return this.Uid
+}

+ 1 - 1
src/jfw/modules/publicapply/src/enterpriseSearch/entity/entQuery.go

@@ -30,7 +30,7 @@ type EnterpriseSearch struct {
 
 const (
 	searchMaxLimit    = 100 //最大查询数量限制
-	freeSearchNum     = 5   //免费查询数量限制
+	freeSearchNum     = 4   //免费查询数量限制
 	entSearchCacheDB  = "other"
 	entSearchCacheKey = "entSearchIndexCache"
 

+ 80 - 3
src/jfw/modules/subscribepay/src/service/dataExportPay.go

@@ -1,11 +1,15 @@
 package service
 
 import (
+	"api"
 	"bytes"
 	"config"
 	"fmt"
 	"qfw/util/dataexport"
 
+	"qfw/util/jy"
+	"qfw/util/redis"
+
 	"encoding/json"
 	"log"
 	"pay"
@@ -20,8 +24,10 @@ import (
 
 type DataExportPay struct {
 	*xweb.Action
-	getPrice    xweb.Mapper `xweb:"/dataexport/getPrice"`    //获取数据导出价格
-	createOrder xweb.Mapper `xweb:"/dataExport/createOrder"` //移动端创建订单
+	getPrice                  xweb.Mapper `xweb:"/dataexport/getPrice"`        //获取数据导出价格
+	createOrder               xweb.Mapper `xweb:"/dataExport/createOrder"`     //移动端创建订单
+	vipDailyDataExport        xweb.Mapper `xweb:"/dataExport/vipDaily"`        //大会员数据包数据导出
+	vipDailyDataExportSuccess xweb.Mapper `xweb:"/dataExport/vipDailySuccess"` //大会员数据包导出生成是否成功
 }
 
 var reg *regexp.Regexp //匹配特殊字符
@@ -155,7 +161,7 @@ func (p *DataExportPay) CreateOrder() {
 			list, err := dataexport.GetDataExportSearchResultByScdId(util.MQFW, config.Config.Elasticsearch, id, qutil.If(data_spec == "高级字段包", "2", "1").(string), data_count)
 			list = dataexport.FormatExportData(util.MQFWENT, list, config.Config.WebDomain, qutil.If(data_spec == "高级字段包", "2", "1").(string))
 			if err == nil {
-				err = util.CreateDataExportExcelFile(list, data_spec == "高级字段包", download_url)
+				err = util.CreateDataExportExcelFile(list, data_spec == "高级字段包", config.ExConf.ExcelReadyPath+download_url)
 			}
 			if err != nil {
 				errMeg := fmt.Sprintf("数据导出生成订单异常\n用户id:%s\n订单号:%s\n异常信息:%v:", userId, ordercode, err)
@@ -232,3 +238,74 @@ func (p *DataExportPay) GetPrice() {
 		"msgMaxCount":      config.ExConf.MsgMaxCount,
 	})
 }
+
+func (this *DataExportPay) VipDailyDataExport() {
+	userId, _ := this.GetSession("userId").(string)
+	rData, errMsg := func() (interface{}, error) {
+		selectId := qutil.SE.Decode4Hex(this.GetString("selectId"))
+		if selectId == "" {
+			return nil, fmt.Errorf("参数异常")
+		}
+		vipStatus := jy.GetBigVipUserBaseMsg(userId, util.Mysql, util.MQFW)
+		if vipStatus.Status <= 0 || vipStatus.DailyNum == 0 {
+			return nil, fmt.Errorf("非法请求")
+		}
+		selectCount := dataexport.GetDataExportSearchCountByScdId(util.MQFW, config.Config.Elasticsearch, selectId)
+		if selectCount > config.ExConf.MsgMaxCount {
+			selectCount = config.ExConf.MsgMaxCount
+		} else if selectCount == 0 {
+			return nil, fmt.Errorf("未查询到数据")
+		}
+
+		packetMsg := dataexport.GetDataPacketMsg(vipStatus.GetUseId(), vipStatus.DailyNum)
+		//余额扣除
+		if err := packetMsg.AddNum(selectCount); err != nil {
+			return nil, err
+		}
+		//生成excel文件&存储导出记录
+		go func() {
+			list, err := dataexport.GetDataExportSearchResultByScdId(util.MQFW, config.Config.Elasticsearch, selectId, "2", selectCount)
+			url := util.GetExcelFilePath(pay.GetOrderCode(selectId))
+			if err == nil {
+				log.Println("开始创建excel")
+				err = util.CreateDataExportExcelFile(list, true, config.ExConf.ExcelPayedPath+url)
+			}
+			if err != nil {
+				errMeg := fmt.Sprintf("数据导出每日限量包异常\n用户id:%s\n数据导出筛选id:%s\n异常信息:%v:", userId, selectId, err)
+				util.SendErrNoteToMail(errMeg)
+			} else {
+				redis.Put("other", fmt.Sprintf(VipDailySuccess, selectId), url, 24*60*60) //导出成功
+				//保存导出记录
+				if err := packetMsg.SaveRecord(util.Mysql, userId, selectId, dataexport.BigMemberDaily, list); err != nil {
+					log.Println(err)
+				}
+			}
+		}()
+		return map[string]interface{}{"success": true}, nil
+	}()
+	if errMsg != nil {
+		log.Printf("%s DataExport VipDailyDataExport 大会员数据包导出异常:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(api.NewResult(rData, errMsg))
+}
+
+const VipDailySuccess = "vipDailySuccess_%s"
+
+func (this *DataExportPay) VipDailyDataExportSuccess() {
+	userId, _ := this.GetSession("userId").(string)
+	rData, errMsg := func() (interface{}, error) {
+		selectId := qutil.SE.Decode4Hex(this.GetString("selectId"))
+		if selectId == "" {
+			return nil, fmt.Errorf("参数异常")
+		}
+		if url := redis.GetStr("other", fmt.Sprintf(VipDailySuccess, selectId)); url != "" {
+			return map[string]interface{}{"excelHref": url}, nil
+		}
+		return map[string]interface{}{"status": -1}, nil
+
+	}()
+	if errMsg != nil {
+		log.Printf("%s DataExport VipDailySuccess 大会员数据包导出结果查询异常:%s\n", userId, errMsg.Error())
+	}
+	this.ServeJson(api.NewResult(rData, errMsg))
+}

+ 2 - 3
src/jfw/modules/subscribepay/src/util/dataExportExcel.go

@@ -159,11 +159,10 @@ func CreateDataExportExcelFile(list *[]map[string]interface{}, isSenior bool, fi
 			})
 		}
 	}
-	finalPath := config.ExConf.ExcelReadyPath + filePath
-	if err := FolderCheck(finalPath); err != nil {
+	if err := FolderCheck(filePath); err != nil {
 		return err
 	}
-	return file.Save(finalPath)
+	return file.Save(filePath)
 }
 
 //校验文件夹是否存在;

+ 1 - 1
src/web/staticres/big-member/js/contrast_trial.js

@@ -150,7 +150,7 @@ var CustomData = {
         '结构化数据': {
             '在线数据导出': [
                 '用户可指定关键词、时间、地区或行业,以excel表格形式自助导出数据,可分析中标单位市场占比、各地区招标动态、 行业规模等,辅助市场决策。',
-                '单独购买'
+                '单独购买(可选择流量包或单日限量包)'
             ],
             'API接口': [
                 '提供结构化招标数据API接口,实时获取项目名称、采购单位、预算、采购单位电话等多达30+信息字段,帮助分析数据、潜在渠道合作伙伴来获取商机,制定行业分析报告,辅助战略决策。',

+ 4 - 4
src/web/staticres/big-member/js/previewTable.js

@@ -149,9 +149,9 @@ var AllData = {
         '结构化数据': {
             '在线数据导出': [
                 '用户可指定关键词、时间、地区或行业,以excel表格形式自助导出数据,可分析中标单位市场占比、各地区招标动态、 行业规模等,辅助市场决策。',
-                '单独购买',
-                '单独购买',
-                '单独购买'
+                '单独购买(可选择流量包或单日限量包)',
+                '单独购买(可选择流量包或单日限量包)',
+                '单独购买(可选择流量包或单日限量包)'
             ],
             'API接口': [
                 '提供结构化招标数据API接口,实时获取项目名称、采购单位、预算、采购单位电话等多达30+信息字段,帮助分析数据、潜在渠道合作伙伴来获取商机,制定行业分析报告,辅助战略决策。',
@@ -342,7 +342,7 @@ var CustomData = {
     '结构化数据': {
       '在线数据导出': [
         '用户可指定关键词、时间、地区或行业,以excel表格形式自助导出数据,可分析中标单位市场占比、各地区招标动态、 行业规模等,辅助市场决策。',
-        '单独购买'
+        '单独购买(可选择流量包或单日限量包)'
       ],
       'API接口': [
         '提供结构化招标数据API接口,实时获取项目名称、采购单位、预算、采购单位电话等多达30+信息字段,帮助分析数据、潜在渠道合作伙伴来获取商机,制定行业分析报告,辅助战略决策。',

+ 11 - 0
src/web/staticres/common-module/collection/js/index-wx.js

@@ -96,6 +96,17 @@ var vNode = {
       var $data = sessionStorage.getItem(this.sessStorageKey)
       if ($data) {
           $data = JSON.parse($data)
+          var listState = $data["listState"];
+          var list = listState["list"];
+          for (var i=0;i<list.length;i++){
+        	if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==list[i]["_id"]){
+				if (sessionStorage.getItem('listCollSessionBool')=="0"){
+					listState["list"].splice(i,1);
+				}
+   				sessionStorage.removeItem('listCollSessionId')
+   				sessionStorage.removeItem('listCollSessionBool')
+		    }
+	      }
           for (var key in $data) {
               if (excludeKey.indexOf(key) !== -1) {
                   continue

+ 11 - 0
src/web/staticres/common-module/collection/js/index.js

@@ -90,6 +90,17 @@ var vNode = {
       var $data = sessionStorage.getItem(this.sessStorageKey)
       if ($data) {
           $data = JSON.parse($data)
+          var listState = $data["listState"];
+          var list = listState["list"];
+          for (var i=0;i<list.length;i++){
+        	if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==list[i]["_id"]){
+				if (sessionStorage.getItem('listCollSessionBool')=="0"){
+					listState["list"].splice(i,1);
+				}
+   				sessionStorage.removeItem('listCollSessionId')
+   				sessionStorage.removeItem('listCollSessionBool')
+		    }
+	      }
           for (var key in $data) {
               if (excludeKey.indexOf(key) !== -1) {
                   continue

+ 0 - 491
src/web/staticres/common-module/ent-search/ent-search-template.css

@@ -1,491 +0,0 @@
-.v-ent-search-group {
-  display: block !important;
-  background-color: #f5f6f7;
-}
-
-.v-ent-search-group .ent-search-item {
-  margin-top: 8px;
-  display: flex;
-  flex-direction: column;
-  padding: 0.32rem;
-  background-color: #fff;
-}
-
-.v-ent-search-group .ent-search-list {
-  display: flex;
-  flex-direction: column;
-}
-
-.ent-info-head {
-  flex-shrink: 0;
-  position: relative;
-  width: 1.68rem;
-  height: 1.68rem;
-  background: rgba(0, 0, 0, 0.05);
-  border: 0.5px solid rgba(0, 0, 0, 0.05);
-  box-sizing: border-box;
-  border-radius: 0.08rem;
-  font-weight: 500;
-  font-size: 0.48rem;
-  line-height: 0.56rem;
-  text-align: center;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  padding: 0 0.1rem 0 0.2rem;
-  letter-spacing: 0.1rem;
-  color: #fff;
-}
-
-.ent-info-bottom {
-  display: flex;
-  flex-direction: row;
-  margin-top: 0.24rem;
-  justify-content: space-between;
-}
-
-.ent-info-bottom .ent-info-status {
-  background: transparent;
-  border-radius: 0.08rem;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.24rem;
-  line-height: 0.36rem;
-  color: #2ABED1;
-  border: 0.01rem solid #2ABED1;
-  padding: 0 0.08rem;
-  display: inline-block;
-}
-
-.ent-info-bottom .ent-info-status.status-1 {
-  color: #FB483D;
-  border-color: #FB483D;
-}
-
-.ent-info-bottom .ent-info-status.status-1 {
-  color: #FF9F40;
-  border-color: #FF9F40;
-}
-
-.ent-info-bottom .ent-info-status.status-1 {
-  color: #9B9CA3;
-  border-color: #9B9CA3;
-}
-
-.ent-info-top {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-}
-
-.ent-row {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-}
-
-.ent-search-list .j-icon {
-  flex-shrink: 0;
-  width: 0.4rem;
-  height: 0.4rem;
-}
-
-.ent-info-keep .ent-name {
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.32rem;
-  line-height: 0.48rem;
-  color: #171826;
-  max-width: 4.3rem;
-}
-
-.ent-info-keep .fill-icon-box {
-  padding: 0.12rem;
-  padding-right: 0;
-}
-
-.ent-info-keep {
-  margin-left: 0.24rem;
-  flex: 1;
-}
-
-.ent-more span {
-  color: #2ABED1;
-  margin-top: 0.08rem;
-}
-
-.ent-more {
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.26rem;
-  line-height: 0.36rem;
-  color: #5F5E64;
-  margin-top: 0.2rem;
-}
-
-.ent-line-box {
-  margin-top: 0.24rem;
-  width: 4.22rem;
-  height: 0.01rem;
-  background: rgba(0, 0, 0, 0.05);
-  border-radius: 0.08rem;
-}
-
-.ent-address > div {
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: normal;
-  font-size: 0.22rem;
-  line-height: 0.32rem;
-  color: #5F5E64;
-  max-width: 4.22rem;
-  margin-right: 0.32rem;
-}
-
-.up-button {
-  margin: 0.48rem auto;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  width: 4.98rem;
-  height: 0.64rem;
-  min-height: 0.64rem;
-  border: 1px solid #2ABED1;
-  box-sizing: border-box;
-  border-radius: 0.08rem;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.26rem;
-  line-height: 0.48rem;
-  color: #2ABED1;
-}
-
-.ent-more-tip .j-icon {
-  margin-right: 0.08rem;
-}
-
-.ent-more-tip {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: center;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.28rem;
-  line-height: 0.4rem;
-  color: #9B9CA3;
-}
-
-.v-ent-search-group .van-tabs__line {
-  opacity: 0 !important;
-}
-
-.v-ent-search-group .an-icon-box {
-  position: relative;
-  width: 0.32rem;
-  height: 0.32rem;
-}
-
-.v-ent-search-group .an-icon-box .j-icon {
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 0.32rem !important;
-  height: 0.32rem !important;
-  transition: all 0.2s;
-  margin-left: 0.04rem;
-}
-
-.v-ent-search-group .an-icon-box .icon-triangle-up {
-  opacity: 0;
-}
-
-.v-ent-search-group .an-icon-box .icon-triangle-down {
-  opacity: 1;
-}
-
-.v-ent-search-group .ent-search-tab-item {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: center;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.28rem;
-  line-height: 0.4rem;
-  color: #5F5E64;
-  padding: 0.24rem 0.38rem;
-}
-
-.v-ent-search-group .ent-search-tab-item .disabled-tag {
-  display: none;
-  width: 0.64rem;
-  height: 0.32rem;
-  border: 0.02rem solid #FB483D;
-  box-sizing: border-box;
-  border-radius: 0.16rem;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  text-align: center;
-  font-size: 0.2rem;
-  line-height: 0.32rem;
-  color: #FB483D;
-  margin: 0 0.04rem;
-}
-
-.v-ent-search-group .ent-search-tab-item.ent-p-disabled {
-  color: #C0C4CC !important;
-}
-
-.v-ent-search-group .ent-search-tab-item.ent-p-disabled .disabled-tag {
-  display: inline-block;
-}
-
-.v-ent-search-group .ent-search-tab-item.ent-p-select {
-  color: #2ABED1 !important;
-}
-
-.v-ent-search-group .ent-search-tab-item.ent-p-hide {
-  display: none;
-}
-
-.v-ent-search-group .van-tabs--line .van-tabs__wrap::after {
-  border-width: 0;
-  border-bottom-width: 1px;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item {
-  color: #2ABED1;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item .icon-triangle-up {
-  opacity: 1;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item .icon-triangle-down {
-  opacity: 0;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item.ent-p-close {
-  color: #5F5E64;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item.ent-p-close .icon-triangle-up {
-  opacity: 0;
-}
-
-.v-ent-search-group .van-tab--active .ent-search-tab-item.ent-p-close .icon-triangle-down {
-  opacity: 1;
-}
-
-.v-ent-search-group .ent-search-list {
-  overflow-y: auto;
-  position: relative;
-}
-
-.v-ent-search-group .ent-search-list.stop {
-  overflow: hidden;
-}
-
-.v-ent-search-group .jy-diy-pop {
-  position: absolute;
-  bottom: 0;
-  left: 0;
-  width: 100%;
-  height: unset;
-}
-
-.v-ent-search-group .jy-diy-pop > .van-overlay {
-  position: absolute;
-  z-index: 2020;
-}
-
-.v-ent-search-group .jy-diy-pop > .van-popup {
-  position: absolute;
-  top: 0;
-  left: 0;
-  width: 100%;
-  background-color: #fff;
-  z-index: 2021;
-}
-
-.v-ent-search-group .jy-diy-pop .popup-content {
-  max-height: 40vh;
-  overflow-y: auto;
-}
-
-.v-ent-search-group .jy-diy-pop .popup-content .j-footer {
-  display: none;
-}
-
-.v-ent-search-group .jy-diy-pop .popup-content .van-popup .j-footer {
-  display: flex;
-}
-
-.v-ent-search-group .empty-tip-group {
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.28rem;
-  line-height: 0.4rem;
-  color: #5F5E64;
-}
-
-.v-ent-search-group .empty-tip-group .img-empty {
-  width: 3.2rem;
-  height: 3.2rem;
-  margin-bottom: 0.24rem;
-  margin-top: 1.76rem;
-}
-
-.v-ent-search-group .wait-buy-tip-group {
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  padding: 0.96rem 0;
-  border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
-}
-
-.v-ent-search-group .wait-buy-tip-group h3 {
-  font-size: 0.36rem;
-  line-height: 0.52rem;
-  color: #171826;
-  margin-bottom: 0.16rem;
-}
-
-.v-ent-search-group .wait-buy-tip-group p {
-  font-size: 0.3rem;
-  line-height: 0.44rem;
-  text-align: center;
-  color: #5F5E64;
-}
-
-.v-ent-search-group .condition-select-group {
-  padding-left: 0.32rem;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item .more-icon-box {
-  position: relative;
-  width: 0.48rem;
-  height: 0.48rem;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item .more-icon-box .j-icon {
-  top: 0;
-  left: 0;
-  position: absolute;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item .icon-tick-circle-fill {
-  opacity: 0;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item .icon-tick-circle {
-  opacity: 1;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item.checked .icon-tick-circle-fill {
-  opacity: 1;
-}
-
-.v-ent-search-group .condition-select-group.more .condition-select-item.checked .icon-tick-circle {
-  opacity: 0;
-}
-
-.v-ent-search-group .condition-select-group .condition-select-item {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-  padding: 0.24rem 0.32rem;
-  padding-left: 0;
-  border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.28rem;
-  line-height: 0.4rem;
-  color: #5F5E64;
-}
-
-.v-ent-search-group .condition-select-group .condition-select-item .j-icon {
-  opacity: 0;
-  width: 0.48rem;
-  height: 0.48rem;
-  transition: all 0.2s;
-}
-
-.v-ent-search-group .condition-select-group .condition-select-item.checked {
-  color: #2ABED1;
-}
-
-.v-ent-search-group .condition-select-group .condition-select-item.checked .j-icon {
-  opacity: 1;
-}
-
-.v-ent-search-group .pop-bottom {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-  padding: 0.16rem 0.32rem;
-}
-
-.v-ent-search-group .pop-bottom > .van-button {
-  flex: 1;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.32rem;
-  line-height: 0.48rem;
-  color: #5F5E64;
-  background: #EDEFF2;
-  border-radius: 4px;
-}
-
-.v-ent-search-group .pop-bottom > .van-button--primary {
-  color: #fff;
-  border-color: #2ABED1;
-  background-color: #2ABED1;
-}
-
-.v-ent-search-group .pop-bottom > .van-button + .van-button {
-  margin-left: 0.26rem;
-}
-
-.ent-stop-scroll {
-  overflow: hidden !important;
-}
-
-#supersearchPage .app-layout-content-b #wrapper {
-  position: relative;
-}
-
-#date-picker-other-box .van-overlay {
-  z-index: 2050 !important;
-}
-
-#date-picker-other-box .van-popup {
-  z-index: 2051 !important;
-}
-
-/*# sourceMappingURL=ent-search-template.css.map */

文件差异内容过多而无法显示
+ 0 - 7
src/web/staticres/common-module/ent-search/ent-search-template.css.map


+ 22 - 13
src/web/staticres/common-module/ent-search/ent-search-template.prefixer.css

@@ -37,15 +37,15 @@
     -webkit-flex-shrink: 0;
     flex-shrink: 0;
     position: relative;
-    width: 1.68rem;
-    height: 1.68rem;
+    width: 1.28rem;
+    height: 1.28rem;
     background: rgba(0, 0, 0, 0.05);
     border: 0.5px solid rgba(0, 0, 0, 0.05);
     box-sizing: border-box;
     border-radius: 0.08rem;
     font-weight: 500;
-    font-size: 0.48rem;
-    line-height: 0.56rem;
+    font-size: 0.32rem;
+    line-height: 0.36rem;
     text-align: center;
     display: -webkit-box;
     display: -webkit-flex;
@@ -60,12 +60,12 @@
     -webkit-box-pack: center;
     -webkit-justify-content: center;
     justify-content: center;
-    padding: 0 0.1rem 0 0.2rem;
-    letter-spacing: 0.1rem;
+    padding: 0 0.16rem 0 0.2rem;
+    letter-spacing: 0.04rem;
     color: #fff;
 }
 
-.ent-info-bottom {
+.ent-info-bottom.ent-row {
     display: -webkit-box;
     display: -webkit-flex;
     display: flex;
@@ -79,6 +79,15 @@
     justify-content: space-between;
 }
 
+.ent-info-bottom .ent-address {
+    margin-left: 0.24rem;
+    -webkit-box-flex: 1;
+    -webkit-flex: 1;
+    flex: 1;
+}
+.ent-info-bottom .ent-info-status-box {
+    width: 1.28rem;
+}
 .ent-info-bottom .ent-info-status {
     background: transparent;
     border-radius: 0.08rem;
@@ -116,9 +125,9 @@
     -webkit-box-direction: normal;
     -webkit-flex-direction: row;
     flex-direction: row;
-    -webkit-box-align: center;
-    -webkit-align-items: center;
-    align-items: center;
+    -webkit-box-align: start;
+    -webkit-align-items: flex-start;
+    align-items: flex-start;
     -webkit-box-pack: justify;
     -webkit-justify-content: space-between;
     justify-content: space-between;
@@ -181,12 +190,12 @@
     font-size: 0.26rem;
     line-height: 0.36rem;
     color: #5F5E64;
-    margin-top: 0.2rem;
+    margin-top: 0.08rem;
 }
 
 .ent-line-box {
     margin-top: 0.24rem;
-    width: 4.22rem;
+    width: 4.62rem;
     height: 0.01rem;
     background: rgba(0, 0, 0, 0.05);
     border-radius: 0.08rem;
@@ -199,7 +208,7 @@
     font-size: 0.22rem;
     line-height: 0.32rem;
     color: #5F5E64;
-    max-width: 4.22rem;
+    max-width: 4.62rem;
     margin-right: 0.32rem;
 }
 

+ 0 - 445
src/web/staticres/common-module/ent-search/ent-search-template.scss

@@ -1,445 +0,0 @@
-.v-ent-search-group {
-  display: block !important;
-  background-color: #f5f6f7;
-}
-.v-ent-search-group .ent-search-item {
-  margin-top: 8px;
-  display: flex;
-  flex-direction: column;
-  padding: 0.32rem;
-  background-color: #fff;
-}
-.v-ent-search-group .ent-search-list {
-  display: flex;
-  flex-direction: column;
-}
-.ent-info-head {
-  flex-shrink: 0;
-  position: relative;
-  width: 1.68rem;
-  height: 1.68rem;
-  background: rgba(0, 0, 0, 0.05);
-  border: 0.5px solid rgba(0, 0, 0, 0.05);
-  box-sizing: border-box;
-  border-radius: 0.08rem;
-  font-weight: 500;
-  font-size: 0.48rem;
-  line-height: 0.56rem;
-  text-align: center;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  padding: 0 0.1rem 0 0.2rem;
-  letter-spacing: 0.1rem;
-  color: #fff;
-}
-.ent-info-bottom {
-  display: flex;
-  flex-direction: row;
-  margin-top: 0.24rem;
-  justify-content: space-between;
-  .ent-info-status {
-    background: transparent;
-    border-radius: 0.08rem;
-    font-family: PingFang SC;
-    font-style: normal;
-    font-weight: 500;
-    font-size: 0.24rem;
-    line-height: 0.36rem;
-    color: #2ABED1;
-    border: 0.01rem solid #2ABED1;
-    padding: 0 0.08rem;
-    display: inline-block;
-    &.status-1 {
-      color: #FB483D;
-      border-color: #FB483D;
-    }
-    &.status-1 {
-      color: #FF9F40;
-      border-color: #FF9F40;
-    }
-    &.status-1 {
-      color: #9B9CA3;
-      border-color: #9B9CA3;
-    }
-  }
-}
-
-.ent-info-top {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-}
-.ent-row {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: space-between;
-}
-.ent-search-list .j-icon {
-  flex-shrink: 0;
-  width: 0.4rem;
-  height: 0.4rem;
-}
-.ent-info-keep .ent-name {
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.32rem;
-  line-height: 0.48rem;
-  color: #171826;
-  max-width: 4.3rem;
-}
-.ent-info-keep .fill-icon-box {
-  padding: 0.12rem;
-  padding-right: 0;
-}
-.ent-info-keep {
-  margin-left: 0.24rem;
-  flex: 1;
-}
-.ent-more span {
-  color: #2ABED1;
-  margin-top: 0.08rem;
-}
-.ent-more {
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.26rem;
-  line-height: 0.36rem;
-  color: #5F5E64;
-  margin-top: 0.2rem;
-}
-.ent-line-box {
-  margin-top: 0.24rem;
-  width: 4.22rem;
-  height: 0.01rem;
-  background: rgba(0, 0, 0, 0.05);
-  border-radius: 0.08rem;
-}
-.ent-address > div{
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: normal;
-  font-size: 0.22rem;
-  line-height: 0.32rem;
-  color: #5F5E64;
-  max-width: 4.22rem;
-  margin-right: 0.32rem;
-}
-.up-button {
-  margin: 0.48rem auto;
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  justify-content: center;
-  width: 4.98rem;
-  height: 0.64rem;
-  min-height: 0.64rem;
-  border: 1px solid #2ABED1;
-  box-sizing: border-box;
-  border-radius: 0.08rem;
-
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.26rem;
-  line-height: 0.48rem;
-  color: #2ABED1;
-
-}
-.ent-more-tip .j-icon {
-  margin-right: 0.08rem;
-}
-.ent-more-tip {
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  justify-content: center;
-  font-family: PingFang SC;
-  font-style: normal;
-  font-weight: 500;
-  font-size: 0.28rem;
-  line-height: 0.4rem;
-  color: #9B9CA3;
-}
-
-.v-ent-search-group {
-  .van-tabs__line {
-    opacity: 0 !important;
-  }
-  .an-icon-box {
-    position: relative;
-    width: 0.32rem;
-    height: 0.32rem;
-    .j-icon {
-      position: absolute;
-      top: 0;
-      left: 0;
-      width: 0.32rem !important;
-      height: 0.32rem !important;
-      transition: all 0.2s;
-      margin-left: 0.04rem;
-    }
-    .icon-triangle-up {
-      opacity: 0;
-    }
-    .icon-triangle-down {
-      opacity: 1;
-    }
-  }
-  .ent-search-tab-item {
-    display: flex;
-    flex-direction: row;
-    align-items: center;
-    justify-content: center;
-    font-family: PingFang SC;
-    font-style: normal;
-    font-weight: 500;
-    font-size: 0.28rem;
-    line-height: 0.4rem;
-    color: #5F5E64;
-    padding: 0.24rem 0.38rem;
-    .disabled-tag {
-      display: none;
-      width: 0.64rem;
-      height: 0.32rem;
-      border: 0.02rem solid #FB483D;
-      box-sizing: border-box;
-      border-radius: 0.16rem;
-      font-family: PingFang SC;
-      font-style: normal;
-      font-weight: 500;
-      text-align: center;
-      font-size: 0.2rem;
-      line-height: 0.32rem;
-      color: #FB483D;
-      margin: 0 0.04rem;
-    }
-    &.ent-p-disabled {
-      color: #C0C4CC !important;
-      .disabled-tag {
-        display: inline-block;
-      }
-    }
-    &.ent-p-select {
-      color: #2ABED1 !important;
-    }
-    &.ent-p-hide {
-      display: none;
-    }
-  }
-  .van-tabs--line .van-tabs__wrap::after {
-    border-width: 0;
-    border-bottom-width: 1px;
-  }
-
-  .van-tab--active {
-    .ent-search-tab-item {
-      color: #2ABED1;
-      .icon-triangle-up {
-        opacity: 1;
-      }
-      .icon-triangle-down {
-        opacity: 0;
-      }
-      &.ent-p-close {
-        color: #5F5E64;
-        .icon-triangle-up {
-          opacity: 0;
-        }
-        .icon-triangle-down {
-          opacity: 1;
-        }
-      }
-    }
-  }
-  .ent-search-list {
-    overflow-y: auto;
-    position: relative;
-    &.stop {
-      overflow: hidden;
-    }
-  }
-  .jy-diy-pop {
-    position: absolute;
-    bottom: 0;
-    left: 0;
-    width: 100%;
-    height: unset;
-    > .van-overlay {
-      position: absolute;
-      z-index: 2020;
-    }
-    > .van-popup {
-      position: absolute;
-      top: 0;
-      left: 0;
-      width: 100%;
-      background-color: #fff;
-      z-index: 2021;
-    }
-    .popup-content {
-      max-height: 40vh;
-      overflow-y: auto;
-      .j-footer {
-        display: none;
-      }
-      .van-popup .j-footer {
-        display: flex;
-      }
-    }
-  }
-
-  .empty-tip-group {
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    justify-content: center;
-    font-family: PingFang SC;
-    font-style: normal;
-    font-weight: 500;
-    font-size: 0.28rem;
-    line-height: 0.4rem;
-    color: #5F5E64;
-    .img-empty {
-      width: 3.2rem;
-      height: 3.2rem;
-      margin-bottom: 0.24rem;
-      margin-top: 1.76rem;
-    }
-  }
-
-  .wait-buy-tip-group {
-    display: flex;
-    flex-direction: column;
-    align-items: center;
-    justify-content: center;
-    font-family: PingFang SC;
-    font-style: normal;
-    font-weight: 500;
-    padding: 0.96rem 0;
-    border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
-    h3 {
-      font-size: 0.36rem;
-      line-height: 0.52rem;
-      color: #171826;
-      margin-bottom: 0.16rem;
-    }
-    p {
-      font-size: 0.3rem;
-      line-height: 0.44rem;
-      text-align: center;
-      color: #5F5E64;
-    }
-  }
-
-  .condition-select-group {
-    padding-left: 0.32rem;
-    &.more {
-      .condition-select-item {
-        .more-icon-box {
-          position: relative;
-          width: 0.48rem;
-          height: 0.48rem;
-          .j-icon {
-            top: 0;
-            left: 0;
-            position: absolute;
-          }
-        }
-        .icon-tick-circle-fill {
-          opacity: 0;
-        }
-        .icon-tick-circle {
-          opacity: 1;
-        }
-        &.checked {
-          .icon-tick-circle-fill {
-            opacity: 1;
-          }
-          .icon-tick-circle {
-            opacity: 0;
-          }
-        }
-      }
-    }
-    .condition-select-item {
-      display: flex;
-      flex-direction: row;
-      align-items: center;
-      justify-content: space-between;
-      padding: 0.24rem 0.32rem;
-      padding-left: 0;
-      border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
-      font-family: PingFang SC;
-      font-style: normal;
-      font-weight: 500;
-      font-size: 0.28rem;
-      line-height: 0.4rem;
-      color: #5F5E64;
-      .j-icon {
-        opacity: 0;
-        width: 0.48rem;
-        height: 0.48rem;
-        transition: all 0.2s;
-      }
-      &.checked {
-        color: #2ABED1;
-        .j-icon {
-          opacity: 1;
-        }
-      }
-    }
-  }
-
-  .pop-bottom {
-    display: flex;
-    flex-direction: row;
-    align-items: center;
-    justify-content: space-between;
-    padding: 0.16rem 0.32rem;
-    > .van-button {
-      flex: 1;
-
-      font-family: PingFang SC;
-      font-style: normal;
-      font-weight: 500;
-      font-size: 0.32rem;
-      line-height: 0.48rem;
-      color: #5F5E64;
-      background: #EDEFF2;
-      border-radius: 4px;
-      &--primary {
-        color: #fff;
-        border-color: #2ABED1;
-        background-color: #2ABED1;
-      }
-
-
-      & + .van-button {
-        margin-left: 0.26rem;
-      }
-    }
-  }
-}
-
-.ent-stop-scroll {
-  overflow: hidden !important;
-}
-
-#supersearchPage .app-layout-content-b #wrapper {
-  position: relative;
-}
-
-#date-picker-other-box {
-  .van-overlay {
-    z-index: 2050 !important;
-  }
-  .van-popup {
-    z-index: 2051 !important;
-  }
-}

+ 1 - 0
src/web/staticres/css/dev2/newBidSearch.css

@@ -296,6 +296,7 @@
   box-sizing: border-box;
   border-radius: 8px;
   box-shadow: 0px 0px 28px 0px rgba(0,0,0,0.08);
+  z-index: 99;
 }
 .tags-box .tags-inputs{
   position: relative;

+ 679 - 230
src/web/staticres/dataExport/css/payment_order.css

@@ -1,177 +1,569 @@
-body { background-color: #F5F5FB !important; }
-
-#pay { padding: 106px 0px 30px 0px; }
+body {
+    background-color: #F5F5FB !important;
+}
 
-#pay .progress_createOrder { width: 1200px; display: inline-block; padding-left: 95px; margin-bottom: 30px; box-sizing: border-box; }
+#pay {
+    padding: 106px 0px 30px 0px;
+}
 
-#pay .progress_createOrder div.pro { width: 300px; height: 38px; line-height: 38px; text-align: center; background-color: #BFBFBF; float: left; margin-right: 8px; }
+#pay .progress_createOrder {
+    width: 1200px;
+    display: inline-block;
+    padding-left: 95px;
+    margin-bottom: 30px;
+    box-sizing: border-box;
+}
 
-#pay .progress_createOrder div.a1 { background-color: #BFBFBF; color: #fff; }
+#pay .progress_createOrder div.pro {
+    width: 300px;
+    height: 38px;
+    line-height: 38px;
+    text-align: center;
+    background-color: #BFBFBF;
+    float: left;
+    margin-right: 8px;
+}
 
-#pay .progress_createOrder div.b2 { background-color: #2CB7CA; color: #fff; }
+#pay .progress_createOrder div.a1 {
+    background-color: #BFBFBF;
+    color: #fff;
+}
 
-#pay .progress_createOrder div.c3 { background-color: #72DAE8; color: #fff; }
+#pay .progress_createOrder div.b2 {
+    background-color: #2CB7CA;
+    color: #fff;
+}
 
-#pay .progress_createOrder .l { position: relative; z-index: 3; }
+#pay .progress_createOrder div.c3 {
+    background-color: #72DAE8;
+    color: #fff;
+}
 
-#pay .progress_createOrder .l:after { content: ""; position: absolute; right: -23px; top: 0; width: 0; height: 0; border-top: 19px solid transparent; border-left: 23px solid #72DAE8; border-bottom: 19px solid transparent; }
+#pay .progress_createOrder .l {
+    position: relative;
+    z-index: 3;
+}
 
-#pay .progress_createOrder .c { z-index: 2; position: relative; }
+#pay .progress_createOrder .l:after {
+    content: "";
+    position: absolute;
+    right: -23px;
+    top: 0;
+    width: 0;
+    height: 0;
+    border-top: 19px solid transparent;
+    border-left: 23px solid #72DAE8;
+    border-bottom: 19px solid transparent;
+}
 
-#pay .progress_createOrder .c:before { content: ""; position: absolute; left: 0; top: 0; width: 0; height: 0; border-top: 19px solid transparent; border-left: 23px solid #fff; border-bottom: 19px solid transparent; }
+#pay .progress_createOrder .c {
+    z-index: 2;
+    position: relative;
+}
 
-#pay .progress_createOrder .c:after { content: ""; position: absolute; right: -23px; top: 0; width: 0; height: 0; border-top: 19px solid transparent; border-left: 23px solid #2CB7CA; border-bottom: 19px solid transparent; }
+#pay .progress_createOrder .c:before {
+    content: "";
+    position: absolute;
+    left: 0;
+    top: 0;
+    width: 0;
+    height: 0;
+    border-top: 19px solid transparent;
+    border-left: 23px solid #fff;
+    border-bottom: 19px solid transparent;
+}
 
-#pay .progress_createOrder .r { position: relative; }
+#pay .progress_createOrder .c:after {
+    content: "";
+    position: absolute;
+    right: -23px;
+    top: 0;
+    width: 0;
+    height: 0;
+    border-top: 19px solid transparent;
+    border-left: 23px solid #2CB7CA;
+    border-bottom: 19px solid transparent;
+}
 
-#pay .progress_createOrder .r:before { content: ""; position: absolute; left: 0; top: 0; width: 0; height: 0; border-top: 19px solid transparent; border-left: 23px solid #fff; border-bottom: 19px solid transparent; }
+#pay .progress_createOrder .r {
+    position: relative;
+}
 
-#pay .inner.all { background-color: #fff; border-top: 2px solid #2CB7CA; padding:20px 30px; }
+#pay .progress_createOrder .r:before {
+    content: "";
+    position: absolute;
+    left: 0;
+    top: 0;
+    width: 0;
+    height: 0;
+    border-top: 19px solid transparent;
+    border-left: 23px solid #fff;
+    border-bottom: 19px solid transparent;
+}
 
-#pay .inner .infotitle { padding-bottom: 18px; border-bottom: 1px solid #ccc; margin-bottom: 15px; }
+#pay .inner.all {
+    background-color: #fff;
+    border-top: 2px solid #2CB7CA;
+    padding: 20px 30px;
+}
 
-#pay .inner .infotitle span { color: #1D1D1D; font-size: 16px; }
+#pay .inner .infotitle {
+    padding-bottom: 18px;
+    border-bottom: 1px solid #ccc;
+    margin-bottom: 15px;
+}
 
-#pay .inner .infotitle span i { font-size: 20px; color: #2CB7CA; margin: 0 2px; }
+#pay .inner .infotitle span {
+    color: #1D1D1D;
+    font-size: 16px;
+}
 
-#pay .inner .infotitle em { font-size: 12px; color: #888888; margin-left: 20px; }
+#pay .inner .infotitle span i {
+    font-size: 20px;
+    color: #2CB7CA;
+    margin: 0 2px;
+}
 
-#pay .inner .infotitle a { color: #2CB7CA; margin-left: 20px; cursor: pointer;}
+#pay .inner .infotitle em {
+    font-size: 12px;
+    color: #888888;
+    margin-left: 20px;
+}
 
-#pay .inner .infotitle a span { color: #2CB7CA; }
+#pay .inner .infotitle a {
+    color: #2CB7CA;
+    margin-left: 20px;
+    cursor: pointer;
+}
 
-#pay .inner .email { padding-bottom: 18px; /*border-bottom: 1px solid #ccc; margin-bottom: 15px;*/ font-size:13.3px}
+#pay .inner .infotitle a span {
+    color: #2CB7CA;
+}
 
-#pay .inner .email .title { font-size: 16px; color: #1d1d1d; margin-bottom: 16px; }
+#pay .inner .email {
+    padding-bottom: 18px; /*border-bottom: 1px solid #ccc; margin-bottom: 15px;*/
+    font-size: 13.3px
+}
 
-#pay .inner .email .input .em { width: 460px; height: 40px; line-height: 40px; border: 1px solid #ccc; padding-left: 15px; box-sizing: border-box; margin-right: 14px; border-radius: 4px; }
+#pay .inner .email .title {
+    font-size: 16px;
+    color: #1d1d1d;
+    margin-bottom: 16px;
+}
 
-#pay .inner .email .input .test { width: 160px; height: 40px; line-height: 40px; border: 1px solid #ccc; box-sizing: border-box; margin-right: 16px; padding-left: 15px; border-radius: 4px; }
+#pay .inner .email .input .em {
+    width: 460px;
+    height: 40px;
+    line-height: 40px;
+    border: 1px solid #ccc;
+    padding-left: 15px;
+    box-sizing: border-box;
+    margin-right: 14px;
+    border-radius: 4px;
+}
 
-#pay .inner .email .input .sub { width: 120px; height: 40px; line-height: 40px; text-align: center; background-color: #2CB7CA; color: #fff; border-radius: 4px; }
+#pay .inner .email .input .test {
+    width: 160px;
+    height: 40px;
+    line-height: 40px;
+    border: 1px solid #ccc;
+    box-sizing: border-box;
+    margin-right: 16px;
+    padding-left: 15px;
+    border-radius: 4px;
+}
 
-#pay .inner .email .input .status { margin-left: 20px; }
+#pay .inner .email .input .sub {
+    width: 120px;
+    height: 40px;
+    line-height: 40px;
+    text-align: center;
+    background-color: #2CB7CA;
+    color: #fff;
+    border-radius: 4px;
+}
 
-#pay .inner .email .input .status .succ { height: 40px; line-height: 40px; color: #2CB7CA; font-size: 30px; }
+#pay .inner .email .input .status {
+    margin-left: 20px;
+}
 
-#pay .inner .email .input .status .err { height: 40px; line-height: 40px; color: #FE737A; font-size:16px }
+#pay .inner .email .input .status .succ {
+    height: 40px;
+    line-height: 40px;
+    color: #2CB7CA;
+    font-size: 30px;
+}
 
-#pay .inner .email .input .status .err i { color: #FE737A; font-size: 18px; }
+#pay .inner .email .input .status .err {
+    height: 40px;
+    line-height: 40px;
+    color: #FE737A;
+    font-size: 16px
+}
 
-#pay .inner .guige, #pay .inner .pay { padding-bottom: 18px; border-bottom: 1px solid #ccc; margin-bottom: 15px; }
+#pay .inner .email .input .status .err i {
+    color: #FE737A;
+    font-size: 18px;
+}
 
-#pay .inner .guige .title, #pay .inner .pay .title { font-size: 16px; color: #1d1d1d; margin-bottom: 16px; }
+#pay .inner .guige, #pay .inner .pay {
+    padding-bottom: 18px;
+    border-bottom: 1px solid #ccc;
+    margin-bottom: 15px;
+}
 
-#pay .inner .guige .title i, #pay .inner .pay .title i { color: #2CB7CA; font-size: 20px; margin-left: 10px; cursor: pointer; }
+#pay .inner .guige .title, #pay .inner .pay .title {
+    font-size: 16px;
+    color: #1d1d1d;
+    margin-bottom: 16px;
+}
 
-#pay .inner .guige .inner div, #pay .inner .pay .inner div { width: 140px; height: 58px; padding: 8px 0; box-sizing: border-box; border: 1px solid #ccc; float: left; margin-right: 16px; border-radius: 4px; cursor: pointer; }
+#pay .inner .guige .title i, #pay .inner .pay .title i {
+    color: #2CB7CA;
+    font-size: 20px;
+    margin-left: 10px;
+    cursor: pointer;
+}
 
-#pay .inner .guige .inner div.bz p, #pay .inner .guige .inner div.gj p, #pay .inner .pay .inner div.bz p, #pay .inner .pay .inner div.gj p { width: 100%; text-align: center; }
+#pay .inner .guige .inner div, #pay .inner .pay .inner div {
+    width: 140px;
+    height: 58px;
+    padding: 8px 0;
+    box-sizing: border-box;
+    border: 1px solid #ccc;
+    float: left;
+    margin-right: 16px;
+    border-radius: 4px;
+    cursor: pointer;
+}
 
-#pay .inner .guige .inner div.bz p:nth-of-type(1), #pay .inner .guige .inner div.gj p:nth-of-type(1), #pay .inner .pay .inner div.bz p:nth-of-type(1), #pay .inner .pay .inner div.gj p:nth-of-type(1) { font-size: 14px; color: #1D1D1D; margin-bottom: 1px; }
+#pay .inner .guige .inner div.bz p, #pay .inner .guige .inner div.gj p, #pay .inner .pay .inner div.bz p, #pay .inner .pay .inner div.gj p {
+    width: 100%;
+    text-align: center;
+}
 
-#pay .inner .guige .inner div.bz p:nth-of-type(2), #pay .inner .guige .inner div.gj p:nth-of-type(2), #pay .inner .pay .inner div.bz p:nth-of-type(2), #pay .inner .pay .inner div.gj p:nth-of-type(2) { font-size: 12px; color: #888; }
+#pay .inner .guige .inner div.bz p:nth-of-type(1), #pay .inner .guige .inner div.gj p:nth-of-type(1), #pay .inner .pay .inner div.bz p:nth-of-type(1), #pay .inner .pay .inner div.gj p:nth-of-type(1) {
+    font-size: 14px;
+    color: #1D1D1D;
+    margin-bottom: 1px;
+}
 
-#pay .inner .guige .inner div.bz.active, #pay .inner .guige .inner div.gj.active, #pay .inner .pay .inner div.bz.active, #pay .inner .pay .inner div.gj.active { border: 1.5px solid #2CB7CA; background: #fff url(../image/bgsanjiao.png) 118px 36px no-repeat; background-size: 19px 19px; }
+#pay .inner .guige .inner div.bz p:nth-of-type(2), #pay .inner .guige .inner div.gj p:nth-of-type(2), #pay .inner .pay .inner div.bz p:nth-of-type(2), #pay .inner .pay .inner div.gj p:nth-of-type(2) {
+    font-size: 12px;
+    color: #888;
+}
 
-#pay .inner .guige .inner div.gj p:nth-of-type(1) i, #pay .inner .pay .inner div.gj p:nth-of-type(1) i { color: #FFBA00; font-size: 12px; margin-right: 6px; }
+#pay .inner .guige .inner div.bz.active, #pay .inner .guige .inner div.gj.active, #pay .inner .pay .inner div.bz.active, #pay .inner .pay .inner div.gj.active {
+    border: 1.5px solid #2CB7CA;
+    background: #fff url(../image/bgsanjiao.png) 118px 36px no-repeat;
+    background-size: 19px 19px;
+}
 
-#pay .inner .pay { border: 0; padding-bottom: 0; }
+#pay .inner .guige .inner div.gj p:nth-of-type(1) i, #pay .inner .pay .inner div.gj p:nth-of-type(1) i {
+    color: #FFBA00;
+    font-size: 12px;
+    margin-right: 6px;
+}
 
-#pay .inner .pay .inner .wx { vertical-align: middle; box-sizing: border-box; height: 40px; font-size: 14px; line-height: 40px; padding: 0; padding-left: 55px; background: #fff url(../image/wxpay.png) 25px center no-repeat; background-size: 22px 20px; }
+#pay .inner .pay {
+    border: 0;
+    padding-bottom: 0;
+}
 
-#pay .inner .pay .inner .wx img { width: 22px; height: 20px; display: inline-block; }
+#pay .inner .pay .inner .wx {
+    vertical-align: middle;
+    box-sizing: border-box;
+    height: 40px;
+    font-size: 14px;
+    line-height: 40px;
+    padding: 0;
+    padding-left: 55px;
+    background: #fff url(../image/wxpay.png) 25px center no-repeat;
+    background-size: 22px 20px;
+}
 
-#pay .inner .pay .inner  span { display: inline-block; }
+#pay .inner .pay .inner .wx img {
+    width: 22px;
+    height: 20px;
+    display: inline-block;
+}
 
-#pay .inner .pay .inner .wx.active { border: 1.5px solid #2CB7CA; background-image: url(../image/wxpay.png), url(../image/bgsanjiao.png); background-position: 25px center, 118px 18px; background-repeat: no-repeat, no-repeat; background-size: 22px 20px,19px 19px;font-size: 14px;}
+#pay .inner .pay .inner span {
+    display: inline-block;
+}
 
-#pay .inner .pay .inner .alipay { vertical-align: middle; box-sizing: border-box; font-size: 14px; height: 40px; line-height: 40px; padding: 0; padding-left: 55px; background: #fff url(../image/alipay.png) 25px center no-repeat; background-size: 22px 20px;}
+#pay .inner .pay .inner .wx.active {
+    border: 1.5px solid #2CB7CA;
+    background-image: url(../image/wxpay.png), url(../image/bgsanjiao.png);
+    background-position: 25px center, 118px 18px;
+    background-repeat: no-repeat, no-repeat;
+    background-size: 22px 20px, 19px 19px;
+    font-size: 14px;
+}
 
-#pay .inner .pay .inner .alipay.active { border: 1.5px solid #2CB7CA; background-image: url(../image/alipay.png), url(../image/bgsanjiao.png); background-position: 25px center, 118px 18px; background-repeat: no-repeat, no-repeat; background-size: 22px 20px,19px 19px;font-size: 14px;}
+#pay .inner .pay .inner .alipay {
+    vertical-align: middle;
+    box-sizing: border-box;
+    font-size: 14px;
+    height: 40px;
+    line-height: 40px;
+    padding: 0;
+    padding-left: 55px;
+    background: #fff url(../image/alipay.png) 25px center no-repeat;
+    background-size: 22px 20px;
+}
 
+#pay .inner .pay .inner .alipay.active {
+    border: 1.5px solid #2CB7CA;
+    background-image: url(../image/alipay.png), url(../image/bgsanjiao.png);
+    background-position: 25px center, 118px 18px;
+    background-repeat: no-repeat, no-repeat;
+    background-size: 22px 20px, 19px 19px;
+    font-size: 14px;
+}
 
-#pay .inner .money { width: 100%; height: 80px; background: #F5F5FB; border-top: 1px solid #ccc; padding-right: 20px; margin-bottom: 15px; }
 
-#pay .inner .money > div { font-size: 14px; }
+#pay .inner .money {
+    width: 100%;
+    height: 80px;
+    background: #F5F5FB;
+    border-top: 1px solid #ccc;
+    padding-right: 20px;
+    margin-bottom: 15px;
+}
 
-#pay .inner .money > div:nth-of-type(1) {margin: 30px 0 10px 20px;float: left; line-height: 20px; color: #888888; font-size: 12px;}
+#pay .inner .money > div {
+    font-size: 14px;
+}
 
-#pay .inner .money > div:nth-of-type(2) { margin: 13px -3px 11px 0; color: #1d1d1d;    height: 30px; }
+#pay .inner .money > div:nth-of-type(1) {
+    margin: 30px 0 10px 20px;
+    float: left;
+    line-height: 20px;
+    color: #888888;
+    font-size: 12px;
+}
 
-#pay .inner .money > div:nth-of-type(2) p{ height:24px}
+#pay .inner .money > div:nth-of-type(2) {
+    margin: 13px -3px 11px 0;
+    color: #1d1d1d;
+    height: 30px;
+}
 
-#pay .inner .money > div:nth-of-type(2) span { font-size: 24px; font-weight: bold; color: #ff3a20; }
+#pay .inner .money > div:nth-of-type(2) p {
+    height: 24px
+}
 
-#pay .inner .money > div:nth-of-type(3) { color: #1d1d1d; margin-top: -2px;font-size: 14px}
+#pay .inner .money > div:nth-of-type(2) span {
+    font-size: 24px;
+    font-weight: bold;
+    color: #ff3a20;
+}
 
-#pay .inner .info .left { line-height: 20px; color: #888888; font-size: 12px;  margin-left: 20px;}
+#pay .inner .money > div:nth-of-type(3) {
+    color: #1d1d1d;
+    margin-top: -2px;
+    font-size: 14px
+}
 
-#pay .inner .info .right { font-size: 14px; }
+#pay .inner .info .left {
+    line-height: 20px;
+    color: #888888;
+    font-size: 12px;
+    margin-left: 20px;
+}
 
-#pay .inner .info .right .t { position: relative; padding-left: 20px; }
+#pay .inner .info .right {
+    font-size: 14px;
+}
 
-#pay .inner .info .right .t span { position: absolute; left: 0; top: 3px; padding: 0; display: inline-block; width: 14px; height: 14px; cursor: pointer; box-sizing: border-box; border: 1px solid #ccc; }
+#pay .inner .info .right .t {
+    position: relative;
+    padding-left: 20px;
+}
 
-#pay .inner .info .right .t span.hideBf:before { content: "\e62d"; position: absolute; left: -3px; top: -6.5px; width: 14px; height: 14px; font-size: 18px; color: #2CB7CA; }
+#pay .inner .info .right .t span {
+    position: absolute;
+    left: 0;
+    top: 3px;
+    padding: 0;
+    display: inline-block;
+    width: 14px;
+    height: 14px;
+    cursor: pointer;
+    box-sizing: border-box;
+    border: 1px solid #ccc;
+}
 
-#pay .inner .info .right .t i { color: #888888; }
+#pay .inner .info .right .t span.hideBf:before {
+    content: "\e62d";
+    position: absolute;
+    left: -3px;
+    top: -6.5px;
+    width: 14px;
+    height: 14px;
+    font-size: 18px;
+    color: #2CB7CA;
+}
 
-#pay .inner .info .right .t i a { color: #0987FF; font-size: 14px; }
+#pay .inner .info .right .t i {
+    color: #888888;
+}
 
-#pay .inner .info .right .btn_createOrder { margin-top: 40px; }
+#pay .inner .info .right .t i a {
+    color: #0987FF;
+    font-size: 14px;
+}
 
-#pay .inner .info .right .btn_createOrder button { display: inline-block; width: 180px; height: 46px; line-height: 46px; text-align: center; font-size: 16px; border-radius: 6px; cursor: pointer; }
+#pay .inner .info .right .btn_createOrder {
+    margin-top: 40px;
+}
 
-#pay .inner .info .right .btn_createOrder button:nth-of-type(1) { background-color: #fff; margin-right: 15px; border: 1px solid #ccc; }
+#pay .inner .info .right .btn_createOrder button {
+    display: inline-block;
+    width: 180px;
+    height: 46px;
+    line-height: 46px;
+    text-align: center;
+    font-size: 16px;
+    border-radius: 6px;
+    cursor: pointer;
+}
 
-#pay .inner .info .right .btn_createOrder button:nth-of-type(2) { color: #fff; border:1px solid transparent;}
+#pay .inner .info .right .btn_createOrder button:nth-of-type(1) {
+    background-color: #fff;
+    margin-right: 15px;
+    border: 1px solid #ccc;
+}
 
-#pay .no-select{-webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;}
+#pay .inner .info .right .btn_createOrder button:nth-of-type(2), #pay .inner .info .right .btn_createOrder button:nth-of-type(3) {
+    color: #fff;
+    border: 1px solid transparent;
+}
 
-#pay .inner #entuserguige{ padding-bottom: 18px; border-bottom: 1px solid #ccc; margin-bottom: 15px; }
+#pay .no-select {
+    -webkit-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+}
 
-#pay .inner #entuserguige .title { font-size: 16px; color: #1d1d1d; margin-bottom: 16px; }
+#pay .inner #entuserguige {
+    padding-bottom: 18px;
+    border-bottom: 1px solid #ccc;
+    margin-bottom: 15px;
+}
 
-#pay .inner #entuserguige .title i { color: #2CB7CA; font-size: 20px; margin-left: 10px; cursor: pointer; }
+#pay .inner #entuserguige .title {
+    font-size: 16px;
+    color: #1d1d1d;
+    margin-bottom: 16px;
+}
 
-#pay .inner #entuserguige .inner div.qy p, #pay .inner #entuserguige .inner div.gr p { width: 100%; text-align: center; }
+#pay .inner #entuserguige .title i {
+    color: #2CB7CA;
+    font-size: 20px;
+    margin-left: 10px;
+    cursor: pointer;
+}
 
-#pay .inner #entuserguige .inner div.qy p:nth-of-type(1), #pay .inner #entuserguige .inner div.gr p:nth-of-type(1) { font-size: 14px; color: #1D1D1D; margin-bottom: 1px; }
+#pay .inner #entuserguige .inner div.qy p, #pay .inner #entuserguige .inner div.gr p, #pay .inner #entuserguige .inner div.dr p {
+    width: 100%;
+    text-align: center;
+}
 
-#pay .inner #entuserguige .inner div.qy p:nth-of-type(2), #pay .inner #entuserguige .inner div.gr p:nth-of-type(2) { font-size: 12px; color: #888; }
+#pay .inner #entuserguige .inner div.qy p:nth-of-type(1), #pay .inner #entuserguige .inner div.gr p:nth-of-type(1), #pay .inner #entuserguige .inner div.dr p:nth-of-type(1) {
+    font-size: 14px;
+    color: #1D1D1D;
+    margin-bottom: 1px;
+}
 
-#pay .inner #entuserguige .inner div.qy.active, #pay .inner #entuserguige .inner div.gr.active { border: 1.5px solid #2CB7CA; background: #fff url(../image/bgsanjiao.png) 118px 36px no-repeat; background-size: 19px 19px; }
+#pay .inner #entuserguige .inner div.qy p:nth-of-type(2), #pay .inner #entuserguige .inner div.gr p:nth-of-type(2) {
+    font-size: 12px;
+    color: #888;
+}
 
-#pay .inner #entuserguige .inner div.gr p:nth-of-type(1) i { color: #FFBA00; font-size: 12px; margin-right: 6px; }
+#pay .inner #entuserguige .inner div.qy.active, #pay .inner #entuserguige .inner div.gr.active, #pay .inner #entuserguige .inner div.dr.active {
+    border: 1.5px solid #2CB7CA;
+    background: #fff url(../image/bgsanjiao.png) 118px 36px no-repeat;
+    background-size: 19px 19px;
+}
 
-#pay .inner #entuserguige .inner div { width: 140px; height: 58px; padding: 8px 0; box-sizing: border-box; border: 1px solid #ccc; float: left; margin-right: 16px; border-radius: 4px; cursor: pointer; line-height: 40px; }
+#pay .inner #entuserguige .inner div.gr p:nth-of-type(1) i {
+    color: #FFBA00;
+    font-size: 12px;
+    margin-right: 6px;
+}
 
-#pay .inner .moneys { width: 100%; height: 80px; background: #F5F5FB; border-top: 1px solid #ccc; padding-right: 20px; margin-bottom: 15px; }
+#pay .inner #entuserguige .inner div.dr p:nth-of-type(1) i {
+    color: #FFBA00;
+    font-size: 12px;
+    margin-right: 6px;
+}
 
-#pay .inner .moneys > div { font-size: 14px; }
+#pay .inner #entuserguige .inner div {
+    width: 140px;
+    height: 58px;
+    padding: 8px 0;
+    box-sizing: border-box;
+    border: 1px solid #ccc;
+    float: left;
+    margin-right: 16px;
+    border-radius: 4px;
+    cursor: pointer;
+    line-height: 40px;
+}
 
-#pay .inner .moneys > div:nth-of-type(1) {margin: 30px 0 10px 20px;float: left; line-height: 20px; color: #888888; font-size: 12px;}
+#pay .inner .moneys {
+    width: 100%;
+    background: #F5F5FB;
+    border-top: 1px solid #ccc;
+    padding: 12px;
+    margin-bottom: 15px;
+}
 
-#pay .inner .moneys > div:nth-of-type(2) { margin: 8px -3px -10px 0; color: #1d1d1d;    height: 30px; }
+#pay .moneys .show-detail {
+    display: flex;
+    justify-content: flex-end;
+}
 
-#pay .inner .moneys > div:nth-of-type(2) p{ height:14px}
+#pay .moneys .show-detail .all-line {
+    width: 300px;
+}
 
-#pay .inner .moneys > div:nth-of-type(2) span { color: #686868; }
+#pay .moneys .line {
+    height: 20px;
+    display: flex;
+}
 
-#pay .inner .moneys > div:nth-of-type(3) { color: #1d1d1d; margin: 2px -3px 0 0;font-size: 14px}
+#pay .moneys .show-detail .all-line .line div {
+    font-size: 14px;
+    line-height: 20px;
+    color: #686868;
+    text-align: right;
+    width: 50%;
+}
 
-#pay .inner .moneys > div:nth-of-type(4) { color: #1d1d1d; margin: 2px -3px 0 0;font-size: 14px}
+#pay .moneys .show-detail .all-line .line span {
+    padding: 0 3px;
+}
 
-.chongfu, .yixuanze, .newCount{ float: right; }
+.chongfu, .yixuanze, .newCount {
+    float: right;
+}
 
-.buzaikouchu { color: #2CB7CA; }
+.buzaikouchu {
+    color: #2CB7CA;
+}
 
-.xinkouchu { color: #FF3A20 }
+.xinkouchu {
+    color: #FF3A20
+}
 
-button{
-	font-family: -webkit-pictograph !important;
+button {
+    font-family: -webkit-pictograph !important;
 }
+
 .remindone_ {
     display: inline-block;
     width: 0px;
@@ -183,6 +575,7 @@ button{
     border-width: 9px;
     border-color: transparent #ccc transparent transparent;
 }
+
 .remindonebak_ {
     display: inline-block;
     width: 0px;
@@ -195,6 +588,7 @@ button{
     border-color: transparent #fff transparent transparent;
     z-index: 99;
 }
+
 .remindtwo_ {
     z-index: 98;
     display: inline-block;
@@ -204,15 +598,16 @@ button{
     left: 134px;
     background-color: #fff;
     padding: 24px 24px;
-    font-family: MicrosoftYaHer-Bold,MicrosoftYaHei;
+    font-family: MicrosoftYaHer-Bold, MicrosoftYaHei;
     font-size: 14px;
     line-height: 24px;
     border-radius: 2px;
-/*    top: 178px;*/
-	top:66px;
+    /*    top: 178px;*/
+    top: 66px;
     color: #5c5d61;
-    box-shadow: 0 0 10px rgba(0,0,0, .24);
+    box-shadow: 0 0 10px rgba(0, 0, 0, .24);
 }
+
 .iknow_ {
     display: inline-block;
     border: 1px solid #cecbce;
@@ -227,37 +622,43 @@ button{
     line-height: 22px;
     cursor: pointer;
     color: #5c5d61;
-    box-shadow: 0 0 10px rgba(0,0,0, .24);
+    box-shadow: 0 0 10px rgba(0, 0, 0, .24);
 }
-.remindtwo_ div{
+
+.remindtwo_ div {
     display: flex;
 }
-.remindtwo_ div:nth-of-type(odd){
+
+.remindtwo_ div:nth-of-type(odd) {
     font-weight: bold;
     color: #1d1d1d;
     margin-top: 5px;
 }
-.remindtwo_ div:nth-child(1){
+
+.remindtwo_ div:nth-child(1) {
     margin-top: 0px !important;
 }
-.toPay{
-	background-color:#ddd;
+
+.toPay, .toDeduction {
+    background-color: #ddd;
 }
-.call{
-	width:120px;
-	float: left;
+
+.call {
+    width: 120px;
+    float: left;
     margin-left: 30px;
     margin-right: 30px;
     color: #686868;
     font-size: 14px;
-	text-align:center;
+    text-align: center;
 }
-.callNum:before{
-	content:"";
-	background-image:url("../image/call.png");
-	background-size: 20px 20px;
-	background-repeat: no-repeat;
-	padding-left: 25px;
+
+.callNum:before {
+    content: "";
+    background-image: url("../image/call.png");
+    background-size: 20px 20px;
+    background-repeat: no-repeat;
+    padding-left: 25px;
 }
 
 /* 付款页面输入框 需要上面的iconfotn css链接 */
@@ -270,9 +671,11 @@ button{
     border: 1px solid #e4e4e4;
     outline: none;
 }
+
 .icon-input .input-c {
     padding-left: 28px;
 }
+
 .icon-input::before {
     content: "\e638";
     font-family: "iconfont" !important;
@@ -285,66 +688,75 @@ button{
     color: #52c4d4;
     font-weight: bold;
 }
+
 .icon-input.email::before {
     content: '\e6fb';
 }
+
 #pay .inner .phone {
     padding-bottom: 18px;
     border-bottom: 1px solid #ccc;
 }
-.email .verity_input{
-	width: 160px;
+
+.email .verity_input {
+    width: 160px;
     height: 40px;
     padding: 0 14px;
     box-sizing: border-box;
     border-radius: 3px;
-/*    border: 1px solid #e4e4e4;*/
+    /*    border: 1px solid #e4e4e4;*/
     outline: none;
-	    margin-left:15px;
+    margin-left: 15px;
 }
-.email .sendEmail{
-	width: 120px;
+
+.email .sendEmail {
+    width: 120px;
     height: 40px;
     line-height: 40px;
-/*    border: 1px solid #2CB7CA;*/
-	background-color: #2CB7CA;
+    /*    border: 1px solid #2CB7CA;*/
+    background-color: #2CB7CA;
     box-sizing: border-box;
     margin-right: 16px;
-/*    padding-left: 15px;*/
+    /*    padding-left: 15px;*/
     border-radius: 4px;
-	color:#fff;
-	    margin-left:15px;
+    color: #fff;
+    margin-left: 15px;
 }
-.email_err_msg,.phone_err_msg{
-	height: 40px;
+
+.email_err_msg, .phone_err_msg {
+    height: 40px;
     line-height: 40px;
     color: #FE737A;
     font-size: 16px;
-	    margin-left: 15px;
+    margin-left: 15px;
 }
-.email_check_ok,.phone_check_ok{
-	height: 40px;
+
+.email_check_ok, .phone_check_ok {
+    height: 40px;
     line-height: 40px;
     color: #2CB7CA;
     font-size: 30px !important;
-	    margin-left: 15px;
+    margin-left: 15px;
 }
-.icon-cuowu{
-	color: #FE737A;
+
+.icon-cuowu {
+    color: #FE737A;
     font-size: 18px !important;
-	    margin-right: 5px;
+    margin-right: 5px;
 }
-.verity_send{
-	border-top-left-radius: 0px !important;
+
+.verity_send {
+    border-top-left-radius: 0px !important;
     border-bottom-left-radius: 0px !important;
     margin-left: -16px !important;
     border: 1px solid #ccc !important;
 }
+
 /* --end-- */
 .type-a {
     height: 52px;
     line-height: 52px;
-	display:none;
+    display: none;
 }
 
 .dialog-box {
@@ -360,109 +772,146 @@ button{
     transform: translateX(-50%);
     text-align: center;
 }
+
 /* #limitNum{
     width: 380px;
     height: 292px;
 } */
 
-#limitNum.in .modal-dialog{
-    width: 380px;
-    height: 292px;
-    text-align: center;
-    color: #1d1d1d;
-    margin-top: 160px;
-}
-
-#limitNums.in .modal-dialog{
-    width: 380px;
-    height: 292px;
-    text-align: center;
-    color: #1d1d1d;
-    margin-top: 160px;
-}
-
-.modal-header {
-    padding: 32px 0 20px 0;
-    border: none;
-}
-.modal-header .close {
-    display: none;
-}
-.modal-footers {
-    border: none;
-    text-align: center;
-    padding: 24px 0 44px 0;
-}
-.modal-footers .btn {
-    width: 284px;
-    height: 36px;
-    background: #2CB7CA;
-    border-radius: 6px;
-    font-size: 16px;
-    border-color: #2CB7CA;
-}
-.modal-footers:active {
-    border: none;
-}
-.modal-footers .btn:active{
-    border: none;
-    background: #2CB7CA;
-}
-.modal-footers .btn:hover{
+#limitNum.in .modal-dialog {
+    width: 380px;
+    height: 292px;
+    text-align: center;
+    color: #1d1d1d;
+    margin-top: 160px;
+}
+
+#limitNums.in .modal-dialog {
+    width: 380px;
+    height: 292px;
+    text-align: center;
+    color: #1d1d1d;
+    margin-top: 160px;
+}
+
+.modal-header {
+    padding: 32px 0 20px 0;
+    border: none;
+}
+
+.modal-header .close {
+    display: none;
+}
+
+.modal-footers {
+    border: none;
+    text-align: center;
+    padding: 24px 0 44px 0;
+}
+
+.modal-footers .btn {
+    width: 284px;
+    height: 36px;
+    background: #2CB7CA;
+    border-radius: 6px;
+    font-size: 16px;
+    border-color: #2CB7CA;
+}
+
+.modal-footers:active {
+    border: none;
+}
+
+.modal-footers .btn:active {
+    border: none;
+    background: #2CB7CA;
+}
+
+.modal-footers .btn:hover {
     background: #2CB7CA !important;
-    border-color: #2CB7CA !important;
-}
-.modal-body {
-    padding: 0;
-    color: #686868;
-}
-.modal-body p {
-    line-height: 24px;
-    margin: 0;
-}
-.modal-body p:nth-child(3) i {
-    color: #2CB7CA;
-    font-style: normal;
-}
-.modal-body p:nth-child(4) i {
-    color: red;
-    font-style: normal;
-}
-
-.modal.in .modal-dialog{
-    width: 380px;
-    height: 292px;
-    text-align: center;
-    color: #fff;
-    margin-top: 160px;
-}
-
-.sp-loadbar {
-    /* width: 50px; */
-    height: 18px;
-    border: 1px #eee solid;
-    border-radius: 4px;
-    background: linear-gradient(-60deg, transparent 0%, transparent 50%, #2CB7CA 50%, #2CB7CA 75%, transparent 75%, transparent);
-    background-size: 20px 30px;
-    background-position: 0px 0px;
-    -webkit-animation: spLoadBar 0.8s infinite linear;
-    animation: spLoadBar 0.8s infinite linear;
-}
-
-@-webkit-keyframes spLoadBar {
-    0% {
-        background-position: -20px 0px;
-    }
-    100% {
-        background-position: 0px 0px;
-    }
-}
-
-@keyframes spLoadBar {
-    0% {
-        background-position: -20px 0px;
-    }
-    100% {
-        background-position: 0px 0px;
-    }
+    border-color: #2CB7CA !important;
+}
+
+.modal-body {
+    padding: 0;
+    color: #686868;
+}
+
+.modal-body p {
+    line-height: 24px;
+    margin: 0;
+}
+
+.modal-body p:nth-child(3) i {
+    color: #2CB7CA;
+    font-style: normal;
+}
+
+.modal-body p:nth-child(4) i {
+    color: red;
+    font-style: normal;
+}
+
+.modal.in .modal-dialog {
+    width: 380px;
+    height: 292px;
+    text-align: center;
+    color: #fff;
+    margin-top: 160px;
 }
+
+.sp-loadbar {
+    /* width: 50px; */
+    height: 18px;
+    border: 1px #eee solid;
+    border-radius: 4px;
+    background: linear-gradient(-60deg, transparent 0%, transparent 50%, #2CB7CA 50%, #2CB7CA 75%, transparent 75%, transparent);
+    background-size: 20px 30px;
+    background-position: 0px 0px;
+    -webkit-animation: spLoadBar 0.8s infinite linear;
+    animation: spLoadBar 0.8s infinite linear;
+}
+
+@-webkit-keyframes spLoadBar {
+    0% {
+        background-position: -20px 0px;
+    }
+    100% {
+        background-position: 0px 0px;
+    }
+}
+
+@keyframes spLoadBar {
+    0% {
+        background-position: -20px 0px;
+    }
+    100% {
+        background-position: 0px 0px;
+    }
+}
+
+.tip-line {
+    display: flex;
+    flex-direction: row;
+    justify-content: space-between;
+    padding: 0 25px 0 15px;
+}
+
+.tip-line .tip-half {
+    width: 9em;
+    flex-shrink: 0;
+    text-align: right;
+}
+
+.tip-line .tip-half-right {
+    flex: 1;
+    text-align: right;
+}
+
+.red-font {
+    color: red;
+}
+
+.blue-font {
+    color: #51C3D3;
+}

+ 21 - 6
src/web/staticres/js/biddingSearch.js

@@ -180,25 +180,40 @@ $(function() {
 				}
 			});
 		}
-		/*全选功能*/
+		/*行业二级分类点击事件*/
 		$content.on('click', 'font:not(".parent-node")' ,function() {
       var $prevNode = $(this).prevAll(".parent-node:eq(0)");
       // $(this).toggleClass("active").siblings().removeClass("active").removeClass("secondActice"); // 原单选功能
-			$(this).toggleClass("active");
-			if($prevNode.nextUntil(".diver").filter(".active").length === 0) {
+      $(this).toggleClass("active");
+      var curActiveLen = $prevNode.nextUntil(".diver").filter(".active").length; // 当前一级分类下二级分类选中的个数
+      var curTotalLen = $prevNode.nextUntil(".diver").filter('font').length; // 当前一级分类下二级分类的总个数
+      console.log(curActiveLen,curTotalLen)
+			if(curActiveLen === 0) {
 				$prevNode.removeClass("active").removeClass("secondActice");
 			} else {
-				$prevNode.removeClass("active").addClass("secondActice");
+        if (curActiveLen == curTotalLen) {
+          $prevNode.addClass("active").removeClass("secondActice")
+          var $prevDriver = $(this).prev($('.driver'))
+          var $nextDriver = $(this).next($('.driver'))
+          $prevNode.nextUntil($prevNode, $nextDriver).not('.parent-node').removeClass('active')
+        } else {
+          $prevNode.removeClass("active").addClass("secondActice");
+        }
 			}
 			beforeSubmit();			
-		});
+    });
+    // 行业一级分类点击事件
 		$parentNode.on('click', function() {
       /* 
         // 原行业单选需求
         $(this).parent().find("font").removeClass("active").removeClass("secondActice");
         $(this).toggleClass("active").removeClass("secondActice"); 
       */
-      $(this).toggleClass("active").removeClass("secondActice").nextUntil('.driver', $('font')).removeClass('active');
+      $(this).toggleClass("active")
+      if ($(this).hasClass('active')) {
+        $(this).removeClass('secondActice').nextUntil(".diver").filter('font').removeClass('active');
+      }
+      // $(this).toggleClass("active").removeClass("secondActice").nextUntil('.driver', $('font:not(".parent-node")')).removeClass('active');
 			beforeSubmit();
 		});
 		/*如果点击没有内容给全部添加类名*/

+ 6 - 6
src/web/staticres/js/superSearch.js

@@ -362,7 +362,7 @@ function appendDatas(datas,flag,isNew,onlyUpdateTable){
       if (selectType == "title") {
         listHtml += '<input class="custom-checkbox title-text-checkbox" name="bid-list" type="checkbox" dataid="'+datas[i]._id+'" />'
         listHtml +='<div class="luce-left"><em>'+index+'.</em>'
-						+'<div class="left-title" style="width:680px;">'
+						+'<div class="left-title" style="width:700px;">'
 						+'<a onclick="noIn(this)" dataid="'+datas[i]._id+'" dataindustry="'+datas[i].industry+'" target="_blank"> '+title+'</a>'
 						+'</div>'
       }
@@ -396,11 +396,11 @@ function appendDatas(datas,flag,isNew,onlyUpdateTable){
 				listHtml += '<a href="javascript:volid(0);" style="display:none;"></a>';
       }
       // vipState付费用户显示采购单位类型 免费用户不显示
-      if(typeof(datas[i].buyerclass) != "undefined" && datas[i].buyerclass != null && datas[i].buyerclass != "" && vipState){
-				listHtml += '<a href="javascript:;">'+datas[i].buyerclass+'</a>';
-			}else{
-				listHtml += '<a href="javascript:volid(0);" style="display:none;"></a>';
-			}
+      // if(typeof(datas[i].buyerclass) != "undefined" && datas[i].buyerclass != null && datas[i].buyerclass != "" && vipState){
+			// 	listHtml += '<a href="javascript:;">'+datas[i].buyerclass+'</a>';
+			// }else{
+			// 	listHtml += '<a href="javascript:volid(0);" style="display:none;"></a>';
+			// }
 
 			var amount= getacount(datas[i].bidamount,datas[i].budget)
 			if(amount!=""){

+ 13 - 1
src/web/staticres/js/wxSupersearch.js

@@ -1989,7 +1989,19 @@ var SuperSearch = {
           }
 			});
 			$("#supersearchPage #list").html(ListContent);
-				//
+			//收藏处理
+			var listCollSessionId = sessionStorage.getItem('listCollSessionId')
+			if (listCollSessionId){
+				var listCollSessionBool = sessionStorage.getItem('listCollSessionBool');
+				if (listCollSessionBool=="1"){
+					$("a[sid='"+listCollSessionId+"']").parent().next().addClass("fill");
+				}else{
+					$("a[sid='"+listCollSessionId+"']").parent().next().removeClass("fill");
+				}
+				sessionStorage.removeItem('listCollSessionId')
+				sessionStorage.removeItem('listCollSessionBool')
+			}
+			//
 			var TableContent=$(sessionStorage.superSearch_tableContent);
 			TableContent.on("tap",function(event){
 			    var h =  $(this).attr("s");

文件差异内容过多而无法显示
+ 0 - 0
src/web/templates/big-member/pc/page_custom.html


文件差异内容过多而无法显示
+ 0 - 0
src/web/templates/big-member/pc/page_index.html


文件差异内容过多而无法显示
+ 0 - 0
src/web/templates/big-member/wx/page_index.html


+ 359 - 277
src/web/templates/pc/createOrderPage.html

@@ -1,11 +1,13 @@
 <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 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">
     <meta content="数据导出" theme="light" name="enable-header"/>
     <meta content="666" name="data-backside"/>
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/dataExport/css/font_624651_bjdvktmum68.css?v={{Msg "seo" "version"}}">
+    <link rel="stylesheet"
+          href="{{Msg "seo" "cdn"}}/dataExport/css/font_624651_bjdvktmum68.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/dataExport/css/reset_pc.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/dataExport/css/payment_order.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="https://at.alicdn.com/t/font_624651_wz9gl1vebtf.css">
@@ -21,11 +23,11 @@
     <script type="text/javascript" src="{{Msg "seo" "cdn"}}/js/public-nav.js?v={{Msg "seo" "version"}}"></script>
     <title>支付订单</title>
     <style>
-      #bidLogin.modal.in .modal-dialog {
-         height: auto;
-         margin-top: -282px;
-         text-align: left;
-      }
+        #bidLogin.modal.in .modal-dialog {
+            height: auto;
+            margin-top: -282px;
+            text-align: left;
+        }
     </style>
 </head>
 <body>
@@ -58,9 +60,28 @@
         <div id="entuserguige" hidden="hidden">
             <div class="title">支付方式</div>
             <div class="inner clearfix switch-dataType">
-                <div class="qy no-select">
-                    <p>企业数据量扣除</p>
-                </div>
+                {{if .T.isEntUser}}
+                    <div class="qy no-select">
+                        <p>流量包扣除 <i id="llb-tip" class="iconfont icon-bangzhu"
+                                    style="font-size: 18px;color: #2CB7CA;line-height: 37px;cursor: pointer;"></i>
+                        </p>
+                        <div id="llb-tip-block" style="width: 164px;height: 48px;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);
+                        position: relative;top: -90px;right: -34px;display: none">
+                            <p style="color: #ffffff;line-height: 20px;font-size: 12px;">原“企业数据量扣除”文案</p>
+                            <p style="color: #ffffff;line-height: 20px;font-size: 12px;">调整为“流量包扣除”</p>
+                            <div style="width: 0;height: 0;border: none;border-left: 5px solid transparent;border-right: 5px solid transparent;border-top: 10px solid rgba(0,0,0,0.75);
+                            position: relative;left: 46%;"></div>
+                        </div>
+                    </div>
+                {{end}}
+
+                {{if .T.hasDaily}}
+                    <div class="dr no-select">
+                        <p>单日限量包扣除</p>
+                    </div>
+                {{end}}
+
                 <div class="gr no-select active">
                     <p>个人支付</p>
                 </div>
@@ -114,32 +135,13 @@
                 <div>省份、城市、公告标题、公告类别、公告内容、发布时间、公告地址、剑鱼标讯地址、项目名称、项目范围、预算金额、中标金额、开标日期、采购单位、采购单位信息(采购单位联系人、采购单位联系电话、招标代理机构)、中标单位信息(中标单位、中标单位联系人、中标单位联系电话)(来源:招标公告网站)、中标单位信息(中标单位联系人、中标单位联系电话、电子邮箱)(来源:国家企业公示网站)</div>
             </span>
         </span>
-        <!--<div class="pay">
-            <div class="title">支付方式</div>
-            <div class="inner clearfix payway">
-                <div class="wx no-select">
-                    <span>微信支付</span>
-                </div>
-                <div class="alipay no-select">
-                    <span>支付宝</span>
-                </div>
-            </div>
-        </div>-->
         <div class="pc-coupon-w1200" style="margin-bottom: 25px">
             <!--S-优惠券-->
             <div id="coupon-group"></div>
             <!--E-优惠券-->
         </div>
-        <div class="moneys" style="display: none;">
-            <div></div>
-            <div class="clearfix">
-                <p class="yixuanze">已选择数据 <span class="yixuanzedata">3</span> 条</p>
-            </div>
-            <div class="clearfix">
-                <p class="chongfu">其中,重复导出数据 <span class="buzaikouchu">2</span> 条(不再扣除)</p>
-            </div>
-            <div class="clearfix">
-                <p class="newCount">本次导出扣除数据量 <span class="xinkouchu">1</span> 条</p>
+        <div class="moneys" style="margin-top:120px;display: none;">
+            <div class="show-detail">
             </div>
         </div>
         <div class="info clearfix">
@@ -158,84 +160,55 @@
                 <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>
                 </p>
             </div>
         </div>
     </div>
     <div class="dialog-box type-a"></div>
     <!-- loading -->
-    <div class="modal fade" id="loading" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop='static' data-keyboard="false">
-      <!-- <div class="modal-dialog" role="document">
-        <div class="modal-content">
-          <div class="modal-body">
-            正在计算条数中。。。
-          </div>
+    <div class="modal fade" id="loading" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
+         data-backdrop='static' data-keyboard="false">
+        <div class="modal-dialog" role="document">
+            <div class="modal-content">
+                <div class="sp sp-loadbar"></div>
+            </div>
+            <div class="modal-body" style="color: #ffffff !important;">
+                正在计算条数中。。。
+            </div>
         </div>
-      </div> -->
-      <div class="modal-dialog" role="document">
-          <div class="modal-content">
-              <div class="sp sp-loadbar"></div>
-          </div>
-          <div class="modal-body" style="color: #ffffff !important;">
-              正在计算条数中。。。
-          </div>
-      </div>
     </div>
     <!-- loading -->
-    <div class="modal fade" id="loadings" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop='static' data-keyboard="false">
-      <!-- <div class="modal-dialog" role="document">
-        <div class="modal-content">
-          <div class="modal-body">
-            正在导出中。。。
-          </div>
-        </div>
-      </div> -->
-      <div class="modal-dialog" role="document">
-          <div class="modal-content">
-              <div class="sp sp-loadbar"></div>
-          </div>
-          <div class="modal-body" style="color: #ffffff !important;">
-              正在导出中。。。
-          </div>
-      </div>
-    </div>
-    <div class="modal fade" id="limitNum" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop='static' data-keyboard="false">
+    <div class="modal fade" id="loadings" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
+         data-backdrop='static' data-keyboard="false">
         <div class="modal-dialog" role="document">
-        <div class="modal-content">
-            <div class="modal-header">
-            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
-            <h4 class="modal-title" id="myModalLabel">每日导出限额提醒</h4>
+            <div class="modal-content">
+                <div class="sp sp-loadbar"></div>
             </div>
-            <div class="modal-body">
-                <p>您的每日导出限额已超过管理员设置数量</p>
-                <p>每日限额:<i class="datalimit" style="color: #FF3A20;">500</i></p>
-                <p>已使用:<i class="exportNum">450</i></p>
-                <p>新导出:<span class="newCounts"></span></p>
-                <p>请联系管理员</p>
+            <div class="modal-body" style="color: #ffffff !important;">
+                正在导出中。。。
             </div>
-            <div class="modal-footers">
-            <button type="button" class="btn btn-primary" id="backbtn">我知道了</button>
-            </div>
-        </div>
         </div>
     </div>
-    <div class="modal fade" id="limitNums" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop='static' data-keyboard="false">
+    <div class="modal" id="dataexport-tip" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"
+         data-backdrop='static' data-keyboard="false">
         <div class="modal-dialog" role="document">
-        <div class="modal-content">
-            <div class="modal-header">
-            <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
-            <h4 class="modal-title" id="myModalLabels">企业数据量余额提醒</h4>
-            </div>
-            <div class="modal-body">
-                <p>数据量余额:<i class="dataentcount" style="color: #FF3A20;">500</i></p>
-                <p>新导出:<span class="newCounts"></span></p>
-                <p>请联系管理员</p>
-            </div>
-            <div class="modal-footers">
-            <button type="button" class="btn btn-primary" id="backbtns">我知道了</button>
+            <div class="modal-content">
+                <div class="modal-header">
+                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
+                                aria-hidden="true">&times;</span></button>
+                    <h4 class="modal-title" style="color: #000000;font-size: 18px;">导出提醒</h4>
+                </div>
+                <div class="modal-body">
+
+                </div>
+                <div class="modal-footers">
+                    <button type="button" class="btn btn-primary" onclick='window.history.back()'>我知道了
+                    </button>
+                </div>
             </div>
         </div>
-        </div>
     </div>
 </section>
 <script src=//cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.js></script>
@@ -263,12 +236,23 @@
         if (bindPhone.length === 11) {
             phone_lastInput = bindPhone
             $.post("/front/dataExport/checkPhoneVerify", {"phone": phone_lastInput})
-      }
+        }
 
     }
-    var isEntUser = {{.T.isEntUser}}
+    var isEntUser = {{.T.isEntUser}} //企业用户
+    var hasDaily = {{.T.hasDaily}} //大会员数据包
         $(function () {
             haslogin({{.T.logid}});
+            if (sessionStorage.getItem("order_email" +{{.T._id}}) != null) {
+                finishEmailVerity = true;
+            } else if (email_lastInput !== "" && email_lastInput != null) {
+                finishEmailVerity = true;
+            }
+            if (sessionStorage.getItem("order_phone" +{{.T._id}}) != null) {
+                finishPhoneVerity = true;
+            } else if (phone_lastInput !== "" && phone_lastInput != null) {
+                finishPhoneVerity = true;
+            }
             //加载价格
             $.ajax({
                 url: "/jypay/dataexport/getPrice",
@@ -299,66 +283,60 @@
             //购买须知
             $(".fl.left p:eq(1) span:eq(0)").text(orderMinPrice);
             $(".fl.left p:eq(1) span:eq(1)").text(unitPrice_normal);
-            $(".fl.left p:eq(1) span:eq(2)").text(discount*10);
-            $(".fl.left p:eq(1) span:eq(3)").text(discount*unitPrice_normal);
+            $(".fl.left p:eq(1) span:eq(2)").text(discount * 10);
+            $(".fl.left p:eq(1) span:eq(3)").text(discount * unitPrice_normal);
 
             $(".fl.left p:eq(2) span:eq(0)").text(unitPrice_senior);
-            $(".fl.left p:eq(2) span:eq(1)").text(discount*10);
-            $(".fl.left p:eq(2) span:eq(2)").text(discount*unitPrice_senior);
+            $(".fl.left p:eq(2) span:eq(1)").text(discount * 10);
+            $(".fl.left p:eq(2) span:eq(2)").text(discount * unitPrice_senior);
 
             //企业数据导出开始
-            if (isEntUser) {
-                // $("#guige").hide();
-                // $(".money").hide();
-                $(".moneys").hide();
-                // $(".toPay").text("确认扣除");
+            if (isEntUser || hasDaily) {
                 $("#entuserguige").show();
             }
-            $("#entuserguige .inner .gr").on("click", function(){
-                $("#entuserguige .inner .qy").removeClass("active")
-                $(this).addClass("active");
+            $(".toPay").on("click", personalSubmit);
+
+
+            $("#entuserguige .inner .gr").on("click", function () {
+                $(this).addClass("active").siblings().removeClass("active");
+                $("#entuserguige").css("border-color", "#ccc")
                 $(".moneys").hide();
                 $("#guige").show();
                 $(".money").show();
-                $(".toPay").text("确认支付");
-                if (sessionStorage.getItem("order_email" +{{.T._id}}) != null) {
-                    finishEmailVerity = true;
-                } else if (email_lastInput != ""&& email_lastInput!=null) {
-                    finishEmailVerity = true;
-                }
-                if (sessionStorage.getItem("order_phone" +{{.T._id}}) != null) {
-                    finishPhoneVerity = true;
-                } else if (phone_lastInput != "" && phone_lastInput!=null) {
-                    finishPhoneVerity = true;
-                }
+                $(".toPay").css("display", "");
+                $(".toDeduction").css("display", "none")
                 $("#email").show();
             })
-            $("#entuserguige .inner .qy").on("click", function(){
+            $("#entuserguige .inner .qy").on("click", function () {
                 var id = {{.T._id}}
-                $("#entuserguige .inner .gr").removeClass("active")
-                $(this).addClass("active");
-                if (sessionStorage.entExportCount && sessionStorage.entExportNewCount && sessionStorage.entExportid == id){
-                    finishEmailVerity = true;
-                    finishPhoneVerity = true;
+                    $(this).addClass("active").siblings().removeClass("active");
+                if (sessionStorage.entExportid === id) {
                     $("#email").hide();
                     //
+                    $("#entuserguige").css("border-color", "#fff")
                     $("#guige").hide();
                     $(".money").hide();
-                    $(".moneys").show();
-                    $(".toPay").text("确认扣除");
-                    $(".yixuanzedata").text(sessionStorage.entExportCount);
-                    $(".xinkouchu").text(sessionStorage.entExportNewCount);
-                    var cfCount =  sessionStorage.entExportCount - sessionStorage.entExportNewCount;
-                    if (cfCount < 0 ) {
-                        cfCount = 0
-                    }
-                    $(".buzaikouchu").text(cfCount);
+
+                    $(".moneys").html('<div class="show-detail" >'
+                        + '<div class="all-line">'
+                        + '<div class="line"><div class="item">已选择数据:</div><div><span>' + sessionStorage.count + '</span>条</div></div>'
+                        + '<div class="line"><div class="item">重复导出数据:</div><div><span>(不再扣除)</span><span class="blue-font">' + (sessionStorage.count - sessionStorage.newCount) + '</span>条</div></div>'
+                        + '<div class="line"><div class="item">本次扣除:</div><div><span class="red-font">' + sessionStorage.newCount + '</span>条</div></div>'
+                        + '<div class="line"><div class="item">所属企业账户余额:</div><div><span class="red-font">' + sessionStorage.current + '</span>条</div></div>'
+                        + '<div class="line"><div class="item">您每日导出限额:</div><div><span class="red-font">' + sessionStorage.limitDay + '</span>条</div></div>'
+                        + '<div class="line"><div class="item">您今日余额:</div><div><span class="red-font">' + sessionStorage.limit + '</span>条</div></div>'
+                        + '</div>'
+                        + '</div>').show();
+                    $(".toPay").css("display", "none");
+                    $(".toDeduction").css("display", "").off("click").on("click", entSubmit);
+
+
                     $('#loading').modal('hide');
-                }else{
+                } else {
                     $('#loading').modal('show');
-                    setTimeout(function(){
+                    setTimeout(function () {
                         $.ajax({
-                            url: "/front/entDataExport/"+ id,
+                            url: "/front/entDataExport/" + id,
                             type: "POST",
                             async: false,
                             data: {"isFirst": true},
@@ -366,52 +344,109 @@
                             timeout: 2000000,
                             success: function (r) {
                                 if (r) {
-                                    sessionStorage.entExportCount = r.count;
-                                    sessionStorage.entExportNewCount = r.newCount;
-                                    sessionStorage.entExportid = id;
+                                    sessionStorage.count = r.count;//筛选条数
+                                    sessionStorage.current = r.current//企业总条数
+                                    sessionStorage.newCount = r.newCount//去重后条数
+                                    sessionStorage.exportNum = r.exportNum//今日已导出
+                                    sessionStorage.limit = r.limit //今日剩余
+                                    sessionStorage.limitDay = r.limitDay //今日限额
+                                    sessionStorage.entExportid = id
+
                                     $("#guige").hide();
                                     $(".money").hide();
-                                    $(".moneys").show();
-                                    $(".toPay").text("确认扣除");
-                                    $(".yixuanzedata").text(r.count);
-                                    $(".xinkouchu").text(r.newCount);
-                                    var cfCount =  r.count - r.newCount;
+
+                                    $(".moneys").html('<div class="show-detail" >'
+                                        + '<div class="all-line">'
+                                        + '<div class="line"><div class="item">已选择数据:</div><div><span>' + sessionStorage.count + '</span>条</div></div>'
+                                        + '<div class="line"><div class="item">重复导出数据:</div><div><span>(不再扣除)</span><span class="blue-font">' + (sessionStorage.count - sessionStorage.newCount) + '</span>条</div></div>'
+                                        + '<div class="line"><div class="item">本次扣除:</div><div><span class="red-font">' + sessionStorage.newCount + '</span>条</div></div>'
+                                        + '<div class="line"><div class="item">所属企业账户余额:</div><div><span class="red-font">' + sessionStorage.current + '</span>条</div></div>'
+                                        + '<div class="line"><div class="item">您每日导出限额:</div><div><span class="red-font">' + sessionStorage.limitDay + '</span>条</div></div>'
+                                        + '<div class="line"><div class="item">您今日余额:</div><div><span class="red-font">' + sessionStorage.limit + '</span>条</div></div>'
+                                        + '</div>'
+                                        + '</div>').show();
+                                    $(".toPay").css("display", "none");
+                                    $(".toDeduction").css("display", "").off("click").on("click", entSubmit);
+
+                                    var cfCount = r.count - r.newCount;
                                     if (cfCount < 0) {
                                         cfCount = 0
                                     }
-                                    $(".buzaikouchu").text(cfCount);
                                     $('#loading').modal('hide');
-                                    if (!r.isEntExport){
-                                        $(".newCounts").text(r.newCount);
-                                        $(".exportNum").text(r.exportNum);
-                                        $(".dataentcount").text(r.current);
-                                        $('#limitNums').modal('show');
-                                    }else if (!r.isExport){
-                                        $(".newCounts").text(r.newCount);
-                                        $(".exportNum").text(r.exportNum);
-                                        $(".datalimit").text(r.limitDay);
-                                        $('#limitNum').modal('show');
+
+                                    if (!r.isEntExport) {
+                                        entTip(1)
+                                    } else if (!r.isExport) {
+                                        entTip(2)
                                     }
-                                    finishEmailVerity = true;
-                                    finishPhoneVerity = true;
                                     $("#email").hide();
                                 }
                             },
-                            error: function (){
+                            error: function () {
                                 alert("系统响应超时,请刷新后重试");
                                 $('#loading').modal('hide');
                                 history.back();
                             }
                         });
-                    },500)
+                    }, 500)
                 }
             })
+
+            function dailyTip() {
+                showTip("对不起,余额不足", "<div class='tip-line'><div class='tip-half'>本次扣除:</div><div class='tip-half-right'>{{.T.msgCount}}条</div></div>"
+                    + "<div class='tip-line'><div class='tip-half'>今日限量余额:</div><div class='tip-half-right'><span class='red-font'>" + ({{.T.dailyNum}}-{{.T.dailyUsed}}) + "</span>条</div></div>"
+                    + "<br><p style='color:red;font-size:14px;'>请联系管理员或选择个人支付</p>")
+            }
+
+            function entTip(t) { //1 企业余额不足 2个人限额不足
+                if (t === 1) {
+                    showTip("对不起,余额不足", "<div class='tip-line'><div class='tip-half'>已选择数据:</div><div class='tip-half-right'>" + sessionStorage.count + "条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>重复导出数据:</div><div class='tip-half-right'> <span>(不再扣除)</span><span class='blue-font'>" + (sessionStorage.count - sessionStorage.newCount) + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>本次扣除:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.newCount + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>所属企业账户余额:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.current + "</span>条</div></div>"
+                        + "<br><p style='color:red;font-size:14px;'>请联系管理员或选择个人支付</p>")
+                } else {
+                    showTip("对不起,余额不足", "<div class='tip-line'><div class='tip-half'>已选择数据:</div><div class='tip-half-right'>" + sessionStorage.count + "条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>重复导出数据:</div><div class='tip-half-right'> <span>(不再扣除)</span><span class='blue-font'>" + (sessionStorage.count - sessionStorage.newCount) + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>本次扣除:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.newCount + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>所属企业账户余额:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.current + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>您每日导出限额:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.limitDay + "</span>条</div></div>"
+                        + "<div class='tip-line'><div class='tip-half'>您今日余额:</div><div class='tip-half-right'><span class='red-font'>" + sessionStorage.limit + "</span>条</div></div>"
+                        + "<br><p style='color:red;font-size:14px;'>您的每日导出限额已超过管理员设置数量,请联系<br>管理员或选择个人支付</p>")
+                }
+            }
+
+
             //企业数据导出结束
+            //不!还没有结束~
+            $("#entuserguige .inner .dr").on("click", function () {
+                $(this).addClass("active").siblings().removeClass("active");
+                if (({{.T.dailyNum}}-{{.T.dailyUsed}}) <{{.T.msgCount}}) {
+                    dailyTip()
+                }
+                //样式修改
+                $("#email").hide();
+                $("#guige").hide();
+                $(".money").hide();
+                $("#entuserguige").css("border-color", "#fff")
+
+                $(".moneys").html('<div class="show-detail">'
+                    + '<div class="all-line">'
+                    + '<div class="line"><div class="item">本次扣除:</div><div><span>{{.T.msgCount}}</span>条</div></div>'
+                    + '<div class="line"><div class="item">单日限量余额:</div><div><span class="red-font">{{.T.dailyNum}}</span>条</div></div>'
+                    + '<div class="line"><div class="item">本日仍可导出:</div><div><span class="red-font">' + ({{.T.dailyNum}}-{{.T.dailyUsed}}) + '</span>条</div></div>'
+                    + '</div>'
+                    + '</div>').show();
+
+                $(".toPay").css("display", "none");
+                $(".toDeduction").css("display", "").off("click").on("click", dailySubmit);
+            })
+
 
             if (sessionStorage.getItem("order_spec" +{{.T._id}}) != null) {
                 dataType = sessionStorage.getItem("order_spec" +{{.T._id}});
             }
-            if (dataType == 1) {
+            if (dataType === 1) {
                 $(".switch-dataType .bz").addClass("active")
                 $(".switch-dataType .gj").removeClass("active")
             } else {
@@ -424,7 +459,7 @@
                 $(".email_check_ok").show();
                 $(".email_input").val(sessionStorage.getItem("order_email" +{{.T._id}}));
                 finishEmailVerity = true;
-            } else if (email_lastInput != ""&& email_lastInput!=null) {
+            } else if (email_lastInput !== "" && email_lastInput != null) {
                 $(".email_check_ok").show();
                 $(".email_input").val(email_lastInput);
                 finishEmailVerity = true;
@@ -436,7 +471,7 @@
                 $(".phone_check_ok").show();
                 $(".phone_input").val(sessionStorage.getItem("order_phone" +{{.T._id}}));
                 finishPhoneVerity = true;
-            } else if (phone_lastInput != "" && phone_lastInput!=null) {
+            } else if (phone_lastInput !== "" && phone_lastInput != null) {
                 $(".phone_check_ok").show();
                 $(".phone_input").val(phone_lastInput);
                 finishPhoneVerity = true;
@@ -445,7 +480,7 @@
             $(".email_input").on("input propertychange", function () {
                 var email_input = $(this).val().replace(/\s*/g, "");
                 if (email_input.indexOf("@") > 0) {
-                    if (email_input != email_lastInput) {
+                    if (email_input !== email_lastInput) {
                         $(".sendEmail").show();
                         if (email_lastVerity > 0) {
                             $(".sendEmail").addClass("verity_send");
@@ -473,7 +508,6 @@
                     $(".email_check_ok").hide();
                 }
             }).blur(function () {
-                console.log("xxx")
                 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)) {
                     showEmailErr("邮箱格式不正确");
@@ -494,7 +528,7 @@
             };
             $(".phone_input").on("input propertychange", function () {
                 var phone_input = $(this).val().replace(/\s*/g, "");
-                if (phone_input.length == 11) {
+                if (phone_input.length === 11) {
                     if (Verification.isPhone(phone_input)) {
                         $.post("/front/dataExport/checkPhoneVerify", {"phone": phone_input}, function (data) {
                             if (data.success) {
@@ -517,24 +551,21 @@
                         $(".phone_err_msg").show();
                         $(".phone_check_ok").hide();
                         finishPhoneVerity = false;
-                        $(".toPay").css("background-color", "#ddd")
-                        $(".toPay").attr("disabled", "disabled");
+                        $(".toPay").css("background-color", "#ddd").attr("disabled", "disabled");
                     }
                 } else {
                     $(".phone_err_msg").hide();
                     $(".phone_check_ok").hide();
                     finishPhoneVerity = false;
-                    $(".toPay").css("background-color", "#ddd")
-                    $(".toPay").attr("disabled", "disabled");
+                    $(".toPay").css("background-color", "#ddd").attr("disabled", "disabled");
                 }
             }).blur(function () {
                 var phone_input = $(this).val().replace(/\s*/g, "");
-                if (phone_input.length != 11) {
+                if (phone_input.length !== 11) {
                     $(".phone_err_msg").show();
                     $(".phone_check_ok").hide();
                     finishPhoneVerity = false;
-                    $(".toPay").css("background-color", "#ddd")
-                    $(".toPay").attr("disabled", "disabled");
+                    $(".toPay").css("background-color", "#ddd").attr("disabled", "disabled");
                 }
             });
             //邮箱验证
@@ -553,7 +584,7 @@
                 $.post("/front/dataExport/sendMailVerify", {"email": email}, function (data) {
                     canVerify = true;
                     if (data.success) {
-                        if (data.errCode == 4) {
+                        if (data.errCode === 4) {
                             $(".type-a").text(data.errMsg);
                             $(".type-a").show();
                             setTimeout(function () {
@@ -574,7 +605,7 @@
                         }
                     } else {
                         showEmailErr(data.errMsg)
-                        if (data.errCode == 2) {
+                        if (data.errCode === 2) {
                             sendemailTimer(data.time);
                             $(".sendEmail").attr("disabled", "disabled");
                             $(".email_input").attr("disabled", "disabled");
@@ -586,7 +617,7 @@
             $(".verity_input").bind("input propertychange", function () {
                 var verity = $(this).val()
                 var email = $(".email_input").val().replace(/\s*/g, "");
-                if (verity.length == 6) {
+                if (verity.length === 6) {
                     $.post("/front/dataExport/checkMailVerify", {
                         "emailVerity": verity,
                         "email": email
@@ -595,8 +626,7 @@
                             showEmailErr("");
                             finishEmailVerity = true;
                             if (readClause && finishPhoneVerity) {
-                                $(".toPay").css("background-color", "#2CB7CA");
-                                $(".toPay").removeAttr("disabled")
+                                $(".toPay").css("background-color", "#2CB7CA").removeAttr("disabled");
                             }
                             $(".verity_input").css({"margin-left": "15px"});
                             $(".sendEmail").hide();
@@ -613,7 +643,7 @@
             })
 
             //是否显示最大条数
-            if (msgCount == msgMaxCount) {
+            if (msgCount === msgMaxCount) {
                 $(".infotitle em").text("最大限额" + showCount + "条");
                 $(".infotitle em").css("display", "");
             }
@@ -624,13 +654,13 @@
                 if ($(this).attr("class").indexOf("hideBf") > -1) {
                     readClause = true;
                     if (finishEmailVerity && finishPhoneVerity) {
-                        $(".toPay").css("background-color", "#2CB7CA")
-                        $(".toPay").removeAttr("disabled")
+                        $(".toPay").css("background-color", "#2CB7CA").removeAttr("disabled")
                     }
+                    $(".toDeduction").css("background-color", "#2CB7CA").removeAttr("disabled")
                 } else {
                     readClause = false;
-                    $(".toPay").css("background-color", "#ddd")
-                    $(".toPay").attr("disabled", "disabled");
+                    $(".toPay").css("background-color", "#ddd").attr("disabled", "disabled");
+                    $(".toDeduction").css("background-color", "#ddd").attr("disabled", "disabled");
                 }
             })
 
@@ -639,9 +669,11 @@
                 $($(this).addClass("active").siblings()).removeClass("active")
                 // 企业扣除不显示金额计算框
                 var classString = $(this).attr("class")
-                if (classString.indexOf("qy") != -1) {
+                if (classString.indexOf("qy") !== -1) {
+                    $('.pc-coupon-w1200').hide()
+                } else if (classString.indexOf("dr") !== -1) {
                     $('.pc-coupon-w1200').hide()
-                } else if (classString.indexOf("gr") != -1) {
+                } else if (classString.indexOf("gr") !== -1) {
                     $('.pc-coupon-w1200').show()
                 }
 
@@ -652,44 +684,73 @@
                 }
                 ChangePayMoney();
             })
-            //确认支付
-            var canpay = true;
-            $(".toPay").on("click", function () {
-                if ($(this).text() === "确认扣除"){
-                    $('#loadings').modal('show');
-                    setTimeout(function(){
-                        var id = {{.T._id}}
+
+            //企业扣除
+            function entSubmit() {
+                setTimeout(function () {
+                    var id = {{.T._id}}
                         $.ajax({
-                            url: "/front/entDataExport/"+ id,
+                            url: "/front/entDataExport/" + id,
                             type: "POST",
                             async: false,
                             data: {"isFirst": false},
                             dataType: "json",
                             success: function (r) {
-                                if (!r.isEntExport){
-                                    $(".newCounts").text(r.newCount);
-                                    $(".exportNum").text(r.exportNum);
-                                    $(".dataentcount").text(r.current);
-                                    $('#limitNums').modal('show');
+                                if (!r.isEntExport) {
+                                    entTip(1)
                                     return
-                                }else if (!r.isExport){
-                                    $(".newCounts").text(r.newCount);
-                                    $(".exportNum").text(r.exportNum);
-                                    $(".datalimit").text(r.limitDay);
-                                    $('#limitNum').modal('show');
+                                } else if (!r.isExport) {
+                                    entTip(2)
                                     return
                                 }
+                                $('#loadings').modal('show');
                                 exportXlsx()
                             },
-                            error: function(){
+                            error: function () {
                                 alert("系统响应超时,请刷新后重试");
                                 $('#loadings').modal('hide');
                                 history.back();
                             }
                         });
-                    },500)
+                }, 500)
+            }
+
+            //每日数据包
+            function dailySubmit() {
+                if (!canpay) {
                     return
                 }
+                canpay = false
+                $.post("/jypay/dataExport/vipDaily", {"selectId": "{{.T._id}}"}, function (res) {
+                    if (res.error_code !== 0) {
+                        if (res.error_msg === "余额不足") {
+                            dailyTip()
+                        } else {
+                            showTip("每日限量包提醒", "<p>" + res.error_msg + "</p>")
+                        }
+                        canpay = true
+                    } else {
+                        //导出等待
+                        $('#loadings').modal('show');
+                        waitDailyExport()
+                    }
+                })
+            }
+
+            function showTip(title, content) {
+                if (title) {
+                    $("#dataexport-tip .modal-title").text(title).show()
+                } else {
+                    $("#dataexport-tip .modal-title").hide()
+                }
+                if (content) $("#dataexport-tip .modal-body").html(content)
+                $("#dataexport-tip").modal('show');
+            }
+
+            //支付购买
+            var canpay = true;
+
+            function personalSubmit() {
                 if (!finishEmailVerity || !readClause || !canpay || !finishPhoneVerity) {
                     return
                 }
@@ -700,47 +761,47 @@
                 // 优惠券
                 var couponParam = getCouponParams.getValue()
                 if (couponParam) {
-                  param.lotteryId = couponParam.lotteryId
-                  param.userLotteryId = couponParam.userLotteryId
+                    param.lotteryId = couponParam.lotteryId
+                    param.userLotteryId = couponParam.userLotteryId
                 }
 
-                    $.post("/jypay/dataExport/createOrder", param, function (data) {
-                        var source  = getParam("source");
-                        if (data.status === "y") {
-                            if (source!=null){
-                              $.ajax({
-                                type:'GET',
-                                url:'/front/order/source',
-                                data:{
-                                  source:source,
-                                  type:"dataexport",
-                                  terminal:"pc",
-                                  ordercode:data.code
+                $.post("/jypay/dataExport/createOrder", param, function (data) {
+                    var source = getParam("source");
+                    if (data.status === "y") {
+                        if (source != null) {
+                            $.ajax({
+                                type: 'GET',
+                                url: '/front/order/source',
+                                data: {
+                                    source: source,
+                                    type: "dataexport",
+                                    terminal: "pc",
+                                    ordercode: data.code
                                 }
-                              })
-                            }
-                            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, ""));
+                            })
+                        }
+                        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, ""));
 
-                            history.replaceState({}, '', '/front/dataExport/toOrderDetail/'+data.code);
-                            window.location.href = "/front/dataexport/orderPay/" + data.code;
-                        } else {
-                            canpay = true;
-                            $.confirm({
-                                title: '提示',
-                                content: '生成订单出错,请稍后尝试!',
-                                buttons: {
-                                    ok: {
-                                        text: '确认',
-                                        btnClass: 'btn-primary-0',
-                                    }
+                        history.replaceState({}, '', '/front/dataExport/toOrderDetail/' + data.code);
+                        window.location.href = "/front/dataexport/orderPay/" + data.code;
+                    } else {
+                        canpay = true;
+                        $.confirm({
+                            title: '提示',
+                            content: '生成订单出错,请稍后尝试!',
+                            buttons: {
+                                ok: {
+                                    text: '确认',
+                                    btnClass: 'btn-primary-0',
                                 }
-                            });
-                        }
-                    }, "json");
+                            }
+                        });
+                    }
+                }, "json");
+            }
 
-            })
             //数据浏览
             $(".dataPreview").on("click", function () {
                 if (previewDataTime < 50) {
@@ -780,10 +841,10 @@
     function ChangePayMoney() {
         var shouldPay = 0;
         var beforePay = 0;
-        if (dataType == 1) {
+        if (dataType === 1) {
             beforePay = accMul(unitPrice_normal, msgCount)
             shouldPay = accMul(beforePay, discount)
-        } else if (dataType == 2) {
+        } else if (dataType === 2) {
             beforePay = accMul(unitPrice_senior, msgCount)
             shouldPay = accMul(beforePay, discount)
         }
@@ -792,9 +853,9 @@
         $(".pay_discount").text("¥" + shouldPay);
         $(".pay_before").text("¥" + beforePay)
         getCouponParams.setValue({
-          id: 102,
-          price: shouldPay,
-          show: true
+            id: 102,
+            price: shouldPay,
+            show: true
         })
     }
 
@@ -803,7 +864,7 @@
             $(".email_check_ok").css("display", "none");
         }
 
-        if (str != "") {
+        if (str !== "") {
             if (str.indexOf("5分钟") > 0) {
                 $(".verity_input").show();
             }
@@ -860,55 +921,76 @@
             $.post("/front/entExportAuth/isEntExportSuccess", {}, function (r) {
                 console.log(r)
                 if (r.state) {
-                   var link = document.createElement("a");
-                   link.href = r.xlsxUrl;
-                   link.download = "搜索数据导出.xlsx";
-                   document.body.appendChild(link);
-                   link.click();
-                   document.body.removeChild(link);
-                   setTimeout(function(){
+                    var link = document.createElement("a");
+                    link.href = r.xlsxUrl;
+                    link.download = "搜索数据导出.xlsx";
+                    document.body.appendChild(link);
+                    link.click();
+                    document.body.removeChild(link);
+                    setTimeout(function () {
                         history.back();
-                   },1000)
+                    }, 1000)
                 }
             })
         }, 3000);
     }
 
-        /******* 获取url参数(正则)********/
+    function waitDailyExport() {
+        if (interval) {
+            clearInterval(interval);
+        }
+        interval = setInterval(function () {
+            $.post("/jypay/dataExport/vipDailySuccess", {"selectId": "{{.T._id}}"}, function (r) {
+                if (r.error_code === 0 && r.data.excelHref) {
+                    var link = document.createElement("a");
+                    link.href = r.data.excelHref;
+                    link.download = "搜索数据导出.xlsx";
+                    document.body.appendChild(link);
+                    link.click();
+                    document.body.removeChild(link);
+                    setTimeout(function () {
+                        history.back();
+                    }, 1000)
+                }
+            })
+        }, 3000);
+    }
+
+    /******* 获取url参数(正则)********/
     function getParam(name) {
-      var search = document.location.search;
-      // alert(search);
-      var pattern = new RegExp("[?&]" + name + "\=([^&]+)", "g");
-      var matcher = pattern.exec(search);
-      var items = null;
-      if (null != matcher) {
-          try {
-              items = decodeURIComponent(decodeURIComponent(matcher[1]));
-          } catch (e) {
-              try {
-                  items = decodeURIComponent(matcher[1]);
-              } catch (e) {
-                  items = matcher[1];
-              }
-          }
-      }
-      return items;
+        var search = document.location.search;
+        // alert(search);
+        var pattern = new RegExp("[?&]" + name + "\=([^&]+)", "g");
+        var matcher = pattern.exec(search);
+        var items = null;
+        if (null != matcher) {
+            try {
+                items = decodeURIComponent(decodeURIComponent(matcher[1]));
+            } catch (e) {
+                try {
+                    items = decodeURIComponent(matcher[1]);
+                } catch (e) {
+                    items = matcher[1];
+                }
+            }
+        }
+        return items;
     };
 
     $("body").on("click", function (e) {
-        if (e.target.id == "exp") {
+        if (e.target.id === "exp") {
             $(".remind").fadeIn();
         } else {
             $(".remind").fadeOut();
         }
     });
 
-    $("#backbtn").on("click", function(){
-        window.history.back();
-    });
-    $("#backbtns").on("click", function(){
-        window.history.back();
-    });
+    $("#llb-tip").on("mouseover", function () {
+        $("#llb-tip-block").css("display", "")
+    }).on("mouseout", function () {
+        $("#llb-tip-block").css("display", "none")
+    })
+
 </script>
 {{include "/common/pcbottom.html"}}
 <!--百度统计end-->

+ 1 - 1
src/web/templates/pc/orderDetail.html

@@ -18,7 +18,7 @@
     <title>订单详情</title>
     <meta content="增值服务" theme="light" name="enable-header"/>
     <style>
-        span {
+        .inner span {
             margin-right: 8px;
         }
 

+ 12 - 4
src/web/templates/weixin/historypush.html

@@ -1349,6 +1349,12 @@
               if (countLength > 1) {
                   paddingLeft = (countLength + 1) * 9;
               }
+              //收藏处理
+              if (sessionStorage.getItem('listCollSessionId')&&sessionStorage.getItem('listCollSessionId')==obj["_id"]){
+                obj["collection"] = sessionStorage.getItem('listCollSessionBool');
+        				sessionStorage.removeItem('listCollSessionId')
+        				sessionStorage.removeItem('listCollSessionBool')
+              }
               //是否浏览过
               var visited = "";
               if (obj.ca_isvisit == 1) {
@@ -1969,10 +1975,12 @@
                 tempS.removeClass('hover')
             }, 50)
         })
-        document.querySelector('.screen').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.tab_left').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.tab_right').addEventListener('touchmove', stopScroll, {passive: false});
-        document.querySelector('.handle_menu').addEventListener('touchmove', stopScroll, {passive: false});
+        try{
+          document.querySelector('.screen').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.tab_left').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.tab_right').addEventListener('touchmove', stopScroll, {passive: false});
+          document.querySelector('.handle_menu').addEventListener('touchmove', stopScroll, {passive: false});
+        }catch(e){}
         if (firstTime != "" && firstTime != null) {
             date = formatDate(firstTime / 1000, "1");
         }

+ 3 - 1
src/web/templates/weixin/search/tabSearch.html

@@ -571,7 +571,9 @@
                                         </div>
                                     </div>
                                     <div class="ent-info-bottom ent-row" v-show="item.status >= 0 || item.address">
-                                        <span class="ent-info-status" v-show="item.status >= 0" :class="'status-' + item.status">@@statusEnum[item.status]@@</span>
+                                        <div class="ent-info-status-box">
+                                            <span class="ent-info-status" v-show="item.status >= 0" :class="'status-' + item.status">@@statusEnum[item.status]@@</span>
+                                        </div>
                                         <div  class="ent-row ent-address"  v-show="item.address">
                                             <div class="van-multi-ellipsis--l2">@@item.address@@</div>
                                             <i class="j-icon base-icon icon-address"></i>

+ 10 - 0
src/web/templates/weixin/wxinfocontent_rec.html

@@ -2209,10 +2209,20 @@ var vKeepComponent = new Vue({
         },
         changeKeepStatus (type) {
             changeCollectStatus(type)
+            changeListSessionData(type)
         }
     }
 })
 
+//调整列表页收藏状态
+function changeListSessionData(b){
+  sessionStorage.setItem('listCollSessionId', id)
+  sessionStorage.setItem('listCollSessionBool', 0)
+  if(b){
+    sessionStorage.setItem('listCollSessionBool', 1)
+  }
+}
+//
 function changeCollectStatus (f) {
     var $collButton = $('.collec_star')
     var $icon = $collButton.children('.icon')

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