|
@@ -180,37 +180,23 @@ func (s *Short) Article(stype, id string) error {
|
|
|
s.SetSession("projectname", obj["projectname"])
|
|
|
}
|
|
|
if obj["entidlist"] != nil { //大会员中标企业跳转至画像
|
|
|
- if winner := util.ObjToString(obj["winner"]); winner != "" {
|
|
|
- s_winner := util.ObjToString(obj["s_winner"])
|
|
|
- idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
- winnerId := ""
|
|
|
- if names := strings.Split(s_winner, ","); len(names) > 1 {
|
|
|
- index := 0
|
|
|
- for i := 0; i < len(names); i++ {
|
|
|
- if names[i] == winner {
|
|
|
- index = i
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- if len(idObjs) > index {
|
|
|
- winnerId = util.ObjToString(idObjs[index])
|
|
|
- }
|
|
|
- } else { //中标企业仅一个
|
|
|
- if len(idObjs) > 0 {
|
|
|
- winnerId = util.ObjToString(idObjs[0])
|
|
|
- }
|
|
|
- }
|
|
|
- if winnerId != "" && winnerId != "-" {
|
|
|
- obj["entId"] = util.EncodeArticleId2ByCheck(winnerId)
|
|
|
+ s_winner := util.ObjToString(obj["s_winner"])
|
|
|
+ idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
+ winnerIdArr := []string{}
|
|
|
+ for _, v := range strings.Split(s_winner, ",") {
|
|
|
+ if v == "-" || !isInStringArr(util.ObjArrToStringArr(idObjs), v) {
|
|
|
+ continue
|
|
|
}
|
|
|
+ winnerIdArr = append(winnerIdArr, util.EncodeArticleId2ByCheck(v))
|
|
|
+ obj["entIds"] = winnerIdArr
|
|
|
}
|
|
|
}
|
|
|
s.T["url"] = s.Uri()
|
|
|
s.T["obj"] = obj
|
|
|
|
|
|
content, _ := s.Render4Cache("/pc/biddetail_rec.html", &s.T)
|
|
|
- timeout := 60 * 20
|
|
|
- redis.Put("newother", catchKey, string(content), timeout)
|
|
|
+ // timeout := 60 * 20
|
|
|
+ // redis.Put("newother", catchKey, string(content), timeout)
|
|
|
return s.SetBody(content)
|
|
|
}
|
|
|
} else {
|
|
@@ -333,29 +319,15 @@ func (s *Short) Article(stype, id string) error {
|
|
|
}
|
|
|
}
|
|
|
if obj["entidlist"] != nil { //大会员中标企业跳转至画像
|
|
|
- if winner := util.ObjToString(obj["winner"]); winner != "" {
|
|
|
- s_winner := util.ObjToString(obj["s_winner"])
|
|
|
- idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
- winnerId := ""
|
|
|
- if names := strings.Split(s_winner, ","); len(names) > 1 {
|
|
|
- index := 0
|
|
|
- for i := 0; i < len(names); i++ {
|
|
|
- if names[i] == winner {
|
|
|
- index = i
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- if len(idObjs) > index {
|
|
|
- winnerId = util.ObjToString(idObjs[index])
|
|
|
- }
|
|
|
- } else { //中标企业仅一个
|
|
|
- if len(idObjs) > 0 {
|
|
|
- winnerId = util.ObjToString(idObjs[0])
|
|
|
- }
|
|
|
- }
|
|
|
- if winnerId != "" && winnerId != "-" {
|
|
|
- obj["entId"] = util.EncodeArticleId2ByCheck(winnerId)
|
|
|
+ s_winner := util.ObjToString(obj["s_winner"])
|
|
|
+ idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
+ winnerIdArr := []string{}
|
|
|
+ for _, v := range strings.Split(s_winner, ",") {
|
|
|
+ if v == "-" || !isInStringArr(util.ObjArrToStringArr(idObjs), v) {
|
|
|
+ continue
|
|
|
}
|
|
|
+ winnerIdArr = append(winnerIdArr, util.EncodeArticleId2ByCheck(v))
|
|
|
+ obj["entIds"] = winnerIdArr
|
|
|
}
|
|
|
}
|
|
|
s.T["advertcode"] = s.GetString("advertcode")
|
|
@@ -488,30 +460,17 @@ func (s *Short) Article(stype, id string) error {
|
|
|
if obj["projectname"] != nil {
|
|
|
s.SetSession("projectname", obj["projectname"])
|
|
|
}
|
|
|
+
|
|
|
if obj["entidlist"] != nil { //大会员中标企业跳转至画像
|
|
|
- if winner := util.ObjToString(obj["winner"]); winner != "" {
|
|
|
- s_winner := util.ObjToString(obj["s_winner"])
|
|
|
- idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
- winnerId := ""
|
|
|
- if names := strings.Split(s_winner, ","); len(names) > 1 {
|
|
|
- index := 0
|
|
|
- for i := 0; i < len(names); i++ {
|
|
|
- if names[i] == winner {
|
|
|
- index = i
|
|
|
- break
|
|
|
- }
|
|
|
- }
|
|
|
- if len(idObjs) > index {
|
|
|
- winnerId = util.ObjToString(idObjs[index])
|
|
|
- }
|
|
|
- } else { //中标企业仅一个
|
|
|
- if len(idObjs) > 0 {
|
|
|
- winnerId = util.ObjToString(idObjs[0])
|
|
|
- }
|
|
|
- }
|
|
|
- if winnerId != "" && winnerId != "-" {
|
|
|
- obj["entId"] = util.EncodeArticleId2ByCheck(winnerId)
|
|
|
+ s_winner := util.ObjToString(obj["s_winner"])
|
|
|
+ idObjs, _ := obj["entidlist"].([]interface{})
|
|
|
+ winnerIdArr := []string{}
|
|
|
+ for _, v := range strings.Split(s_winner, ",") {
|
|
|
+ if v == "-" || !isInStringArr(util.ObjArrToStringArr(idObjs), v) {
|
|
|
+ continue
|
|
|
}
|
|
|
+ winnerIdArr = append(winnerIdArr, util.EncodeArticleId2ByCheck(v))
|
|
|
+ obj["entIds"] = winnerIdArr
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
@@ -529,11 +488,11 @@ func (s *Short) Article(stype, id string) error {
|
|
|
s.T["url"] = s.Uri()
|
|
|
|
|
|
content, _ := s.Render4Cache("/pc/biddetail_rec.html", &s.T)
|
|
|
- timeout := 60 * 20
|
|
|
+ // timeout := 60 * 20
|
|
|
if stype == "indexcontent" {
|
|
|
timeout = util.IntAllDef(config.Sysconfig["indexcontentTimeOut"], 86400)
|
|
|
}
|
|
|
- redis.Put("newother", catchKey, string(content), timeout)
|
|
|
+ // redis.Put("newother", catchKey, string(content), timeout)
|
|
|
return s.SetBody(content)
|
|
|
}
|
|
|
} else {
|
|
@@ -702,14 +661,28 @@ func FieldProcessing(obj map[string]interface{}, ssOpenid interface{}, industry,
|
|
|
|
|
|
//大会员中标企业跳转至画像
|
|
|
if obj["entidlist"] != nil {
|
|
|
- if winner := util.ObjToString(obj["winner"]); winner != "" {
|
|
|
- //临时更改为企业名称查询企业id
|
|
|
- rData := elastic.Get("qyxy", "qyxy", fmt.Sprintf(`{"query":{"bool":{"should":[{"term":{"company_name":"%s"}},{"term":{"hname":"%s"}}],"minimum_should_match":1}},"_source":["name","_id","capital","company_phone"],"size":1}`, winner, winner))
|
|
|
- if rData != nil && len(*rData) == 1 {
|
|
|
- if entId := util.ObjToString((*rData)[0]["_id"]); entId != "" {
|
|
|
- obj["entId"] = util.EncodeArticleId2ByCheck(util.ObjToString((*rData)[0]["_id"]))
|
|
|
+ if s_winner := util.ObjToString(obj["s_winner"]); s_winner != "" {
|
|
|
+ entIdArr, winnerMap := []string{}, map[string]interface{}{}
|
|
|
+ for _, v := range strings.Split(s_winner, ",") {
|
|
|
+ winnerMap[v] = ""
|
|
|
+ //临时更改为企业名称查询企业id
|
|
|
+ rData := elastic.Get("qyxy", "qyxy", fmt.Sprintf(`{"query":{"bool":{"should":[{"term":{"company_name":"%s"}},{"term":{"hname":"%s"}}],"minimum_should_match":1}},"_source":["name","_id","capital","company_phone"],"size":1}`, v, v))
|
|
|
+ if rData != nil && len(*rData) == 1 {
|
|
|
+ if entId := util.ObjToString((*rData)[0]["_id"]); entId != "" {
|
|
|
+ entIdArr = append(entIdArr, util.EncodeArticleId2ByCheck(util.ObjToString((*rData)[0]["_id"])))
|
|
|
+ winnerMap[v] = util.EncodeArticleId2ByCheck(util.ObjToString((*rData)[0]["_id"]))
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+ obj["entId"] = entIdArr
|
|
|
+ obj["winnerMap"] = winnerMap
|
|
|
+ // qwe := map[string]interface{}{}
|
|
|
+ // for i := 1; i <= 10; i++ {
|
|
|
+ // for k, v := range winnerMap {
|
|
|
+ // qwe[fmt.Sprintf("%s%s", k, strconv.Itoa(i))] = v
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // obj["winnerMap"] = qwe
|
|
|
}
|
|
|
}
|
|
|
//移动端需要处理--剑鱼币
|
|
@@ -871,3 +844,12 @@ func hasRetainedCapital(uid, source string) bool {
|
|
|
}
|
|
|
return false
|
|
|
}
|
|
|
+
|
|
|
+func isInStringArr(arr []string, key string) bool {
|
|
|
+ for _, v := range arr {
|
|
|
+ if v == key {
|
|
|
+ return true
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return false
|
|
|
+}
|