diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java index a1262f24..22580346 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java @@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.List; /** * @author 逗 @@ -38,7 +39,23 @@ public class CompeteScoreController { return JsonResponse.newInstance().ok(playerList); } + @MustLogin + @ApiOperation(value = "计数赛查看当前场次的分数信息(轮询)", notes = "") + @RequestMapping(value = "countScore", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse countScore(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("查询比赛项目上的参赛选手列表:{}",params); + List countScoreList = competeService.countScore(params.getParam()); + return JsonResponse.newInstance().ok(countScoreList); + } + @MustLogin + @ApiOperation(value = "计数赛查看当前场次的分数信息(轮询)", notes = "") + @RequestMapping(value = "countScoreDetail", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse countScoreDetail(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("查询比赛项目上的参赛选手列表:{}",params); + competeService.countScoreDetail(params.getParam()); + return JsonResponse.newInstance().ok(); + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java index af6d9117..2127cac3 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java @@ -325,5 +325,14 @@ public class CompeteDto { private String idCard; } + @Data + @ApiModel("项目id和组别id") + public static class ProjectIdAndGroupId{ + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("组别id") + private Long groupId; + } + } diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java index 2c46dd01..917ec421 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java @@ -452,4 +452,30 @@ public class CompeteVo { private String otherPlayerName; } + @Data + @ApiModel("项目,开始时间和比赛状态") + public static class CountScore{ + @ApiModelProperty("项目id") + private Long id; + @ApiModelProperty("项目名") + private String projectName; + @ApiModelProperty("项目开始时间") + private Long startTime; + @ApiModelProperty("项目状态") + private int status; + } + + @Data + @ApiModel("得分享请") + public static class CountScoreDetail{ + @ApiModelProperty("参赛队伍") + private String companyName; + @ApiModelProperty("姓名") + private String name; + @ApiModelProperty("成绩") + private Long grade; + + } + + } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java index 9112c99a..e3c6e4db 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java @@ -18,4 +18,5 @@ public interface CompeteProjectConfigDao extends CompeteProjectConfigMapper { List selectDetail (); List selectSingle (@Param("competeTimeId") Long competeTimeId,@Param("projectId") Long projectId,@Param("groupId") Long groupId,@Param("companyId") Long companyId,@Param("name") String name,@Param("idCard") String idCard); List selectGroup (@Param("competeTimeId") Long competeTimeId,@Param("projectId") Long projectId,@Param("groupId") Long groupId,@Param("companyId") Long companyId,@Param("name") String name,@Param("idCard") String idCard); + CompeteProjectConfig selectStartTime(@Param("projectId") Long projectId); } \ No newline at end of file diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java index c6f2ca97..aa5ab32d 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java @@ -14,10 +14,7 @@ import com.ccsens.mt.bean.dto.LevelDto; import com.ccsens.mt.bean.po.*; import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.TableVo; -import com.ccsens.mt.persist.dao.CompeteEnrollDao; -import com.ccsens.mt.persist.dao.CompetePlayerDao; -import com.ccsens.mt.persist.dao.CompeteTeamDao; -import com.ccsens.mt.persist.dao.CompeteTimeDao; +import com.ccsens.mt.persist.dao.*; import com.ccsens.mt.persist.mapper.*; import com.ccsens.mt.util.Constant; import com.ccsens.util.*; @@ -82,7 +79,8 @@ public class CompeteService implements ICompeteService { private TallFeignClient tallFeignClient; @Resource private CommonFileMapper commonFileMapper; - + @Resource + private CompeteProjectConfigDao competeProjectConfigDao; /** * 查看第几届 */ @@ -896,6 +894,8 @@ public class CompeteService implements ICompeteService { } + + /** * 验证数据的正确性,存入数据库 */ @@ -1008,8 +1008,71 @@ public class CompeteService implements ICompeteService { } + @Override + public List countScore(CompeteDto.CompeteTime params) { + List countScoreList = new ArrayList<>(); + //查询项目 + CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(params.getCompeteTimeId()); + CompeteProjectExample competeProjectExample = new CompeteProjectExample(); + int level = 2; + competeProjectExample.createCriteria().andTypeEqualTo(competeTime.getType()).andLevelEqualTo((byte) level); + //项目集合 + List competeProjectList = competeProjectMapper.selectByExample(competeProjectExample); + for(CompeteProject competeProject : competeProjectList) { + long projectId = competeProject.getId(); + CompeteProjectConfig competeProjectConfig = competeProjectConfigDao.selectStartTime(projectId); + if (ObjectUtil.isNotNull(competeProjectConfig)) { + CompeteVo.CountScore countScore = new CompeteVo.CountScore(); + countScore.setId(competeProject.getId()); + countScore.setProjectName(competeProject.getName()); + countScore.setStartTime(competeProjectConfig.getStartTime()); + //状态判断 + long currentTime = System.currentTimeMillis(); + if (currentTime < competeProjectConfig.getStartTime()) { + //未开始0-未开始 + countScore.setStatus(0); + } + if (currentTime > competeProjectConfig.getStartTime() && competeProjectConfig.getEndTime() > currentTime) { + //进行中1-进行中 + countScore.setStatus(1); + } + if (competeProjectConfig.getEndTime() < currentTime) { + //已经结束-结束 + countScore.setStatus(2); + } + countScoreList.add(countScore); + } + } + return countScoreList; + } + @Override + public List countScoreDetail(CompeteDto.ProjectIdAndGroupId params) { + //判断比赛类型 + long ProjectId = params.getProjectId(); + long groupId = params.getGroupId(); + CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(ProjectId); + int team = competeProject.getTeam(); + long fatherId = competeProject.getParentId(); + //如果比赛是个人计数赛 + if (fatherId == 2001 && team == 0){ + CompeteProjectPlayerExample competeProjectPlayerExample= new CompeteProjectPlayerExample(); + + } + //如果是个人花样赛 + if (fatherId == 2002 && team == 0){ + + } + //如果是团队计数赛 + if (fatherId == 2001 && team == 1){ + } + //如果是团队花样赛 + if (fatherId == 2002 && team == 1){ + + } + return null; + } } \ No newline at end of file diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java index 84cf068a..eca520a8 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java @@ -149,6 +149,22 @@ public interface ICompeteService { List signupImport(String path) throws FileNotFoundException, Exception; + + /** + * 项目,开始时间和比赛状态 + * @param params 大赛id和比赛项目id + * @return 返回项目,开始时间和比赛状态 + */ + List countScore(CompeteDto.CompeteTime params) ; + + /** + * 得分详情 + * @param params 大赛id和比赛项目id + * @return 返回项目,开始时间和比赛状态 + */ + List countScoreDetail(CompeteDto.ProjectIdAndGroupId params) ; + + } diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index f59084b0..4ecd13fd 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: common, util-test + active: dev + include: common, util-dev diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index d8c89a2d..b56874c0 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -24,6 +24,12 @@ FROM t_compete_project_config a , t_compete_project b where a.project_id = b.id + +