Kaynağa Gözat

fix : 发码器隐藏前端手机号

bilingfeng 5 ay önce
ebeveyn
işleme
74dc7de6ff

+ 1 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/ManageApplication.java

@@ -23,7 +23,7 @@ public class ManageApplication {
 
     public static void main(String[] args) {
         SpringApplication.run(ManageApplication.class, args);
-        System.out.println("赞象Manage服务启动成功 < (发码器代码完成提交2400・・)ノ(._.`) \n" +
+        System.out.println("赞象Manage服务启动成功 < (发码器隐藏前端手机号・・)ノ(._.`) \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +

+ 2 - 6
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/api/GameGiftPackApi.java

@@ -4,7 +4,6 @@ import com.github.sd4324530.jtuple.Tuple2;
 import com.zanxiang.game.module.manage.pojo.params.GameGiftPackLinkLogPushParam;
 import com.zanxiang.game.module.manage.service.IGameGiftPackCodeLogService;
 import com.zanxiang.game.module.manage.service.IGameGiftPackLinkLogService;
-import com.zanxiang.game.module.manage.service.ISmsService;
 import com.zanxiang.module.util.pojo.ResultVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -28,9 +27,6 @@ import java.util.Map;
 @RequestMapping("/api/game/gift/pack")
 public class GameGiftPackApi {
 
-    @Autowired
-    private ISmsService smsService;
-
     @Autowired
     private IGameGiftPackLinkLogService gameGiftPackLinkLogService;
 
@@ -62,8 +58,8 @@ public class GameGiftPackApi {
     @ApiOperation(value = "手机验证码发送")
     @GetMapping(value = "/phone/code/send")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
-    public ResultVO<Boolean> randomCodeSend(@RequestParam String phoneNumber) {
-        return ResultVO.ok(smsService.randomCodeSend(phoneNumber));
+    public ResultVO<Boolean> randomCodeSend(@RequestParam Long linkLogId, @RequestParam String phoneNumber) {
+        return ResultVO.ok(gameGiftPackLinkLogService.randomCodeSend(linkLogId, phoneNumber));
     }
 
     @ApiOperation(value = "领取礼包码")

+ 9 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGameGiftPackLinkLogService.java

@@ -23,6 +23,15 @@ public interface IGameGiftPackLinkLogService extends IService<GameGiftPackLinkLo
      */
     Long linkVisitLogPush(String url);
 
+    /**
+     * 发送手机验证码
+     *
+     * @param linkLogId   : 访问记录id
+     * @param phoneNumber : 手机号
+     * @return : 返回是否发送成功
+     */
+    boolean randomCodeSend(Long linkLogId, String phoneNumber);
+
     /**
      * 角色验证
      *

+ 20 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameGiftPackLinkLogServiceImpl.java

@@ -42,6 +42,9 @@ public class GameGiftPackLinkLogServiceImpl extends ServiceImpl<GameGiftPackLink
     @Autowired
     private IGameService gameService;
 
+    @Autowired
+    private ISmsService smsService;
+
     @Autowired
     private IGameServerService gameServerService;
 
@@ -105,6 +108,21 @@ public class GameGiftPackLinkLogServiceImpl extends ServiceImpl<GameGiftPackLink
         ).stream().collect(Collectors.toMap(GameServer::getServerId, GameServer::getServerName));
     }
 
+    @Override
+    public boolean randomCodeSend(Long linkLogId, String phoneNumber) {
+        //前端输入手机号
+        if (!phoneNumber.contains("****")) {
+            return smsService.randomCodeSend(phoneNumber);
+        }
+        //非前端输入手机号
+        GameGiftPackLinkLog gameGiftPackLinkLog = super.getById(linkLogId);
+        Assert.notNull(gameGiftPackLinkLog, "参数错误, 链接访问日志信息不存在");
+        //正确手机号
+        String userPhone = gameGiftPackLinkLog.getUserPhone();
+        Assert.state(Strings.isNotBlank(userPhone), "参数错误, 手机号信息缺失");
+        return smsService.randomCodeSend(userPhone);
+    }
+
     @Override
     public Map<String, Object> gameUserRoleCheck(Long linkLogId, String serverId, String roleName) {
         //查询访问日志
@@ -136,9 +154,10 @@ public class GameGiftPackLinkLogServiceImpl extends ServiceImpl<GameGiftPackLink
         resultMap.put("msg", "角色名称检测成功");
         resultMap.put("roleId", gameUserRole.getRoleId());
         if (Strings.isNotBlank(userPhone)) {
-            resultMap.put("userPhone", userPhone);
+            resultMap.put("userPhone", userPhone.substring(0, 3) + " **** " + userPhone.substring(userPhone.length() - 4));
         }
         //更新链接访问记录
+        gameGiftPackLinkLog.setUserPhone(userPhone);
         gameGiftPackLinkLog.setUserId(gameUserRole.getUserId());
         gameGiftPackLinkLog.setServerId(gameUserRole.getServerId());
         gameGiftPackLinkLog.setRoleId(gameUserRole.getRoleId());

+ 5 - 0
game-module/game-module-mybatis/src/main/java/com/zanxiang/game/module/mybatis/entity/GameGiftPackLinkLog.java

@@ -44,6 +44,11 @@ public class GameGiftPackLinkLog implements Serializable {
      */
     private Long gameId;
 
+    /**
+     * 用户手机号
+     */
+    private String userPhone;
+
     /**
      * 玩家id
      */