| | |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.system.api.domain.AccountMember; |
| | | import com.ruoyi.system.api.model.AccountRegisterRequest; |
| | | import com.ruoyi.system.api.model.AccountResetPasswordRequest; |
| | | import com.ruoyi.user.domain.AccountUser; |
| | | import com.ruoyi.user.service.IAccountUserService; |
| | | |
| | |
| | | } |
| | | |
| | | /** |
| | | * 按用户名查询会员(服务商端账号密码登录使用) |
| | | * |
| | | * 返回结果含 password 密文与 providerFlag,供认证服务校验密码与服务商身份。 |
| | | * |
| | | * @param userName 用户名 |
| | | * @return 会员信息(不存在时 data 为空) |
| | | */ |
| | | @InnerAuth |
| | | @GetMapping("/info/username/{userName}") |
| | | public R<AccountMember> infoByUsername(@PathVariable("userName") String userName) |
| | | { |
| | | AccountUser accountUser = accountUserService.selectAccountUserByUsername(userName); |
| | | if (StringUtils.isNull(accountUser)) |
| | | { |
| | | return R.ok(); |
| | | } |
| | | return R.ok(toAccountMember(accountUser)); |
| | | } |
| | | |
| | | /** |
| | | * 注册C端会员 |
| | | * |
| | | * @param request 注册请求(手机号、推荐码) |
| | |
| | | } |
| | | |
| | | /** |
| | | * 重置C端会员密码(忘记密码) |
| | | * |
| | | * 认证服务完成手机号、账号状态与验证码校验后调用;此处 BCrypt 加密新密码并只更新 password 一列。 |
| | | * |
| | | * @param request 重置请求(手机号、新密码) |
| | | * @return 处理结果 |
| | | */ |
| | | @InnerAuth |
| | | @PostMapping("/password/reset") |
| | | public R<Boolean> resetPassword(@Validated @RequestBody AccountResetPasswordRequest request) |
| | | { |
| | | accountUserService.resetPasswordByPhone(request.getPhone(), request.getPassword()); |
| | | return R.ok(Boolean.TRUE); |
| | | } |
| | | |
| | | /** |
| | | * 会员实体转换为跨服务契约对象 |
| | | * |
| | | * 一并回传 password 密文与 providerFlag:前者供认证服务核对密码(沿用 RuoYi |
| | | * 登录时下发密文、由 auth 侧 matchesPassword 的范式),后者供其判定服务商身份。 |
| | | * 该对象仅经 @InnerAuth 内部接口流转,不对 C 端下发。 |
| | | */ |
| | | private AccountMember toAccountMember(AccountUser accountUser) |
| | | { |
| | |
| | | member.setMyReferralCode(accountUser.getMyReferralCode()); |
| | | member.setReferrerId(accountUser.getReferrerId()); |
| | | member.setStatus(accountUser.getStatus()); |
| | | member.setProviderFlag(accountUser.getProviderFlag()); |
| | | member.setPassword(accountUser.getPassword()); |
| | | return member; |
| | | } |
| | | } |