From 3fb4ddbe96c663f861efef4df87b5d4bc773d81e Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期一, 17 七月 2023 16:42:09 +0800 Subject: [PATCH] fix --- middleware/casbin_rbac.go | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/middleware/casbin_rbac.go b/middleware/casbin_rbac.go index db77b33..4076eff 100644 --- a/middleware/casbin_rbac.go +++ b/middleware/casbin_rbac.go @@ -1,6 +1,7 @@ package middleware import ( + "aps_crm/constvar" "aps_crm/pkg/contextx" "aps_crm/pkg/ecode" "aps_crm/service" @@ -15,6 +16,28 @@ // CasbinHandler 鎷︽埅鍣� func CasbinHandler() gin.HandlerFunc { + //return func(c *gin.Context) { + // waitUse, _ := utils.GetClaims(c) + // ctx := new(contextx.Context).SetCtx(c) + // //鑾峰彇璇锋眰鐨凱ATH + // path := c.Request.URL.Path + // //obj := strings.TrimPrefix(path, global.GVA_CONFIG.System.RouterPrefix) + // obj := strings.TrimPrefix(path, "") + // // 鑾峰彇璇锋眰鏂规硶 + // act := c.Request.Method + // // 鑾峰彇鐢ㄦ埛鐨勮鑹� + // sub := strconv.Itoa(int(waitUse.AuthorityId)) + // e := casbinService.Casbin() // 鍒ゆ柇绛栫暐涓槸鍚﹀瓨鍦� + // success, _ := e.Enforce(sub, obj, act) + // if !success { + // // response.FailWithDetailed(gin.H{}, "鏉冮檺涓嶈冻", c) + // c.Abort() + // ctx.Fail(ecode.NoPowerErr) + // return + // } + // c.Next() + //} + return func(c *gin.Context) { waitUse, _ := utils.GetClaims(c) ctx := new(contextx.Context).SetCtx(c) @@ -26,6 +49,12 @@ act := c.Request.Method // 鑾峰彇鐢ㄦ埛鐨勮鑹� sub := strconv.Itoa(int(waitUse.AuthorityId)) + + // 瓒呯骇绠$悊鍛樹笉闇�瑕侀獙璇佹潈闄� + if waitUse.UserType == constvar.UserTypeSuper { + c.Next() + } + e := casbinService.Casbin() // 鍒ゆ柇绛栫暐涓槸鍚﹀瓨鍦� success, _ := e.Enforce(sub, obj, act) if !success { -- Gitblit v1.8.0