Переглянути джерело

fix:创建用户初始化权限,确保用户可用

修改了:
- server/api/v1/sys_authority.go
- server/model/request/sys_casbin.go
- server/model/request/sys_menu.go
songzhibin97 3 роки тому
батько
коміт
8c6f61c2b5

+ 3 - 0
server/api/v1/sys_authority.go

@@ -7,6 +7,7 @@ import (
 	"gin-vue-admin/model/response"
 	"gin-vue-admin/service"
 	"gin-vue-admin/utils"
+
 	"github.com/gin-gonic/gin"
 	"go.uber.org/zap"
 )
@@ -30,6 +31,8 @@ func CreateAuthority(c *gin.Context) {
 		global.GVA_LOG.Error("创建失败!", zap.Any("err", err))
 		response.FailWithMessage("创建失败"+err.Error(), c)
 	} else {
+		service.AddMenuAuthority(request.DefaultMenu(), authority.AuthorityId)
+		service.UpdateCasbin(authority.AuthorityId, request.DefaultCasbin())
 		response.OkWithDetailed(response.SysAuthorityResponse{Authority: authBack}, "创建成功", c)
 	}
 }

+ 4 - 0
server/model/request/sys_casbin.go

@@ -11,3 +11,7 @@ type CasbinInReceive struct {
 	AuthorityId string       `json:"authorityId"` // 权限id
 	CasbinInfos []CasbinInfo `json:"casbinInfos"`
 }
+
+func DefaultCasbin() []CasbinInfo {
+	return []CasbinInfo{{Path: "/menu/getMenu", Method: "POST"}, {Path: "/jwt/jsonInBlacklist", Method: "POST"}}
+}

+ 17 - 1
server/model/request/sys_menu.go

@@ -1,9 +1,25 @@
 package request
 
-import "gin-vue-admin/model"
+import (
+	"gin-vue-admin/model"
+)
 
 // Add menu authority info structure
 type AddMenuAuthorityInfo struct {
 	Menus       []model.SysBaseMenu
 	AuthorityId string // 角色ID
 }
+
+func DefaultMenu() []model.SysBaseMenu {
+	return []model.SysBaseMenu{{
+		ParentId:  "0",
+		Path:      "dashboard",
+		Name:      "dashboard",
+		Component: "view/dashboard/index.vue",
+		Sort:      1,
+		Meta: model.Meta{
+			Title: "仪表盘",
+			Icon:  "setting",
+		},
+	}}
+}