wang0018 5 years ago
parent
commit
477b4ac37b
  1. 2
      mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java
  2. 3
      mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java
  3. 6
      mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java
  4. 3
      mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java
  5. 21
      mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java
  6. 7
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java
  7. 23
      mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java
  8. 41
      mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml
  9. 19
      tall/src/main/java/com/ccsens/tall/service/ExcelService.java
  10. 2
      tall/src/main/java/com/ccsens/tall/service/ProMemberService.java
  11. 4
      tall/src/main/resources/application.yml

2
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 {

3
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<TableVo.DailyScheduleProcess> updateCompeteConfig(@ApiParam @Validated @RequestBody QueryDto<List<ProvinceCompeteDto.UpdateCompeteTask>> params) {
log.info("日程安排更新:{}",params);

6
mt/src/main/java/com/ccsens/mt/api/CompeteVedioController.java → 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;

3
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("项目开始时间")

21
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;
}
}

7
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java

@ -18,4 +18,11 @@ public interface CompeteProjectConfigDao extends CompeteProjectConfigMapper {
List<TableVo.SchedulePlanDetail> selectDetail ();
List<TableVo.CompeteJoin> 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<TableVo.CompeteJoin> 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<TableVo.CompeteProjectConfig> queryProjectConfig(@Param("type")int type);
}

23
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<TableVo.CompeteProjectConfig> updateCompeteProjectConfig(List<ProvinceCompeteDto.UpdateCompeteTask> param) {
List<TableVo.CompeteProjectConfig> 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());
}
}

41
mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml

@ -119,6 +119,47 @@
and tct.rec_status = 0
and tctt.rec_status = 0
</select>
<select id="queryProjectConfig" resultType="com.ccsens.mt.bean.vo.TableVo$CompeteProjectConfig">
SELECT
p.id as projectId,
p.`name` as projectName,
if(p.team = 0,count(a.projectId),count(b.projectId)) as joinNum,
pc.project_duration as duration,
pc.site_num as siteNum,
pc.start_time as startTime,
pc.end_time as endTime
FROM
t_compete_project p LEFT JOIN t_compete_project_config pc on pc.project_id = p.id
LEFT JOIN
(
SELECT
pp.project_id as projectId
FROM
t_compete_project_player pp LEFT JOIN t_compete_player pl on pp.player_id = pl.id
WHERE
pp.rec_status = 0
and pl .rec_status = 0
)a on a.projectId = p.id
LEFT JOIN
(
SELECT
t.project_id as projectId
FROM
t_compete_team t LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id
LEFT JOIN t_compete_player pl on m.player_id = pl.id
WHERE
t.rec_status = 0
and m .rec_status = 0
and pl .rec_status = 0
GROUP BY t.id
)b on b.projectId = p.id
WHERE
p.type = #{type}
and p.`level` = 2
and p.rec_status = 0
GROUP BY p.id
</select>
</mapper>

19
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)) {

2
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<ProMember> stakeholderList = proMemberDao.selectByExample(stakeholderExample);

4
tall/src/main/resources/application.yml

@ -1,5 +1,5 @@
spring:
profiles:
active: dev
include: util-dev,common
active: test
include: util-test,common

Loading…
Cancel
Save