package usecase import ( "context" "code.30cm.net/digimon/app-cloudep-permission-server/pkg/domain/permission" ) type RolePermissionUseCase interface { Get(ctx context.Context, roleID string) (permission.Permissions, error) // -> role 有哪些Permission Create(ctx context.Context, roleID string, permissions permission.Permissions) error Delete(ctx context.Context, roleID string, permissions permission.Permissions) error List(ctx context.Context, req ListQuery) (RoleResp, error) // GetByRoleUID(ctx context.Context, uid string) (permission.Permissions, error) // GetByUser(ctx context.Context, uid string) (UserPermission, error) } type UserPermission struct { RoleID string `json:"role_id"` Permissions permission.Permissions `json:"permissions"` } type UserRoleCountResp struct { Role UserCount int `json:"user_count"` } type RoleResp struct { Roles []Role Total int64 `json:"total"` }