Explorar el Código

feat : 用户接口代码补充提交

bilingfeng hace 2 años
padre
commit
f7f79f7873

+ 1 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/resolver/TokenArgumentResolver.java

@@ -103,7 +103,7 @@ public class TokenArgumentResolver implements HandlerMethodArgumentResolver {
             throw new CustomException(HttpStatusEnum.INVALID_PARAMS);
         }
         String str = "appKey=" + gameKey.getAppKey() + "&gameId=" + gameId + "&timestamp=" + timestamp;
-        String mySign = SignUtil.MD5(str);
+        String mySign = SignUtil.MD5(str).toUpperCase();
         //签名对比
         if (!Objects.equals(mySign, sign)) {
             throw new CustomException(HttpStatusEnum.INVALID_PARAMS);

+ 7 - 15
game-module/game-sdk/src/main/java/com/zanxiang/sdk/common/util/RegisterUtil.java

@@ -53,18 +53,10 @@ public class RegisterUtil {
         if (userName.length() > USER_NAME_LENGTH_MAX) {
             return HttpStatusEnum.USERNAME_TOO_LONG;
         }
-//        boolean matches = username.matches("[\\s]");
-//        if (!username.matches("/^[a-zA-Z0-9]+$/i")){
-//            return HttpStatusEnum.USERNAME_BAD_CHAR;
-//        }
-//        //合规验证
-//        if (username.matches("/\\s/") || username.matches("/^ZN/i") || !username.matches("^[a-zA-Z0-9]+$")) {
-//            return HttpStatusEnum.USERNAME_BAD_CHAR;
-//        }
-//        //用户名不是手机号, 用户名只能是数字和字母
-//        if (!StringUtils.checkPhone(username) && !username.matches("/^(?![^a-zA-Z]+$).{4,32}$/")) {
-//            return HttpStatusEnum.USERNAME_BAD_CHAR;
-//        }
+        //用户名只能是数字字母组合
+        if (userName.matches("/\\s/") || !userName.matches("^A-Za-20-9]+$")) {
+            return HttpStatusEnum.USERNAME_BAD_CHAR;
+        }
         //密码验证
         return HttpStatusEnum.SUCCESS;
     }
@@ -85,9 +77,9 @@ public class RegisterUtil {
         if (password.length() > PASSWORD_LENGTH_MAX) {
             return HttpStatusEnum.PASSWORD_TOO_LONG;
         }
-//        if (password.matches("/\\s/") || !password.matches("A([a-zA-Z0-9~`#$%^&*!@.,()\\\\{}|:;?<>]){6,32}$")) {
-//            return HttpStatusEnum.PASSWORD_BAD_CHAR;
-//        }
+        if (password.matches("/\\s/") || !password.matches("^A-Za-20-9]+$")) {
+            return HttpStatusEnum.PASSWORD_BAD_CHAR;
+        }
         return HttpStatusEnum.SUCCESS;
     }
 

+ 4 - 2
game-module/game-sdk/src/main/java/com/zanxiang/sdk/controller/LoginController.java

@@ -44,14 +44,16 @@ public class LoginController {
     @ApiOperation(value = "用户账号注册注册/登录")
     @PostMapping("/password")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
-    public ResultVO<UserLoginVO> loginPassword(@Validated @RequestBody LoginPasswordParam param, UserData userData, HttpServletRequest request) {
+    public ResultVO<UserLoginVO> loginPassword(@Validated @RequestBody LoginPasswordParam param, UserData userData,
+                                               HttpServletRequest request) {
         return registerPassword.loginPassword(param, userData, request);
     }
 
     @ApiOperation(value = "用户手机号注册/登录")
     @PostMapping("/mobile")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = UserLoginVO.class)})
-    public ResultVO<UserLoginVO> loginMobile(@Validated @RequestBody LoginMobileParam param, UserData userData, HttpServletRequest request) {
+    public ResultVO<UserLoginVO> loginMobile(@Validated @RequestBody LoginMobileParam param, UserData userData,
+                                             HttpServletRequest request) {
         return registerPassword.loginMobile(param, userData, request);
     }
 

+ 5 - 5
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/LoginServiceImpl.java

@@ -221,11 +221,6 @@ public class LoginServiceImpl implements RegisterLoginService {
      * @return : 返回验证结果
      */
     private HttpStatusEnum checkRegister(String username, String password) {
-        //用户名合规检测
-        HttpStatusEnum checkUserNameEnum = RegisterUtil.checkUserName(username);
-        if (Objects.equals(checkUserNameEnum, HttpStatusEnum.SUCCESS)) {
-            return checkUserNameEnum;
-        }
         //判断用户名是否存在敏感词
         if (wordCheckService.hasWord(username)) {
             return HttpStatusEnum.USERNAME_SENSITIVE;
@@ -234,6 +229,11 @@ public class LoginServiceImpl implements RegisterLoginService {
         if (userService.count(new LambdaQueryWrapper<User>().eq(User::getUsername, username)) > 0) {
             return HttpStatusEnum.USERNAME_EXISTS;
         }
+        //用户名合规检测
+        HttpStatusEnum checkUserNameEnum = RegisterUtil.checkUserName(username);
+        if (!Objects.equals(checkUserNameEnum, HttpStatusEnum.SUCCESS)) {
+            return checkUserNameEnum;
+        }
         //密码验证
         return RegisterUtil.checkPassword(password);
     }