|
@@ -589,12 +589,36 @@ func (this *ClassifyController) ListClassify() {
|
|
|
for _, v := range visibleUsers {
|
|
|
visibleUserMap[v.ClassifyId] = append(visibleUserMap[v.ClassifyId], v.AdminId)
|
|
|
}
|
|
|
-
|
|
|
+ classifyIds := make([]int, 0)
|
|
|
for i, v := range list {
|
|
|
list[i].VisiableUsers = visibleUserMap[v.Id]
|
|
|
+ classifyIds = append(classifyIds, v.Id)
|
|
|
}
|
|
|
// 指定分类类型(上级中的分类类型可能与最下层的不一致,但是要把上级也一起取出来, 这需求...=_=!)'
|
|
|
reportMsgConfigMap := make(map[int][]int)
|
|
|
+ // 根据分类ID获取配置项
|
|
|
+ reportMsgObj := new(models.ReportMessageConfig)
|
|
|
+ configList, err := reportMsgObj.GetListByClassifyIdList(classifyIds)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range configList {
|
|
|
+ if v.NotifyUsers != "" {
|
|
|
+ notifyUsers := strings.Split(v.NotifyUsers, ",")
|
|
|
+ for _, user := range notifyUsers {
|
|
|
+ userInt, _ := strconv.Atoi(user)
|
|
|
+ reportMsgConfigMap[v.ClassifyId] = append(reportMsgConfigMap[v.ClassifyId], userInt)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for _, v := range list {
|
|
|
+ if iceMessageUsers, ok := reportMsgConfigMap[v.Id]; ok {
|
|
|
+ v.IceMsgUsers = iceMessageUsers
|
|
|
+ }
|
|
|
+ }
|
|
|
if classifyType > 0 {
|
|
|
list = make([]*models.ClassifyList, 0)
|
|
|
// 先取出指定分类以及他对应的LevelPath中的所有ID
|
|
@@ -616,24 +640,7 @@ func (this *ClassifyController) ListClassify() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // 根据分类ID获取配置项
|
|
|
- reportMsgObj := new(models.ReportMessageConfig)
|
|
|
- configList, err := reportMsgObj.GetListByClassifyIdList(classifyIds)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
|
|
|
- for _, v := range configList {
|
|
|
- if v.NotifyUsers != "" {
|
|
|
- notifyUsers := strings.Split(v.NotifyUsers, ",")
|
|
|
- for _, user := range notifyUsers {
|
|
|
- userInt, _ := strconv.Atoi(user)
|
|
|
- reportMsgConfigMap[v.ClassifyId] = append(reportMsgConfigMap[v.ClassifyId], userInt)
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
// 过滤掉不在ID中的
|
|
|
for _, v := range originList {
|
|
@@ -645,9 +652,6 @@ func (this *ClassifyController) ListClassify() {
|
|
|
continue
|
|
|
}
|
|
|
}
|
|
|
- if iceMessageUsers, ok := reportMsgConfigMap[v.Id]; ok {
|
|
|
- v.IceMsgUsers = iceMessageUsers
|
|
|
- }
|
|
|
list = append(list, v)
|
|
|
}
|
|
|
}
|
|
@@ -676,9 +680,6 @@ func (this *ClassifyController) ListClassify() {
|
|
|
if !utils.InArrayByInt(classifyIds, v.Id) {
|
|
|
continue
|
|
|
}
|
|
|
- if configList, ok := reportMsgConfigMap[v.Id]; ok {
|
|
|
- v.IceMsgUsers = configList
|
|
|
- }
|
|
|
list = append(list, v)
|
|
|
}
|
|
|
}
|