Explorar o código

Merge branch 'yb/ficc_index_change' into debug

xiexiaoyuan %!s(int64=2) %!d(string=hai) anos
pai
achega
f225681547

+ 2 - 0
models/response/permission.go

@@ -5,6 +5,8 @@ type PermissionFirstItem struct {
 	Sort       int
 	IsCheck    bool
 	List       PermissionFiccSecondList
+	YbIndexName string
+	YbIndexIcon string
 }
 
 type PermissionFiccItem struct {

+ 19 - 0
models/tables/chart_permission_first/chart_permission_first.go

@@ -0,0 +1,19 @@
+package chart_permission_first
+
+import "time"
+
+// ChartPermissionFirst 报告权限一级分类表
+type ChartPermissionFirst struct {
+	Id           uint64    `gorm:"primaryKey;column:id;type:bigint(20) unsigned;not null" json:"-"`
+	ClassifyName string    `gorm:"column:classify_name;type:varchar(50)"`                                        // 权限一级分类名称,与chart_permission的classify_name一致
+	YbIndexName  string    `gorm:"column:yb_index_name;type:varchar(50);default:''" `                            // 研报小程序首页简称
+	YbIndexSort  int      `gorm:"column:yb_index_sort;type:tinyint(4);default:0"`                               // 研报小程序首页排序
+	YbIndexShow  int8      `gorm:"column:show_type;type:tinyint(4);default:0"`                                   // 是否展示在研报小程序首页页面  1-展示;0-不展示
+	YbIndexIcon  string    `gorm:"column:yb_index_icon;type:varchar(255);default:''"`                            // 研报小程序首页图标地址
+	CreateTime   time.Time `gorm:"index:create_time;column:create_time;type:datetime;default:CURRENT_TIMESTAMP"` //创建时间
+}
+
+// TableName get sql table name.获取数据库表名
+func (m *ChartPermissionFirst) TableName() string {
+	return "chart_permission_first"
+}

+ 12 - 0
models/tables/chart_permission_first/query.go

@@ -0,0 +1,12 @@
+package chart_permission_first
+
+import (
+	"hongze/hongze_yb/global"
+)
+
+// GetIndexShowList 查询首页展示的权限一级分类
+func GetIndexShowList() (list []*ChartPermissionFirst, err error) {
+	err = global.DEFAULT_MYSQL.Model(ChartPermissionFirst{}).Where("yb_index_show = 1").Scan(&list).Error
+	return
+}
+

+ 26 - 23
models/tables/rddp/classify/classify.go

@@ -3,29 +3,32 @@ package classify
 import "time"
 
 type Classify struct {
-	Id int `gorm:"column:id" db:"id" json:"id" form:"id"`
-	ClassifyName string `gorm:"column:classify_name" db:"classify_name" json:"classify_name" form:"classify_name"` //分类名称
-	Sort int8 `gorm:"column:sort" db:"sort" json:"sort" form:"sort"` //排序
-	ParentId int `gorm:"column:parent_id" db:"parent_id" json:"parent_id" form:"parent_id"` //父级分类id
-	CreateTime time.Time `gorm:"column:create_time" db:"create_time" json:"create_time" form:"create_time"`
-	ModifyTime time.Time `gorm:"column:modify_time" db:"modify_time" json:"modify_time" form:"modify_time"`
-	Abstract string `gorm:"column:abstract" db:"abstract" json:"abstract" form:"abstract"` //栏目简介
-	Descript string `gorm:"column:descript" db:"descript" json:"descript" form:"descript"` //分享描述
-	ReportAuthor string `gorm:"column:report_author" db:"report_author" json:"report_author" form:"report_author"` //栏目作者
-	AuthorDescript string `gorm:"column:author_descript" db:"author_descript" json:"author_descript" form:"author_descript"` //作者简介
-	ReportImgUrl string `gorm:"column:report_img_url" db:"report_img_url" json:"report_img_url" form:"report_img_url"` //报告配图
-	HeadImgUrl string `gorm:"column:head_img_url" db:"head_img_url" json:"head_img_url" form:"head_img_url"` //头部banner
-	AvatarImgUrl string `gorm:"column:avatar_img_url" db:"avatar_img_url" json:"avatar_img_url" form:"avatar_img_url"` //头像
-	ColumnImgUrl string `gorm:"column:column_img_url" db:"column_img_url" json:"column_img_url" form:"column_img_url"` //栏目配图
-	IsHomeColumn int8 `gorm:"column:is_home_column" db:"is_home_column" json:"is_home_column" form:"is_home_column"` //1:首页专栏
-	HomeImgUrl string `gorm:"column:home_img_url" db:"home_img_url" json:"home_img_url" form:"home_img_url"` //首页配图
-	ClassifyLabel string `gorm:"column:classify_label" db:"classify_label" json:"classify_label" form:"classify_label"`
-	ShowType uint8 `gorm:"column:show_type" db:"show_type" json:"show_type" form:"show_type"` //展示类型:1-列表 2-专栏
-	HasTeleconference uint8 `gorm:"column:has_teleconference" db:"has_teleconference" json:"has_teleconference" form:"has_teleconference"` //是否有电话会 0-否 1-是
-	VipTitle string `gorm:"column:vip_title" db:"vip_title" json:"vip_title" form:"vip_title"` //研究员头衔
-	YbIconUrl string `gorm:"column:yb_icon_url" db:"yb_icon_url" json:"yb_icon_url" form:"yb_icon_url"` //研报3.0已购页面icon图片地址
-	YbBgUrl string `gorm:"column:yb_bg_url" db:"yb_bg_url" json:"yb_bg_url" form:"yb_bg_url"` //研报3.0已购详情背景图地址
-	IsShow int8 `gorm:"column:is_show" db:"is_show" json:"is_show" form:"is_show"` //是否展示报告:1,展示该分类下的报告,0隐藏分类下的报告
+	Id                int       `gorm:"column:id" db:"id" json:"id" form:"id"`
+	ClassifyName      string    `gorm:"column:classify_name" db:"classify_name" json:"classify_name" form:"classify_name"` //分类名称
+	Sort              int8      `gorm:"column:sort" db:"sort" json:"sort" form:"sort"`                                     //排序
+	ParentId          int       `gorm:"column:parent_id" db:"parent_id" json:"parent_id" form:"parent_id"`                 //父级分类id
+	CreateTime        time.Time `gorm:"column:create_time" db:"create_time" json:"create_time" form:"create_time"`
+	ModifyTime        time.Time `gorm:"column:modify_time" db:"modify_time" json:"modify_time" form:"modify_time"`
+	Abstract          string    `gorm:"column:abstract" db:"abstract" json:"abstract" form:"abstract"`                             //栏目简介
+	Descript          string    `gorm:"column:descript" db:"descript" json:"descript" form:"descript"`                             //分享描述
+	ReportAuthor      string    `gorm:"column:report_author" db:"report_author" json:"report_author" form:"report_author"`         //栏目作者
+	AuthorDescript    string    `gorm:"column:author_descript" db:"author_descript" json:"author_descript" form:"author_descript"` //作者简介
+	ReportImgUrl      string    `gorm:"column:report_img_url" db:"report_img_url" json:"report_img_url" form:"report_img_url"`     //报告配图
+	HeadImgUrl        string    `gorm:"column:head_img_url" db:"head_img_url" json:"head_img_url" form:"head_img_url"`             //头部banner
+	AvatarImgUrl      string    `gorm:"column:avatar_img_url" db:"avatar_img_url" json:"avatar_img_url" form:"avatar_img_url"`     //头像
+	ColumnImgUrl      string    `gorm:"column:column_img_url" db:"column_img_url" json:"column_img_url" form:"column_img_url"`     //栏目配图
+	IsHomeColumn      int8      `gorm:"column:is_home_column" db:"is_home_column" json:"is_home_column" form:"is_home_column"`     //1:首页专栏
+	HomeImgUrl        string    `gorm:"column:home_img_url" db:"home_img_url" json:"home_img_url" form:"home_img_url"`             //首页配图
+	ClassifyLabel     string    `gorm:"column:classify_label" db:"classify_label" json:"classify_label" form:"classify_label"`
+	ShowType          uint8     `gorm:"column:show_type" db:"show_type" json:"show_type" form:"show_type"`                                     //展示类型:1-列表 2-专栏
+	HasTeleconference uint8     `gorm:"column:has_teleconference" db:"has_teleconference" json:"has_teleconference" form:"has_teleconference"` //是否有电话会 0-否 1-是
+	VipTitle          string    `gorm:"column:vip_title" db:"vip_title" json:"vip_title" form:"vip_title"`                                     //研究员头衔
+	YbIconUrl         string    `gorm:"column:yb_icon_url" db:"yb_icon_url" json:"yb_icon_url" form:"yb_icon_url"`                             //研报3.0已购页面icon图片地址
+	YbBgUrl           string    `gorm:"column:yb_bg_url" db:"yb_bg_url" json:"yb_bg_url" form:"yb_bg_url"`                                     //研报3.0已购详情背景图地址
+	IsShow            int8      `gorm:"column:is_show" db:"is_show" json:"is_show" form:"is_show"`                                             //是否展示报告:1,展示该分类下的报告,0隐藏分类下的报告
+	YbFiccIcon        string    `gorm:"column:yb_ficc_icon" db:"yb_ficc_icon" json:"yb_ficc_icon" form:"yb_ficc_icon"`                         //研报小程序端ficc页码图标
+	YbFiccPcIcon      string    `gorm:"column:yb_ficc_pc_icon" db:"yb_ficc_pc_icon" json:"yb_ficc_pc_icon" form:"yb_ficc_pc_icon"`             //研报 pc端ficc页码图标
+	YbFiccSort        int      `gorm:"column:yb_ficc_sort" db:"yb_ficc_sort" json:"yb_ficc_sort" form:"yb_ficc_sort"`                         //研报小程序端ficc页面排序
 }
 
 func (c *Classify) TableName() string  {

+ 1 - 1
models/tables/rddp/classify/query.go

@@ -37,7 +37,7 @@ func GetSecondIdsByClassifyNames(names []string) (ids []int, err error) {
 // GetParentList 查询所有一级分类
 func GetParentList() (list []*Classify, err error) {
 	err = global.MYSQL["rddp"].Model(Classify{}).
-		Select("id, classify_name, show_type").
+		Select("id, classify_name, show_type, yb_ficc_icon, yb_ficc_pc_icon, yb_ficc_sort").
 		Where("parent_id = 0 and classify_name != '权益研报' AND is_show = 1").
 		Order("sort asc, id asc").Scan(&list).Error
 	if err == utils.ErrNoRow {

+ 18 - 28
services/company/permission.go

@@ -8,6 +8,7 @@ import (
 	"hongze/hongze_yb/models/response"
 	"hongze/hongze_yb/models/tables/admin"
 	"hongze/hongze_yb/models/tables/chart_permission"
+	"hongze/hongze_yb/models/tables/chart_permission_first"
 	"hongze/hongze_yb/models/tables/company"
 	"hongze/hongze_yb/models/tables/company_product"
 	"hongze/hongze_yb/models/tables/company_report_permission"
@@ -655,17 +656,18 @@ func GetHomeFiccPermissions(user user.UserInfo) (ret response.PermissionFiccResp
 	}
 	permissionMap := make(map[uint64]bool)
 	permissionFirstMap := make(map[string]*response.PermissionFirstItem)
-	permissionFirstMap["宏观经济"] = &response.PermissionFirstItem{
-		Sort: 1001,
-	}
-	permissionFirstMap["化工产业"] = &response.PermissionFirstItem{
-		Sort: 1002,
-	}
-	permissionFirstMap["建材产业"] = &response.PermissionFirstItem{
-		Sort: 1003,
+
+	//查询首页展示的图标
+	permissionFirstList, err := chart_permission_first.GetIndexShowList()
+	if err != nil {
+		return
 	}
-	permissionFirstMap["有色产业"] = &response.PermissionFirstItem{
-		Sort: 1004,
+	for _, v := range permissionFirstList {
+		permissionFirstMap[v.ClassifyName] = &response.PermissionFirstItem{
+			Sort: v.YbIndexSort+1000,
+			YbIndexName: v.YbIndexName,
+			YbIndexIcon: v.YbIndexIcon,
+		}
 	}
 
 	for k, v := range permissionList {
@@ -700,26 +702,14 @@ func GetHomeFiccPermissions(user user.UserInfo) (ret response.PermissionFiccResp
 	}
 
 	var list response.PermissionFiccList
-	for k, v := range permissionFirstMap {
+	for _, v := range permissionFirstMap {
 		temp := new(response.PermissionFiccItem)
 		temp.Sort = v.Sort
-		temp.ClassifyName = k
-		if strings.Contains(temp.ClassifyName, "宏观") {
-			temp.ClassifyName = "宏观经济"
-			temp.SelectIconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_hongguan_select.png"
-			temp.IconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_hongguan.png"
-		} else if temp.ClassifyName == "化工产业" {
-			temp.ClassifyName = "化工"
-			temp.SelectIconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_huagong_select.png"
-			temp.IconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_huagong.png"
-		} else if temp.ClassifyName == "建材产业" {
-			temp.ClassifyName = "建材"
-			temp.SelectIconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_black_select.png"
-			temp.IconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_black.png"
-		} else if temp.ClassifyName == "有色产业" {
-			temp.ClassifyName = "有色"
-			temp.SelectIconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_youse_select.png"
-			temp.IconUrl = utils.ALIYUN_YBIMG_HOST + "ficc_icon_idx_youse.png"
+		temp.ClassifyName = v.YbIndexName
+		temp.IconUrl = v.YbIndexIcon
+		if len(temp.IconUrl) > 4 {
+			tmpIcon := temp.IconUrl[:len(temp.IconUrl)-4]
+			temp.SelectIconUrl = tmpIcon + "_select.png"
 		}
 		if len(v.List) > 0 {
 			temp.List = v.List

+ 7 - 55
services/pc/classify.go

@@ -7,7 +7,6 @@ import (
 	"hongze/hongze_yb/models/response/pc"
 	"hongze/hongze_yb/models/tables/rddp/classify"
 	"hongze/hongze_yb/services/user"
-	"hongze/hongze_yb/utils"
 	"sort"
 )
 
@@ -31,62 +30,15 @@ func GetClassifyFirstList(user user.UserInfo) (list pc.ClassifyFirstList, err er
 		return
 	}
 
-	// 当前版本一级分类固定
-	classifyIconMap := map[string]string{
-		"晨报": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_blue.png",
-		"周报": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_blue.png",
-		"双周报": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_blue.png",
-		"月报": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_blue.png",
-		"草根调研": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"需求报告": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_green.png",
-		"宏观报告": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_green.png",
-		"日度点评": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"数据点评": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_green.png",
-		"碳市场价格周报": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_blue.png",
-		"行业调研": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"海外视角": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"百家谈": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"会议纪要": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_green.png",
-		"大事点评":  utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_orange.png",
-		"年报合集": utils.ALIYUN_YBIMG_HOST + "ficc_classify_bg_green.png",
+	classifyIconMap := make(map[string]string)
+	classifySortMap := make(map[string]int)
+	var names []string
+	for _, v := range classifyParents {
+		classifyIconMap[v.ClassifyName] = v.YbFiccPcIcon
+		classifySortMap[v.ClassifyName] = v.YbFiccSort
+		names = append(names, v.ClassifyName)
 	}
 
-	classifySortMap := map[string]int{
-		"晨报": 1,
-		"周报": 2,
-		"双周报": 3,
-		"月报": 4,
-		"草根调研": 5,
-		"需求报告": 6,
-		"宏观报告": 7,
-		"日度点评": 8,
-		"数据点评": 9,
-		"碳市场价格周报": 10,
-		"行业调研": 11,
-		"海外视角": 12,
-		"百家谈": 13,
-		"会议纪要": 14,
-		"大事点评":  15,
-		"年报合集": 16,
-	}
-	names := []string{
-		"晨报",
-		"周报",
-		"双周报",
-		"月报",
-		"草根调研",
-		"需求报告",
-		"宏观报告",
-		"日度点评",
-		"数据点评",
-		"碳市场价格周报",
-		"行业调研",
-		"海外视角",
-		"百家谈",
-		"会议纪要",
-		"大事点评",
-		"年报合集",
-	}
 	reportList,err := pc.GetLatestStage(names)
 	if err != nil {
 		errMsg = err.Error()

+ 5 - 38
services/report/classify.go

@@ -322,44 +322,11 @@ func GetClassifyFirstList(user user.UserInfo) (list response.ClassifyFirstList,
 		err = errors.New("分类不存在")
 		return
 	}
-
-	// 当前版本一级分类固定
-	classifyIconMap := map[string]string{
-		"晨报": utils.ALIYUN_YBIMG_HOST + "ficc_icon_day_128.png",
-		"周报": utils.ALIYUN_YBIMG_HOST + "ficc_icon_week_128.png",
-		"双周报": utils.ALIYUN_YBIMG_HOST + "ficc_icon_two_week_128.png",
-		"月报": utils.ALIYUN_YBIMG_HOST + "ficc_icon_month_128.png",
-		"草根调研": utils.ALIYUN_YBIMG_HOST + "ficc_icon_grassroots_128.png",
-		"需求报告": utils.ALIYUN_YBIMG_HOST + "ficc_icon_need_report_128.png",
-		"宏观报告": utils.ALIYUN_YBIMG_HOST + "ficc_icon_hongguan_128.png",
-		"日度点评": utils.ALIYUN_YBIMG_HOST + "ficc_icon_daily_comment_128.png",
-		"数据点评": utils.ALIYUN_YBIMG_HOST + "ficc_icon_data_128.png",
-		"碳市场价格周报": utils.ALIYUN_YBIMG_HOST + "ficc_icon_rcarbon_128.png",
-		"行业调研": utils.ALIYUN_YBIMG_HOST + "ficc_icon_research_128.png",
-		"海外视角": utils.ALIYUN_YBIMG_HOST + "ficc_icon_overseas_128.png",
-		"百家谈": utils.ALIYUN_YBIMG_HOST + "ficc_icon_family_128.png",
-		"会议纪要": utils.ALIYUN_YBIMG_HOST + "ficc_icon_meeting_128.png",
-		"大事点评":  utils.ALIYUN_YBIMG_HOST + "ficc_icon_big_thing_128.png",
-		"年报合集": utils.ALIYUN_YBIMG_HOST + "ficc_icon_year_collect_128.png",
-	}
-
-	classifySortMap := map[string]int{
-		"晨报": 1,
-		"周报": 2,
-		"双周报": 3,
-		"月报": 4,
-		"草根调研": 5,
-		"需求报告": 6,
-		"宏观报告": 7,
-		"日度点评": 8,
-		"数据点评": 9,
-		"碳市场价格周报": 10,
-		"行业调研": 11,
-		"海外视角": 12,
-		"百家谈": 13,
-		"会议纪要": 14,
-		"大事点评":  15,
-		"年报合集": 16,
+	classifyIconMap := make(map[string]string)
+	classifySortMap := make(map[string]int)
+	for _, v := range classifyParents {
+		classifyIconMap[v.ClassifyName] = v.YbFiccIcon
+		classifySortMap[v.ClassifyName] = v.YbFiccSort
 	}
 	for _, item := range classifyParents {
 		temp := new(response.ClassifyFirstListItem)