Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApiDAO ¶
type ApiDAO interface {
CreateApi(ctx context.Context, api *model.Api) error
GetApiById(ctx context.Context, id int) (*model.Api, error)
UpdateApi(ctx context.Context, api *model.Api) error
DeleteApi(ctx context.Context, id int) error
ListApis(ctx context.Context, page, size int, search string, isPublic int, method int) ([]*model.Api, int64, error)
GetApiStatistics(ctx context.Context) (*model.ApiStatistics, error)
}
type AuditDAO ¶
type AuditDAO interface {
CreateAuditLog(ctx context.Context, log *model.AuditLog) error
BatchCreateAuditLogs(ctx context.Context, logs []model.AuditLog) error
GetAuditLogByID(ctx context.Context, id int) (*model.AuditLog, error)
ListAuditLogs(ctx context.Context, req *model.ListAuditLogsRequest) (int64, []model.AuditLog, error)
SearchAuditLogs(ctx context.Context, req *model.SearchAuditLogsRequest) (int64, []model.AuditLog, error)
GetAuditStatistics(ctx context.Context) (*model.AuditStatistics, error)
DeleteAuditLog(ctx context.Context, id int) error
BatchDeleteAuditLogs(ctx context.Context, ids []int) error
ArchiveAuditLogs(ctx context.Context, startTime, endTime int64) error
}
func NewAuditDAO ¶
type RoleDAO ¶
type RoleDAO interface {
// 角色管理
ListRoles(ctx context.Context, req *model.ListRolesRequest) ([]*model.Role, int64, error)
CreateRole(ctx context.Context, role *model.Role, apiIds []int) (*model.Role, error)
UpdateRole(ctx context.Context, role *model.Role, apiIds []int) (*model.Role, error)
DeleteRole(ctx context.Context, id int) error
GetRoleByID(ctx context.Context, id int) (*model.Role, error)
CheckRoleExists(ctx context.Context, name, code string, excludeID int) (bool, error)
CheckRoleHasUsers(ctx context.Context, roleID int) (bool, error)
// 角色权限管理
AssignApisToRole(ctx context.Context, roleID int, apiIds []int) error
RevokeApisFromRole(ctx context.Context, roleID int, apiIds []int) error
GetRoleApis(ctx context.Context, roleID int) ([]*model.Api, error)
// 用户角色管理
AssignRolesToUser(ctx context.Context, userID int, roleIds []int, grantedBy int) error
RevokeRolesFromUser(ctx context.Context, userID int, roleIds []int) error
GetRoleUsers(ctx context.Context, roleID int) ([]*model.User, error)
GetUserRoles(ctx context.Context, userID int) ([]*model.Role, error)
// 权限检查
CheckUserPermission(ctx context.Context, userID int, method, path string) (bool, error)
GetUserPermissions(ctx context.Context, userID int) ([]*model.Api, error)
}
func NewRoleDAO ¶
Click to show internal directories.
Click to hide internal directories.