|
@@ -19,8 +19,9 @@ import (
|
|
|
)
|
|
|
|
|
|
type KeyType struct {
|
|
|
- Name string `json:"name"`
|
|
|
- Url string `json:"url"`
|
|
|
+ Name string `json:"name"`
|
|
|
+ Url string `json:"url"`
|
|
|
+ SeedData []KeyType `json:"seedData"`
|
|
|
}
|
|
|
|
|
|
// RegionAndInformationAndTender 1地域 2信息类型 3热门招标
|
|
@@ -61,9 +62,9 @@ func HotSubjectMatter() []map[string]interface{} {
|
|
|
}
|
|
|
|
|
|
// ContentRecommendation 实用内容推荐
|
|
|
-func ContentRecommendation() []map[KeyType][]KeyType {
|
|
|
+func ContentRecommendation() []KeyType {
|
|
|
if bytes, err := redis.GetBytes(RedisNameNew, "contentRecommendation"); err == nil && bytes != nil {
|
|
|
- var rData []map[KeyType][]KeyType
|
|
|
+ var rData []KeyType
|
|
|
log.Println()
|
|
|
if err := json.Unmarshal(*bytes, &rData); err != nil {
|
|
|
log.Printf("[MANAGER-ERR]contentRecommendation GetData Error %v \n", err)
|
|
@@ -79,36 +80,42 @@ func ContentRecommendation() []map[KeyType][]KeyType {
|
|
|
column, ok := mongodb.Find("column", map[string]interface{}{"$or": []map[string]interface{}{
|
|
|
{"pid": "ztbgl"}, {"pid": "hyzx"}, {"pid": "bzzx"},
|
|
|
}}, `{"i_order":1}`, "", false, -1, -1)
|
|
|
- dataMap := make(map[KeyType][]KeyType)
|
|
|
+ dataMap := make(map[string][]KeyType)
|
|
|
if ok && column != nil && len(*column) > 0 {
|
|
|
for _, v := range *column {
|
|
|
pid := qu.InterfaceToStr(v["pid"])
|
|
|
code := qu.InterfaceToStr(v["s_columncode"])
|
|
|
- var v1, v2 KeyType
|
|
|
+ var v1 KeyType
|
|
|
v1.Name = qu.InterfaceToStr(v["s_columnname"])
|
|
|
if pid == jySchoolCode {
|
|
|
- v2.Name = "招投标攻略"
|
|
|
- v2.Url = qu.InterfaceToStr(jySchoolUrl["homeUrl"])
|
|
|
v1.Url = fmt.Sprintf(qu.InterfaceToStr(jySchoolUrl["towUrl"]), code)
|
|
|
} else if pid == industryInfoCode {
|
|
|
- v2.Name = "行业资讯"
|
|
|
- v2.Url = qu.InterfaceToStr(industryInfoUrl["homeUrl"])
|
|
|
v1.Url = fmt.Sprintf(qu.InterfaceToStr(industryInfoUrl["towUrl"]), code)
|
|
|
- } else if pid == industryInfoCode {
|
|
|
- v2.Name = "帮助中心"
|
|
|
- v2.Url = "/helpCenter/index"
|
|
|
+ } else if pid == "bzzx" {
|
|
|
v1.Url = fmt.Sprintf("/helpCenter/catalog/%s", code)
|
|
|
}
|
|
|
- dataMap[v2] = append(dataMap[v2], v1)
|
|
|
+ dataMap[pid] = append(dataMap[pid], v1)
|
|
|
}
|
|
|
}
|
|
|
- dataArr := []KeyType{{Name: "招投标攻略", Url: qu.InterfaceToStr(jySchoolUrl["homeUrl"])},
|
|
|
- {"行业资讯", qu.InterfaceToStr(industryInfoUrl["homeUrl"])},
|
|
|
- {"帮助中心", "/helpCenter/index"}}
|
|
|
- var data []map[KeyType][]KeyType
|
|
|
- for _, v := range dataArr {
|
|
|
+ var data []KeyType
|
|
|
+ for _, v := range []string{jySchoolCode, industryInfoCode, "bzzx"} {
|
|
|
if v1, ok1 := dataMap[v]; ok1 && v1 != nil {
|
|
|
- data = append(data, map[KeyType][]KeyType{v: dataMap[v]})
|
|
|
+ var d KeyType
|
|
|
+ switch v {
|
|
|
+ case jySchoolCode:
|
|
|
+ d.Name = "招投标攻略"
|
|
|
+ d.Url = qu.InterfaceToStr(jySchoolUrl["homeUrl"])
|
|
|
+ d.SeedData = v1
|
|
|
+ case industryInfoCode:
|
|
|
+ d.Name = "行业资讯"
|
|
|
+ d.Url = qu.InterfaceToStr(industryInfoUrl["homeUrl"])
|
|
|
+ d.SeedData = v1
|
|
|
+ case "bzzx":
|
|
|
+ d.Name = "帮助中心"
|
|
|
+ d.Url = "/helpCenter/index"
|
|
|
+ d.SeedData = v1
|
|
|
+ }
|
|
|
+ data = append(data, d)
|
|
|
}
|
|
|
}
|
|
|
if bytes, err := json.Marshal(data); err == nil && bytes != nil {
|