24 lines
393 B
Go
24 lines
393 B
Go
package contracts
|
|
|
|
type User interface {
|
|
// 用户ID
|
|
ID() int
|
|
// 用户UUID
|
|
Uuid() string
|
|
// 用户名称
|
|
Username() string
|
|
// 用户昵称
|
|
Nickname() string
|
|
// 用户明细
|
|
GetUserInfo() any
|
|
// 用户权限
|
|
Roles() []string
|
|
// 用户权限检查
|
|
HasUserRoles(roles ...string) bool
|
|
// 平台
|
|
Platform() string
|
|
}
|
|
|
|
// 用户
|
|
type GetUser func(uuid, platform string) (User, bool)
|