|
@@ -7,6 +7,7 @@ import (
|
|
|
"eta/eta_api/models/data_manage"
|
|
|
"eta/eta_api/models/system"
|
|
|
"eta/eta_api/services/data"
|
|
|
+ "eta/eta_api/services/data/data_manage_permission"
|
|
|
"eta/eta_api/utils"
|
|
|
"sort"
|
|
|
)
|
|
@@ -22,109 +23,109 @@ type PredictEdbClassifyController struct {
|
|
|
// @Param IsOnlyMe query bool false "是否只看我的"
|
|
|
// @Success 200 {object} data_manage.EdbClassifyListResp
|
|
|
// @router /predict_classify/list [get]
|
|
|
-func (this *PredictEdbClassifyController) List() {
|
|
|
- br := new(models.BaseResponse).Init()
|
|
|
- defer func() {
|
|
|
- this.Data["json"] = br
|
|
|
- this.ServeJSON()
|
|
|
- }()
|
|
|
-
|
|
|
- isOnlyMe, _ := this.GetBool("IsOnlyMe")
|
|
|
-
|
|
|
- rootList, err := data_manage.GetEdbClassifyByParentId(0, 1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- // 获取当前账号的不可见指标
|
|
|
- obj := data_manage.EdbInfoNoPermissionAdmin{}
|
|
|
- confList, err := obj.GetAllListByAdminId(this.SysUser.AdminId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取不可见指标配置数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- noPermissionEdbInfoIdMap := make(map[int]bool)
|
|
|
- for _, v := range confList {
|
|
|
- noPermissionEdbInfoIdMap[v.EdbInfoId] = true
|
|
|
- }
|
|
|
-
|
|
|
- allEdbInfo, err := data_manage.GetPredictEdbInfoAll(1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- edbInfoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
- for _, v := range allEdbInfo {
|
|
|
- // 如果指标不可见,那么就不返回该指标
|
|
|
- if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
- continue
|
|
|
- }
|
|
|
- button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId)
|
|
|
- button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
- button.OpButton = false
|
|
|
- button.DeleteButton = false
|
|
|
- v.Button = button
|
|
|
- if isOnlyMe {
|
|
|
- if v.SysUserId == this.SysUser.AdminId {
|
|
|
- edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- } else {
|
|
|
- edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- }
|
|
|
- rootChildMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
- for _, v := range rootList {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
- v.Button = button
|
|
|
-
|
|
|
- rootChildMap[v.ParentId] = append(rootChildMap[v.ParentId], v)
|
|
|
- if existItems, ok := edbInfoMap[v.ClassifyId]; ok {
|
|
|
- v.Children = existItems
|
|
|
- } else {
|
|
|
- items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- v.Children = items
|
|
|
- }
|
|
|
- }
|
|
|
- nodeAll := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- for _, v := range rootList {
|
|
|
- nodeAll = append(nodeAll, v)
|
|
|
- }
|
|
|
-
|
|
|
- // 是否允许添加分类
|
|
|
- canOpClassify := true
|
|
|
-
|
|
|
- // 如果不是 超管 或者 ficc管理员 或者 ficc研究员,那么就没有权限
|
|
|
- //if !utils.InArrayByStr([]string{utils.ROLE_TYPE_CODE_ADMIN, utils.ROLE_TYPE_CODE_FICC_ADMIN, utils.ROLE_TYPE_CODE_RESEARCHR, utils.ROLE_TYPE_CODE_FICC_RESEARCHR}, this.SysUser.RoleTypeCode) {
|
|
|
- // canOpClassify = false
|
|
|
- //}
|
|
|
-
|
|
|
- language := `CN`
|
|
|
- // 指标显示的语言
|
|
|
- {
|
|
|
- configDetail, _ := system.GetConfigDetailByCode(this.SysUser.AdminId, system.PredictEdbLanguageVar)
|
|
|
- if configDetail != nil {
|
|
|
- language = configDetail.ConfigValue
|
|
|
- } else {
|
|
|
- configDetail, _ = system.GetDefaultConfigDetailByCode(system.PredictEdbLanguageVar)
|
|
|
- if configDetail != nil {
|
|
|
- language = configDetail.ConfigValue
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- resp := data_manage.EdbClassifyListResp{
|
|
|
- AllNodes: nodeAll,
|
|
|
- CanOpClassify: canOpClassify,
|
|
|
- Language: language,
|
|
|
- }
|
|
|
- br.Ret = 200
|
|
|
- br.Success = true
|
|
|
- br.Msg = "获取成功"
|
|
|
- br.Data = resp
|
|
|
-}
|
|
|
+//func (this *PredictEdbClassifyController) List() {
|
|
|
+// br := new(models.BaseResponse).Init()
|
|
|
+// defer func() {
|
|
|
+// this.Data["json"] = br
|
|
|
+// this.ServeJSON()
|
|
|
+// }()
|
|
|
+//
|
|
|
+// isOnlyMe, _ := this.GetBool("IsOnlyMe")
|
|
|
+//
|
|
|
+// rootList, err := data_manage.GetEdbClassifyByParentId(0, 1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// // 获取当前账号的不可见指标
|
|
|
+// obj := data_manage.EdbInfoNoPermissionAdmin{}
|
|
|
+// confList, err := obj.GetAllListByAdminId(this.SysUser.AdminId)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取不可见指标配置数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// noPermissionEdbInfoIdMap := make(map[int]bool)
|
|
|
+// for _, v := range confList {
|
|
|
+// noPermissionEdbInfoIdMap[v.EdbInfoId] = true
|
|
|
+// }
|
|
|
+//
|
|
|
+// allEdbInfo, err := data_manage.GetPredictEdbInfoAll(1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// edbInfoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
+// for _, v := range allEdbInfo {
|
|
|
+// // 如果指标不可见,那么就不返回该指标
|
|
|
+// if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
+// continue
|
|
|
+// }
|
|
|
+// button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId)
|
|
|
+// button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
+// button.OpButton = false
|
|
|
+// button.DeleteButton = false
|
|
|
+// v.Button = button
|
|
|
+// if isOnlyMe {
|
|
|
+// if v.SysUserId == this.SysUser.AdminId {
|
|
|
+// edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// }
|
|
|
+// rootChildMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
+// for _, v := range rootList {
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+// v.Button = button
|
|
|
+//
|
|
|
+// rootChildMap[v.ParentId] = append(rootChildMap[v.ParentId], v)
|
|
|
+// if existItems, ok := edbInfoMap[v.ClassifyId]; ok {
|
|
|
+// v.Children = existItems
|
|
|
+// } else {
|
|
|
+// items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+// v.Children = items
|
|
|
+// }
|
|
|
+// }
|
|
|
+// nodeAll := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+// for _, v := range rootList {
|
|
|
+// nodeAll = append(nodeAll, v)
|
|
|
+// }
|
|
|
+//
|
|
|
+// // 是否允许添加分类
|
|
|
+// canOpClassify := true
|
|
|
+//
|
|
|
+// // 如果不是 超管 或者 ficc管理员 或者 ficc研究员,那么就没有权限
|
|
|
+// //if !utils.InArrayByStr([]string{utils.ROLE_TYPE_CODE_ADMIN, utils.ROLE_TYPE_CODE_FICC_ADMIN, utils.ROLE_TYPE_CODE_RESEARCHR, utils.ROLE_TYPE_CODE_FICC_RESEARCHR}, this.SysUser.RoleTypeCode) {
|
|
|
+// // canOpClassify = false
|
|
|
+// //}
|
|
|
+//
|
|
|
+// language := `CN`
|
|
|
+// // 指标显示的语言
|
|
|
+// {
|
|
|
+// configDetail, _ := system.GetConfigDetailByCode(this.SysUser.AdminId, system.PredictEdbLanguageVar)
|
|
|
+// if configDetail != nil {
|
|
|
+// language = configDetail.ConfigValue
|
|
|
+// } else {
|
|
|
+// configDetail, _ = system.GetDefaultConfigDetailByCode(system.PredictEdbLanguageVar)
|
|
|
+// if configDetail != nil {
|
|
|
+// language = configDetail.ConfigValue
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// resp := data_manage.EdbClassifyListResp{
|
|
|
+// AllNodes: nodeAll,
|
|
|
+// CanOpClassify: canOpClassify,
|
|
|
+// Language: language,
|
|
|
+// }
|
|
|
+// br.Ret = 200
|
|
|
+// br.Success = true
|
|
|
+// br.Msg = "获取成功"
|
|
|
+// br.Data = resp
|
|
|
+//}
|
|
|
|
|
|
// Items
|
|
|
// @Title 获取所有预测指标分类接口-不包含指标
|
|
@@ -181,7 +182,28 @@ func (this *PredictEdbClassifyController) Add() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0)
|
|
|
+ haveOperaAuth := true
|
|
|
+
|
|
|
+ if req.ParentId > 0 {
|
|
|
+ parentClassify, err := data_manage.GetEdbClassifyById(req.ParentId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取父级分类失败"
|
|
|
+ br.ErrMsg = "获取父级分类失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 已授权分类id
|
|
|
+ permissionClassifyIdList, err := data_manage_permission.GetUserEdbClassifyPermissionList(this.SysUser.AdminId, parentClassify.ClassifyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "添加失败"
|
|
|
+ br.ErrMsg = "获取父级分类失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ // 数据权限
|
|
|
+ haveOperaAuth = data_manage_permission.CheckEdbClassifyPermissionByPermissionIdList(parentClassify.IsJoinPermission, parentClassify.ClassifyId, permissionClassifyIdList)
|
|
|
+ }
|
|
|
+
|
|
|
+ button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0, haveOperaAuth)
|
|
|
if !button.AddButton {
|
|
|
br.Msg = "不允许添加分类"
|
|
|
br.IsSendEmail = false
|
|
@@ -505,156 +527,156 @@ func (this *PredictEdbClassifyController) Move() {
|
|
|
// @Param IsOnlyMe query bool false "是否只看我的"
|
|
|
// @Success 200 {object} data_manage.EdbClassifyListResp
|
|
|
// @router /predict_classify/list/v2 [get]
|
|
|
-func (this *PredictEdbClassifyController) ListV2() {
|
|
|
- br := new(models.BaseResponse).Init()
|
|
|
- defer func() {
|
|
|
- this.Data["json"] = br
|
|
|
- this.ServeJSON()
|
|
|
- }()
|
|
|
-
|
|
|
- isOnlyMe, _ := this.GetBool("IsOnlyMe")
|
|
|
-
|
|
|
- rootList, err := data_manage.GetEdbClassifyByParentId(0, 1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- // 获取当前账号的不可见指标
|
|
|
- obj := data_manage.EdbInfoNoPermissionAdmin{}
|
|
|
- confList, err := obj.GetAllListByAdminId(this.SysUser.AdminId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取不可见指标配置数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- noPermissionEdbInfoIdMap := make(map[int]bool)
|
|
|
- for _, v := range confList {
|
|
|
- noPermissionEdbInfoIdMap[v.EdbInfoId] = true
|
|
|
- }
|
|
|
-
|
|
|
- allEdbInfo, err := data_manage.GetPredictEdbInfoAll(1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- edbInfoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
- for _, v := range allEdbInfo {
|
|
|
- // 如果指标不可见,那么就不返回该指标
|
|
|
- if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
- continue
|
|
|
- }
|
|
|
- button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId)
|
|
|
- button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
- button.OpButton = false
|
|
|
- button.DeleteButton = false
|
|
|
- v.Button = button
|
|
|
- if isOnlyMe {
|
|
|
- if v.SysUserId == this.SysUser.AdminId {
|
|
|
- edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- } else {
|
|
|
- edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- }
|
|
|
- rootTwoList, err := data_manage.GetEdbClassifyByParentIdTwo(1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- classifyAll, err := data_manage.GetEdbClassifyAllV2(1)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- rootTwoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
- for _, v := range rootTwoList {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
- v.Button = button
|
|
|
- rootTwoMap[v.ParentId] = append(rootTwoMap[v.ParentId], v)
|
|
|
- }
|
|
|
- rootTwoChildMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
- for _, v := range classifyAll {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
- v.Button = button
|
|
|
- if v.Level == 3 {
|
|
|
- rootTwoChildMap[v.ParentId] = append(rootTwoChildMap[v.ParentId], v)
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- nodeAll := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- for _, v := range rootList {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
- v.Button = button
|
|
|
-
|
|
|
- if existItems, ok := rootTwoMap[v.ClassifyId]; ok {
|
|
|
- v.Children = existItems
|
|
|
- for _, item := range existItems {
|
|
|
- item.Button = button
|
|
|
-
|
|
|
- if existItems, ok := rootTwoChildMap[item.ClassifyId]; ok {
|
|
|
- item.Children = existItems
|
|
|
- for _, existItem := range existItems {
|
|
|
- if _, ok := noPermissionEdbInfoIdMap[existItem.EdbInfoId]; ok {
|
|
|
- continue
|
|
|
- }
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
- button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
- existItem.Button = button
|
|
|
- if isOnlyMe {
|
|
|
- if existItem.SysUserId == this.SysUser.AdminId {
|
|
|
- edbInfoMap[existItem.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- } else {
|
|
|
- edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- item.Children = items
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- v.Children = items
|
|
|
- }
|
|
|
- nodeAll = append(nodeAll, v)
|
|
|
- }
|
|
|
-
|
|
|
- // 是否允许添加一级分类
|
|
|
- canOpClassify := true
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0)
|
|
|
- if !button.AddButton {
|
|
|
- canOpClassify = false
|
|
|
- }
|
|
|
-
|
|
|
- language := `CN`
|
|
|
- // 指标显示的语言
|
|
|
- {
|
|
|
- configDetail, _ := system.GetConfigDetailByCode(this.SysUser.AdminId, system.PredictEdbLanguageVar)
|
|
|
- if configDetail != nil {
|
|
|
- language = configDetail.ConfigValue
|
|
|
- } else {
|
|
|
- configDetail, _ = system.GetDefaultConfigDetailByCode(system.PredictEdbLanguageVar)
|
|
|
- if configDetail != nil {
|
|
|
- language = configDetail.ConfigValue
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- resp := data_manage.EdbClassifyListResp{
|
|
|
- AllNodes: nodeAll,
|
|
|
- CanOpClassify: canOpClassify,
|
|
|
- Language: language,
|
|
|
- }
|
|
|
- br.Ret = 200
|
|
|
- br.Success = true
|
|
|
- br.Msg = "获取成功"
|
|
|
- br.Data = resp
|
|
|
-}
|
|
|
+//func (this *PredictEdbClassifyController) ListV2() {
|
|
|
+// br := new(models.BaseResponse).Init()
|
|
|
+// defer func() {
|
|
|
+// this.Data["json"] = br
|
|
|
+// this.ServeJSON()
|
|
|
+// }()
|
|
|
+//
|
|
|
+// isOnlyMe, _ := this.GetBool("IsOnlyMe")
|
|
|
+//
|
|
|
+// rootList, err := data_manage.GetEdbClassifyByParentId(0, 1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// // 获取当前账号的不可见指标
|
|
|
+// obj := data_manage.EdbInfoNoPermissionAdmin{}
|
|
|
+// confList, err := obj.GetAllListByAdminId(this.SysUser.AdminId)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取不可见指标配置数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// noPermissionEdbInfoIdMap := make(map[int]bool)
|
|
|
+// for _, v := range confList {
|
|
|
+// noPermissionEdbInfoIdMap[v.EdbInfoId] = true
|
|
|
+// }
|
|
|
+//
|
|
|
+// allEdbInfo, err := data_manage.GetPredictEdbInfoAll(1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// edbInfoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
+// for _, v := range allEdbInfo {
|
|
|
+// // 如果指标不可见,那么就不返回该指标
|
|
|
+// if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
+// continue
|
|
|
+// }
|
|
|
+// button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId)
|
|
|
+// button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
+// button.OpButton = false
|
|
|
+// button.DeleteButton = false
|
|
|
+// v.Button = button
|
|
|
+// if isOnlyMe {
|
|
|
+// if v.SysUserId == this.SysUser.AdminId {
|
|
|
+// edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// }
|
|
|
+// rootTwoList, err := data_manage.GetEdbClassifyByParentIdTwo(1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// classifyAll, err := data_manage.GetEdbClassifyAllV2(1)
|
|
|
+// if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+// br.Msg = "获取失败"
|
|
|
+// br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+// return
|
|
|
+// }
|
|
|
+// rootTwoMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
+// for _, v := range rootTwoList {
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+// v.Button = button
|
|
|
+// rootTwoMap[v.ParentId] = append(rootTwoMap[v.ParentId], v)
|
|
|
+// }
|
|
|
+// rootTwoChildMap := make(map[int][]*data_manage.EdbClassifyItems)
|
|
|
+// for _, v := range classifyAll {
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+// v.Button = button
|
|
|
+// if v.Level == 3 {
|
|
|
+// rootTwoChildMap[v.ParentId] = append(rootTwoChildMap[v.ParentId], v)
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// nodeAll := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+// for _, v := range rootList {
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+// v.Button = button
|
|
|
+//
|
|
|
+// if existItems, ok := rootTwoMap[v.ClassifyId]; ok {
|
|
|
+// v.Children = existItems
|
|
|
+// for _, item := range existItems {
|
|
|
+// item.Button = button
|
|
|
+//
|
|
|
+// if existItems, ok := rootTwoChildMap[item.ClassifyId]; ok {
|
|
|
+// item.Children = existItems
|
|
|
+// for _, existItem := range existItems {
|
|
|
+// if _, ok := noPermissionEdbInfoIdMap[existItem.EdbInfoId]; ok {
|
|
|
+// continue
|
|
|
+// }
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+// button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
+// existItem.Button = button
|
|
|
+// if isOnlyMe {
|
|
|
+// if existItem.SysUserId == this.SysUser.AdminId {
|
|
|
+// edbInfoMap[existItem.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// edbInfoMap[v.ClassifyId] = append(edbInfoMap[v.ClassifyId], v)
|
|
|
+// }
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+// item.Children = items
|
|
|
+// }
|
|
|
+// }
|
|
|
+// } else {
|
|
|
+// items := make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+// v.Children = items
|
|
|
+// }
|
|
|
+// nodeAll = append(nodeAll, v)
|
|
|
+// }
|
|
|
+//
|
|
|
+// // 是否允许添加一级分类
|
|
|
+// canOpClassify := true
|
|
|
+// button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0)
|
|
|
+// if !button.AddButton {
|
|
|
+// canOpClassify = false
|
|
|
+// }
|
|
|
+//
|
|
|
+// language := `CN`
|
|
|
+// // 指标显示的语言
|
|
|
+// {
|
|
|
+// configDetail, _ := system.GetConfigDetailByCode(this.SysUser.AdminId, system.PredictEdbLanguageVar)
|
|
|
+// if configDetail != nil {
|
|
|
+// language = configDetail.ConfigValue
|
|
|
+// } else {
|
|
|
+// configDetail, _ = system.GetDefaultConfigDetailByCode(system.PredictEdbLanguageVar)
|
|
|
+// if configDetail != nil {
|
|
|
+// language = configDetail.ConfigValue
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// resp := data_manage.EdbClassifyListResp{
|
|
|
+// AllNodes: nodeAll,
|
|
|
+// CanOpClassify: canOpClassify,
|
|
|
+// Language: language,
|
|
|
+// }
|
|
|
+// br.Ret = 200
|
|
|
+// br.Success = true
|
|
|
+// br.Msg = "获取成功"
|
|
|
+// br.Data = resp
|
|
|
+//}
|
|
|
|
|
|
// SimpleList
|
|
|
// @Title 单层分类列表
|
|
@@ -708,24 +730,56 @@ func (this *PredictEdbClassifyController) SimpleList() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- for _, v := range allEdbInfo {
|
|
|
- // 如果指标不可见,那么就不返回该指标
|
|
|
- if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
- continue
|
|
|
+ if len(allEdbInfo) > 0 {
|
|
|
+ // 查询当前分类信息
|
|
|
+ currClassify, err := data_manage.GetEdbClassifyById(parentId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取当前分类信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ // 获取所有有权限的指标和分类
|
|
|
+ permissionEdbIdList, permissionClassifyIdList, err := data_manage_permission.GetUserEdbAndClassifyPermissionList(this.SysUser.AdminId, 0, 0)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取所有有权限的指标和分类失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range allEdbInfo {
|
|
|
+ // 如果指标不可见,那么就不返回该指标
|
|
|
+ if _, ok := noPermissionEdbInfoIdMap[v.EdbInfoId]; ok {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ // 数据权限
|
|
|
+ v.HaveOperaAuth = data_manage_permission.CheckEdbPermissionByPermissionIdList(v.IsJoinPermission, currClassify.IsJoinPermission, v.EdbInfoId, v.ClassifyId, permissionEdbIdList, permissionClassifyIdList)
|
|
|
+ // 按钮权限
|
|
|
+ button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId, v.HaveOperaAuth)
|
|
|
+ button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
+ button.OpButton = false
|
|
|
+ button.DeleteButton = false
|
|
|
+ v.Button = button
|
|
|
+ v.ParentId = parentId
|
|
|
+ v.Children = make([]*data_manage.EdbClassifyItems, 0)
|
|
|
+ nodeAll = append(nodeAll, v)
|
|
|
}
|
|
|
- button := data.GetPredictEdbOpButton(this.SysUser, v.SysUserId)
|
|
|
- button.AddButton = false //不管有没有权限,指标都是没有添加按钮的
|
|
|
- button.OpButton = false
|
|
|
- button.DeleteButton = false
|
|
|
- v.Button = button
|
|
|
- v.Children = make([]*data_manage.EdbClassifyItems, 0)
|
|
|
- v.ParentId = parentId
|
|
|
- nodeAll = append(nodeAll, v)
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
if len(rootList) > 0 {
|
|
|
+ // 已授权分类id
|
|
|
+ permissionClassifyIdList, err := data_manage_permission.GetUserEdbClassifyPermissionList(this.SysUser.AdminId, 0)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取已授权分类id数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
for _, v := range rootList {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+ // 数据权限
|
|
|
+ v.HaveOperaAuth = data_manage_permission.CheckEdbClassifyPermissionByPermissionIdList(v.IsJoinPermission, v.ClassifyId, permissionClassifyIdList)
|
|
|
+ // 按钮权限
|
|
|
+ button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId, v.HaveOperaAuth)
|
|
|
v.Button = button
|
|
|
v.Children = make([]*data_manage.EdbClassifyItems, 0)
|
|
|
nodeAll = append(nodeAll, v)
|
|
@@ -739,7 +793,7 @@ func (this *PredictEdbClassifyController) SimpleList() {
|
|
|
|
|
|
// 是否允许添加一级分类
|
|
|
canOpClassify := true
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0)
|
|
|
+ button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0, true)
|
|
|
if !button.AddButton {
|
|
|
canOpClassify = false
|
|
|
}
|
|
@@ -790,8 +844,19 @@ func (this *PredictEdbClassifyController) ClassifyTree() {
|
|
|
var sortList data_manage.EdbClassifyItemList
|
|
|
|
|
|
if len(allList) > 0 {
|
|
|
+ // 已授权分类id
|
|
|
+ permissionClassifyIdList, err := data_manage_permission.GetUserEdbClassifyPermissionList(this.SysUser.AdminId, 0)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取已授权分类id数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
for k, v := range allList {
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId)
|
|
|
+ // 数据权限
|
|
|
+ v.HaveOperaAuth = data_manage_permission.CheckEdbClassifyPermissionByPermissionIdList(v.IsJoinPermission, v.ClassifyId, permissionClassifyIdList)
|
|
|
+ // 按钮权限
|
|
|
+ button := data.GetPredictEdbClassifyOpButton(this.SysUser, v.SysUserId, v.HaveOperaAuth)
|
|
|
allList[k].Button = button
|
|
|
}
|
|
|
nodeAll = data.GetClassifyTreeRecursive(allList, 0)
|
|
@@ -801,7 +866,7 @@ func (this *PredictEdbClassifyController) ClassifyTree() {
|
|
|
}
|
|
|
// 是否允许添加一级分类
|
|
|
canOpClassify := true
|
|
|
- button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0)
|
|
|
+ button := data.GetPredictEdbClassifyOpButton(this.SysUser, 0, true)
|
|
|
if !button.AddButton {
|
|
|
canOpClassify = false
|
|
|
}
|