Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 39s
refactor(service): 修改banner和guild删除逻辑为软删除 fix(service): 修复删除操作使用软删除而非物理删除 build: 添加SQLite测试仓库实现 docs: 新增奖励管理字段拆分和批量抽奖UI改造文档 ci: 更新CI忽略文件 style: 清理无用资源文件
39 lines
940 B
Go
39 lines
940 B
Go
package interceptor
|
|
|
|
import (
|
|
"bindbox-game/internal/pkg/core"
|
|
"bindbox-game/internal/pkg/logger"
|
|
"bindbox-game/internal/proposal"
|
|
"bindbox-game/internal/repository/mysql"
|
|
)
|
|
|
|
var _ Interceptor = (*interceptor)(nil)
|
|
|
|
type Interceptor interface {
|
|
// AdminTokenAuthVerify 管理端授权验证
|
|
AdminTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError)
|
|
|
|
// AppTokenAuthVerify APP端授权验证
|
|
AppTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError)
|
|
|
|
RequireAdminRole() core.HandlerFunc
|
|
RequireAdminAction(mark string) core.HandlerFunc
|
|
|
|
// i 为了避免被其他包实现
|
|
i()
|
|
}
|
|
|
|
type interceptor struct {
|
|
logger logger.CustomLogger
|
|
db mysql.Repo
|
|
}
|
|
|
|
func New(logger logger.CustomLogger, db mysql.Repo) Interceptor {
|
|
return &interceptor{
|
|
logger: logger,
|
|
db: db,
|
|
}
|
|
}
|
|
|
|
func (i *interceptor) i() {}
|