|
|
@ -1,8 +1,10 @@ |
|
|
|
package com.epmet.service.impl; |
|
|
|
|
|
|
|
import com.epmet.common.token.constant.LoginConstant; |
|
|
|
import com.epmet.commons.tools.constant.NumConstant; |
|
|
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
|
|
|
import com.epmet.commons.tools.exception.RenException; |
|
|
|
import com.epmet.commons.tools.redis.RedisKeys; |
|
|
|
import com.epmet.commons.tools.security.dto.TokenDto; |
|
|
|
import com.epmet.commons.tools.utils.CpUserDetailRedis; |
|
|
|
import com.epmet.commons.tools.utils.DateUtils; |
|
|
@ -14,10 +16,7 @@ import com.epmet.dto.PaCustomerDTO; |
|
|
|
import com.epmet.dto.PaUserDTO; |
|
|
|
import com.epmet.dto.PaUserWechatDTO; |
|
|
|
import com.epmet.dto.form.*; |
|
|
|
import com.epmet.dto.result.CustomerUserResultDTO; |
|
|
|
import com.epmet.dto.result.SaveUserResultDTO; |
|
|
|
import com.epmet.dto.result.SendVerificationCodeResultDTO; |
|
|
|
import com.epmet.dto.result.UserTokenResultDTO; |
|
|
|
import com.epmet.dto.result.*; |
|
|
|
import com.epmet.feign.EpmetMessageOpenFeignClient; |
|
|
|
import com.epmet.feign.EpmetThirdFeignClient; |
|
|
|
import com.epmet.jwt.JwtTokenProperties; |
|
|
@ -33,8 +32,10 @@ import org.slf4j.Logger; |
|
|
|
import org.slf4j.LoggerFactory; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
/** |
|
|
@ -242,4 +243,35 @@ public class PublicUserLoginServiceImpl implements PublicUserLoginService { |
|
|
|
return userTokenResultDTO; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @param formDTO |
|
|
|
* @return |
|
|
|
* @Author sun |
|
|
|
* @Description 公众号-手机号注册 |
|
|
|
**/ |
|
|
|
@Override |
|
|
|
public UserTokenResultDTO register(RegisterFormDTO formDTO) { |
|
|
|
//1.调用epmet-third服务,完成信息注册
|
|
|
|
Result<RegisterResultDTO> result = epmetThirdFeignClient.register(formDTO); |
|
|
|
if (!result.success()) { |
|
|
|
logger.error("调用epmet_third服务初始化用户信息失败"); |
|
|
|
throw new RenException(result.getCode()); |
|
|
|
} |
|
|
|
RegisterResultDTO resultDTO = result.getData(); |
|
|
|
|
|
|
|
//2.直接生成一个新的token放入缓存中(不管缓存中是否存在旧的token,都重新生成)
|
|
|
|
//2-1.生成token
|
|
|
|
String token = this.generateGovWxmpToken(resultDTO.getUserId()); |
|
|
|
//2-2.token存入redis
|
|
|
|
String openid = resultDTO.getOpenId(); |
|
|
|
String unionId = (null == resultDTO.getUnionId() ? "" : resultDTO.getUnionId()); |
|
|
|
this.saveLatestGovTokenDto("", resultDTO.getUserId(), openid, unionId, token); |
|
|
|
|
|
|
|
//3.返回token
|
|
|
|
UserTokenResultDTO userTokenResultDTO = new UserTokenResultDTO(); |
|
|
|
userTokenResultDTO.setToken(token); |
|
|
|
return userTokenResultDTO; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|