| | |
| | | import com.ruoyi.user.domain.AccountUser; |
| | | import com.ruoyi.user.domain.vo.AccountUserDetailVo; |
| | | import com.ruoyi.user.domain.vo.MemberOptionVo; |
| | | import com.ruoyi.user.domain.vo.AccountInviteeVo; |
| | | import com.ruoyi.user.domain.vo.AccountReferrerVo; |
| | | import com.ruoyi.user.domain.vo.AccountUserInfoVo; |
| | | import com.ruoyi.user.domain.vo.InviteCodeVo; |
| | | |
| | | /** |
| | | * 会员用户 业务层 |
| | |
| | | * 根据手机号查询会员 |
| | | */ |
| | | public AccountUser selectAccountUserByPhone(String phone); |
| | | |
| | | /** |
| | | * 根据用户名查询会员(服务商端账号密码登录使用) |
| | | * |
| | | * @param userName 用户名 |
| | | * @return 会员对象(不存在时返回 null) |
| | | */ |
| | | public AccountUser selectAccountUserByUsername(String userName); |
| | | |
| | | /** |
| | | * 查询会员列表 |
| | |
| | | public int deleteAccountAddressByIds(Long[] ids); |
| | | |
| | | /** |
| | | * C端:查询本人收货地址列表(默认地址在前,不分页) |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @return 地址列表(无地址返回空集合) |
| | | */ |
| | | public List<AccountAddress> getAddressList(Long userId); |
| | | |
| | | /** |
| | | * C端:查询单条收货地址(编辑页回填用) |
| | | * |
| | | * 校验归属:地址不存在或不属于该会员时抛业务异常。 |
| | | * |
| | | * @param userId 会员ID(取自登录态) |
| | | * @param id 地址ID |
| | | * @return 地址对象 |
| | | */ |
| | | public AccountAddress getAddressDetail(Long userId, Long id); |
| | | |
| | | /** |
| | | * C端:新增本人收货地址 |
| | | * |
| | | * 事务内处理「首条地址自动默认」与「每会员至多一条默认」约束。 |
| | | * |
| | | * @param accountAddress 地址入参(userId 由服务端注入) |
| | | * @return 影响行数 |
| | | */ |
| | | public int insertMyAddress(AccountAddress accountAddress); |
| | | |
| | | /** |
| | | * C端:删除本人收货地址(校验归属后逻辑删除) |
| | | * |
| | | * @param userId 会员ID(取自登录态) |
| | | * @param id 地址ID |
| | | * @return 影响行数 |
| | | */ |
| | | public int deleteMyAddress(Long userId, Long id); |
| | | |
| | | /** |
| | | * C端会员注册 |
| | | * |
| | | * 校验手机号未注册、推荐码有效后,生成唯一推荐码并落库(无密码)。 |
| | |
| | | public AccountUser registerMember(String phone, String referralCode); |
| | | |
| | | /** |
| | | * 按手机号重置会员密码(忘记密码) |
| | | * |
| | | * 由认证服务完成身份校验(手机号 + 短信验证码)后调用;本方法内 BCrypt 加密新密码, |
| | | * 且只更新 password 一列。手机号不存在或账号已删除时抛业务异常。 |
| | | * |
| | | * @param phone 手机号(账号标识) |
| | | * @param rawPassword 新密码明文(落库前加密) |
| | | */ |
| | | public void resetPasswordByPhone(String phone, String rawPassword); |
| | | |
| | | /** |
| | | * 查询C端会员个人中心信息(昵称 / 头像 / 会员等级 / 收益汇总) |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @return 会员信息展示对象;会员不存在时抛业务异常 |
| | | */ |
| | | public AccountUserInfoVo getAccountUserInfo(Long userId); |
| | | |
| | | /** |
| | | * 更新C端会员头像 |
| | | * |
| | | * 头像文件由小程序直传文件服务后,将返回的 url 写回 account_user.avatar; |
| | | * 只更新 avatar 一列,不触碰其它资料。 |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @param avatarUrl 头像地址(来自文件服务上传结果) |
| | | */ |
| | | public void updateAvatar(Long userId, String avatarUrl); |
| | | |
| | | /** |
| | | * 查询本人邀请码(我的邀请页「邀请码」Tab) |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @return 邀请码展示对象;会员不存在时抛业务异常 |
| | | */ |
| | | public InviteCodeVo getInviteCode(Long userId); |
| | | |
| | | /** |
| | | * 查询本人直接下级(被邀请人)列表(我的邀请页「我邀请的」Tab) |
| | | * |
| | | * 按绑定时间倒序(最新在前);手机号脱敏下发;配合 Controller 的分页生效。 |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @return 被邀请人列表(无下级时返回空集合) |
| | | */ |
| | | public List<AccountInviteeVo> getInvitees(Long userId); |
| | | |
| | | /** |
| | | * 查询本人上级(推荐人)信息(我的邀请页「邀请我的」Tab) |
| | | * |
| | | * @param userId 会员ID(取自登录态,非前端传入) |
| | | * @return 上级展示对象;无上级时返回各字段为 null 的对象(前端渲染空态) |
| | | */ |
| | | public AccountReferrerVo getReferrer(Long userId); |
| | | } |