fix(auth): 解决非手机号注册用户查询异常及自动登录接口配置问题

- 在AppInfoSetController中添加空值检查,抛出业务异常提示非手机号注册用户需联系管理员
- 修改AuthController中自动登录接口为POST方法并更新相关参数配置
- 更新用户权限类型参数验证范围从0-2扩展到0-3以支持更多权限类型
This commit is contained in:
xy
2026-06-26 15:22:56 +08:00
parent e2e7669d47
commit 709262c2b4
3 changed files with 12 additions and 9 deletions

View File

@@ -216,20 +216,18 @@ public class AuthController extends BaseController {
*/ */
@OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.AUTHENTICATE) @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.AUTHENTICATE)
@ApiOperation("自动登录") @ApiOperation("自动登录")
@GetMapping("/autoLogin") @PostMapping("/autoLogin")
@ApiImplicitParam(name = "phone", value = "手机号", required = true, paramType = "query") @ApiImplicitParam(name = "phone", value = "手机号", required = true, paramType = "query")
@ApiIgnore @ApiIgnore
public HttpResult<Object> autoLogin(@RequestParam String phone) { public HttpResult<Object> autoLogin(@RequestParam String phone) {
String methodDescribe = getMethodDescribe("autoLogin"); String methodDescribe = getMethodDescribe("autoLogin");
String userUrl = "http://127.0.0.1:10214/oauth/token"; String userUrl = "http://127.0.0.1:20214/oauth/token";
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(userUrl) UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(userUrl)
.queryParam("grant_type", SecurityConstants.GRANT_AUTHORIZATION_CODE) .queryParam("grant_type", "sms_code")
.queryParam("client_id", "njcn") .queryParam("client_id", "njcnapp")
.queryParam("client_secret", "njcnpqs") .queryParam("client_secret", "njcnpqs")
.queryParam("username", "%2FPY4%2FD07ExoKDUg6yCi2cA%3D%3D") .queryParam("phone", phone)
.queryParam("imageCode", "verifyCode") .queryParam("smsCode", "123456789");
.queryParam("verifyCode", "0");
URI uri = builder.build().encode().toUri(); URI uri = builder.build().encode().toUri();
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, Objects.requireNonNull(RestTemplateUtil.post(uri, HttpResult.class).getBody()).getData(), methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, Objects.requireNonNull(RestTemplateUtil.post(uri, HttpResult.class).getBody()).getData(), methodDescribe);
} }

View File

@@ -62,7 +62,7 @@ public class UserParam {
@ApiModelProperty("用户权限类型") @ApiModelProperty("用户权限类型")
@NotNull(message = UserValidMessage.CASUAL_USER_NOT_BLANK) @NotNull(message = UserValidMessage.CASUAL_USER_NOT_BLANK)
@Range(min = 0, max = 2, message = UserValidMessage.PARAM_FORMAT_ERROR) @Range(min = 0, max = 3, message = UserValidMessage.PARAM_FORMAT_ERROR)
private Integer type; private Integer type;
@ApiModelProperty("短信通知") @ApiModelProperty("短信通知")

View File

@@ -4,6 +4,7 @@ package com.njcn.user.controller.app;
import com.njcn.common.pojo.annotation.OperateInfo; import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum; import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.HttpResultUtil;
import com.njcn.user.pojo.param.AppInfoSetParam; import com.njcn.user.pojo.param.AppInfoSetParam;
@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* <p> * <p>
@@ -58,6 +60,9 @@ public class AppInfoSetController extends BaseController {
public HttpResult<AppInfoSet> queryByUserId(){ public HttpResult<AppInfoSet> queryByUserId(){
String methodDescribe = getMethodDescribe("queryByUserId"); String methodDescribe = getMethodDescribe("queryByUserId");
AppInfoSet appInfoSet = appInfoSetService.lambdaQuery().eq(AppInfoSet::getUserId, RequestUtil.getUserIndex()).one(); AppInfoSet appInfoSet = appInfoSetService.lambdaQuery().eq(AppInfoSet::getUserId, RequestUtil.getUserIndex()).one();
if (Objects.isNull(appInfoSet)) {
throw new BusinessException("非手机号注册的用户,需联系管理员添加配置!");
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, appInfoSet, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, appInfoSet, methodDescribe);
} }