App用户注册完自动登录

This commit is contained in:
2023-08-15 19:12:18 +08:00
parent c7050e9747
commit 422e7ef9d9
6 changed files with 44 additions and 33 deletions

View File

@@ -81,14 +81,15 @@ public class AppUserController extends BaseController {
* app用户注册完自动登录
*/
@OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.ADD)
@PostMapping("autoLogin")
@PostMapping("appAutoLogin")
@ApiOperation("app用户注册完自动登录")
@ApiImplicitParams({
@ApiImplicitParam(name = "phone", value = "手机号", required = true, paramType = "query"),
@ApiImplicitParam(name = "devCode", value = "设备码", required = true, paramType = "query")
})
public HttpResult<Object> autoLogin(@Param("phone") String phone,@Param("devCode") String devCode) {
String methodDescribe = getMethodDescribe("autoLogin");
@Deprecated
public HttpResult<Object> appAutoLogin(@Param("phone") String phone,@Param("devCode") String devCode) {
String methodDescribe = getMethodDescribe("appAutoLogin");
Object object = appUserService.autoLogin(phone,devCode);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, object, methodDescribe);
}

View File

@@ -9,12 +9,10 @@ import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.constant.PatternRegex;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.PubUtils;
import com.njcn.common.utils.sm.Sm4Utils;
import com.njcn.redis.pojo.enums.RedisKeyEnum;
@@ -31,21 +29,20 @@ import com.njcn.user.pojo.po.UserSet;
import com.njcn.user.pojo.po.app.AppInfoSet;
import com.njcn.user.pojo.po.app.AppSendMsg;
import com.njcn.user.service.*;
import com.njcn.web.utils.RestTemplateUtil;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.util.UriComponentsBuilder;
import java.net.URI;
import java.time.LocalDateTime;
import java.util.Collections;
import java.util.Objects;
import java.util.Random;
//import com.njcn.auth.api.AuthFeignClient;
/**
* 类的介绍:
*
@@ -71,6 +68,8 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
private final IUserRoleService userRoleService;
// private final AuthFeignClient authFeignClient;
@Override
@Transactional(rollbackFor = Exception.class)
public void setMessage(String phone, String devCode, String type) {
@@ -211,11 +210,16 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
@Override
public Object autoLogin(String phone, String devCode) {
//获取登录信息
Object object = autoLogin(phone);
if (Objects.isNull(object)){
throw new BusinessException(UserResponseEnum.LOGIN_ERROR);
}
return object;
// Object object = authFeignClient.autoLogin(phone).getData();
// if (Objects.isNull(object)){
// throw new BusinessException(UserResponseEnum.LOGIN_ERROR);
// }
// //修改设备码
// User user = this.lambdaQuery().eq(User::getPhone,phone).one();
// user.setDevCode(devCode);
// this.updateById(user);
// return object;
return null;
}
@Override
@@ -422,21 +426,4 @@ public class AppUserServiceImpl extends ServiceImpl<AppUserMapper, User> impleme
return user;
}
/**
* 用户注册完成后自动登录
* @param phone 手机号码
* @return
*/
public Object autoLogin(String phone) {
String userUrl = "http://127.0.0.1:10214/oauth/token";
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(userUrl)
.queryParam("grant_type", "sms_code")
.queryParam("client_id", "njcnapp")
.queryParam("client_secret", "njcnpqs")
.queryParam("phone", phone)
.queryParam("smsCode", "123456789");
URI uri = builder.build().encode().toUri();
return Objects.requireNonNull(RestTemplateUtil.post(uri, HttpResult.class).getBody()).getData();
}
}