- 新增站长/超级管理员/管理员/板块管理员四级角色体系 - 实现实时权限快照加载与细粒度权限校验 - 新增内容审核队列与前后端页面 - 重构用户权限管理与站点管理逻辑 - 新增评论/帖子审核状态与通知推送 - 优化前端权限控制与角色徽章展示 - 修正数据库迁移与默认值问题
23 lines
594 B
Go
23 lines
594 B
Go
package handler
|
||
|
||
import (
|
||
"github.com/freefire/jiang13-bbs/service"
|
||
)
|
||
|
||
// loadActor 立即加载用户的实时权限快照;失败返回 nil(业务层按无权限处理)
|
||
func (h *Handlers) loadActor(userID uint) *service.Actor {
|
||
actor, err := h.Auth.LoadActor(userID)
|
||
if err != nil {
|
||
return nil
|
||
}
|
||
return actor
|
||
}
|
||
|
||
// actorLoader 返回懒加载回调:仅当业务层确实需要实时权限快照
|
||
// (访问待审内容等场景)时才查 DB
|
||
func (h *Handlers) actorLoader(userID uint) func() *service.Actor {
|
||
return func() *service.Actor {
|
||
return h.loadActor(userID)
|
||
}
|
||
}
|