mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-03 16:00:25 +08:00
56 lines
1.4 KiB
Go
56 lines
1.4 KiB
Go
package router
|
|
|
|
import (
|
|
"mayfly-go/internal/sys/api"
|
|
"mayfly-go/internal/sys/application"
|
|
"mayfly-go/pkg/ctx"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func InitRoleRouter(router *gin.RouterGroup) {
|
|
r := &api.Role{
|
|
RoleApp: application.RoleApp,
|
|
ResourceApp: application.ResourceApp,
|
|
}
|
|
db := router.Group("sys/roles")
|
|
{
|
|
|
|
db.GET("", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).Handle(r.Roles)
|
|
})
|
|
|
|
saveRole := ctx.NewLogInfo("保存角色").WithSave(true)
|
|
sPermission := ctx.NewPermission("role:add")
|
|
db.POST("", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).WithLog(saveRole).
|
|
WithRequiredPermission(sPermission).
|
|
Handle(r.SaveRole)
|
|
})
|
|
|
|
delRole := ctx.NewLogInfo("删除角色").WithSave(true)
|
|
drPermission := ctx.NewPermission("role:del")
|
|
db.DELETE(":id", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).WithLog(delRole).
|
|
WithRequiredPermission(drPermission).
|
|
Handle(r.DelRole)
|
|
})
|
|
|
|
db.GET(":id/resourceIds", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).Handle(r.RoleResourceIds)
|
|
})
|
|
|
|
db.GET(":id/resources", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).Handle(r.RoleResource)
|
|
})
|
|
|
|
saveResource := ctx.NewLogInfo("保存角色资源").WithSave(true)
|
|
srPermission := ctx.NewPermission("role:saveResources")
|
|
db.POST(":id/resources", func(c *gin.Context) {
|
|
ctx.NewReqCtxWithGin(c).WithLog(saveResource).
|
|
WithRequiredPermission(srPermission).
|
|
Handle(r.SaveResource)
|
|
})
|
|
}
|
|
}
|