ums_admin

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	REDIS_DATABASE          = configs.Get().Redis.Database
	REDIS_KEY_ADMIN         = configs.Get().Redis.Key.Admin
	REDIS_KEY_RESOURCE_LIST = configs.Get().Redis.Key.ResourceList
	REDIS_EXPIRE            = time.Duration(configs.Get().Redis.Expire.Common) * time.Second
)

Functions

This section is empty.

Types

type AdminUserDetails

type AdminUserDetails struct {
	UmsAdmin     *ums_admin.UmsAdmin
	ResourceList []ums_resource.UmsResource
}

func (*AdminUserDetails) GetAuthorities

func (au *AdminUserDetails) GetAuthorities() []string

func (*AdminUserDetails) GetPassword

func (au *AdminUserDetails) GetPassword() string

func (*AdminUserDetails) GetUsername

func (au *AdminUserDetails) GetUsername() string

func (*AdminUserDetails) IsAccountNonExpired

func (au *AdminUserDetails) IsAccountNonExpired() bool

func (*AdminUserDetails) IsAccountNonLocked

func (au *AdminUserDetails) IsAccountNonLocked() bool

func (*AdminUserDetails) IsCredentialsNonExpired

func (au *AdminUserDetails) IsCredentialsNonExpired() bool

func (*AdminUserDetails) IsEnabled

func (au *AdminUserDetails) IsEnabled() bool

type Service

type Service interface {

	/**
	 * 注册功能
	 */
	Register(ctx context.Context, param dto.UmsAdminParam) (*dto.UmsAdmin, error)

	/**
	 * 登录功能
	 * @param username 用户名
	 * @param password 密码
	 * @return 生成的JWT的token
	 */
	Login(ctx context.Context, username, password string) (string, error)

	/**
	 * 登出功能
	 * @param username 用户名
	 */
	Logout(ctx context.Context, username string)

	/**
	 * 刷新token的功能
	 * @param oldToken 旧的token
	 */
	RefreshToken(ctx context.Context, oldToken string) (string, error)

	/**
	 * 根据用户名或昵称分页查询用户
	 */
	List(ctx context.Context, keyword string, pageSize, pageNum int) ([]dto.UmsAdmin, int64, error)

	/**
	 * 修改指定用户信息
	 */
	Update(ctx context.Context, id int64, admin dto.UmsAdmin) (int64, error)

	/**
	 * 修改指定用户的状态
	 */
	UpdateStatus(ctx context.Context, id int64, status int32) (int64, error)

	/**
	* 删除指定用户
	 */
	Delete(ctx context.Context, id int64) (int64, error)

	/**
	* 修改用户角色关系
	 */
	UpdateRole(ctx context.Context, adminId int64, roleIds []int64) (int64, error)

	/**
	* 获取用户对应角色
	 */
	GetRoleList(ctx context.Context, adminId int64) ([]dto.UmsRole, error)

	/**
	* 修改密码
	 */
	UpdatePassword(ctx context.Context, username, oldPassword, newPassword string) (int64, error)

	/**
	 * 根据用户名获取后台管理员
	 */
	GetAdminByUsername(ctx context.Context, username string) (*ums_admin.UmsAdmin, error)

	/**
	 * 根据用户id获取用户
	 */
	GetItem(ctx context.Context, id int64) (*dto.UmsAdmin, error)

	/**
	 * 获取用户信息
	 */
	LoadUserByUsername(ctx context.Context, username string) (*AdminUserDetails, error)

	/**
	 * 获取指定用户的可访问资源
	 */
	GetResourceList(ctx context.Context, adminId int64) ([]ums_resource.UmsResource, error)

	/**
	 * 添加登录记录
	 */
	InsertLoginLog(ctx context.Context, username, ip string)
	// contains filtered or unexported methods
}

func New

func New() Service

type UmsAdminCacheService

type UmsAdminCacheService struct{}

func NewCacheService

func NewCacheService() *UmsAdminCacheService

func (*UmsAdminCacheService) DelAdmin

func (s *UmsAdminCacheService) DelAdmin(ctx context.Context, adminId int64)

func (*UmsAdminCacheService) DelResourceList

func (s *UmsAdminCacheService) DelResourceList(ctx context.Context, adminId int64)

func (*UmsAdminCacheService) DelResourceListByResource

func (s *UmsAdminCacheService) DelResourceListByResource(ctx context.Context, resourceId int64)

func (*UmsAdminCacheService) DelResourceListByRole

func (s *UmsAdminCacheService) DelResourceListByRole(ctx context.Context, roleId int64)

func (*UmsAdminCacheService) DelResourceListByRoleIds

func (s *UmsAdminCacheService) DelResourceListByRoleIds(ctx context.Context, roleIds []int64)

func (*UmsAdminCacheService) GetAdmin

func (s *UmsAdminCacheService) GetAdmin(ctx context.Context, username string) *ums_admin.UmsAdmin

func (*UmsAdminCacheService) GetResourceList

func (s *UmsAdminCacheService) GetResourceList(ctx context.Context, adminId int64) []ums_resource.UmsResource

func (*UmsAdminCacheService) SetAdmin

func (s *UmsAdminCacheService) SetAdmin(ctx context.Context, admin *ums_admin.UmsAdmin)

func (*UmsAdminCacheService) SetResourceList

func (s *UmsAdminCacheService) SetResourceList(ctx context.Context,
	adminId int64, resourceList []ums_resource.UmsResource)

type UmsAdminCacheServiceI

type UmsAdminCacheServiceI interface {
	/**
	 * 删除后台用户缓存
	 */
	DelAdmin(ctx context.Context, adminId int64)

	/**
	 * 删除后台用户资源列表缓存
	 */
	DelResourceList(ctx context.Context, adminId int64)

	/**
	 * 当角色相关资源信息改变时删除相关后台用户缓存
	 */
	DelResourceListByRole(ctx context.Context, roleId int64)

	/**
	 * 当角色相关资源信息改变时删除相关后台用户缓存
	 */
	DelResourceListByRoleIds(ctx context.Context, roleIds []int64)

	/**
	 * 当资源信息改变时,删除资源项目后台用户缓存
	 */
	DelResourceListByResource(ctx context.Context, resourceId int64)

	/**
	 * 获取缓存后台用户信息
	 */
	GetAdmin(ctx context.Context, username string) *ums_admin.UmsAdmin

	/**
	 * 设置缓存后台用户信息
	 */
	SetAdmin(ctx context.Context, admin *ums_admin.UmsAdmin)

	/**
	 * 获取缓存后台用户资源列表
	 */
	GetResourceList(ctx context.Context, adminId int64) []ums_resource.UmsResource

	/**
	 * 设置缓存后台用户资源列表
	 */
	SetResourceList(ctx context.Context, adminId int64, resourceList []ums_resource.UmsResource)
}

后台用户缓存管理Service

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL