Kaynağa Gözat

fix : 区服指派接口提交02

bilingfeng 1 yıl önce
ebeveyn
işleme
187ff0aacd

+ 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) {
     public static void main(String[] args) {
         SpringApplication.run(ManageApplication.class, args);
         SpringApplication.run(ManageApplication.class, args);
-        System.out.println("赞象Manage服务启动成功 <解决接入线程锁的问题01> ( ´・・)ノ(._.`) \n" +
+        System.out.println("赞象Manage服务启动成功 <解决接入线程锁的问题02> ( ´・・)ノ(._.`) \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "___  ___  ___   _   _   ___  _____  _____ \n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "|  \\/  | / _ \\ | \\ | | / _ \\|  __ \\|  ___|\n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +
                 "| .  . |/ /_\\ \\|  \\| |/ /_\\ \\ |  \\/| |__  \n" +

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

@@ -47,7 +47,7 @@ public class GameServerController {
     @PreAuthorize(permissionKey = "manage:gameServer:assign")
     @PreAuthorize(permissionKey = "manage:gameServer:assign")
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
     @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
     public ResultVO<Boolean> gameServerAssign(@Validated @RequestBody GameServerAssignParam param) {
     public ResultVO<Boolean> gameServerAssign(@Validated @RequestBody GameServerAssignParam param) {
-        return ResultVO.ok(gameServerService.gameServerAssign(param));
+        return ResultVO.ok(gameServerService.gameServerAssignBatch(param));
     }
     }
 
 
     @ApiOperation(value = "新增原始服合服excel")
     @ApiOperation(value = "新增原始服合服excel")

+ 4 - 1
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/pojo/params/GameServerAssignParam.java

@@ -4,7 +4,9 @@ import com.zanxiang.game.module.manage.enums.GameServerAssignEnum;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
+import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.NotNull;
+import java.util.List;
 import java.util.Set;
 import java.util.Set;
 
 
 /**
 /**
@@ -27,11 +29,12 @@ public class GameServerAssignParam {
      */
      */
     @ApiModelProperty(notes = "区服的主键")
     @ApiModelProperty(notes = "区服的主键")
     @NotNull(message = "区服主键id不可为空")
     @NotNull(message = "区服主键id不可为空")
-    private Long id;
+    private List<Long> idList;
 
 
     /**
     /**
      * 指派的人员id
      * 指派的人员id
      */
      */
+    @NotEmpty(message = "指派的人员id不可为空")
     @ApiModelProperty(notes = "指派的人员id")
     @ApiModelProperty(notes = "指派的人员id")
     private Set<Long> assignUserIdList;
     private Set<Long> assignUserIdList;
 }
 }

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

@@ -27,7 +27,7 @@ public interface IGameServerService extends IService<GameServer> {
      * @param param : 提交参数
      * @param param : 提交参数
      * @return : 返回更新结果
      * @return : 返回更新结果
      */
      */
-    Boolean gameServerAssign(GameServerAssignParam param);
+    Boolean gameServerAssignBatch(GameServerAssignParam param);
 
 
     /**
     /**
      * 区服excel提交
      * 区服excel提交

+ 10 - 16
game-module/game-module-manage/src/main/java/com/zanxiang/game/module/manage/service/impl/GameServerServiceImpl.java

@@ -71,22 +71,16 @@ public class GameServerServiceImpl extends ServiceImpl<GameServerMapper, GameSer
 
 
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
-    public Boolean gameServerAssign(GameServerAssignParam param) {
-        GameServer gameServer = super.getById(param.getId());
-        if (gameServer == null) {
+    public Boolean gameServerAssignBatch(GameServerAssignParam param) {
+        List<GameServer> gameServerList = super.listByIds(param.getIdList());
+        if (CollectionUtils.isEmpty(gameServerList)) {
             throw new BaseException("参数错误, 区服信息不存在");
             throw new BaseException("参数错误, 区服信息不存在");
         }
         }
-        //删除指派的参数判断
-        if (CollectionUtils.isEmpty(param.getAssignUserIdList())) {
-            if (Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_GS)
-                    && Strings.isBlank(gameServer.getGsIds())) {
-                throw new BaseException("无效操作, 区服GS指派为空, 不可更新为空");
-            }
-            if (Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_CUSTOMER)
-                    && Strings.isBlank(gameServer.getCustomerIds())) {
-                throw new BaseException("无效操作, 区服客服指派为空, 不可更新为空");
-            }
-        }
+        gameServerList.forEach(gameServer -> this.gameServerAssign(param, gameServer));
+        return Boolean.TRUE;
+    }
+
+    private void gameServerAssign(GameServerAssignParam param, GameServer gameServer) {
         //老的指派人员id
         //老的指派人员id
         String oldUserIds = null;
         String oldUserIds = null;
         if (Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_GS)) {
         if (Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_GS)) {
@@ -104,13 +98,13 @@ public class GameServerServiceImpl extends ServiceImpl<GameServerMapper, GameSer
         }
         }
         //更新区服信息
         //更新区服信息
         super.update(new LambdaUpdateWrapper<GameServer>()
         super.update(new LambdaUpdateWrapper<GameServer>()
-                .eq(GameServer::getId, param.getId())
+                .eq(GameServer::getId, gameServer.getId())
                 .set(Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_GS),
                 .set(Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_GS),
                         GameServer::getGsIds, userIds)
                         GameServer::getGsIds, userIds)
                 .set(Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_CUSTOMER),
                 .set(Objects.equals(param.getAssignType(), GameServerAssignEnum.GAME_SERVER_ASSIGN_CUSTOMER),
                         GameServer::getCustomerIds, userIds));
                         GameServer::getCustomerIds, userIds));
         //新增保存指派记录
         //新增保存指派记录
-        return gameServerAssignLogService.save(GameServerAssignLog.builder()
+        gameServerAssignLogService.save(GameServerAssignLog.builder()
                 .serverId(gameServer.getServerId())
                 .serverId(gameServer.getServerId())
                 .assignType(param.getAssignType().getValue())
                 .assignType(param.getAssignType().getValue())
                 .oldUserIds(oldUserIds)
                 .oldUserIds(oldUserIds)