Procházet zdrojové kódy

fix:分类权限

Roc před 8 měsíci
rodič
revize
d898ef8398
2 změnil soubory, kde provedl 115 přidání a 0 odebrání
  1. 106 0
      controllers/classify.go
  2. 9 0
      routers/commentsRouter.go

+ 106 - 0
controllers/classify.go

@@ -748,3 +748,109 @@ func (this *ClassifyController) SetEnabled() {
 	br.Success = true
 	br.Msg = "操作成功"
 }
+
+// ClassifyPermissionV2
+// @Title 获取权限设置基础信息
+// @Description 获取权限设置基础信息接口
+// @Param   CompanyType   query   string  true       "客户类型:传空字符串或者不传为全部,'ficc','权益'"
+// @Param   NoUpgrade   query   bool  false       "是否不展示升级权限,默认为 false"
+// @Success 200 {object} company.PermissionSetResp
+// @router /permission/list [get]
+func (this *ClassifyController) ClassifyPermissionV2() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	classifyId, _ := this.GetInt("ClassifyId")
+	if classifyId <= 0 {
+		br.Msg = "参数错误"
+		return
+	}
+	resp := make([]*models.ChartPermissionItem, 0)
+
+	// 拥有的品种ID列表
+	permissionIdList := make([]int, 0)
+	{
+		//获取报告分类详情
+		classifyInfo, err := models.GetClassifyById(classifyId)
+		if err != nil {
+			br.Msg = "获取分类信息失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+
+		//获取报告分类权限列表
+		list, err := models.GetPermission(classifyInfo.Id)
+		if err != nil {
+			br.Msg = "获取分类信息失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+
+		for _, v := range list {
+			permissionIdList = append(permissionIdList, v.ChartPermissionId)
+		}
+	}
+
+	// 没有关联品种时,直接返回
+	num := len(permissionIdList)
+	if num <= 0 {
+		br.Ret = 200
+		br.Success = true
+		br.Msg = "获取成功"
+		br.Data = resp
+		return
+	}
+
+	cond := ` and chart_permission_id in (` + utils.GetOrmInReplace(num) + `) `
+	pars := make([]interface{}, 0)
+	pars = append(pars, permissionIdList)
+	list, e := services.GetChartPermissionList(cond, pars)
+	if e != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取品种列表失败, Err: " + e.Error()
+		return
+	}
+
+	// 品种树
+	childMap := make(map[int][]*models.ChartPermissionItem)
+
+	for _, v := range list {
+		t := new(models.ChartPermissionItem)
+		t.PermissionId = v.ChartPermissionId
+		t.PermissionName = v.PermissionName
+		t.ParentId = v.ParentId
+		t.IsPublic = v.IsPublic
+		t.Enabled = v.Enabled
+		t.Sort = v.Sort
+		t.CreateTime = v.CreatedTime.Format(utils.FormatDateTime)
+		t.Child = make([]*models.ChartPermissionItem, 0)
+		if v.ParentId == 0 {
+			resp = append(resp, t)
+			continue
+		}
+		if v.ParentId > 0 {
+			if childMap[v.ParentId] == nil {
+				childMap[v.ParentId] = make([]*models.ChartPermissionItem, 0)
+			}
+			childMap[v.ParentId] = append(childMap[v.ParentId], t)
+		}
+	}
+	for _, r := range resp {
+		r.Child = childMap[r.PermissionId]
+	}
+
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = resp
+}

+ 9 - 0
routers/commentsRouter.go

@@ -6838,6 +6838,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers:ClassifyController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:ClassifyController"],
+        beego.ControllerComments{
+            Method: "ClassifyPermissionV2",
+            Router: `/permission/list`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers:ClassifyController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:ClassifyController"],
         beego.ControllerComments{
             Method: "ClassifyPermission",