|
@@ -0,0 +1,145 @@
|
|
|
+//package cn.iocoder.yudao.module.system.service.register;
|
|
|
+//
|
|
|
+//import cn.hutool.core.util.ObjectUtil;
|
|
|
+//import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
|
|
|
+//import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils;
|
|
|
+//import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
|
|
|
+//import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO;
|
|
|
+//import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi;
|
|
|
+//import cn.iocoder.yudao.module.system.controller.admin.auth.vo.AuthLoginRespVO;
|
|
|
+//import cn.iocoder.yudao.module.system.controller.admin.register.vo.RegisterSendSmsCodeReqVO;
|
|
|
+//import cn.iocoder.yudao.module.system.controller.admin.register.vo.RegisterSmsSendReqVO;
|
|
|
+//import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.UserSaveReqVO;
|
|
|
+//import cn.iocoder.yudao.module.system.convert.auth.AuthConvert;
|
|
|
+//import cn.iocoder.yudao.module.system.convert.register.RegisterConvert;
|
|
|
+//import cn.iocoder.yudao.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
|
|
|
+//import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
|
|
+//import cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum;
|
|
|
+//import cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum;
|
|
|
+//import cn.iocoder.yudao.module.system.enums.oauth2.OAuth2ClientConstants;
|
|
|
+//import cn.iocoder.yudao.module.system.enums.sms.SmsSceneEnum;
|
|
|
+//import cn.iocoder.yudao.module.system.service.logger.LoginLogService;
|
|
|
+//import cn.iocoder.yudao.module.system.service.member.MemberService;
|
|
|
+//import cn.iocoder.yudao.module.system.service.oauth2.OAuth2TokenService;
|
|
|
+//import cn.iocoder.yudao.module.system.service.social.SocialUserService;
|
|
|
+//import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
|
|
+//import com.xingyuv.captcha.service.CaptchaService;
|
|
|
+//import lombok.extern.slf4j.Slf4j;
|
|
|
+//import org.springframework.data.redis.core.RedisTemplate;
|
|
|
+//import org.springframework.stereotype.Service;
|
|
|
+//
|
|
|
+//import javax.annotation.Resource;
|
|
|
+//import javax.validation.Validator;
|
|
|
+//
|
|
|
+//import java.util.Objects;
|
|
|
+//
|
|
|
+//import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
|
+//import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getClientIP;
|
|
|
+//import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.USER_NOT_EXISTS;
|
|
|
+//
|
|
|
+///**
|
|
|
+// * Register Service 实现类
|
|
|
+// *
|
|
|
+// * @author 芋道源码
|
|
|
+// */
|
|
|
+//@Service
|
|
|
+//@Slf4j
|
|
|
+//public class RegisterServiceImpl implements RegisterService {
|
|
|
+//
|
|
|
+// @Resource
|
|
|
+// private AdminUserService userService;
|
|
|
+// @Resource
|
|
|
+// private LoginLogService loginLogService;
|
|
|
+// @Resource
|
|
|
+// private MemberService memberService;
|
|
|
+// @Resource
|
|
|
+// private SmsCodeApi smsCodeApi;
|
|
|
+// @Resource
|
|
|
+// private OAuth2TokenService oauth2TokenService;
|
|
|
+//
|
|
|
+// @Override
|
|
|
+// public void sendSmsCode(RegisterSmsSendReqVO reqVO) {
|
|
|
+// // 发送验证码
|
|
|
+// smsCodeApi.sendSmsCode(RegisterConvert.INSTANCE.convert(reqVO).setCreateIp(getClientIP()));
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Override
|
|
|
+// public AuthLoginRespVO smsRegister(RegisterSendSmsCodeReqVO reqVO) {
|
|
|
+// // 校验验证码
|
|
|
+// smsCodeApi.useSmsCode(RegisterConvert.INSTANCE.convert(reqVO, SmsSceneEnum.MEMBER_REGISTER.getScene(), getClientIP()));
|
|
|
+// // 创建用户信息
|
|
|
+// UserSaveReqVO userSaveReqVO = new UserSaveReqVO();
|
|
|
+// userSaveReqVO.setUsername(reqVO.getMobile());
|
|
|
+// userSaveReqVO.setNickname(reqVO.getMobile());
|
|
|
+// userSaveReqVO.setMobile(reqVO.getMobile());
|
|
|
+// userSaveReqVO.setPassword(reqVO.getMobile());
|
|
|
+// Long id = userService.codeRegister(userSaveReqVO);
|
|
|
+// // 获得用户信息
|
|
|
+// AdminUserDO user = userService.getUserByMobile(reqVO.getMobile());
|
|
|
+// if (user == null) {
|
|
|
+// throw exception(USER_NOT_EXISTS);
|
|
|
+// }
|
|
|
+//
|
|
|
+// // 创建 Token 令牌,记录登录日志
|
|
|
+// return createTokenAfterLoginSuccess(user.getId(), reqVO.getMobile(), LoginLogTypeEnum.LOGIN_MOBILE);
|
|
|
+// }
|
|
|
+//
|
|
|
+// private void createLogoutLog(Long userId, Integer userType, Integer logType) {
|
|
|
+// LoginLogCreateReqDTO reqDTO = new LoginLogCreateReqDTO();
|
|
|
+// reqDTO.setLogType(logType);
|
|
|
+// reqDTO.setTraceId(TracerUtils.getTraceId());
|
|
|
+// reqDTO.setUserId(userId);
|
|
|
+// reqDTO.setUserType(userType);
|
|
|
+// if (ObjectUtil.equal(getUserType().getValue(), userType)) {
|
|
|
+// reqDTO.setUsername(getUsername(userId));
|
|
|
+// } else {
|
|
|
+// reqDTO.setUsername(memberService.getMemberUserMobile(userId));
|
|
|
+// }
|
|
|
+// reqDTO.setUserAgent(ServletUtils.getUserAgent());
|
|
|
+// reqDTO.setUserIp(ServletUtils.getClientIP());
|
|
|
+// reqDTO.setResult(LoginResultEnum.SUCCESS.getResult());
|
|
|
+// loginLogService.createLoginLog(reqDTO);
|
|
|
+// }
|
|
|
+//
|
|
|
+// private String getUsername(Long userId) {
|
|
|
+// if (userId == null) {
|
|
|
+// return null;
|
|
|
+// }
|
|
|
+// AdminUserDO user = userService.getUser(userId);
|
|
|
+// return user != null ? user.getUsername() : null;
|
|
|
+// }
|
|
|
+//
|
|
|
+// private UserTypeEnum getUserType() {
|
|
|
+// return UserTypeEnum.ADMIN;
|
|
|
+// }
|
|
|
+//
|
|
|
+// private AuthLoginRespVO createTokenAfterLoginSuccess(Long userId, String username, LoginLogTypeEnum logType) {
|
|
|
+// // 插入登陆日志
|
|
|
+// createLoginLog(userId, username, logType, LoginResultEnum.SUCCESS);
|
|
|
+// // 创建访问令牌
|
|
|
+// OAuth2AccessTokenDO accessTokenDO = oauth2TokenService.createAccessToken(userId, getUserType().getValue(),
|
|
|
+// OAuth2ClientConstants.CLIENT_ID_DEFAULT, null);
|
|
|
+// // 构建返回结果
|
|
|
+// return AuthConvert.INSTANCE.convert(accessTokenDO);
|
|
|
+// }
|
|
|
+//
|
|
|
+// private void createLoginLog(Long userId, String username,
|
|
|
+// LoginLogTypeEnum logTypeEnum, LoginResultEnum loginResult) {
|
|
|
+// // 插入登录日志
|
|
|
+// LoginLogCreateReqDTO reqDTO = new LoginLogCreateReqDTO();
|
|
|
+// reqDTO.setLogType(logTypeEnum.getType());
|
|
|
+// reqDTO.setTraceId(TracerUtils.getTraceId());
|
|
|
+// reqDTO.setUserId(userId);
|
|
|
+// reqDTO.setUserType(getUserType().getValue());
|
|
|
+// reqDTO.setUsername(username);
|
|
|
+// reqDTO.setUserAgent(ServletUtils.getUserAgent());
|
|
|
+// reqDTO.setUserIp(ServletUtils.getClientIP());
|
|
|
+// reqDTO.setResult(loginResult.getResult());
|
|
|
+// loginLogService.createLoginLog(reqDTO);
|
|
|
+// // 更新最后登录时间
|
|
|
+// if (userId != null && Objects.equals(LoginResultEnum.SUCCESS.getResult(), loginResult.getResult())) {
|
|
|
+// userService.updateUserLogin(userId, ServletUtils.getClientIP());
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+//}
|