Browse Source

ficc首页菜单排序

xiexiaoyuan 3 years ago
parent
commit
0c3bd4e5b9
2 changed files with 60 additions and 4 deletions
  1. 15 0
      models/response/classify.go
  2. 45 4
      services/report/classify.go

+ 15 - 0
models/response/classify.go

@@ -58,5 +58,20 @@ type ClassifyFirstListItem struct {
 	ClassifyNameFirst  string `description:"一级分类名称" json:"classify_name_first"`
 	ClassifyNameFirst  string `description:"一级分类名称" json:"classify_name_first"`
 	ClassifyNameSecond     	string  `json:"classify_name_second"`
 	ClassifyNameSecond     	string  `json:"classify_name_second"`
 	IconImgUrl         string	`json:"icon_img_url"`
 	IconImgUrl         string	`json:"icon_img_url"`
+	Sort                 int    `json:"sort"`
 	RedirectType        int     `description:"跳转页面类型:1,专栏列表,2报告列表,3专栏详情" json:"redirect_type"`
 	RedirectType        int     `description:"跳转页面类型:1,专栏列表,2报告列表,3专栏详情" json:"redirect_type"`
+}
+
+type ClassifyFirstList []*ClassifyFirstListItem
+
+func (c ClassifyFirstList) Len() int {
+	return len(c)
+}
+
+func (c ClassifyFirstList) Less(i, j int) bool {
+	return c[i].Sort < c[j].Sort
+}
+
+func (c ClassifyFirstList) Swap(i, j int) {
+	c[i], c[j] = c[j], c[i]
 }
 }

+ 45 - 4
services/report/classify.go

@@ -11,6 +11,7 @@ import (
 	"hongze/hongze_yb/services/company"
 	"hongze/hongze_yb/services/company"
 	"hongze/hongze_yb/services/user"
 	"hongze/hongze_yb/services/user"
 	"hongze/hongze_yb/utils"
 	"hongze/hongze_yb/utils"
+	"sort"
 	"strings"
 	"strings"
 )
 )
 
 
@@ -265,7 +266,7 @@ func GetClassifySecondSimpleList(user user.UserInfo, classifyIdFirst int) (list
 
 
 
 
 // GetClassifyFirstList 获取一级分类列表
 // GetClassifyFirstList 获取一级分类列表
-func GetClassifyFirstList(user user.UserInfo) (list []*response.ClassifyFirstListItem, err error) {
+func GetClassifyFirstList(user user.UserInfo) (list response.ClassifyFirstList, err error) {
 	var errMsg string
 	var errMsg string
 	defer func() {
 	defer func() {
 		if err != nil {
 		if err != nil {
@@ -293,12 +294,50 @@ func GetClassifyFirstList(user user.UserInfo) (list []*response.ClassifyFirstLis
 	classifyMap["碳市场价格周报"] = true
 	classifyMap["碳市场价格周报"] = true
 	classifyMap["海外视角"] = true
 	classifyMap["海外视角"] = true
 	classifyMap["百家谈"] = true
 	classifyMap["百家谈"] = true
+
+	classifyIconMap := map[string]string{
+		"晨报": utils.ALIYUN_YBIMG_HOST + "purchase_icon_day.png",
+		"周报": utils.ALIYUN_YBIMG_HOST + "purchase_icon_week.png",
+		"双周报": utils.ALIYUN_YBIMG_HOST + "purchase_icon_two_week.png",
+		"月报": utils.ALIYUN_YBIMG_HOST + "purchase_icon_month.png",
+		"草根调研": utils.ALIYUN_YBIMG_HOST + "purchase_icon_grassroots.png",
+		"需求报告": utils.ALIYUN_YBIMG_HOST + "purchase_icon_need_report.png",
+		"宏观报告": utils.ALIYUN_YBIMG_HOST + "purchase_icon_hongguan.png",
+		"日度点评": utils.ALIYUN_YBIMG_HOST + "purchase_icon_daily_comment.png",
+		"数据点评": utils.ALIYUN_YBIMG_HOST + "purchase_icon_data_comment.png",
+		"碳市场价格周报": utils.ALIYUN_YBIMG_HOST + "purchase_icon_carbon.png",
+		"行业调研": utils.ALIYUN_YBIMG_HOST + "purchase_icon_hy_research.png",
+		"海外视角": utils.ALIYUN_YBIMG_HOST + "purchase_icon_overseas.png",
+		"百家谈": utils.ALIYUN_YBIMG_HOST + "purchase_icon_family.png",
+		"会议纪要": utils.ALIYUN_YBIMG_HOST + "purchase_bg_big_comment.png",
+		"大事点评":  utils.ALIYUN_YBIMG_HOST + "purchase_icon_big_thing.png",
+		"年报合集": utils.ALIYUN_YBIMG_HOST + "purchase_bg_big_comment.png",
+	}
+
+	classifySortMap := map[string]int{
+		"晨报": 1,
+		"周报": 2,
+		"双周报": 3,
+		"月报": 4,
+		"草根调研": 5,
+		"需求报告": 6,
+		"宏观报告": 7,
+		"日度点评": 8,
+		"数据点评": 9,
+		"碳市场价格周报": 10,
+		"行业调研": 11,
+		"海外视角": 12,
+		"百家谈": 13,
+		"会议纪要": 14,
+		"大事点评":  15,
+		"年报合集": 16,
+	}
 	for _, item := range classifyParents {
 	for _, item := range classifyParents {
 		temp := new(response.ClassifyFirstListItem)
 		temp := new(response.ClassifyFirstListItem)
 		temp.ClassifyIdFirst = item.Id
 		temp.ClassifyIdFirst = item.Id
 		temp.ClassifyNameFirst = item.ClassifyName
 		temp.ClassifyNameFirst = item.ClassifyName
-		// TODO ficc菜单图标
-		temp.IconImgUrl = ""
+		temp.IconImgUrl = classifyIconMap[item.ClassifyName]
+		temp.Sort = classifySortMap[item.ClassifyName]
 		if _, ok := classifyMap[item.ClassifyName]; ok {
 		if _, ok := classifyMap[item.ClassifyName]; ok {
 			if item.ClassifyName == "需求报告" || item.ClassifyName == "宏观报告" {
 			if item.ClassifyName == "需求报告" || item.ClassifyName == "宏观报告" {
 				classifySecond, tErr := classify.GetFirstByPid(item.Id)
 				classifySecond, tErr := classify.GetFirstByPid(item.Id)
@@ -313,9 +352,11 @@ func GetClassifyFirstList(user user.UserInfo) (list []*response.ClassifyFirstLis
 		}else{
 		}else{
 			temp.RedirectType = 2
 			temp.RedirectType = 2
 		}
 		}
-
 		list = append(list, temp)
 		list = append(list, temp)
 	}
 	}
+	if len(list) > 0 {
+		sort.Sort(list)
+	}
 
 
 	return
 	return
 }
 }