Pārlūkot izejas kodu

feat : sdk测试bug修改

bilingfeng 2 gadi atpakaļ
vecāks
revīzija
f9cc2d2ef2

+ 2 - 11
game-module/game-sdk/src/main/java/com/zanxiang/sdk/domain/result/CardCheckResult.java

@@ -25,22 +25,13 @@ public class CardCheckResult {
     /**
      * 结果
      */
-    private ResultBean result;
-
-    @Data
-    public static class ResultBean {
-
-        /**
-         * 认证结果, 一致, 未查
-         */
-        private String data;
-    }
+    private String data;
 
     public boolean isSuccess() {
         return Objects.equals(this.code, "0000");
     }
 
     public boolean isPast() {
-        return Objects.equals(this.result.getData(), "一致");
+        return Objects.equals(this.data, "一致");
     }
 }

+ 4 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/UserCardServiceImpl.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.domain.ResultVO;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.exception.BaseException;
+import com.zanxiang.module.util.JsonUtil;
 import com.zanxiang.mybatis.entity.User;
 import com.zanxiang.mybatis.entity.UserCard;
 import com.zanxiang.mybatis.mapper.UserCardMapper;
@@ -20,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.client.RestTemplate;
@@ -171,7 +173,8 @@ public class UserCardServiceImpl extends ServiceImpl<UserCardMapper, UserCard> i
         HttpEntity httpEntity = new HttpEntity<>(headers);
         CardCheckResult result;
         try {
-            result = restTemplate.postForObject(url, httpEntity, CardCheckResult.class);
+            String resultStr = restTemplate.postForObject(url, httpEntity, String.class);
+            result = JsonUtil.toObj(resultStr, CardCheckResult.class);
         } catch (Exception e) {
             log.error("请求阿里实名认证接口异常, cardName : {}, cardId : {}, e : {}", cardName, cardId, e.getMessage());
             throw new BaseException("请求阿里实名认证接口异常");

+ 16 - 1
game-module/game-sdk/src/main/java/com/zanxiang/sdk/service/Impl/UserServiceImpl.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.domain.ResultVO;
 import com.zanxiang.common.enums.HttpStatusEnum;
 import com.zanxiang.common.enums.SmsTypeEnum;
+import com.zanxiang.common.exception.BaseException;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.mybatis.entity.GameExt;
 import com.zanxiang.mybatis.entity.User;
@@ -140,13 +141,27 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
     public ResultVO<Boolean> bindPhone(BindPhoneParam param, UserData userData) {
         String code = param.getCode();
         String mobile = param.getMobile();
+        //判断是否已经绑定该账号
+        User user = this.getById(userData.getUserId());
+        if (user == null) {
+            throw new BaseException("参数错误, 用户信息不存在");
+        }
+        //判断手机号是否已经绑定
+        if (Objects.equals(user.getMobile(), mobile)) {
+            return new ResultVO<>(HttpStatusEnum.PHONE_IS_BIND);
+        }
+        //校验手机号是否已经绑定了其他账号
+        int count = super.count(new LambdaQueryWrapper<User>().eq(User::getMobile, mobile));
+        if (count > 0) {
+            return new ResultVO<>(HttpStatusEnum.PHONE_BIND_TOO_MUCH);
+        }
         //验证码校验
         HttpStatusEnum httpStatusEnum = smsService.smsCheck(SmsTypeEnum.SMS_BIND.getType(), mobile, code);
         //验证不通过, 返回
         if (!Objects.equals(httpStatusEnum, HttpStatusEnum.SUCCESS)) {
             return new ResultVO<>(httpStatusEnum);
         }
-        //修改用户密码
+        //修改用户用户手机号
         super.update(new LambdaUpdateWrapper<User>()
                 .set(User::getMobile, mobile)
                 .set(User::getUpdateTime, LocalDateTime.now())