fix: 优化注册方法

This commit is contained in:
tangwei 2026-04-28 09:18:40 +08:00
parent bb21405761
commit 8aaf353144
3 changed files with 18 additions and 12 deletions

View File

@ -106,7 +106,7 @@ public class SdHbrvDicController {
} }
@GetMapping("/regDropdown") @GetMapping("/regDropdown")
@Operation(summary = "下拉框列表查询") @Operation(summary = "下拉框列表查询(注册)")
public ResponseResult regDropdown( public ResponseResult regDropdown(
@RequestParam(required = false) String hbrvnm, @RequestParam(required = false) String hbrvnm,
@RequestParam(required = false) String baseid) { @RequestParam(required = false) String baseid) {

View File

@ -9,6 +9,7 @@ import com.yfd.platform.system.service.ISmsVerifyCodeService;
import com.yfd.platform.system.service.ISysLogService; import com.yfd.platform.system.service.ISysLogService;
import com.yfd.platform.system.service.IUserService; import com.yfd.platform.system.service.IUserService;
import com.yfd.platform.utils.RequestHolder; import com.yfd.platform.utils.RequestHolder;
import com.yfd.platform.utils.RsaUtils;
import com.yfd.platform.utils.StringUtils; import com.yfd.platform.utils.StringUtils;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
@ -94,37 +95,37 @@ public class SmsVerifyCodeController {
@PostMapping("/register") @PostMapping("/register")
@Operation(summary = "注册用户") @Operation(summary = "注册用户")
public ResponseResult register(@RequestBody SmsVerifyCodeRequest smsVerifyCodeRequest) { public ResponseResult register(@RequestBody SmsVerifyCodeRequest smsVerifyCodeRequest) {
SysUser user = smsVerifyCodeRequest.getUser();
String code = smsVerifyCodeRequest.getCode(); String code = smsVerifyCodeRequest.getCode();
if (user.getPhone() == null || user.getPhone().isEmpty()) { if (smsVerifyCodeRequest.getPhone() == null || smsVerifyCodeRequest.getPhone().isEmpty()) {
return ResponseResult.error("手机号不能为空"); return ResponseResult.error("手机号不能为空");
} }
if (user.getUsername() == null || user.getUsername().isEmpty()) { if (smsVerifyCodeRequest.getUsername() == null || smsVerifyCodeRequest.getUsername().isEmpty()) {
return ResponseResult.error("用户名不能为空"); return ResponseResult.error("用户名不能为空");
} }
if (user.getPassword() == null || user.getPassword().isEmpty()) { if (smsVerifyCodeRequest.getPassword() == null || smsVerifyCodeRequest.getPassword().isEmpty()) {
return ResponseResult.error("密码不能为空"); return ResponseResult.error("密码不能为空");
} }
if (code == null || code.isEmpty()) { if (code == null || code.isEmpty()) {
return ResponseResult.error("验证码不能为空"); return ResponseResult.error("验证码不能为空");
} }
boolean verified = smsVerifyCodeService.verifyCode(user.getPhone(), code, SmsVerifyCode.TYPE_REGISTER); boolean verified = smsVerifyCodeService.verifyCode(smsVerifyCodeRequest.getPhone(), code, SmsVerifyCode.TYPE_REGISTER);
if (!verified) { if (!verified) {
return ResponseResult.error("验证码错误或已过期"); return ResponseResult.error("验证码错误或已过期");
} }
SysUser existUser = userService.getUserByPhone(user.getPhone()); SysUser existUser = userService.getUserByPhone(smsVerifyCodeRequest.getPhone());
if (existUser != null) { if (existUser != null) {
return ResponseResult.error("该手机号已注册"); return ResponseResult.error("该手机号已注册");
} }
try { try {
com.yfd.platform.utils.RsaUtils.decryptByPrivateKey(privateKey, user.getPassword()); RsaUtils.decryptByPrivateKey(privateKey, smsVerifyCodeRequest.getPassword());
} catch (Exception e) { } catch (Exception e) {
return ResponseResult.error("密码解密失败"); return ResponseResult.error("密码解密失败");
} }
SysUser user = new SysUser();
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
user.setPassword(passwordEncoder.encode(user.getPassword())); user.setPassword(passwordEncoder.encode(user.getPassword()));
user.setRegStatus(0); user.setRegStatus(0);

View File

@ -19,15 +19,20 @@ public class SmsVerifyCodeRequest {
*/ */
private String code; private String code;
/**
* 用户名
*/
private String username;
/** /**
* 密码 * 密码
*/ */
private String password; private String password;
/** // /**
* 用户 // * 用户
*/ // */
private SysUser user; // private SysUser user;
/** /**
* 流域编号 * 流域编号