You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.2 KiB
Go

3 weeks ago
package user
import (
"cls-server/pkg/util/page"
"xorm.io/builder"
)
// UserRepository 用户仓储接口
type UserRepository interface {
// Save 保存用户包含Profile
Save(user *User) error
//SetPassword 设置密码
SetPassword(phone string, ePhone string, pwd string) error
// FindByUsername 根据用户名查找用户
FindByUsername(username string) (*User, error)
UpdateUserInfo(user *User) error
//UpdateUserGiftCount 更新赠送次数
UpdateUserGiftCount(id uint64, count int8) error
//GetUserGiftCount 获取赠送次数
GetUserGiftCount(ePhone string) (int, error)
// FindById 根据ID查找用户
FindByID(id uint64) (*User, error)
// FindByPhone 根据手机号查找用户
FindByPhone(phone string) (*User, error)
// FindAll 查询用户列表
FindAll(page *page.Page, conds []builder.Cond) error
// Delete 删除用户包含Profile
Delete(id uint64) error
// UpdateLastLogin 更新最后登录信息
UpdateLastLogin(id uint64, ip string) error
//锁定状态
IsLocked(status int8) bool
}
type UserGiftLogAggregateRepository interface {
GetUserGiftLogAggregate(userId uint64) (*UserGiftLogAggregate, error)
SaveUserGiftLogAggregate(aggregate *UserGiftLogAggregate) error
}