Browse Source

Merge branch 'master' into feature/v4.9.43

lianbingjie 1 year ago
parent
commit
946811e3ae
45 changed files with 833 additions and 24 deletions
  1. 3 2
      src/index.yaml
  2. 7 0
      src/jfw/config/config.go
  3. 40 0
      src/jfw/front/dataServiceArea.go
  4. 3 1
      src/jfw/front/frontRouter.go
  5. 2 0
      src/jfw/front/index.go
  6. 4 4
      src/jfw/modules/app/src/web/templates/frontRouter/bigmember/free/perfect_info.html
  7. 1 1
      src/jfw/modules/bigmember/src/entity/portrait.go
  8. 38 0
      src/sample_report.json
  9. BIN
      src/web/staticres/common-module/pc-dialog/image/consult-report.png
  10. BIN
      src/web/staticres/common-module/pc-dialog/image/consult-service.png
  11. 2 2
      src/web/staticres/common-module/pc-dialog/js/leave-info-dialog.js
  12. 85 10
      src/web/staticres/common-module/perfect-info/js/perfect-info.js
  13. 345 0
      src/web/staticres/frontRouter/pc/customExport/css/consult.css
  14. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/banner.png
  15. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/bg_2.png
  16. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/bg_4.png
  17. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/bg_5.png
  18. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/case_1.png
  19. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/case_2.png
  20. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/case_3.png
  21. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/case_4.png
  22. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/close.png
  23. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/detail-consult.png
  24. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/logo360.png
  25. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/logoKDXF.png
  26. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/logoRJ.png
  27. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/logoSXF.png
  28. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/more-conult.png
  29. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/more-service.png
  30. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/report_btn.png
  31. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/service_content.png
  32. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/zixunPCxuanfuBG.png
  33. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconAL.png
  34. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconCL.png
  35. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconJZ.png
  36. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconKH.png
  37. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconSC.png
  38. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconSJ.png
  39. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconST.png
  40. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconTD.png
  41. BIN
      src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconZC.png
  42. 83 0
      src/web/staticres/frontRouter/pc/customExport/js/consult.js
  43. 210 0
      src/web/templates/frontRouter/pc/serviceSystem/free/consult.html
  44. 4 4
      src/web/templates/frontRouter/wx/bigmember/free/perfect_info.html
  45. 6 0
      src/web/templates/pc/template/index/important-gov-bidding.html

+ 3 - 2
src/index.yaml

@@ -103,8 +103,9 @@ topMenu:
         href: /front/routerRelay/yxt
       - name: 客户管理
         href: /front/routerRelay/khgl
-      - name: 年终报告
-        href: /front/routerRelay/nzbg
+      - name: 咨询服务
+        href: /swordfish/frontPage/serviceSystem/free/consult
+        class: red
       - name: 投标项目管理
         href: /front/routerRelay/tbxmgl
 

+ 7 - 0
src/jfw/config/config.go

@@ -33,8 +33,14 @@ var (
 	IpInitLock           sync.RWMutex //锁
 	JyAnonymousLimit     *anonymousLimit
 	AreaCity             areaInfo
+	SampleReport         SampleReportConfig
 )
 
+// 样例报告
+type SampleReportConfig []struct {
+	Name string `json:"name"`
+	Desc string `json:"desc"`
+}
 type IndustryTrend struct {
 	AreaArr []struct {
 		Area       string `json:"area"`
@@ -76,6 +82,7 @@ func init() {
 	util.ReadConfig(&Sysconfig)
 	util.ReadConfig("./export.json", &ExportConfig)
 	util.ReadConfig("./city.json", &AreaCity)
+	util.ReadConfig("./sample_report.json", &SampleReport)
 	IpInit()
 	//log.Println("sysconfig:", Sysconfig)
 	WeixinConfig, _ = Sysconfig["wxJianyu"].(map[string]interface{})

+ 40 - 0
src/jfw/front/dataServiceArea.go

@@ -49,12 +49,17 @@ type (
 		city     string
 		district string
 	}
+	keyFw struct {
+		code    string
+		keyword string
+	}
 )
 
 var (
 	siteCodeMap       map[string]*KeyWordSiteNode
 	specialArea       = map[string]bool{"北京": true, "上海": true, "天津": true, "重庆": true}
 	KeyBiddingAreaMap []keyBidding
+	KeyFwArr          []keyFw
 )
 
 func init() {
@@ -84,6 +89,16 @@ func init() {
 			})
 		}
 	}
+
+	fwResArr, err := g.DB().Query(gctx.New(), `SELECT  id, keyword  FROM new_keyword_unified where  unifiedSign = 'fw' and state = 1`)
+	if err == nil && !fwResArr.IsEmpty() {
+		for _, m := range fwResArr.List() {
+			KeyFwArr = append(KeyFwArr, keyFw{
+				keyword: gconv.String(m["keyword"]),
+				code:    gconv.String(m["id"]),
+			})
+		}
+	}
 }
 
 // 政府招标
@@ -390,3 +405,28 @@ func PurchasingData() []map[string]interface{} {
 
 	return keyWords
 }
+
+// ServiceProcurement 服务类采购
+func ServiceProcurement(number int) []argument {
+	redisKey := "ServiceProcurement"
+	redisData := redis.Get(RedisNameNew, redisKey)
+	if redisData != nil {
+		if d, err := json.Marshal(redisData); err == nil {
+			var signature []argument
+			json.Unmarshal(d, &signature)
+			return signature
+		}
+	}
+	var (
+		data []argument
+	)
+	for _, i2 := range jyutil.GenerateRandomNumber(0, len(KeyFwArr), number) {
+		acronym := KeyFwArr[i2]
+		data = append(data, argument{
+			acronym.keyword,
+			fmt.Sprintf("/fuwu/fw%03s.html", acronym.code),
+		})
+	}
+	redis.Put(RedisNameNew, redisKey, data, RedisTimeout)
+	return data
+}

+ 3 - 1
src/jfw/front/frontRouter.go

@@ -122,7 +122,9 @@ func (this *CommonRouter) PcCommonPage(folder, loginSign, htmlPage string) error
 			return this.Render("/pc/search/index.html", &this.T)
 		}
 	}
-	return this.Render(fmt.Sprintf("/frontRouter/pc/%s/%s/%s.html", folder, loginSign, htmlPage))
+	//
+	this.T["sample_report"] = config.SampleReport
+	return this.Render(fmt.Sprintf("/frontRouter/pc/%s/%s/%s.html", folder, loginSign, htmlPage), &this.T)
 }
 
 // WebIndex 前端vue页面公共路由

+ 2 - 0
src/jfw/front/index.go

@@ -267,6 +267,8 @@ func (nIndex *NewIndex) NewIndex() error {
 	nIndex.T["jySchool"] = jyutil.Course(6, 3)
 	// 政府招标
 	nIndex.T["governmentBidding"] = GovernmentTender(15)
+	// 服务类采购
+	nIndex.T["serviceProcurement"] = ServiceProcurement(15)
 	//区县招标
 	nIndex.T["districtsBidding"] = DistrictsTender(15)
 	nIndex.T["importBidding"] = GetImportBidding()

+ 4 - 4
src/jfw/modules/app/src/web/templates/frontRouter/bigmember/free/perfect_info.html

@@ -61,9 +61,9 @@
                 placeholder="请输入准确的公司名称"></van-field>
               <van-field v-if="moduleShow.email" v-model.trim="infoMap.email" label="邮箱"
                 @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')" :error-message="infoCheckMap.email"
-                required placeholder="请输入邮箱"></van-field>
-                <van-field v-if="moduleShow.data_requirement" maxlength="200" v-model="infoMap.data_requirement" label="数据需求" rows="2"
-                type="textarea" placeholder="请描述下您需要的数据"></van-field>
+                :required="required.email" placeholder="请输入邮箱"></van-field>
+                <van-field v-if="moduleShow.data_requirement" maxlength="200" v-model="infoMap.data_requirement" :label="label.data_requirement" rows="2"
+                type="textarea" :placeholder="desc.data_requirement"></van-field>
             </div>
           </div>
           <div class="form-card-group" v-show="!notit_group">
@@ -76,7 +76,7 @@
               </van-field>
               <van-field v-if="moduleShow.email" v-model.trim="infoMap.email" label="邮箱"
                 @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')" :error-message="infoCheckMap.email"
-                required placeholder="请输入邮箱"></van-field>
+                :required="required.email" placeholder="请输入邮箱"></van-field>
               <van-field v-if="moduleShow.area" v-model="infoMap.area" label="区域" @click="openPop('区域')" readonly
                 is-link placeholder="请选择所在区域"></van-field>
               <van-field v-if="moduleShow.class" v-model="infoMap.class" label="行业" @click="openPop('行业')" readonly

+ 1 - 1
src/jfw/modules/bigmember/src/entity/portrait.go

@@ -205,7 +205,7 @@ func CreateSubVipPortraitManagerForOpen(userid string, pageFlag, searchValue str
 		} else { //超级订阅升级版-校验超级订阅画像浏览次数
 			err := bigMsg.NewSubVipPortrait(db.Mysql, searchValue, isWinner).SubVipPortraitTimesCheck()
 			if err == nil {
-				return &Portrait{userid, session}, 2, nil, true
+				return &Portrait{userid, session}, 2, nil, free
 			} else {
 				log.Printf("用户%s 超级订阅使用画像%s次数异常 %v\n", userid, searchValue, err)
 			}

+ 38 - 0
src/sample_report.json

@@ -0,0 +1,38 @@
+[
+  {
+    "name": "信创产业发展研究报告",
+    "desc": "国产化替代步伐加速发展,信息安全需求背景下信创产业加速发展,市场规模买入万亿大关"
+  },
+  {
+    "name": "网络安全行业研究报告",
+    "desc": "网络安全为信息化和数字化协同发展提供了有力保障,网络安全防事关国家安全和社会稳定"
+  },
+  {
+    "name": "新质生产力研究报告",
+    "desc": "把握时代脉搏紧跟国家政策,与生产力的演进方向同频共振,自主可控抢占未来发展制高点"
+  },
+  {
+    "name": "商用密码产业分析报告",
+    "desc": "密码是维护网络和数据安全,护航数字中国发展的关键,是数字经济高质量发展的基础"
+  },
+  {
+    "name": "医疗器械行业洞察分析报告",
+    "desc": "医疗器械行业是一个知识密集、资金密集且多学科交叉的高技术产业。覆盖范围广、品类多"
+  },
+  {
+    "name": "运营商新质生产力布局策略研究",
+    "desc": "运营商加速发展新质生产力布局,向创新型科技企业转型。新质生产力发展理念逐步深化"
+  },
+  {
+    "name": "物业行业咨询研究报告",
+    "desc": "助力物业企业建立市场营销体系,提升营销能力和业务拓展,挖掘商业机会,洞察市场趋势"
+  },
+  {
+    "name": "森林防火DICT市场分析报告",
+    "desc": "森林防火从经验防火向数字防火转型升级,森林防火DICT市场应用潜力将会被进一步激发"
+  },
+  {
+    "name": "各省新质生产力产业布局分析报告",
+    "desc": "全国各省新质生产重点产业链、现代化产业集群、战略性新兴产业和未来产业四个大类"
+  }
+]

BIN
src/web/staticres/common-module/pc-dialog/image/consult-report.png


BIN
src/web/staticres/common-module/pc-dialog/image/consult-service.png


File diff suppressed because it is too large
+ 2 - 2
src/web/staticres/common-module/pc-dialog/js/leave-info-dialog.js


+ 85 - 10
src/web/staticres/common-module/perfect-info/js/perfect-info.js

@@ -175,6 +175,13 @@ var titleMap = {
   app_dzbgxzb_customizedquantity:'市场分析定制报告下载',
   h5_dzbgxzb_customizedquantity:'市场分析定制报告下载',
   wx_dzbgxzb_customizedquantity:'市场分析定制报告下载',
+  // 咨询服务落地页
+  app_consult_report:'免费获取报告样例',
+  wx_consult_report:'免费获取报告样例',
+  h5_consult_report:'免费获取报告样例',
+  app_consult_exclusiv_more:'获取更多专属咨询服务',
+  wx_consult_exclusiv_more:'获取更多专属咨询服务',
+  h5_consult_exclusiv_more:'获取更多专属咨询服务' ,
   // 会员服务列表
   wx_ServiceList_experience:'申请免费体验剑鱼产品',
   app_ServiceList_experience:'申请免费体验剑鱼产品',
@@ -397,6 +404,13 @@ var tipMap = {
   app_dzbgxzb_customizedquantity:'请留下联系方式,我们会安排客户经理与您对接,下载更多市场分析定制报告!',
   h5_dzbgxzb_customizedquantity:'请留下联系方式,我们会安排客户经理与您对接,下载更多市场分析定制报告!',
   wx_dzbgxzb_customizedquantity:'请留下联系方式,我们会安排客户经理与您对接,下载更多市场分析定制报告!',
+    // 咨询服务落地页
+    app_consult_report:'请留下您的需求指引,以便我们能为您提供更好的服务',
+    wx_consult_report:'请留下您的需求指引,以便我们能为您提供更好的服务',
+    h5_consult_report:'请留下您的需求指引,以便我们能为您提供更好的服务',
+    app_consult_exclusiv_more:'请留下您的需求指引,以便我们能为您提供更好的服务',
+    wx_consult_exclusiv_more:'请留下您的需求指引,以便我们能为您提供更好的服务',
+    h5_consult_exclusiv_more:'请留下您的需求指引,以便我们能为您提供更好的服务' ,
       // 会员服务列表
   wx_ServiceList_experience:'请留下您的信息,我们将为您推荐最符合您业务需求的产品和服务!',
   app_ServiceList_experience:'请留下您的信息,我们将为您推荐最符合您业务需求的产品和服务!',
@@ -520,9 +534,16 @@ var sourceDescMap = {
   h5_dzbg_fullreport:'申请免费体验-完整查看市场分析定制报告',
   wx_dzbg_fullreport:'申请免费体验-完整查看市场分析定制报告',
     // 报告下载下单页引流留资
-  app_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
-  h5_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
-  wx_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
+    app_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
+    h5_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
+    wx_dzbgxzb_customizedquantity:'市场分析定制报告下载包-定制报告份数',
+      // 咨询服务落地页
+  app_consult_report:'咨询服务落地页-免费获取样例报告',
+  wx_consult_report:'咨询服务落地页-免费获取样例报告',
+  h5_consult_report:'咨询服务落地页-免费获取样例报告',
+  app_consult_exclusiv_more:'咨询服务落地页-获取更多专属服务',
+  wx_consult_exclusiv_more:'咨询服务落地页-获取更多专属服务',
+  h5_consult_exclusiv_more:'咨询服务落地页-获取更多专属服务',
     // 会员服务列表
   wx_ServiceList_experience:'服务列表-申请免费体验',
   app_ServiceList_experience:'服务列表-申请免费体验',
@@ -548,6 +569,15 @@ var vNode = {
     isAssociateUpTime: -1,
     signId:'',
     Original_url:'',
+    label:{
+      data_requirement:'数据需求'
+    },
+    desc:{
+      data_requirement:'请描述下您需要的数据'
+    },
+    required:{
+      email: true
+    },
     infoMap: {
       name: '',
       phone: '',
@@ -714,7 +744,9 @@ var vNode = {
             this.moduleShow[k] = false
           }
           this.moduleShow.position = true
-          if(source?.toLowerCase().indexOf('supermarket') > -1 || source?.toLowerCase().indexOf('dataself') > -1){
+         // 咨询服务落地页 
+          let data_requirement_name_desc_change = ['app_consult_report','wx_consult_report','h5_consult_report','app_consult_exclusiv_more','wx_consult_exclusiv_more','h5_consult_exclusiv_more']
+          if(source?.toLowerCase().indexOf('supermarket') > -1 || source?.toLowerCase().indexOf('dataself') > -1 || data_requirement_name_desc_change.includes(source)){
             this.moduleShow.data_requirement = true
             this.moduleShow.email = true
           }
@@ -766,6 +798,9 @@ var vNode = {
     },
     checkEmail () {
       if (!this.moduleShow.email) return true
+      if(!this.required.email){
+        return true
+      } 
       if (this.infoMap.email.length > 50) {
         return false
       }
@@ -910,6 +945,15 @@ var vNode = {
           this.hideLabel()
           break
         }
+        case 'app_consult_report':
+        case 'wx_consult_report':
+        case 'h5_consult_report':
+        case 'app_consult_exclusiv_more':
+        case 'wx_consult_exclusiv_more':
+        case 'h5_consult_exclusiv_more':{
+          this.hideLabel(['class', 'companyType', 'workScope', 'partnerNeeds', 'agree'])
+          break
+        }
         // 数据超市相关
         case 'app_supermarket_Noresults_customization':
         case 'wx_DataSupermarket_Noresults_Customization':
@@ -1392,9 +1436,11 @@ var vNode = {
             break
           }
           case 'email': {
-            this.infoCheckMap.email = this.infoMap.email === '' ? '邮箱为必填项' : ''
-            if (this.infoCheckMap.email === '' && !this.checkEmail) {
-              this.infoCheckMap.email = '请输入正确格式的邮箱'
+            if(this.required.email){
+              this.infoCheckMap.email = this.infoMap.email === '' ? '邮箱为必填项' : ''
+              if (this.infoCheckMap.email === '' && !this.checkEmail) {
+                this.infoCheckMap.email = '请输入正确格式的邮箱'
+              }
             }
             break
           }
@@ -1735,6 +1781,23 @@ var vNode = {
                   history.back()
                 },'提交成功')
                 break
+              }  
+              // 咨询服务落地页
+              case 'app_consult_report':
+              case 'wx_consult_report':
+              case 'h5_consult_report': {
+                _this.showMessage('已收到您提交的获取报告样例申请,我们的咨询服务经理会尽快联系您~', '我知道了', function () {
+                  history.back()
+                },'提交成功')
+                break
+              }
+              case 'app_consult_exclusiv_more':
+              case 'wx_consult_exclusiv_more':
+              case 'h5_consult_exclusiv_more': {
+                _this.showMessage('已收到您提交的专属咨询服务申请,我们的咨询服务经理会尽快联系您~', '我知道了', function () {
+                  history.back()
+                },'提交成功')
+                break
               }
               // 会员服务列表
               case 'wx_ServiceList_experience':
@@ -1905,13 +1968,25 @@ var vNode = {
       'h5_Dataself_buyermore_customization',
       'app_Dataself_entmore_customization',
       'wx_Dataself_entmore_customization',
-      'h5_Dataself_entmore_customization'
+      'h5_Dataself_entmore_customization',
+      // 咨询服务落地页
+      'app_consult_report',
+      'wx_consult_report',
+      'h5_consult_report',
+      'app_consult_exclusiv_more',
+      'wx_consult_exclusiv_more',
+      'h5_consult_exclusiv_more'
       ]
       if(notit_group_list.includes(source)){
-
         this.notit_group = true
+        // 咨询服务落地页 需求描述收入框label显示
+        let data_requirement_name_desc_change = ['app_consult_report','wx_consult_report','h5_consult_report','app_consult_exclusiv_more','wx_consult_exclusiv_more','h5_consult_exclusiv_more']
+        if(data_requirement_name_desc_change.includes(source)){
+          this.desc.data_requirement = '请详细描述下您的咨询需求'
+          this.label.data_requirement = '咨询需求'
+          this.required.email = false // 邮箱非必填
+        }
       } else {
-
         this.notit_group = false
       }
     },

+ 345 - 0
src/web/staticres/frontRouter/pc/customExport/css/consult.css

@@ -0,0 +1,345 @@
+.public-nav{
+  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
+}
+.w1200{
+  width: 1200px;
+  margin: 0 auto;
+}
+
+
+.banner-module{
+  width: 100%;
+  height: 480px;
+  background: url(../image/consult/banner.png) no-repeat center center;
+  background-size: cover;
+
+}
+
+.consult-module{
+  width: 100%;
+}
+.consult-module .consult-module-header{
+  display: flex;
+  flex-direction: column;
+  justify-content: center;
+  align-items: center;
+  height: 178px;
+  background-image: linear-gradient(to bottom, #E8F9FF 0%,#FFFFFF 100%);
+}
+
+.consult-module-header h3{
+  font-weight: bold;
+  color: #171826;
+  font-size: 36px;
+  line-height: 49px;
+}
+.consult-module-header p{
+  margin-top: 12px;
+  color: #5F5E64;
+  font-size: 20px;
+  line-height: 20px;
+}
+
+.consult-module-main{
+  display: flex;
+  justify-content: center;
+  width: 100%;
+  height: 543px;
+  background: url(../image/consult/bg_2.png) no-repeat center center;
+  background-size: cover;
+}
+
+.consult-module-main .consult-content {
+  width: 910px;
+  height: 545px;
+  background: url(../image/consult/service_content.png) no-repeat;
+  background-size: 100% 100%;
+}
+.report-module {
+  width: 100%;
+}
+.report-module .report-module-header {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  height: 145px;
+}
+.report-module .report-module-header h3{
+  font-weight: bold;
+  color: #171826;
+  font-size: 36px;
+  line-height: 49px;
+}
+.report-module .report-module-main {
+  display: flex;
+  justify-content: center;
+  padding-bottom: 48px;
+  background-image: linear-gradient(to bottom, #FFFFFF 0%,#E8F9FF 100%);
+}
+.report-module .report-module-main ul {
+  display: flex;
+  justify-content: space-between;
+  align-content: space-between;
+  width: 1088px;
+  height: 458px;
+  flex-wrap: wrap;
+}
+.report-module .report-module-main ul li {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  width: 352px;
+  /* height: 142px; */
+  padding: 16px;
+  background-image: linear-gradient(to bottom, #E2F1FF 0%,#FFFFFF 100%);
+  border-radius: 16px;
+  border: 2px solid #FFFFFF;
+  box-shadow: 0px 4px 16px rgba(8, 31, 38, 0.08);
+}
+.report-module-main ul li .report_title {
+  font-weight: bold;
+  color: #171826;
+  font-size: 18px;
+  text-align: center;
+  line-height: 20px;
+}
+.report-module-main ul li .report_content {
+  margin-top: 8px;
+  color: #5F5E64;
+  font-size: 13px;
+  text-align: center;
+  line-height: 20px;
+}
+.report-module .report-module-main ul li .report_btn {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  margin-top: 10px;
+  width: 139px;
+  height: 32px;
+  border-radius: 4px;
+  background: url(../image/consult/report_btn.png) no-repeat;
+  background-size: 139px 32px;
+  cursor: pointer;
+}
+
+.advantage_module{
+  width: 100%;
+  height: 144px;
+  background: url(../image/consult/bg_4.png) no-repeat;
+  background-size: 100% 100%;
+}
+.advantage_module_main {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  height: 100%;
+}
+.advantage_module_main p {
+  display: flex;
+  align-items: center;
+  margin-left: 95px;
+  font-size: 16px;
+  line-height: 20px;
+  color: #FFFFFF;
+}
+.advantage_module_main p:first-child{
+  margin-left: 0;
+}
+.advantage_module_main p>span {
+  font-size: 64px;
+  font-weight: bold;
+}
+
+.case-module {
+  width: 100%;
+  height: 550px;
+  margin-bottom: 140px;
+}
+
+.case-module .case-module-header{
+  display: flex;
+  flex-direction: column;
+  justify-content: center;
+  align-items: center;
+  height: 168px;
+  background-image: linear-gradient(to bottom, #E8F9FF 0%,#FFFFFF 100%);
+}
+.case-module-header h3{
+  font-weight: bold;
+  color: #171826;
+  font-size: 36px;
+  line-height: 49px;
+}
+.case-module-header p{
+  margin-top: 12px;
+  color: #5F5E64;
+  font-size: 20px;
+  line-height: 20px;
+}
+.case-module .case-module-main {
+  position: relative;
+  display: flex;
+  justify-content: center;
+  height: 380px;
+  overflow: hidden;
+}
+.case-module-component {
+  display: flex;
+  align-items: center;
+  margin-right: -64px;
+  overflow-x: hidden;
+  transition: all 0.5s ease-in-out; /* 平滑过渡效果 */
+}
+.case-module-component:nth-child(4) {
+  margin-right: 0;
+}
+.case-module-component.expanded {
+  margin-right: 0;
+  width: 584px;
+}
+
+.case-module .case-module-main .case-module-list {
+  position: relative;
+  display: flex;
+  align-items: center;
+  max-width: 560px;
+  height: 360px;
+}
+
+.case-module .case-module-main .case-module-list .company_info {
+  width: 248px;
+  height: 360px;
+  padding: 0 24px;
+  background-size: 100% 100%;
+}
+.case-module-list .company_info>img {
+  margin: 56px 0 0 0;
+  height: 50px;
+}
+.case-module-list .company_info > h3 {
+  margin-top: 146px;
+  color: #FFFFFF;
+  font-size: 18px;
+  line-height: 20px;
+  font-weight: bold;
+}
+.case-module-list .company_info > p {
+  margin-top: 16px;
+  color: #FFFFFF;
+  font-size: 16px;
+  line-height: 20px;
+}
+.case-module-list .company_info.case_1 {
+  background: url(../image/consult/case_1.png) no-repeat;
+}
+.case-module-list .company_info.case_2 {
+  background: url(../image/consult/case_2.png) no-repeat;
+}
+.case-module-list .company_info.case_3 {
+  background: url(../image/consult/case_3.png) no-repeat;
+}
+.case-module-list .company_info.case_4 {
+  background: url(../image/consult/case_4.png) no-repeat;
+}
+.case-list-right {
+  position: absolute;
+  left: 200px;
+  top: 4px;
+  padding: 36px 28px 36px 76px;
+  background: #FFFFFF;
+  width: 360px;
+  height: 352px;
+  border-radius: 12px;
+  background: url(../image/consult/bg_5.png) no-repeat;
+  background-size: 250px 291px;
+  background-position: 108px 36px;
+  box-shadow: 0px 0px 16px 0px rgba(8, 31, 38, 0.08)
+}
+.case-list-right .case-l-r-title {
+  display: flex;
+  align-items: center;
+}
+.case-list-right .mark-title{
+  display: block;
+  margin-right: 16px;
+  width: 4px;
+  height: 12px;
+  background: #006CFF;
+}
+.case-l-r-title > span:last-child {
+  color: #171826;
+  font-size: 16px;
+  line-height: 20px;
+  font-weight: bold;
+}
+.case-l-c-content {
+  margin-top: 8px;
+  color: #5F5E64;
+  font-size: 13px;
+  line-height: 20px;
+  text-align: justify;
+}
+
+.case-l-r-content:last-child {
+  margin-top: 24px;
+}
+
+
+.detail-module {
+  overflow: hidden;
+  width: 100%;
+  height: 100px;
+  background: url(../image/consult/zixunPCxuanfuBG.png) no-repeat;
+  background-size: 100% 100%;
+  position: fixed;
+}
+.detail-module-content{
+  position: relative;
+  padding-left: 80px;
+  margin-top: 38px;
+}
+.detail-module-content .close {
+  position: absolute;
+  right: 0;
+  top: 0;
+  width: 20px;
+  height: 20px;
+  cursor: pointer;
+}
+.detail-module-content .close>img{
+  width: 20px;
+  height: 20px;
+}
+.detail-module-content .detail-module-title {
+  display: flex;
+  align-items: center;
+}
+.detail-module-content .detail-module-title>img {
+  height: 20px;
+}
+.action-btn {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+  font-size: 16px;
+  line-height: 20px;
+  border-radius: 6px;
+  cursor: pointer;
+}
+
+ .action-btn.get-more-btn {
+  margin: 5px 0 0 32px;
+  background: url(../image/consult/more-conult.png) no-repeat;
+  background-size: 100% 100%;
+  width: 196px;
+  height: 56px;
+  color: #FFFFFF;
+}
+.detail-module .fixed_bottom{
+  position: fixed;
+  left: 0;
+  bottom: 0;
+  z-index:99;
+  
+}

BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/banner.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/bg_2.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/bg_4.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/bg_5.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/case_1.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/case_2.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/case_3.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/case_4.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/close.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/detail-consult.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/logo360.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/logoKDXF.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/logoRJ.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/logoSXF.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/more-conult.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/more-service.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/report_btn.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/service_content.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/zixunPCxuanfuBG.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconAL.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconCL.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconJZ.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconKH.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconSC.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconSJ.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconST.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconTD.png


BIN
src/web/staticres/frontRouter/pc/customExport/image/consult/通用/iconZC.png


+ 83 - 0
src/web/staticres/frontRouter/pc/customExport/js/consult.js

@@ -0,0 +1,83 @@
+var needMoreAdShow = true
+$(function(){
+  // 底部ad
+  $('.detail-module .close').on('click', function () {
+    $('.detail-module').fadeOut()
+    needMoreAdShow = false
+  });
+  windowScrollFn();
+  $(window).on('scroll', windowScrollFn);
+  $(window).on('resize', windowScrollFn);
+  let isHovering = false;  
+// 经典案例模块展开收缩
+  document.querySelectorAll('.case-module-component').forEach(item => {  
+    item.addEventListener('mouseenter', function() {  
+        isHovering = true;
+        // 移除所有项目的expanded类  
+        document.querySelectorAll('.case-module-component').forEach(otherItem => {  
+            otherItem.classList.remove('expanded');  
+        });  
+  
+        // 为当前项目添加expanded类  
+        this.classList.add('expanded');  
+    });
+    item.addEventListener('mouseleave', function() {
+        // 标记为非悬停状态
+        isHovering = false;
+        // 移除所有项目的expanded类  
+        document.querySelectorAll('.case-module-component').forEach((otherItem, index) => {  
+            otherItem.classList.remove('expanded');
+        });
+        setTimeout(() => {  
+            if (!isHovering) {  
+              // 假设此时没有元素被悬停,给第一个元素添加expanded类
+              document.querySelectorAll('.case-module-component')[0].classList.add('expanded'); 
+            }  
+        });
+    });
+  });
+
+
+  // 样例报告点击
+  $('.report_btn').click(function (e) {
+    e.preventDefault();
+    const interest = e.currentTarget.parentNode.children[0].innerText
+    needSubmitHandle('pc_consult_report', interest)
+  });
+
+  // 获取更多专属服务
+  $('.action-btn').click(function (e) {
+    e.preventDefault();
+    needSubmitHandle('pc_consult_exclusiv_more')
+  });
+});
+
+// 数据定制导出(获取数据样例) source: pc_data_custom_export
+// 数据定制导出(定制操作)source:  pc_data_custom_data
+function needSubmitHandle (source, interest){
+  // 调用组件是否留资方法 传入一个来源对应模块 弹出弹框 (页面改版改为点击【获取数据样例】触发弹框)
+  vm.isNeedSubmit(source, function(){
+    // vm.showSuccess = true
+  }, interest)
+}
+
+function windowScrollFn () {
+  // 底部横幅固定
+  var stickyFooter = $('.detail-module');
+  if (needMoreAdShow) {
+    // 吸底
+    // 如果距离底部
+    var bottomFooter = $('.j-bottom');
+    var ob = { top: 0 };
+    if (bottomFooter.length) {
+      ob = bottomFooter[0] && bottomFooter[0].getBoundingClientRect();
+    }
+    // bottom出现在视口
+    var bottom = window.innerHeight - ob.top;
+    if (bottom > 0 && ob.top !== 0) {
+      stickyFooter.css({ bottom: parseInt(bottom) });
+    } else {
+      stickyFooter.css({ bottom: 0 });
+    }
+  }
+}

+ 210 - 0
src/web/templates/frontRouter/pc/serviceSystem/free/consult.html

@@ -0,0 +1,210 @@
+<!doctype html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <meta name="viewport"
+        content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+  <meta http-equiv="X-UA-Compatible" content="ie=edge">
+  <title>咨询服务_剑鱼标讯,专业招标大数据服务平台</title>
+  <meta name="Keywords" content="招标数据,中标数据,采购数据,结构化数据"/>
+  <meta name="Description" content="剑鱼标讯提供完整的结构化数据导出和定制化合作,提供招标信息相关的项目名称、项目编号、项目范围等多达30个字段,帮助企业通过数据分析市场、获取商机、辅助企业战略决策。。"/>
+  <meta content="咨询服务" theme="light" name="enable-header"/>
+  {{include "/common/pnc.html"}}
+  <link href='{{Msg "seo" "cdn"}}/css/swiper.min.css?v={{Msg "seo" "version"}}' rel="stylesheet" type="text/css"/>
+  <link rel="stylesheet" type="text/css" href='{{Msg "seo" "cdn"}}/pccss/reset_pc.css?v={{Msg "seo" "version"}}' />
+  <link rel="stylesheet" type="text/css" href='{{Msg "seo" "cdn"}}/pccss/public-nav-1200.css?v={{Msg "seo" "version"}}' />
+  <link href='{{Msg "seo" "cdn"}}/css/pc.css?v={{Msg "seo" "version"}}' rel="stylesheet"/>
+  <link href="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/theme-chalk/index.css" rel="stylesheet" />
+  <link rel="stylesheet" href='{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/css/consult.css?v={{Msg "seo" "version"}}'/>
+  <link href='{{Msg "seo" "cdn"}}/common-module/pc-dialog/css/leave-info-dialog.css?v={{Msg "seo" "version"}}' rel="stylesheet">
+</head>
+<body>
+  {{include "/common/pchead.html"}}
+  <!-- 用户留资 -->
+  <div id="vue-collect-user-info"></div>
+  <div class="service-consult-index">
+    <div class="banner-module"></div>
+    <div class="consult-module">
+      <div class="consult-module-header">
+        <h3>咨询服务</h3>
+        <p>助力企业洞察行业趋势,定位目标市场,扫描潜在客户,挖掘商业机会</p>
+      </div>
+      <div class="consult-module-main">
+        <div class="consult-content"></div>
+      </div>
+    </div>
+    <div class="report-module">
+      <div class="report-module-header">
+        <h3>样例报告免费下载</h3>
+      </div>
+      <div class="report-module-main">
+        <ul>
+          {{ range $v := .T.sample_report }}
+          <li class="report_example">
+            <div class="report_title">{{ $v.Name }}</div>
+            <div class="report_content">{{ $v.Desc }}</div>
+            <div class="report_btn"></div>
+          </li>
+          {{ end }}
+
+        </ul>
+      </div>
+    </div>
+    <div class="advantage_module">
+      <div class="advantage_module_main w1200">
+        <p>核心团队&nbsp;<span>20</span>&nbsp; + 年管理咨询经验</p>
+        <p>服务&nbsp;<span>1000</span>&nbsp;+ 家客户</p>
+        <p>积累&nbsp;<span>5000</span>&nbsp;+ 服务案例</p>
+      </div>
+    </div>
+    <div class="case-module">
+      <div class="case-module-header">
+        <h3>经典案例</h3>
+        <p>案例的积累本质上是行业经验和专业技术的积累</p>
+      </div>
+      <div class="case-module-main w1200">
+        <div class="case-module-component expanded">
+          <div class="case-module-list">
+            <div class="company_info case_1">
+              <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/logoKDXF.png" alt="">
+              <h3>科大讯飞股份有限公司</h3>
+              <p>所属行业:人工智能</p>
+            </div>
+            <div class="case-list-right">
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>客户需求</span>
+                </div>
+                <div class="case-l-c-content">
+                  科大讯飞庞杂的数据带来巨大的使用成本,无法快速高效满足一线业务、业务管理、战略分析等业务需求。
+                </div>
+              </div>
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>服务效果</span>
+                </div>
+                <div class="case-l-c-content">
+                  通过深度调研,精准识别科大讯飞发展中面临的业务流程问题,根据问题症结所在,咨询团队为科大讯飞定制了专属的解决方案,为各个需求量身定制了取数模型,根据人工智能大模型定期输出数据分析报告,为科大讯飞各个区域和业务线的实际需求,线索转化、市场分析更高效精准。
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="case-module-component">
+          <div class="case-module-list">
+            <div class="company_info case_2">
+              <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/logoRJ.png" alt="">
+              <h3>锐捷网络股份有限公司</h3>
+              <p>所属行业:信息化建设</p>
+            </div>
+            <div class="case-list-right">
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>客户需求</span>
+                </div>
+                <div class="case-l-c-content">
+                  需要实时、动态地掌握市场需求、商机线索、对目标客户行业和地区进行定位分析,对同类型业务市场份额的动态跟踪分析等。
+                </div>
+              </div>
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>服务效果</span>
+                </div>
+                <div class="case-l-c-content">
+                  基于剑鱼标讯大数据,根据锐捷网络各项需求,组织个性化数据指标,通过为锐捷网络打造个性化指标分析体系,贴合锐捷网络业务发展特点,通过市场分析为锐捷网络目标企业画像精准定位,目标客户分布地区和分布行业进行交叉定位,为锐捷网络选择优先拓展客户提供了决策参考。
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="case-module-component">
+          <div class="case-module-list">
+            <div class="company_info case_3">
+              <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/logoSXF.png" alt="">
+              <h3>深信服科技股份有限公司</h3>
+              <p>所属行业:信息化建设</p>
+            </div>
+            <div class="case-list-right">
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>客户需求</span>
+                </div>
+                <div class="case-l-c-content">
+                  业务重点如何布局,市场动态如何发展,如何精准高效找到目标市场等,成为深信服业务发展中需要突破的一个难题。
+                </div>
+              </div>
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>服务效果</span>
+                </div>
+                <div class="case-l-c-content">
+                  建立在采购单位行业类型、采购单位地区分布、采购产品类型、友商类型、友商地区分布等这些定制维度基础上,剑鱼标讯咨询团队为深信服定期输出定制化的市场分析报告,为业务部门提供专业化的信息参考,进行精准高效的决策缩短了时间,提高了业务拓展的机动性和业务发展方向的稳健性。
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+        <div class="case-module-component">
+          <div class="case-module-list">
+            <div class="company_info case_4">
+              <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/logo360.png" alt="">
+              <h3>三六零数字安全科技集团有限公司</h3>
+              <p>所属行业:网络安全</p>
+            </div>
+            <div class="case-list-right">
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>客户需求</span>
+                </div>
+                <div class="case-l-c-content">
+                  网络安全问题也日益凸显,360公司面临着如何更好的通过数据洞察用户需求,寻找更具有前瞻性的市场信息。
+                </div>
+              </div>
+              <div class="case-l-r-content">
+                <div class="case-l-r-title">
+                  <span class="mark-title"></span>
+                  <span>服务效果</span>
+                </div>
+                <div class="case-l-c-content">
+                  通过标讯数据为360公司提供精准数据用于市场分析、完成阶段性的销售线索复盘、帮助业务线对销售线索进行查漏补缺。数据指标+洞察分析+策略投放的咨询服务模式,从底层数据到上层业务战略调整建议,为360公司提供全方位立体化服务,帮助360公司实现了商机挖掘和业务拓展的目标。
+                </div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </div>
+    </div>
+    <div class="detail-module">
+      <div class="detail-module-content w1200">
+        <div class="detail-module-title">
+          <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/detail-consult.png?v={{Msg "seo" "version"}}" alt="">
+          <div class="action-btn get-more-btn">
+            <span style="display: block;margin-bottom: 6px;">获取更多专属服务</span>
+          </div>
+        </div>
+        <div class="close">
+          <img src="{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/image/consult/close.png?v={{Msg "seo" "version"}}" alt="">
+        </div>
+      </div>
+    </div>
+  </div>
+
+  {{include "/common/pcbottom.html"}}
+  <script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
+  <script src="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.7/lib/index.js"></script>
+  <script src='{{Msg "seo" "cdn"}}/js/swiper.min.js'></script>
+  <script src='{{Msg "seo" "cdn"}}/common-module/pc-dialog/js/leave-info-dialog.js?v={{Msg "seo" "version"}}'></script>
+
+  <script src='{{Msg "seo" "cdn"}}/frontRouter/pc/customExport/js/consult.js?v={{Msg "seo" "version"}}'></script>
+  <script>
+    haslogin({{.T.logid}});
+  </script>
+</body>
+</html>

+ 4 - 4
src/web/templates/frontRouter/wx/bigmember/free/perfect_info.html

@@ -66,9 +66,9 @@
                         placeholder="请输入准确的公司名称"></van-field>
                       <van-field v-if="moduleShow.email" v-model.trim="infoMap.email" label="邮箱"
                         @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')" :error-message="infoCheckMap.email"
-                        required placeholder="请输入邮箱"></van-field>
-                        <van-field v-if="moduleShow.data_requirement" maxlength="200" v-model="infoMap.data_requirement" label="数据需求" rows="2"
-                        type="textarea" placeholder="请描述下您需要的数据"></van-field>
+                        :required="required.email" placeholder="请输入邮箱"></van-field>
+                        <van-field v-if="moduleShow.data_requirement" maxlength="200" v-model="infoMap.data_requirement" :label="label.data_requirement" rows="2"
+                        type="textarea" :placeholder="desc.data_requirement"></van-field>
                     </div>
                 </div>
                 <div class="form-card-group" v-show="!notit_group">
@@ -80,7 +80,7 @@
                                    @blur="getCheckMap('phone')" :error-message="infoCheckMap.phone" required
                                    placeholder="请输入准确的手机号"></van-field>
                         <van-field v-if="moduleShow.email" v-model.trim="infoMap.email" label="邮箱" @focus="infoCheckMap.email = ''" @blur="getCheckMap('email')"
-                                   :error-message="infoCheckMap.email" required placeholder="请输入邮箱"></van-field>
+                                   :error-message="infoCheckMap.email" :required="required.email" placeholder="请输入邮箱"></van-field>
                         <van-field v-if="moduleShow.area" v-model="infoMap.area" label="区域" @click="openPop('区域')" readonly is-link
                                    placeholder="请选择所在区域"></van-field>
                         <van-field v-if="moduleShow.class" v-model="infoMap.class" label="行业" @click="openPop('行业')" readonly is-link

+ 6 - 0
src/web/templates/pc/template/index/important-gov-bidding.html

@@ -4,6 +4,7 @@
     <span class="i-g-card-header-tab" data-name="重点招标">重点招标</span>
     <span class="i-g-card-header-tab" data-name="地区招标">地区招标</span>
     <span class="i-g-card-header-tab" data-name="政府招标">政府招标</span>
+    <span class="i-g-card-header-tab" data-name="服务类采购">服务类采购</span>
   </header>
   <main class="module-card-content ent-list-module-content">
     <ul class="i-g-card-list clearfix">
@@ -22,6 +23,11 @@
         <a class="cms-link" href="{{$n.Url}}" title="{{$n.Name}}招标采购" target="_blank">{{$n.Name}}</a>
         {{end}}
       </li>
+      <li class="i-g-card-list-item" data-value="服务类采购" style="display: none;">
+        {{range $n := .T.serviceProcurement}}
+        <a class="cms-link" href="{{$n.Url}}" title="{{$n.Name}}采购" target="_blank">{{$n.Name}}</a>
+        {{end}}
+      </li>
     </ul>
   </main>
 </section>

Some files were not shown because too many files changed in this diff