|
@@ -4,6 +4,7 @@ import cn.hutool.core.util.RandomUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.zanxiang.game.module.base.pojo.enums.HttpStatusEnum;
|
|
|
+import com.zanxiang.game.module.mybatis.entity.Game;
|
|
|
import com.zanxiang.game.module.mybatis.entity.User;
|
|
|
import com.zanxiang.game.module.sdk.constant.RedisKeyConstant;
|
|
|
import com.zanxiang.game.module.sdk.enums.ExpireTimeEnum;
|
|
@@ -13,6 +14,7 @@ import com.zanxiang.game.module.sdk.pojo.param.BindPhoneParam;
|
|
|
import com.zanxiang.game.module.sdk.pojo.param.SmsCheckParam;
|
|
|
import com.zanxiang.game.module.sdk.pojo.param.SmsSendParam;
|
|
|
import com.zanxiang.game.module.sdk.pojo.param.UserData;
|
|
|
+import com.zanxiang.game.module.sdk.service.IGameService;
|
|
|
import com.zanxiang.game.module.sdk.service.ISmsService;
|
|
|
import com.zanxiang.game.module.sdk.service.IUserService;
|
|
|
import com.zanxiang.game.module.sdk.util.RedisUtil;
|
|
@@ -28,7 +30,6 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.temporal.ChronoUnit;
|
|
|
-import java.util.Collections;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
import java.util.Objects;
|
|
@@ -51,17 +52,29 @@ public class SmsServiceImpl implements ISmsService {
|
|
|
@Autowired
|
|
|
private AliSmsService aliSmsService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IGameService gameService;
|
|
|
+
|
|
|
@Override
|
|
|
public Map<String, Object> getBindPhone(UserData userData) {
|
|
|
User user = userService.getById(userData.getUserId());
|
|
|
if (user == null) {
|
|
|
throw new BaseException("参数错误, 用户信息不存在");
|
|
|
}
|
|
|
+ Map<String, Object> resultMap = new HashMap<>(3);
|
|
|
+ //未绑定手机号或者绑定时间超过1个月
|
|
|
if (Strings.isBlank(user.getMobile()) || user.getMobileBindTime() == null
|
|
|
|| ChronoUnit.DAYS.between(user.getMobileBindTime(), LocalDateTime.now()) >= 30) {
|
|
|
- return Collections.singletonMap("isBindPhone", Boolean.FALSE);
|
|
|
+ resultMap.put("isBindPhone", Boolean.FALSE);
|
|
|
+ Game game = gameService.getById(user.getGameId());
|
|
|
+ //诸神-攻守CP前端要求未绑定的时候, 返回空串
|
|
|
+ if (Objects.equals(game.getSuperGameId(), 2L)) {
|
|
|
+ resultMap.put("phone", "");
|
|
|
+ resultMap.put("mobileBindTime", "");
|
|
|
+ }
|
|
|
+ return resultMap;
|
|
|
}
|
|
|
- Map<String, Object> resultMap = new HashMap<>(3);
|
|
|
+ //已绑定手机号
|
|
|
resultMap.put("isBindPhone", Boolean.TRUE);
|
|
|
resultMap.put("phone", user.getShowPhoneNum());
|
|
|
resultMap.put("mobileBindTime", user.getMobileBindTime());
|