feat(auth): add Casbin RBAC and user activity tracking
Integrate Casbin for role-based access control with admin routes for role management. Add user activity logging service to track login and refresh events. Refactor audit service to use AI-based content moderation.
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
package wire
|
||||
|
||||
import (
|
||||
"carrot_bbs/internal/cache"
|
||||
"carrot_bbs/internal/repository"
|
||||
|
||||
"github.com/google/wire"
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
// RepositorySet Repository 层 Provider Set
|
||||
@@ -20,8 +22,14 @@ var RepositorySet = wire.NewSet(
|
||||
repository.NewStickerRepository,
|
||||
repository.NewVoteRepository,
|
||||
repository.NewScheduleRepository,
|
||||
ProvideUserActivityRepository,
|
||||
)
|
||||
|
||||
// ProvideUserActivityRepository 提供用户活跃数据仓储
|
||||
func ProvideUserActivityRepository(db *gorm.DB, cache cache.Cache) *repository.UserActivityRepository {
|
||||
return repository.NewUserActivityRepository(db, cache)
|
||||
}
|
||||
|
||||
// Note: 以下 Repository 返回接口类型而非指针,需要单独处理
|
||||
// - ScheduleRepository (repository.ScheduleRepository)
|
||||
// - StickerRepository (repository.StickerRepository)
|
||||
|
||||
Reference in New Issue
Block a user