From 9c5f0171f17d1060490ac0449bb77a3e8204e227 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Fri, 13 Nov 2020 15:59:54 +0800 Subject: [PATCH] =?UTF-8?q?20201113=E4=BF=AE=E6=94=B9=E6=AF=94=E8=B5=9B?= =?UTF-8?q?=E6=97=A5=E7=A8=8B=E9=85=8D=E7=BD=AE1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ccsens/mt/api/CompeteScoreController.java | 2 +- .../ccsens/mt/api/CompeteTaskController.java | 3 +- ...oller.java => CompeteVideoController.java} | 6 +-- .../mt/bean/dto/ProvinceCompeteDto.java | 3 +- .../java/com/ccsens/mt/bean/vo/TableVo.java | 21 ++++++++-- .../persist/dao/CompeteProjectConfigDao.java | 7 ++++ .../ccsens/mt/service/CompeteTaskService.java | 23 +++++++---- .../mapper_dao/CompeteProjectConfigDao.xml | 41 +++++++++++++++++++ .../com/ccsens/tall/service/ExcelService.java | 19 +++++---- .../ccsens/tall/service/ProMemberService.java | 2 +- tall/src/main/resources/application.yml | 4 +- 11 files changed, 103 insertions(+), 28 deletions(-) rename mt/src/main/java/com/ccsens/mt/api/{CompeteVedioController.java => CompeteVideoController.java} (95%) 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..2fcf8095 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java @@ -22,7 +22,7 @@ import javax.annotation.Resource; * @author 逗 */ @Slf4j -@Api(tags = "线上体育竞技比赛", description = "") +@Api(tags = "比赛评分相关接口", description = "") @RestController @RequestMapping("/compete/score") public class CompeteScoreController { 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 f784d310..c8ed379f 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -31,7 +31,8 @@ public class CompeteTaskController { private ICompeteTaskService competeTaskService; @MustLogin - @ApiOperation(value = "日程安排更新", notes = "") + @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) { log.info("日程安排更新:{}",params); diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteVedioController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java similarity index 95% rename from mt/src/main/java/com/ccsens/mt/api/CompeteVedioController.java rename to mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java index 8141d9c4..16db5922 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteVedioController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java @@ -21,11 +21,11 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.List; -@Api(tags = "视频", description = "") +@Api(tags = "比赛视频相关接口", description = "") @RestController -@RequestMapping("/vedio") +@RequestMapping("/compete/video") @Slf4j -public class CompeteVedioController { +public class CompeteVideoController { @Resource private ICompeteVedioService iCompeteVedioService; 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 3f0d6e54..5e498d83 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 @@ -202,10 +202,11 @@ public class ProvinceCompeteDto { @Data @ApiModel("修改日程安排") public static class UpdateCompeteTask{ + @NotNull @ApiModelProperty("项目id") private Long projectId; @ApiModelProperty("单项时间 单位:秒") - private Long duration; + private long duration; @ApiModelProperty("场地数量") private int siteNum; @ApiModelProperty("项目开始时间") diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java index d46ec52c..0ff435d9 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java @@ -7,7 +7,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.ArrayList; -import java.util.Date; import java.util.List; /** @@ -149,15 +148,29 @@ public class TableVo { @ApiModelProperty("单项时间 单位秒") private int duration; @ApiModelProperty("场地") - private int siteNum; + private int siteNum = 1; @ApiModelProperty("场次") - private double games; + private int games; @ApiModelProperty("总时间") - private double timeSum; + private int timeSum; @ApiModelProperty("项目开始时间") private Long startTime; @ApiModelProperty("项目结束时间") private Long endTime; + + public int getGames(){ + if(joinNum != 0 && siteNum != 0) { + return (int) Math.ceil(joinNum / siteNum); + } + return 0; + } + + public int getTimeSum(){ + if(duration != 0 && games != 0) { + return duration * games; + } + return 0; + } } 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..8c272643 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,11 @@ 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); + + /** + * 查询所有项目配置信息 + * @param type 比赛类型 + * @return 返回所有比赛日程配置信息 + */ + List queryProjectConfig(@Param("type")int type); } \ No newline at end of file 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 972b3957..fe974b87 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -2,12 +2,14 @@ package com.ccsens.mt.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; +import cn.hutool.core.util.ObjectUtil; import com.ccsens.mt.bean.dto.ProvinceCompeteDto; +import com.ccsens.mt.bean.po.CompeteProject; import com.ccsens.mt.bean.po.CompeteProjectConfig; import com.ccsens.mt.bean.po.CompeteProjectConfigExample; import com.ccsens.mt.bean.vo.TableVo; import com.ccsens.mt.persist.dao.CompeteProjectConfigDao; -import com.ccsens.mt.persist.mapper.CompeteProjectConfigMapper; +import com.ccsens.mt.persist.dao.CompeteProjectDao; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; @@ -16,6 +18,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; +import java.util.concurrent.atomic.AtomicInteger; /** * @author 逗 @@ -27,13 +30,21 @@ public class CompeteTaskService implements ICompeteTaskService{ @Resource private CompeteProjectConfigDao projectConfigDao; @Resource + private CompeteProjectDao competeProjectDao; + @Resource private Snowflake snowflake; @Override public List updateCompeteProjectConfig(List param) { - List competeProjectConfigs = new ArrayList<>(); + //获取比赛类型 + AtomicInteger type = new AtomicInteger(); if(CollectionUtil.isNotEmpty(param)){ param.forEach(projectConfig -> { + //获取项目 + CompeteProject project = competeProjectDao.selectByPrimaryKey(projectConfig.getProjectId()); + if(ObjectUtil.isNotNull(project)){ + type.set(project.getType()); + } CompeteProjectConfig competeProjectConfig; CompeteProjectConfigExample projectConfigExample = new CompeteProjectConfigExample(); projectConfigExample.createCriteria().andProjectIdEqualTo(projectConfig.getProjectId()); @@ -46,7 +57,7 @@ public class CompeteTaskService implements ICompeteTaskService{ competeProjectConfig.setSiteNum(projectConfig.getSiteNum()); competeProjectConfig.setStartTime(projectConfig.getStartTime()); competeProjectConfig.setEndTime(projectConfig.getEndTime()); - projectConfigDao.insertSelective(competeProjectConfig); + projectConfigDao.updateByPrimaryKeySelective(competeProjectConfig); }else { //没有则添加 competeProjectConfig = new CompeteProjectConfig(); @@ -58,11 +69,9 @@ public class CompeteTaskService implements ICompeteTaskService{ competeProjectConfig.setEndTime(projectConfig.getEndTime()); projectConfigDao.insertSelective(competeProjectConfig); } - //返回 - TableVo.CompeteProjectConfig config = new TableVo.CompeteProjectConfig(); + // TODO 生成出场顺序表,存入数据库。在tall内添加对应的任务 }); } - - return competeProjectConfigs; + return projectConfigDao.queryProjectConfig(type.get()); } } diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index d8c89a2d..2cbc76c4 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -119,6 +119,47 @@ and tct.rec_status = 0 and tctt.rec_status = 0 + \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/service/ExcelService.java b/tall/src/main/java/com/ccsens/tall/service/ExcelService.java index 3fa11997..4ab0e8c9 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ExcelService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ExcelService.java @@ -30,6 +30,7 @@ import javax.annotation.Resource; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; +import java.sql.Struct; import java.util.*; /** @@ -773,14 +774,16 @@ public class ExcelService implements IExcelService { taskDetail.setMoney(Long.parseLong(money) * 100); } //切换模式 - if (delay.equals(WebConstant.TASK_DELAY.SelfMotion.phase)) { - taskDetail.setDelay((byte) WebConstant.TASK_DELAY.SelfMotion.value); - } else if (delay.equals(WebConstant.TASK_DELAY.DelayManual.phase)) { - taskDetail.setDelay((byte) WebConstant.TASK_DELAY.DelayManual.value); - } else if (delay.equals(WebConstant.TASK_DELAY.Manual.phase)) { - taskDetail.setDelay((byte) WebConstant.TASK_DELAY.Manual.value); - } else { - throw new BaseException(CodeEnum.WBS_DELAY_ERROR.addMsg(wbsSheet.getSheetName() + i)); + if(StrUtil.isNotEmpty(delay)) { + if (delay.equals(WebConstant.TASK_DELAY.SelfMotion.phase)) { + taskDetail.setDelay((byte) WebConstant.TASK_DELAY.SelfMotion.value); + } else if (delay.equals(WebConstant.TASK_DELAY.DelayManual.phase)) { + taskDetail.setDelay((byte) WebConstant.TASK_DELAY.DelayManual.value); + } else if (delay.equals(WebConstant.TASK_DELAY.Manual.phase)) { + taskDetail.setDelay((byte) WebConstant.TASK_DELAY.Manual.value); + } else { + throw new BaseException(CodeEnum.WBS_DELAY_ERROR.addMsg(wbsSheet.getSheetName() + i)); + } } //延迟时间 if (StrUtil.isNotEmpty(delayTime)) { diff --git a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java index 380c4091..2e21c4df 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java @@ -267,7 +267,7 @@ public class ProMemberService implements IProMemberService { proMember.setUserId(userId); //获取奖惩干系人 Long stakeholderId = null; - if(ObjectUtil.isNotNull(saveMember.getStakeholderPhone())){ + if(StrUtil.isNotEmpty(saveMember.getStakeholderPhone())){ ProMemberExample stakeholderExample = new ProMemberExample(); stakeholderExample.createCriteria().andProjectIdEqualTo(saveMember.getProjectId()).andPhoneEqualTo(saveMember.getStakeholderPhone()); List stakeholderList = proMemberDao.selectByExample(stakeholderExample); diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..ebc544af 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common