Эх сурвалжийг харах

Merge branch 'master' into feature/v4.8.10

lianbingjie 2 жил өмнө
parent
commit
d3a6394e49

+ 7 - 7
src/jfw/modules/bigmember/src/service/use/use.go

@@ -515,12 +515,12 @@ func (u *Use) Equity() {
 			if data.Data.Member.Pid != "" {
 				userid = data.Data.Member.Pid //如果是子账号 则根据主账号id查询
 				isSubCount = true
-				o_member_jy := &map[string]interface{}{}
-				o_member_jy, _ = db.Mgo.FindOneByField("user", map[string]interface{}{
+				oMemberJy := &map[string]interface{}{}
+				oMemberJy, _ = db.Mgo.FindOneByField("user", map[string]interface{}{
 					"_id": mongodb.StringTOBsonId(userid),
 				}, `{"o_member_jy":1}`)
-				if o_member_jy != nil && len(*o_member_jy) > 0 {
-					(*person)["o_member_jy"] = o_member_jy
+				if oMemberJy != nil && len(*oMemberJy) > 0 {
+					(*person)["o_member_jy"] = oMemberJy
 				}
 			}
 			headimage := strings.Replace(qu.ObjToString((*person)["s_headimageurl"]), "http://", "https://", 1)
@@ -537,9 +537,9 @@ func (u *Use) Equity() {
 			if res != nil || len(*res) > 0 {
 				companyname = qu.ObjToStringDef((*res)["entname"], "")
 				if (*person)["o_member_jy"] != nil {
-					o_member_jy := (*person)["o_member_jy"].(map[string]interface{})
-					if o_member_jy["o_industry"] != nil {
-						industry, _ = o_member_jy["o_industry"].(map[string]interface{})
+					oMemberJy := qu.ObjToMap((*person)["o_member_jy"])
+					if *oMemberJy != nil && (*oMemberJy)["o_industry"] != nil {
+						industry, _ = (*oMemberJy)["o_industry"].(map[string]interface{})
 					} else {
 						industry = nil
 					}

+ 14 - 4
src/jfw/modules/publicapply/src/customer/service/service.go

@@ -1,7 +1,9 @@
 package service
 
 import (
+	"app.yhyue.com/moapp/jypkg/common/src/qfw/util/jy"
 	"encoding/json"
+	"jy/src/jfw/modules/publicapply/src/config"
 	"jy/src/jfw/modules/publicapply/src/customer/entity"
 
 	. "app.yhyue.com/moapp/jybase/api"
@@ -48,7 +50,8 @@ func (this *ServiceStruct) Exclude() {
 		if cotion.Name == "" {
 			return Result{Data: nil, Error_msg: Error_msg_1003}
 		}
-		cotion.UserId = userId
+		userInfo := jy.GetBigVipUserBaseMsg(this.Session(), *config.Middleground)
+		cotion.UserId = qu.If(userInfo.Pid != "", userInfo.Pid, userId).(string)
 		return Result{Data: cotion.Exclude()}
 	}()
 	this.ServeJson(r)
@@ -63,8 +66,12 @@ func (this *ServiceStruct) CstList() {
 		if this.Method() != "POST" {
 			return Result{Data: nil, Error_msg: Error_msg_1005}
 		}
+		if userId == "" {
+			return Result{Data: nil, Error_msg: Error_msg_1001}
+		}
 		cotion := entity.NewCustomerOperation()
-		cotion.UserId = userId
+		userInfo := jy.GetBigVipUserBaseMsg(this.Session(), *config.Middleground)
+		cotion.UserId = qu.If(userInfo.Pid != "", userInfo.Pid, userId).(string)
 		cotion.Session = this.Session()
 		cotion.EntId = entId
 		entUserId := qu.IntAll(this.GetSession("entUserId")) //获取企业id
@@ -95,6 +102,9 @@ func (this *ServiceStruct) CstAtt() {
 		if this.Method() != "POST" {
 			return Result{Data: nil, Error_msg: Error_msg_1005}
 		}
+		if userId == "" {
+			return Result{Data: nil, Error_msg: Error_msg_1001}
+		}
 		if string(this.Body()) == "" {
 			return Result{Data: nil, Error_msg: Error_msg_1003}
 		}
@@ -104,9 +114,9 @@ func (this *ServiceStruct) CstAtt() {
 		if !cotion.B && cotion.Name == "" {
 			return Result{Data: nil, Error_msg: Error_msg_1003}
 		}
-		cotion.UserId = userId
+		userInfo := jy.GetBigVipUserBaseMsg(this.Session(), *config.Middleground)
+		cotion.UserId = qu.If(userInfo.Pid != "", userInfo.Pid, userId).(string)
 		cotion.EntId = entId
-		cotion.UserId = userId
 		cotion.Session = this.Session()
 		msg := cotion.CheckPower()
 		if !cotion.B && msg != "" {

+ 124 - 123
src/jfw/modules/subscribepay/src/rpcfollow/share.go

@@ -1,136 +1,137 @@
 package rpcfollow
 
 import (
-    "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
-    "encoding/json"
-    "jy/src/jfw/modules/subscribepay/src/config"
-    "jy/src/jfw/modules/subscribepay/src/entity"
-    "jy/src/jfw/modules/subscribepay/src/util"
-    "time"
+	"encoding/json"
+	"jy/src/jfw/modules/subscribepay/src/config"
+	"jy/src/jfw/modules/subscribepay/src/entity"
+	"jy/src/jfw/modules/subscribepay/src/util"
+	"time"
 
-    "app.yhyue.com/moapp/jybase/go-xweb/httpsession"
-    "go.mongodb.org/mongo-driver/bson/primitive"
+	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
 
-    qu "app.yhyue.com/moapp/jybase/common"
-    . "app.yhyue.com/moapp/jybase/date"
-    frpc "app.yhyue.com/moapp/jybase/rpc"
-    "app.yhyue.com/moapp/jypkg/common/src/qfw/util/jy"
+	"app.yhyue.com/moapp/jybase/go-xweb/httpsession"
+	"go.mongodb.org/mongo-driver/bson/primitive"
+
+	qu "app.yhyue.com/moapp/jybase/common"
+	. "app.yhyue.com/moapp/jybase/date"
+	frpc "app.yhyue.com/moapp/jybase/rpc"
+	"app.yhyue.com/moapp/jypkg/common/src/qfw/util/jy"
 )
 
 //用户分享完成后,分享者和被分享者订单处理
-func (s *JyPayRpc) ShareFissionNew(p *frpc.JYShareUserIdsRes, r *frpc.JYShareResp, sessVal map[string]interface{}) error {
-    if len(p.ShareUserInfo) > 0 {
-        errArr := []interface{}{}
-        for _, ps := range p.ShareUserInfo {
-            userId := ps.UserId
-            _, err := primitive.ObjectIDFromHex(userId)
-            if err != nil {
-                continue
-            }
-            data := util.Compatible.Select(userId, `{"i_vip_status":1,"l_vip_starttime":1,"l_vip_endtime":1,"o_vipjy":1,"i_shareCount":1,"s_m_openid":1}`)
-            if data != nil && len(*data) > 0 {
-                now := time.Now()
-                vip_status := qu.IntAll((*data)["i_vip_status"])
-                nowDay := time.Date(now.Year(), now.Month(), now.Day(), 23, 59, 59, 59, now.Location()).Unix() //当前晚上23:59:59
-                endtime := qu.Int64All(qu.If(qu.Int64All((*data)["l_vip_endtime"]) < nowDay, nowDay, qu.Int64All((*data)["l_vip_endtime"])))
-                //更新user表
-                setMap := map[string]interface{}{}
-                var updateMap = map[string]interface{}{}
-                endT := time.Unix(endtime, 0).AddDate(0, 0, ps.TimeExpand)
-                types := 2 //默认开通权益
-                if vip_status == 2 {
-                    types = 1 //仅延长周期
-                    //超级订阅用户
-                    updateMap = map[string]interface{}{
-                        "l_vip_endtime": endT.Unix(),
-                    }
-                } else if vip_status <= 0 {
-                    var (
-                        area      = map[string]interface{}{"北京": []string{}}
-                        areaCount = 1
-                    )
-                    //22年双十一预热福利---2021年至今的免费用户
-                    if ps.Remark == "22年双十一预热福利" {
-                        //活动赠送7天  全国  超级订阅
-                        area = map[string]interface{}{}
-                        areaCount = -1
-                    }
-                    //非超级订阅用户
-                    updateMap = map[string]interface{}{
-                        "i_vip_status":                     2,
-                        "l_vip_starttime":                  now.Unix(),
-                        "l_vip_endtime":                    endT.Unix(),
-                        "o_vipjy.o_area":                   area,
-                        "o_vipjy.o_buyset.areacount":       areaCount,
-                        "o_vipjy.o_buyset.buyerclasscount": -1,
-                        "o_vipjy.o_buyset.upgrade":         1,
-                        "o_vipjy.o_buyset.newcitys":        []string{},
-                    }
-                    if vip_status == 0 {
-                        updateMap["o_vipjy.i_trial"] = -1
-                        updateMap["o_vipjy.a_buyerclass"] = []string{}
-                    }
-                }
-                setMap["$set"] = updateMap
-                if !util.Compatible.Update(userId, setMap) {
-                    errArr = append(errArr, map[string]interface{}{
-                        "code":   -3,
-                        "msg":    "更新用户超级订阅状态失败",
-                        "userId": userId,
-                    })
-                }
-                positionId := util.MongoIdToPositionId(userId)
-                jy.ClearBigVipUserPower(positionId)
-                config.Middleground.UserCenter.WorkDesktopClearUserInfo(pb.WorkDesktopClearUserInfoReq{
-                    PositionId: positionId,
-                    AppId:      "10000",
-                })
-                config.Middleground.PowerCheckCenter.DelCheckRedis("10000", qu.Int64All(positionId))
-                st, et := "", ""
-                st = time.Unix(endtime, 0).Format(Date_Full_Layout)
-                et = endT.Format(Date_Full_Layout)
-                if !entity.Order(userId, st, et, types, ps.TimeExpand, ps.Remark) {
-                    r.Error_code = -2
-                    errArr = append(errArr, map[string]interface{}{
-                        "code":   -2,
-                        "msg":    "保存记录失败",
-                        "userId": userId,
-                    })
-                }
-            } else {
-                r.Error_code = -1
-                errArr = append(errArr, map[string]interface{}{
-                    "code":   -1,
-                    "msg":    "mgo获取用户信息失败",
-                    "userId": userId,
-                })
-            }
-        }
-        if len(errArr) > 0 {
-            b, _ := json.Marshal(errArr)
-            r.Data = b
-        }
-    }
-    return nil
+func (s *JyPayRpc) ShareFissionNew(p *frpc.JYShareUserIdsRes, r *frpc.JYShareResp) error {
+	if len(p.ShareUserInfo) > 0 {
+		errArr := []interface{}{}
+		for _, ps := range p.ShareUserInfo {
+			userId := ps.UserId
+			_, err := primitive.ObjectIDFromHex(userId)
+			if err != nil {
+				continue
+			}
+			data := util.Compatible.Select(userId, `{"i_vip_status":1,"l_vip_starttime":1,"l_vip_endtime":1,"o_vipjy":1,"i_shareCount":1,"s_m_openid":1}`)
+			if data != nil && len(*data) > 0 {
+				now := time.Now()
+				vip_status := qu.IntAll((*data)["i_vip_status"])
+				nowDay := time.Date(now.Year(), now.Month(), now.Day(), 23, 59, 59, 59, now.Location()).Unix() //当前晚上23:59:59
+				endtime := qu.Int64All(qu.If(qu.Int64All((*data)["l_vip_endtime"]) < nowDay, nowDay, qu.Int64All((*data)["l_vip_endtime"])))
+				//更新user表
+				setMap := map[string]interface{}{}
+				var updateMap = map[string]interface{}{}
+				endT := time.Unix(endtime, 0).AddDate(0, 0, ps.TimeExpand)
+				types := 2 //默认开通权益
+				if vip_status == 2 {
+					types = 1 //仅延长周期
+					//超级订阅用户
+					updateMap = map[string]interface{}{
+						"l_vip_endtime": endT.Unix(),
+					}
+				} else if vip_status <= 0 {
+					var (
+						area      = map[string]interface{}{"北京": []string{}}
+						areaCount = 1
+					)
+					//22年双十一预热福利---2021年至今的免费用户
+					if ps.Remark == "22年双十一预热福利" {
+						//活动赠送7天  全国  超级订阅
+						area = map[string]interface{}{}
+						areaCount = -1
+					}
+					//非超级订阅用户
+					updateMap = map[string]interface{}{
+						"i_vip_status":                     2,
+						"l_vip_starttime":                  now.Unix(),
+						"l_vip_endtime":                    endT.Unix(),
+						"o_vipjy.o_area":                   area,
+						"o_vipjy.o_buyset.areacount":       areaCount,
+						"o_vipjy.o_buyset.buyerclasscount": -1,
+						"o_vipjy.o_buyset.upgrade":         1,
+						"o_vipjy.o_buyset.newcitys":        []string{},
+					}
+					if vip_status == 0 {
+						updateMap["o_vipjy.i_trial"] = -1
+						updateMap["o_vipjy.a_buyerclass"] = []string{}
+					}
+				}
+				setMap["$set"] = updateMap
+				if !util.Compatible.Update(userId, setMap) {
+					errArr = append(errArr, map[string]interface{}{
+						"code":   -3,
+						"msg":    "更新用户超级订阅状态失败",
+						"userId": userId,
+					})
+				}
+				positionId := util.MongoIdToPositionId(userId)
+				jy.ClearBigVipUserPower(positionId)
+				config.Middleground.UserCenter.WorkDesktopClearUserInfo(pb.WorkDesktopClearUserInfoReq{
+					PositionId: positionId,
+					AppId:      "10000",
+				})
+				config.Middleground.PowerCheckCenter.DelCheckRedis("10000", qu.Int64All(positionId))
+				st, et := "", ""
+				st = time.Unix(endtime, 0).Format(Date_Full_Layout)
+				et = endT.Format(Date_Full_Layout)
+				if !entity.Order(userId, st, et, types, ps.TimeExpand, ps.Remark) {
+					r.Error_code = -2
+					errArr = append(errArr, map[string]interface{}{
+						"code":   -2,
+						"msg":    "保存记录失败",
+						"userId": userId,
+					})
+				}
+			} else {
+				r.Error_code = -1
+				errArr = append(errArr, map[string]interface{}{
+					"code":   -1,
+					"msg":    "mgo获取用户信息失败",
+					"userId": userId,
+				})
+			}
+		}
+		if len(errArr) > 0 {
+			b, _ := json.Marshal(errArr)
+			r.Data = b
+		}
+	}
+	return nil
 }
 
 //获取用户权益信息
 func (s *JyPayRpc) GetUserPowerInfo(p *frpc.JYShareUserIdsRes, r *frpc.JYShareResp, session *httpsession.Session) error {
-    if len(p.ShareUserInfo) > 0 {
-        ps := p.ShareUserInfo[0]
-        bigBaseMsg := jy.GetBigVipUserBaseMsg(session, *config.Middleground)
-        if bigBaseMsg == nil {
-            r.Error_code = -1
-            r.Error_msg = ps.UserId
-            r.Data = map[string]interface{}{
-                "code":   -1,
-                "msg":    "获取用户权益详情失败",
-                "userId": ps.UserId,
-            }
-        } else {
-            data, _ := json.Marshal(*bigBaseMsg)
-            r.Data = data
-        }
-    }
-    return nil
+	if len(p.ShareUserInfo) > 0 {
+		ps := p.ShareUserInfo[0]
+		bigBaseMsg := jy.GetBigVipUserBaseMsg(session, *config.Middleground)
+		if bigBaseMsg == nil {
+			r.Error_code = -1
+			r.Error_msg = ps.UserId
+			r.Data = map[string]interface{}{
+				"code":   -1,
+				"msg":    "获取用户权益详情失败",
+				"userId": ps.UserId,
+			}
+		} else {
+			data, _ := json.Marshal(*bigBaseMsg)
+			r.Data = data
+		}
+	}
+	return nil
 }

+ 5 - 3
src/web/staticres/js/superSearch.js

@@ -724,9 +724,11 @@ function getInputTime(){
 		endtime = $.trim(endtime);
     // 处理endtime,endtime取当日23:59:59
     // 将enttime时间戳加1天并减去1秒(单位用s来计算)
-    var day1 = 24 * 60 * 60 * 1
-    var seconds1 = 1
-    endtime = Number(endtime) + day1 - seconds1
+    //var day1 = 24 * 60 * 60
+    //var seconds1 = 1
+    //endtime = Number(endtime) + day1 - seconds1
+    //电脑端保存的刷选 结束时间+1天没问题,因为结束时间是当前0点;移动端保存刷选的结束时间是当前23点59分59秒,再+1天会延长到第二天 23点59分58秒;
+    // 这块放后端处理:搜索的时候默认到当天23点59分59秒;
 	}else{
 		endtime = "";
 	}

+ 1 - 1
src/web/templates/dataMarket/index.html

@@ -5,7 +5,7 @@
   <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>
+  <title>数据市场-剑鱼标讯</title>
   <meta name="Keywords" content="招标数据,中标数据,采购数据,结构化数据"/>
   <meta name="Description" content="剑鱼标讯提供完整的结构化数据导出和定制化合作,提供招标信息相关的项目名称、项目编号、项目范围等多达30个字段,帮助企业通过数据分析市场、获取商机、辅助企业战略决策。。"/>
   <meta content="数据市场" theme="light" name="enable-header"/>

+ 1 - 1
src/web/templates/frontRouter/pc/solution/free/index.html

@@ -1,7 +1,7 @@
 <html>
 <head>
   <meta charset="UTF-8">
-  <title>解决方案_剑鱼标讯,专业招标大数据服务平台</title>
+  <title>解决方案-剑鱼标讯</title>
   <meta name="Keywords" content="招标数据,中标数据,采购数据,结构化数据"/>
   <meta name="Description" content="剑鱼标讯提供完整的结构化数据导出和定制化合作,提供招标信息相关的项目名称、项目编号、项目范围等多达30个字段,帮助企业通过数据分析市场、获取商机、辅助企业战略决策。。"/>
   <meta content="电信行业解决方案" theme="light" name="enable-header"/>

+ 1 - 1
src/web/templates/site/page/helpCenter/index.html

@@ -2,7 +2,7 @@
 <html lang="zh">
   <head>
   <meta charset="UTF-8" />
-  <title>帮助中心</title>
+  <title>帮助中心-剑鱼标讯</title>
   <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
   <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

+ 33 - 22
src/web/templates/site/page/industryInfo/class.html

@@ -2,9 +2,17 @@
 <html lang="zh">
 <head>
   <meta charset="UTF-8" />
-  <title>行业资讯</title>
-  <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
-  <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
+  {{if .T.nav}}
+    {{range $k,$v:= .T.nav}}
+      {{if eq (len $.T.nav) (Add $k 1)}}
+          <title>{{$v.Name}}-剑鱼标讯</title>
+      {{end}}
+    {{end}}
+  {{else}}
+    <title>剑鱼标讯</title>
+  {{end}}
+  <meta name="Keywords" content=''/>
+  <meta name="Description" content=''/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
   <meta name="format-detection" content="tephone=no" />
   <meta content="行业资讯" theme="light" name="enable-header"/>
@@ -25,10 +33,10 @@
   <div class="page-school-main w1200">
     <!--    导航-->
     <div class="school-bread">
+      {{if .T.nav}}
       <div class="bread-crumb" id="bread-crumb">
-        {{$lenNav := len .T.nav}}
         {{range $k,$v:= .T.nav}}
-          {{if ne $lenNav (Add $k 1)}}
+          {{if ne (len $.T.nav) (Add $k 1)}}
             <a href="{{$v.Href}}">{{$v.Name}}</a>
             <span>></span>
           {{else}}
@@ -36,6 +44,7 @@
           {{end}}
         {{end}}
       </div>
+      {{end}}
     </div>
     <!--    广告位-->
     {{range $k,$v:=Ad "jy-pc-school-top" -1 .Host}}
@@ -54,28 +63,30 @@
       </div>
       <div class="school_tabs_content" label="建筑工程" name="建筑工程">
         <article>
-          {{range $k,$v := .T.list}}
-          <div class="art_list">
-            <div class="art_l_left">
-              <div class="art_l_l_title ellipsis" onclick="window.location.href='/jySite/{{$v._id}}.html'">
-                {{$v.s_title}}
-              </div>
-              <div class="art_l_l_content">
-                {{$v.s_description}}
+          {{if .T.list}}
+            {{range $k,$v := .T.list}}
+            <div class="art_list">
+              <div class="art_l_left">
+                <div class="art_l_l_title ellipsis" onclick="window.location.href='/jySite/{{$v._id}}.html'">
+                  {{$v.s_title}}
+                </div>
+                <div class="art_l_l_content">
+                  {{$v.s_description}}
+                </div>
+                <div class="art_l_l_data">
+                  <span class="data_date">{{ Replace $v.time "-" "." -1}}</span>
+                  <span class="viewnum">{{$v.i_viewnum}}<span class="viewnum_normal">次浏览</span></span>
+                </div>
               </div>
-              <div class="art_l_l_data">
-                <span class="data_date">{{ Replace $v.time "-" "." -1}}</span>
-                <span class="viewnum">{{$v.i_viewnum}}<span class="viewnum_normal">次浏览</span></span>
+              {{if ne $v.s_pic1 ""}}
+              <div class="art_l_right">
+                <img src="{{$v.s_pic1}}" alt="{{$v.s_title}}">
               </div>
-            </div>
-            {{if ne $v.s_pic1 ""}}
-            <div class="art_l_right">
-              <img src="{{$v.s_pic1}}" alt="{{$v.s_title}}">
+              {{end}}
             </div>
             {{end}}
-          </div>
+            {{include "/common/seo-pagination.html"}}
           {{end}}
-          {{include "/common/seo-pagination.html"}}
         </article>
         <aside>
           <div class="real_time_info_module swiper_module">

+ 1 - 1
src/web/templates/site/page/industryInfo/index.html

@@ -2,7 +2,7 @@
 <html lang="zh">
   <head>
   <meta charset="UTF-8" />
-  <title>行业资讯</title>
+  <title>行业资讯-剑鱼标讯</title>
   <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
   <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

+ 41 - 31
src/web/templates/site/page/jySchool/class.html

@@ -2,9 +2,17 @@
 <html lang="zh">
   <head>
   <meta charset="UTF-8" />
-  <title>招投标攻略</title>
-  <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
-  <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
+  {{if .T.nav}}
+    {{range $k,$v:= .T.nav}}
+      {{if eq (len $.T.nav) (Add $k 1)}}
+      <title>{{$v.Name}}-剑鱼标讯</title>
+      {{end}}
+    {{end}}
+  {{else}}
+    <title>剑鱼标讯</title>
+  {{end}}
+  <meta name="Keywords" content=''/>
+  <meta name="Description" content=''/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
   <meta name="format-detection" content="tephone=no" />
   <meta content="招投标攻略" theme="light" name="enable-header"/>
@@ -20,21 +28,21 @@
   </head>
 	<body>
     {{include "/site/common/pc-school-head.html"}}
-
 		<section class="page-school-introduct-detail">
       <div class="page-school-main w1200">
         <div class="school-bread">
-          <div class="bread-crumb" id="bread-crumb">
-            {{$lenNav := len .T.nav}}
-            {{range $k,$v:= .T.nav}}
-              {{if ne $lenNav (Add $k 1)}}
-              <a href="{{$v.Href}}">{{$v.Name}}</a>
-              <span>></span>
-              {{else}}
-              <a href="{{$v.Href}}">{{$v.Name}}</a>
+          {{if .T.nav}}
+            <div class="bread-crumb" id="bread-crumb">
+              {{range $k,$v:= .T.nav}}
+                {{if ne (len $.T.nav) (Add $k 1)}}
+                <a href="{{$v.Href}}">{{$v.Name}}</a>
+                <span>></span>
+                {{else}}
+                <a href="{{$v.Href}}">{{$v.Name}}</a>
+                {{end}}
               {{end}}
-            {{end}}
-          </div>
+            </div>
+          {{end}}
         </div>
         {{range $k,$v:=Ad "jy-pc-school-top" -1 .Host}}
         <div class="school-in-header">
@@ -52,28 +60,30 @@
           </div>
           <div class="school_tabs_content" label="招标采购" name="招标采购">
             <article>
-              {{range $k,$v := .T.list}}
-              <div class="art_list">
-                <div class="art_l_left">
-                  <div class="art_l_l_title ellipsis" onclick="window.location.href='/jySite/{{$v._id}}.html'">
-                    {{$v.s_title}}
+              {{if .T.list}}
+                {{range $k,$v := .T.list}}
+                <div class="art_list">
+                  <div class="art_l_left">
+                    <div class="art_l_l_title ellipsis" onclick="window.location.href='/jySite/{{$v._id}}.html'">
+                      {{$v.s_title}}
+                    </div>
+                    <div class="art_l_l_content">
+                      {{$v.s_description}}
+                    </div>
+                    <div class="art_l_l_data">
+                      <span class="data_date">{{ Replace $v.time "-" "." -1}}</span>
+                      <span class="viewnum">{{$v.i_viewnum}}<span class="viewnum_normal">次浏览</span></span>
+                    </div>
                   </div>
-                  <div class="art_l_l_content">
-                    {{$v.s_description}}
+                  {{if ne $v.s_pic1 ""}}
+                  <div class="art_l_right">
+                    <img src="{{$v.s_pic1}}" alt="">
                   </div>
-                  <div class="art_l_l_data">
-                    <span class="data_date">{{ Replace $v.time "-" "." -1}}</span>
-                    <span class="viewnum">{{$v.i_viewnum}}<span class="viewnum_normal">次浏览</span></span>
-                  </div>
-                </div>
-                {{if ne $v.s_pic1 ""}}
-                <div class="art_l_right">
-                  <img src="{{$v.s_pic1}}" alt="">
+                  {{end}}
                 </div>
                 {{end}}
-              </div>
+                {{include "/common/seo-pagination.html"}}
               {{end}}
-              {{include "/common/seo-pagination.html"}}
             </article>
             <aside>
               <div class="real_time_info_module">

+ 1 - 1
src/web/templates/site/page/jySchool/index.html

@@ -2,7 +2,7 @@
 <html lang="zh">
   <head>
   <meta charset="UTF-8" />
-  <title>剑鱼学堂</title>
+  <title>剑鱼学堂-剑鱼标讯</title>
   <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
   <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

+ 3 - 10
src/web/templates/site/page/jyblogdetail.html

@@ -2,16 +2,9 @@
 <html lang="zh">
 <head>
   <meta charset="UTF-8" />
-  {{if eq .T.pCode "ztbgl"}}
-  <title>招投标攻略</title>
-  {{else if eq .T.pCode "hyzx"}}
-  <title>行业资讯</title>
-  {{else}}
-  <title>剑鱼标讯</title>
-  {{end}}
-
-  <meta name="Keywords" content='{{Msg "seo" "qfw.swordfish.key"}}'/>
-  <meta name="Description" content='{{Msg "seo" "qfw.swordfish.description"}}'/>
+  <title>{{.T.data.s_title}}-剑鱼标讯</title>
+  <meta name="Keywords" content=''/>
+  <meta name="Description" content=''/>
   <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
   <meta name="format-detection" content="tephone=no" />
   {{if eq .T.pCode "ztbgl"}}