From 8b56583d497a6ecaec46a4a45a3e5af23e590ce5 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Fri, 13 Nov 2020 21:37:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=AF=94=E8=B5=9B=E6=97=A5?= =?UTF-8?q?=E7=A8=8B=E6=8E=A5=E5=8F=A3=E6=B7=BB=E5=8A=A0=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ccsens/mt/api/CompeteTaskController.java | 4 +- .../mt/bean/dto/ProvinceCompeteDto.java | 15 +++++++- .../ccsens/mt/service/CompeteTaskService.java | 38 ++++++++++--------- 3 files changed, 35 insertions(+), 22 deletions(-) diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java index 773aecbf..eae789aa 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -45,9 +45,9 @@ public class CompeteTaskController { @ApiOperation(value = "日程安排更新", notes = "zy:1、循环查找项目对应的配置信息。2、有则修改,没有则添加配置信息。" + "3、根据配置的时间和场地生成出场顺序表。4存入出场顺序表。5、调用tall接口添加任务") @RequestMapping(value = "/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse updateCompeteConfig(@ApiParam @Validated @RequestBody QueryDto> params) { + public JsonResponse updateCompeteConfig(@ApiParam @Validated @RequestBody QueryDto params) { log.info("日程安排更新:{}",params); - List dailyScheduleProcessList = competeTaskService.updateCompeteProjectConfig(params.getParam()); + List dailyScheduleProcessList = competeTaskService.updateCompeteProjectConfig(params.getParam().getUpdateCompeteTaskList()); log.info("日程安排更新:{}",dailyScheduleProcessList); return JsonResponse.newInstance().ok(dailyScheduleProcessList); } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index 5e498d83..29ea012c 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -136,7 +136,7 @@ public class ProvinceCompeteDto { } @Data - @ApiModel("修改日程安排") + @ApiModel("修改日程安排111") public static class UpdateAndSearch{ @ApiModelProperty("项目id") private Long projectId; @@ -199,11 +199,22 @@ public class ProvinceCompeteDto { private Long teamId; } + @Data @ApiModel("修改日程安排") + public static class UpdateCompeteProjectConfig{ + @NotNull + @ApiModelProperty("Tall当前项目id") + private Long projectId; + @ApiModelProperty("单项时间 单位:秒") + private List updateCompeteTaskList; + } + + @Data + @ApiModel("需要修改的日程安排") public static class UpdateCompeteTask{ @NotNull - @ApiModelProperty("项目id") + @ApiModelProperty("比赛项目项目id") private Long projectId; @ApiModelProperty("单项时间 单位:秒") private long duration; diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java index 5bdd5bf5..ca60c16b 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -121,20 +121,17 @@ public class CompeteTaskService implements ICompeteTaskService{ projectPlayerExample.createCriteria().andProjectIdEqualTo(project.getId()); List projectPlayerList = projectPlayerMapper.selectByExample(projectPlayerExample); if (CollectionUtil.isNotEmpty(projectPlayerList)) { + //计算场次 + int order = (int) Math.ceil(competeProjectConfig.getSiteNum() / projectPlayerList.size()); + + //场次 int competeOrder = 1; //场地 int site = 1; for (CompeteProjectPlayer projectPlayer : projectPlayerList) { - //添加出场顺序 - CompeteStartOrder competeStartOrder = new CompeteStartOrder(); - competeStartOrder.setId(snowflake.nextId()); - competeStartOrder.setProjectId(project.getId()); - competeStartOrder.setPlayerId(projectPlayer.getId()); - competeStartOrder.setTeam((byte) 0); - competeStartOrder.setSite((byte) site); - competeStartOrder.setCompeteOrder((byte) competeOrder); - startOrderMapper.insertSelective(competeStartOrder); + //添加出场顺序和tall的任务 + addStartOrderAndTask(project.getId(), competeOrder, site, projectPlayer.getId(),0); site++; if(site > competeProjectConfig.getSiteNum()){ site = 1; @@ -153,15 +150,8 @@ public class CompeteTaskService implements ICompeteTaskService{ //场地 int site = 1; for (CompeteTeam competeTeam : teamList) { - //添加出场顺序 - CompeteStartOrder competeStartOrder = new CompeteStartOrder(); - competeStartOrder.setId(snowflake.nextId()); - competeStartOrder.setProjectId(project.getId()); - competeStartOrder.setPlayerId(competeTeam.getId()); - competeStartOrder.setSite((byte) site); - competeStartOrder.setTeam((byte) 1); - competeStartOrder.setCompeteOrder((byte) competeOrder); - startOrderMapper.insertSelective(competeStartOrder); + //添加出场顺序和tall的任务 + addStartOrderAndTask(project.getId(), competeOrder, site, competeTeam.getId(),1); site++; if(site > competeProjectConfig.getSiteNum()){ site = 1; @@ -174,4 +164,16 @@ public class CompeteTaskService implements ICompeteTaskService{ } } + private void addStartOrderAndTask(Long projectId, int competeOrder, int site, Long playerOrTeamId,int isTeam) { + //添加出场顺序 + CompeteStartOrder competeStartOrder = new CompeteStartOrder(); + competeStartOrder.setId(snowflake.nextId()); + competeStartOrder.setProjectId(projectId); + competeStartOrder.setPlayerId(playerOrTeamId); + competeStartOrder.setSite((byte) site); + competeStartOrder.setTeam((byte) isTeam); + competeStartOrder.setCompeteOrder((byte) competeOrder); + startOrderMapper.insertSelective(competeStartOrder); + } + }