完善功能
This commit is contained in:
@ -2,12 +2,13 @@ package myCasbin
|
||||
|
||||
import (
|
||||
"context"
|
||||
"server/internal/consts"
|
||||
"sync"
|
||||
|
||||
"github.com/casbin/casbin/v2"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
"github.com/gogf/gf/v2/os/glog"
|
||||
"github.com/hailaz/gf-casbin-adapter/v2"
|
||||
"server/internal/consts"
|
||||
"sync"
|
||||
adapter "github.com/hailaz/gf-casbin-adapter/v2"
|
||||
)
|
||||
|
||||
type myCasbin struct {
|
||||
@ -40,30 +41,56 @@ func init() {
|
||||
enforcer.AddGroupingPolicy(consts.AdminRoleCode, consts.AuthorRoleCode)
|
||||
// guest
|
||||
{
|
||||
|
||||
enforcer.AddPolicy("guest", "/book/app/list", "GET", "App获取书籍列表")
|
||||
enforcer.AddPolicy("guest", "/book/app/detail", "GET", "App获取书籍详情")
|
||||
enforcer.AddPolicy("guest", "/chapter/app/list", "GET", "App获取章节列表")
|
||||
enforcer.AddPolicy("guest", "/chapter/app/detail", "GET", "App获取章节详情")
|
||||
enforcer.AddPolicy("guest", "/category", "GET", "获取分类列表")
|
||||
}
|
||||
|
||||
// user
|
||||
{
|
||||
// book
|
||||
enforcer.AddPolicy("user", "/book/shelf/add", "POST", "加入书架")
|
||||
enforcer.AddPolicy("user", "/book/shelf/remove", "POST", "移除书架")
|
||||
enforcer.AddPolicy("user", "/book/app/rate", "POST", "App用户评分")
|
||||
enforcer.AddPolicy("user", "/book/app/my-books", "GET", "获取我的书籍列表")
|
||||
// chapter
|
||||
enforcer.AddPolicy("user", "/chapter/app/purchase", "POST", "App购买章节")
|
||||
enforcer.AddPolicy("user", "/chapter/app/progress", "POST", "App上传阅读进度")
|
||||
// feedback
|
||||
enforcer.AddPolicy("user", "/feedback", "POST", "新增反馈")
|
||||
// user
|
||||
enforcer.AddPolicy("admin", "/user/info", "GET", "获取用户信息")
|
||||
enforcer.AddPolicy("user", "/user/info", "GET", "获取用户信息")
|
||||
enforcer.AddPolicy("user", "/user/delete", "POST", "删除用户")
|
||||
enforcer.AddPolicy("user", "/user/logout", "POST", "用户登出")
|
||||
// author follow/unfollow
|
||||
enforcer.AddPolicy("user", "/author/follow", "POST", "关注作者")
|
||||
enforcer.AddPolicy("user", "/author/unfollow", "POST", "取消关注作者")
|
||||
}
|
||||
// author
|
||||
{
|
||||
// book
|
||||
enforcer.AddPolicy("admin", "/book", "GET", "获取图书列表")
|
||||
enforcer.AddPolicy("author", "/book", "GET", "获取图书列表")
|
||||
enforcer.AddPolicy("author", "/book", "POST", "新增图书")
|
||||
enforcer.AddPolicy("author", "/book", "PUT", "编辑图书")
|
||||
enforcer.AddPolicy("author", "/book", "DELETE", "删除图书")
|
||||
// chapter
|
||||
|
||||
// category
|
||||
enforcer.AddPolicy("admin", "/category", "GET", "获取分类列表")
|
||||
enforcer.AddPolicy("author", "/chapter", "GET", "获取章节列表")
|
||||
enforcer.AddPolicy("author", "/chapter", "POST", "创建章节")
|
||||
enforcer.AddPolicy("author", "/chapter", "PUT", "更新章节")
|
||||
enforcer.AddPolicy("author", "/chapter", "DELETE", "删除章节")
|
||||
}
|
||||
|
||||
// admin
|
||||
// admin
|
||||
{
|
||||
|
||||
// book
|
||||
enforcer.AddPolicy("admin", "/book/set-featured", "POST", "设置书籍精选状态")
|
||||
enforcer.AddPolicy("admin", "/book/set-recommended", "POST", "设置书籍推荐状态")
|
||||
// author
|
||||
enforcer.AddPolicy("admin", "/author", "GET", "获取作者列表")
|
||||
enforcer.AddPolicy("admin", "/author", "POST", "创建作者")
|
||||
enforcer.AddPolicy("admin", "/author", "PUT", "更新作者")
|
||||
enforcer.AddPolicy("admin", "/author", "DELETE", "删除作者")
|
||||
// feedback
|
||||
enforcer.AddPolicy("admin", "/feedback", "GET", "获取反馈列表")
|
||||
// category
|
||||
@ -72,6 +99,7 @@ func init() {
|
||||
enforcer.AddPolicy("admin", "/category", "DELETE", "删除分类")
|
||||
// admin
|
||||
enforcer.AddPolicy("admin", "/admin/info", "GET", "获取管理员用户信息")
|
||||
enforcer.AddPolicy("admin", "/admin/editPass", "POST", "管理员修改密码")
|
||||
}
|
||||
instance = &myCasbin{Enforcer: enforcer}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user