|
@@ -207,38 +207,35 @@ func GetRoadVideoList(userInfo user.UserInfo, pageIndex, pageSize, videoId, char
|
|
|
}
|
|
|
}
|
|
|
var chartPermissionNames string
|
|
|
- var parentPermissionName string
|
|
|
for _, v := range videoList {
|
|
|
chartPermissionNames = ""
|
|
|
- parentPermissionName = ""
|
|
|
+ itemParentPermissionNum := make(map[string]int)
|
|
|
tmpSlice := strings.Split(v.ChartPermissionIds, ",")
|
|
|
if len(tmpSlice) > 0 {
|
|
|
- // 判断是否有跨品种的chartPermissionID
|
|
|
+ // 拼接一级标签
|
|
|
for _, cid := range tmpSlice {
|
|
|
if p, ok := ParentPermissionNameMap[cid]; ok {
|
|
|
- if parentPermissionName == "" {
|
|
|
- parentPermissionName = p
|
|
|
- }else if parentPermissionName != p {
|
|
|
- parentPermissionName = ""
|
|
|
- break
|
|
|
+ if _, ok1 := itemParentPermissionNum[p]; !ok1 {
|
|
|
+ itemParentPermissionNum[p] = 0
|
|
|
+ chartPermissionNames += p +","
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- //如果都是一个品种内,如果全部包含二级品种,则显示一级品种名称,否则展示全部二级品种
|
|
|
- if parentPermissionName != "" {
|
|
|
- hasNum := 0
|
|
|
- for _, cid := range tmpSlice {
|
|
|
- if _, ok := chartNameMap[cid]; ok {
|
|
|
- if _, ok1 := validPermissionMap[cid]; ok1 {
|
|
|
- hasNum += 1
|
|
|
- }
|
|
|
+ // 查询可显示的所有品种是否包含所有一级品种的二级品种
|
|
|
+ for _, cid := range tmpSlice {
|
|
|
+ if _, ok := chartNameMap[cid]; ok {
|
|
|
+ if _, ok1 := validPermissionMap[cid]; ok1 {
|
|
|
+ itemParentPermissionNum[ParentPermissionNameMap[cid]] += 1
|
|
|
}
|
|
|
}
|
|
|
- if n, ok := ParentPermissionChildMap[parentPermissionName]; ok && n == hasNum {
|
|
|
- chartPermissionNames = parentPermissionName
|
|
|
+ }
|
|
|
+ for _, cid := range tmpSlice {
|
|
|
+ if n, ok := ParentPermissionChildMap[ParentPermissionNameMap[cid]]; ok && n != itemParentPermissionNum[ParentPermissionNameMap[cid]] {
|
|
|
+ chartPermissionNames = ""
|
|
|
+ break
|
|
|
}
|
|
|
}
|
|
|
- //如果包含跨品种则
|
|
|
+
|
|
|
if chartPermissionNames == "" {
|
|
|
for _, cid := range tmpSlice {
|
|
|
if name, ok := chartNameMap[cid]; ok {
|
|
@@ -247,9 +244,10 @@ func GetRoadVideoList(userInfo user.UserInfo, pageIndex, pageSize, videoId, char
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if chartPermissionNames != "" {
|
|
|
- chartPermissionNames = strings.Trim(chartPermissionNames, ",")
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ if chartPermissionNames != "" {
|
|
|
+ chartPermissionNames = strings.Trim(chartPermissionNames, ",")
|
|
|
}
|
|
|
}
|
|
|
|