|
@@ -3,6 +3,7 @@ package services
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"eta/eta_api/models"
|
|
|
+ "eta/eta_api/models/company"
|
|
|
"eta/eta_api/utils"
|
|
|
"fmt"
|
|
|
"io/ioutil"
|
|
@@ -208,3 +209,48 @@ func MoveChartPermission(pars *ChartPermissionMoveReq) (err error, errMsg string
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+func GetChartPermissionEnabledList() (list []*company.PermissionSetList, err error) {
|
|
|
+ var req GetChartPermissionReq
|
|
|
+ data, err := getChartPermission(req)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ dataList := data.List
|
|
|
+ //enabledList := make([]*models.ChartPermission, 0)
|
|
|
+ parentList := make([]*models.ChartPermission, 0)
|
|
|
+ enabledMap := make(map[int][]*company.PermissionSetItem)
|
|
|
+ listMap := make(map[int]*models.ChartPermission)
|
|
|
+ for _, v := range dataList {
|
|
|
+ listMap[v.ChartPermissionId] = v
|
|
|
+ if v.ParentId == 0 {
|
|
|
+ parentList = append(parentList, v)
|
|
|
+ }
|
|
|
+ if v.Enabled == 1 && v.ParentId > 0 && v.PermissionType == 0 {
|
|
|
+ //enabledList = append(enabledList, v)
|
|
|
+ item := &company.PermissionSetItem{
|
|
|
+ ChartPermissionId: v.ChartPermissionId,
|
|
|
+ PermissionName: v.PermissionName,
|
|
|
+ PermissionType: v.PermissionType,
|
|
|
+ }
|
|
|
+
|
|
|
+ enabledMap[v.ParentId] = append(enabledMap[v.ParentId], item)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for _, v := range parentList {
|
|
|
+ items, ok := enabledMap[v.ChartPermissionId]
|
|
|
+ if !ok {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ checkList := make([]int, 0)
|
|
|
+ p := new(company.PermissionSetList)
|
|
|
+ p.ClassifyName = v.PermissionName
|
|
|
+ p.Items = items
|
|
|
+ if v.PermissionName == "宏观经济" {
|
|
|
+ checkList = append(checkList, 1)
|
|
|
+ }
|
|
|
+ p.CheckList = checkList
|
|
|
+ list = append(list, p)
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|