|
|
|
@ -56,6 +56,42 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us |
|
|
|
if (Objects.isNull(user)) { |
|
|
|
throw new GlobalException("用户不存在"); |
|
|
|
} |
|
|
|
if(user.getIsCustomer() == 2){ |
|
|
|
throw new GlobalException("用户不存在"); |
|
|
|
} |
|
|
|
if (user.getIsBanned()) { |
|
|
|
String tip = String.format("您的账号因'%s'已被管理员封禁,请联系客服!",user.getReason()); |
|
|
|
throw new GlobalException(tip); |
|
|
|
} |
|
|
|
if (!passwordEncoder.matches(dto.getPassword(), user.getPassword())) { |
|
|
|
throw new GlobalException(ResultCode.PASSWOR_ERROR); |
|
|
|
} |
|
|
|
// 生成token
|
|
|
|
UserSession session = BeanUtils.copyProperties(user, UserSession.class); |
|
|
|
session.setUserId(user.getId()); |
|
|
|
session.setTerminal(dto.getTerminal()); |
|
|
|
String strJson = JSON.toJSONString(session); |
|
|
|
String accessToken = JwtUtil.sign(user.getId(), strJson, jwtProperties.getAccessTokenExpireIn(), |
|
|
|
jwtProperties.getAccessTokenSecret()); |
|
|
|
String refreshToken = JwtUtil.sign(user.getId(), strJson, jwtProperties.getRefreshTokenExpireIn(), |
|
|
|
jwtProperties.getRefreshTokenSecret()); |
|
|
|
LoginVO vo = new LoginVO(); |
|
|
|
vo.setAccessToken(accessToken); |
|
|
|
vo.setAccessTokenExpiresIn(jwtProperties.getAccessTokenExpireIn()); |
|
|
|
vo.setRefreshToken(refreshToken); |
|
|
|
vo.setRefreshTokenExpiresIn(jwtProperties.getRefreshTokenExpireIn()); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public LoginVO loginCustom(LoginDTO dto) { |
|
|
|
User user = this.findUserByUserName(dto.getUserName()); |
|
|
|
if (Objects.isNull(user)) { |
|
|
|
throw new GlobalException("用户不存在"); |
|
|
|
} |
|
|
|
if(user.getIsCustomer() == 1){ |
|
|
|
throw new GlobalException("用户不存在"); |
|
|
|
} |
|
|
|
if (user.getIsBanned()) { |
|
|
|
String tip = String.format("您的账号因'%s'已被管理员封禁,请联系客服!",user.getReason()); |
|
|
|
throw new GlobalException(tip); |
|
|
|
@ -126,6 +162,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us |
|
|
|
} |
|
|
|
user = BeanUtils.copyProperties(dto, User.class); |
|
|
|
user.setPassword(passwordEncoder.encode(user.getPassword())); |
|
|
|
user.setIsCustomer(1); |
|
|
|
this.save(user); |
|
|
|
log.info("注册用户,用户id:{},用户名:{},昵称:{}", user.getId(), dto.getUserName(), dto.getNickName()); |
|
|
|
} |
|
|
|
|