From e9d69a251b32baa304cbfca8e8391ca2ae9974ab Mon Sep 17 00:00:00 2001 From: "ran.shang" <> Date: Wed, 18 Jun 2025 14:12:01 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=89=8B=E6=9C=BA=E5=8F=B7=E7=99=BB?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/newyetai/usercenter/auth/dto/LitePhoneAuthDTO.java | 4 ++-- .../usercenter/auth/service/impl/AuthClientServiceImpl.java | 3 +++ .../usercenter/auth/service/impl/LitePhoneLoginProvider.java | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/newyetai/usercenter/auth/dto/LitePhoneAuthDTO.java b/src/main/java/com/newyetai/usercenter/auth/dto/LitePhoneAuthDTO.java index 43e9950..b6f9560 100644 --- a/src/main/java/com/newyetai/usercenter/auth/dto/LitePhoneAuthDTO.java +++ b/src/main/java/com/newyetai/usercenter/auth/dto/LitePhoneAuthDTO.java @@ -23,10 +23,10 @@ public class LitePhoneAuthDTO extends AuthCodeDTO implements Serializable{ private static final long serialVersionUID = 2022092915168090246L; @ApiModelProperty("包括敏感数据在内的完整用户信息的加密数据") - @NotBlank(message = "加密数据不能为空") +// @NotBlank(message = "加密数据不能为空") private String encryptedData; @ApiModelProperty("加密算法的初始向量") - @NotBlank(message = "加密向量不能为空") +// @NotBlank(message = "加密向量不能为空") private String iv; @ApiModelProperty("获取手机号的code(微信小程序)") private String phoneCode; diff --git a/src/main/java/com/newyetai/usercenter/auth/service/impl/AuthClientServiceImpl.java b/src/main/java/com/newyetai/usercenter/auth/service/impl/AuthClientServiceImpl.java index cb0f528..5a2e76a 100644 --- a/src/main/java/com/newyetai/usercenter/auth/service/impl/AuthClientServiceImpl.java +++ b/src/main/java/com/newyetai/usercenter/auth/service/impl/AuthClientServiceImpl.java @@ -258,6 +258,9 @@ public class AuthClientServiceImpl implements AuthClientService { && StringUtils.isNotBlank(phoneCode)) { phone = this.getPhone(authClientDataDTO, phoneCode); } else { + Assert.isTrue( + StringUtils.isNotBlank(litePhoneAuthDTO.getEncryptedData()) && StringUtils.isNotBlank( + litePhoneAuthDTO.getIv()), "加密数据不能为空"); CodeToSessionDTO codeToSessionDTO = this.getCodeToSessionDTO(authClientDataDTO, litePhoneAuthDTO.getCode()); LiteUserPhoneDTO liteUserPhoneDTO = LiteEncryptor.decrypt(litePhoneAuthDTO.getEncryptedData(), diff --git a/src/main/java/com/newyetai/usercenter/auth/service/impl/LitePhoneLoginProvider.java b/src/main/java/com/newyetai/usercenter/auth/service/impl/LitePhoneLoginProvider.java index a27c961..b8802f3 100644 --- a/src/main/java/com/newyetai/usercenter/auth/service/impl/LitePhoneLoginProvider.java +++ b/src/main/java/com/newyetai/usercenter/auth/service/impl/LitePhoneLoginProvider.java @@ -106,6 +106,9 @@ public class LitePhoneLoginProvider { && StringUtils.isNotBlank(phoneCode)) { phone = authClientService.getPhone(authClientDataDTO, phoneCode); } else { + Assert.isTrue( + StringUtils.isNotBlank(litePhoneLoginDTO.getEncryptedData()) && StringUtils.isNotBlank( + litePhoneLoginDTO.getIv()), "加密数据不能为空"); LiteUserPhoneDTO liteUserPhoneDTO = LiteEncryptor.decrypt(litePhoneLoginDTO.getEncryptedData(), litePhoneLoginDTO.getIv(), codeToSessionDTO.getSessionKey(), LiteUserPhoneDTO.class); phone = liteUserPhoneDTO.getPhoneNumber();