Przeglądaj źródła

fix : 游戏区服逻辑修改

bilingfeng 1 rok temu
rodzic
commit
4933f1f342

+ 9 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/controller/GameServerController.java

@@ -70,10 +70,18 @@ public class GameServerController {
     }
 
     @ApiOperation(value = "获取合服超父游戏列表")
-    @PostMapping(value = "/game/supper/list")
+    @GetMapping(value = "/game/supper/list")
     @PreAuthorize(permissionKey = "manage:gameServer:gameSupperList")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
     public ResultVO<Map<Long, String>> getGameSupperList() {
         return ResultVO.ok(gameSupperService.getGameSupperList());
     }
+
+    @ApiOperation(value = "获取未参与合服的区服列表")
+    @GetMapping(value = "/unMerge/server/list")
+    @PreAuthorize(permissionKey = "manage:gameServer:unMergeServer")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVO<Map<String, String>> unMergeServerList(@RequestParam Long gameId) {
+        return ResultVO.ok(gameServerService.unMergeServerList(gameId));
+    }
 }

+ 11 - 0
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/IGameServerService.java

@@ -9,6 +9,7 @@ import com.zanxiang.game.module.manage.pojo.vo.GameServerListVO;
 import com.zanxiang.game.module.mybatis.entity.GameServer;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author : lingfeng
@@ -51,8 +52,18 @@ public interface IGameServerService extends IService<GameServer> {
     boolean deleteById(Long id);
 
     /**
+     * 合服添加更新
+     *
      * @param param 参数
      * @return {@link Boolean}
      */
     Boolean mergeServerAddUpdate(GameMergeServerParam param);
+
+    /**
+     * 未参与合服的区服列表
+     *
+     * @param gameId 游戏id
+     * @return {@link Map}<{@link String}, {@link String}>
+     */
+    Map<String, String> unMergeServerList(Long gameId);
 }

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

@@ -234,6 +234,15 @@ public class GameServerServiceImpl extends ServiceImpl<GameServerMapper, GameSer
                 .build();
     }
 
+    @Override
+    public Map<String, String> unMergeServerList(Long gameId) {
+        return super.list(new LambdaQueryWrapper<GameServer>()
+                .select(GameServer::getServerId, GameServer::getServerName)
+                .eq(GameServer::getGameId, gameId)
+                .eq(GameServer::getIsMerge, Boolean.FALSE)
+        ).stream().collect(Collectors.toMap(GameServer::getServerId, GameServer::getServerName));
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean deleteById(Long id) {

+ 2 - 6
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameSupperServiceImpl.java

@@ -7,9 +7,8 @@ import com.zanxiang.game.module.mybatis.mapper.GameSupperMapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
-import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @author : lingfeng
@@ -22,9 +21,6 @@ public class GameSupperServiceImpl extends ServiceImpl<GameSupperMapper, GameSup
 
     @Override
     public Map<Long, String> getGameSupperList() {
-        List<GameSupper> list = super.list();
-        Map<Long, String> map = new HashMap<>(list.size());
-        list.forEach(gameSupper -> map.put(gameSupper.getId(), gameSupper.getName()));
-        return map;
+        return super.list().stream().collect(Collectors.toMap(GameSupper::getId, GameSupper::getName));
     }
 }