Browse Source

修改错误

tiaosheng
wang0018 5 years ago
parent
commit
d4bc0c3a9c
  1. 28
      mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java
  2. 11
      mt/src/main/java/com/ccsens/mt/api/ExcelController.java
  3. 4
      mt/src/main/java/com/ccsens/mt/api/KCPlayerController.java
  4. 3
      mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java
  5. 8
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteExcelVo.java
  6. 2
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java
  7. 12
      mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java
  8. 29
      mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java
  9. 6
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java
  10. 54
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java
  11. 62
      mt/src/main/java/com/ccsens/mt/service/CompeteScoreService.java
  12. 336
      mt/src/main/java/com/ccsens/mt/service/CompeteService.java
  13. 9
      mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java
  14. 131
      mt/src/main/java/com/ccsens/mt/service/ExcelService.java
  15. 7
      mt/src/main/java/com/ccsens/mt/service/ICompeteScoreService.java
  16. 12
      mt/src/main/java/com/ccsens/mt/service/ICompeteService.java
  17. 15
      mt/src/main/java/com/ccsens/mt/service/IExcelService.java
  18. 13
      mt/src/main/java/com/ccsens/mt/service/IKCPlayerService.java
  19. 41
      mt/src/main/java/com/ccsens/mt/service/KCPlayerService.java
  20. 1
      mt/src/main/java/com/ccsens/mt/service/ScoreService.java
  21. 4
      mt/src/main/java/com/ccsens/mt/util/Constant.java
  22. 10
      mt/src/main/resources/banner.txt
  23. 10
      mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml
  24. 14
      mt/src/main/resources/mapper_dao/CompeteProjectDao.xml
  25. 691
      mt/src/main/resources/mapper_dao/CompeteScoreDao.xml
  26. 2
      pom.xml
  27. 22
      tall/src/main/resources/banner.txt
  28. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

28
mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java

@ -5,6 +5,7 @@ import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ScoreDto;
import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.bean.vo.ScoreVo;
import com.ccsens.mt.service.ICompeteScoreService;
import com.ccsens.mt.service.ICompeteService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
@ -35,6 +36,8 @@ import java.util.List;
public class CompeteScoreController {
@Resource
private ICompeteService competeService;
@Resource
private ICompeteScoreService competeScoreService;
@ -66,9 +69,9 @@ public class CompeteScoreController {
@ApiOperation(value = "花样赛成绩查看", notes = "Mr.王 -----从花样赛成绩表里面查看出这个人得成绩")
@RequestMapping(value = "/showResult", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<CompeteVo.TotalScoreDisplay>> showResult (@ApiParam @Validated @RequestBody QueryDto<ScoreDto.ShowResultW> params){
public JsonResponse<PageInfo<CompeteVo.TotalScoreDisplay>> showResult (@ApiParam @Validated @RequestBody QueryDto<ScoreDto.ShowResultW> params){
log.info("花样赛详细分数查看:{}",params);
List<CompeteVo.TotalScoreDisplay> totalScoreDisplaysList= competeService.showResult(params.getParam());
PageInfo<CompeteVo.TotalScoreDisplay> totalScoreDisplaysList= competeService.showResult(params.getParam());
return JsonResponse.newInstance().ok(totalScoreDisplaysList);
}
@ -101,14 +104,24 @@ public class CompeteScoreController {
}
// @MustLogin
// @ApiOperation(value = "查看计数赛成绩公示表", notes = "多表关联之后,查询当前你场次得分数信息")
// @RequestMapping(value = "/query/countScoreAll", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
// public JsonResponse<ScoreVo.CountScoreCurrentSite> queryCountScoreAll(@ApiParam @Validated @RequestBody QueryDto<ScoreDto.ShowResult> params) {
// log.info("查看计数赛成绩公示表:{}",params);
// PageInfo<ScoreVo.CountScoreCurrentSite> countScoreCurrentSites = competeService.queryCountScoreAll(params.getParam());
// log.info("查看计数赛成绩公示表:{}",params);
// return JsonResponse.newInstance().ok(countScoreCurrentSites);
// }
@MustLogin
@ApiOperation(value = "查看计数赛成绩公示表", notes = "多表关联之后,查询当前你场次得分数信息")
@RequestMapping(value = "/query/countScoreAll", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<ScoreVo.CountScoreCurrentSite> queryCountScoreAll(@ApiParam @Validated @RequestBody QueryDto<ScoreDto.ShowResult> params) {
public JsonResponse<ScoreVo.CountScorePublicity> queryCountScoreAll(@ApiParam @Validated @RequestBody QueryDto<ScoreDto.ShowResult> params) {
log.info("查看计数赛成绩公示表:{}",params);
PageInfo<ScoreVo.CountScoreCurrentSite> countScoreCurrentSites = competeService.queryCountScoreAll(params.getParam());
log.info("查看计数赛成绩公示表:{}",params);
return JsonResponse.newInstance().ok(countScoreCurrentSites);
PageInfo<ScoreVo.CountScorePublicity> pageInfo = competeService.queryCountScore(params.getParam());
log.info("查看计数赛成绩公示表:{}",pageInfo);
return JsonResponse.newInstance().ok(pageInfo);
}
@MustLogin
@ -116,7 +129,8 @@ public class CompeteScoreController {
@RequestMapping(value = "/submitScore", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse submitScore(@ApiParam @Validated @RequestBody QueryDto<CompeteDto.SubmitScore> params) {
log.info("查询比赛项目上的参赛选手列表:{}",params);
competeService.submitScore(params.getParam());
// competeService.submitScore(params.getParam());
competeScoreService.submitScore(params.getParam());
return JsonResponse.newInstance().ok();
}

11
mt/src/main/java/com/ccsens/mt/api/ExcelController.java

@ -35,6 +35,17 @@ public class ExcelController {
@Resource
private IExcelService excelService;
@MustLogin
@ApiOperation(value = "比赛前八名(导出)", notes = "whj")
@RequestMapping(value = "/beforeEight", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse beforeEight(@ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteTime> params) throws IOException {
log.info("比赛前八名(导出):{}",params);
String path = excelService.beforeEight(params);
log.info("比赛前八名(导出)结果:{}", path);
return JsonResponse.newInstance().ok(path);
}
@MustLogin
@ApiOperation(value = "xxx大赛报名表(导出)", notes = "")
@RequestMapping(value = "/competeJoin", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})

4
mt/src/main/java/com/ccsens/mt/api/KCPlayerController.java

@ -37,11 +37,11 @@ public class KCPlayerController {
return JsonResponse.newInstance().ok(signature);
}
@ApiOperation(value = "查看云点播签名", notes = "从redis获取云点播签名,有则返回,没有则调用工具类查询,存入redis并返回")
@ApiOperation(value = "云点播回调接口", notes = "上传时候后,云点播回调接口,保存视频的路径")
@RequestMapping(value = "/receive", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse receive(@RequestBody Map map) {
log.info("接受文件上传通知:{}",map);
kcPlayerService.saveVideoUrl(map);
return JsonResponse.newInstance().ok();
}

3
mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java

@ -28,7 +28,7 @@ public class CompeteDto {
public static class CompeteSite{
@NotNull
@ApiModelProperty("场次id")
private int siteId;
private Long siteId;
}
@Data
@ -352,6 +352,7 @@ public class CompeteDto {
private Long projectId;
@ApiModelProperty("大赛id")
private Long competeTimeId;
@NotNull
@ApiModelProperty("场次id")
private Long siteOrderId;
@ApiModelProperty("主裁打分")

8
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteExcelVo.java

@ -60,5 +60,13 @@ public class CompeteExcelVo {
private String year;
}
@Data
@ApiModel("前八名-响应")
public static class BeforeEight{
@ApiModelProperty("组名")
private String groupName;
@ApiModelProperty("前八名学生名字,逗号分隔")
private String eightNames;
}
}

2
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java

@ -492,6 +492,8 @@ public class CompeteVo {
public BigDecimal referee0 = new BigDecimal(0);
@ApiModelProperty("最后得分")
public BigDecimal result = new BigDecimal(0);
// @ApiModelProperty("排名")
// public int rownum;
@ApiModelProperty("排名")
public int order;
@ApiModelProperty("备注")

12
mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java

@ -248,9 +248,15 @@ public class ProvinceCompeteVo {
@ApiModelProperty("结束时间")
private Long endTime;
public Long getEndTime(){
if(ObjectUtil.isNotNull(startTime) && startTime != 0){
return startTime + Constant.UPLOAD_VIDEO_TIME;
// public Long getEndTime(){
// if(ObjectUtil.isNotNull(startTime) && startTime != 0){
// return startTime + Constant.UPLOAD_VIDEO_TIME;
// }
// return null;
// }
public Long getStartTime(){
if(ObjectUtil.isNotNull(endTime) && endTime != 0){
return endTime - Constant.UPLOAD_VIDEO_TIME;
}
return null;
}

29
mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java

@ -225,7 +225,34 @@ public class ScoreVo {
private BigDecimal finalScore;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("名词")
@ApiModelProperty("名次")
private int rangee;
@ApiModelProperty("视频路劲")
private String videoUrl;
}
@Data
@ApiModel("计数赛成绩公示-返回")
public static class CountScorePublicity{
@ApiModelProperty("组别")
private String groupName;
@ApiModelProperty("团队名")
private String companyName;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("主裁1打分")
private BigDecimal mainOneScore;
@ApiModelProperty("主裁2打分")
private BigDecimal mainTwoScore;
@ApiModelProperty("应得分")
private Integer shouldScore;
@ApiModelProperty("扣除次数")
private Integer deductTime;
@ApiModelProperty("最终成绩")
private BigDecimal finalScore;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("名次")
private int rangee;
}

6
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java

@ -19,6 +19,12 @@ public interface CompeteProjectDao extends CompeteProjectMapper {
List<TableVo.CompeteJoin> getPlayerForSingle (@Param("level") Byte level, @Param("type") Byte type);
List<TableVo.CompeteJoin> getPlayerForTeam (@Param("level") Byte level, @Param("type") Byte type);
/**
* 根据大赛ID查询二级非通级项目
* @param competeTimeId 大赛ID
* @return 项目
*/
List<CompeteProject> queryProject(@Param("id") Long competeTimeId);
/**
* 查找项目下的参赛人数或队伍
* @param projectId

54
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java

@ -42,4 +42,58 @@ public interface CompeteScoreDao {
* @return
*/
List<ScoreVo.CountScoreCurrentSite> queryCountScoreAllByTeam(Long projectId);
/**
* 项目前八名
* @param projectId 项目ID
* @param competeTimeId 大赛ID
* @return 前八名
*/
List<CompeteExcelVo.BeforeEight> queryEight(@Param("projectId") Long projectId, @Param("competeTimeId") Long competeTimeId);
/**
* 计数赛限组别前八名
* @param projectId 项目ID
* @param competeTimeId 大赛ID
* @return 前八名
*/
List<CompeteExcelVo.BeforeEight> queryEightGroupLimit(@Param("projectId") Long projectId, @Param("competeTimeId") Long competeTimeId);
/**
* 花样赛不限组别前八名
* @param projectId 项目ID
* @param competeTimeId 大赛ID
* @return 前八名
*/
List<CompeteExcelVo.BeforeEight> queryEightGroupNotLimit(@Param("projectId") Long projectId, @Param("competeTimeId") Long competeTimeId);
/**
* 花样赛限组别前八名
* @param projectId 项目ID
* @param competeTimeId 大赛ID
* @return 前八名
*/
List<CompeteExcelVo.BeforeEight> queryEightVarietyGroupLimit(@Param("projectId") Long projectId, @Param("competeTimeId") Long competeTimeId);
/**
* 查询计数赛中团体赛成绩
* @param projectId 项目ID
* @return 成绩
*/
List<ScoreVo.CountScorePublicity> queryCountScoreTeam(@Param("projectId") Long projectId);
/**
* 查询计数赛中个人赛成绩
* @param projectId 项目ID
* @return 成绩
*/
List<ScoreVo.CountScorePublicity> queryCountScorePerson(@Param("projectId") Long projectId);
/**
* 统计花样赛成绩
* @param projectId 项目ID
* @return 成绩
*/
List<CompeteVo.TotalScoreDisplay> queryVarietyScore(@Param("projectId") Long projectId);
}

62
mt/src/main/java/com/ccsens/mt/service/CompeteScoreService.java

@ -0,0 +1,62 @@
package com.ccsens.mt.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.po.CompeteCountScore;
import com.ccsens.mt.bean.po.CompeteCountScoreExample;
import com.ccsens.mt.persist.mapper.CompeteCountScoreMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
/**
* @author
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class CompeteScoreService implements ICompeteScoreService{
@Resource
private CompeteCountScoreMapper competeCountScoreMapper;
@Resource
private Snowflake snowflake;
@Override
public void submitScore(CompeteDto.SubmitScore param) {
//查找该场次已经有的分数
CompeteCountScore countScore;
CompeteCountScoreExample countScoreExample = new CompeteCountScoreExample();
countScoreExample.createCriteria().andSiteOrderIdEqualTo(param.getSiteOrderId()).andProjectIdEqualTo(param.getProjectId());
List<CompeteCountScore> countScoreList = competeCountScoreMapper.selectByExample(countScoreExample);
if(CollectionUtil.isNotEmpty(countScoreList)){
countScore = countScoreList.get(0);
countScore.setChiefJudgmentScore(param.getMainScore());
countScore.setJudgmentAScore(param.getMainOneScore());
countScore.setJudgmentBScore2(param.getMainTwoScore());
countScore.setShouldTimes(param.getShouldScore());
countScore.setDeductTimes(param.getDeductTime());
countScore.setDeductCause(param.getDeductReason());
countScore.setFinalScore(param.getFinalScore());
competeCountScoreMapper.updateByPrimaryKeySelective(countScore);
}else {
countScore = new CompeteCountScore();
countScore.setId(snowflake.nextId());
countScore.setProjectId(param.getProjectId());
countScore.setSiteOrderId(param.getSiteOrderId());
countScore.setChiefJudgmentScore(param.getMainScore());
countScore.setJudgmentAScore(param.getMainOneScore());
countScore.setJudgmentBScore2(param.getMainTwoScore());
countScore.setShouldTimes(param.getShouldScore());
countScore.setDeductTimes(param.getDeductTime());
countScore.setDeductCause(param.getDeductReason());
countScore.setFinalScore(param.getFinalScore());
competeCountScoreMapper.insertSelective(countScore);
}
}
}

336
mt/src/main/java/com/ccsens/mt/service/CompeteService.java

@ -105,6 +105,7 @@ public class CompeteService implements ICompeteService {
@Resource
private CompeteVideoMapper competeVideoMapper;
@Override
public PageInfo<CompeteVo.TotalScoreDisplay> showResultPage(ScoreDto.ShowResultW param) {
PageHelper.startPage(param.getPageNum(),param.getPageSize());
@ -213,126 +214,131 @@ public class CompeteService implements ICompeteService {
* @param param
*/
@Override
public List<CompeteVo.TotalScoreDisplay> showResult(ScoreDto.ShowResultW param) {
List<CompeteVo.TotalScoreDisplay> totalScoreDisplaysList=new ArrayList<>();
CompeteStartOrderExample competeStartOrderExample =new CompeteStartOrderExample();
competeStartOrderExample.createCriteria().andProjectIdEqualTo(param.getProjectId());
competeStartOrderExample.setOrderByClause("player_id DESC");
List<CompeteStartOrder> competeStartOrdersList = competeStartOrderMapper.selectByExample(competeStartOrderExample);
// if(competeStartOrdersList.size()<1){
// throw new BaseException(CodeEnum.PARAM_ERROR);
// }
competeStartOrdersList.forEach(competeStartOrder -> {
//一个人或者一个团队得数据
CompeteVo.TotalScoreDisplay totalScoreDisplay = new CompeteVo.TotalScoreDisplay();
totalScoreDisplay.setRemark(totalScoreDisplay.getRemark());
//项目名
// CompeteProject project = competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId());
// if(ObjectUtil.isNotNull(project)) {
// totalScoreDisplay.setCompanyName(project.getName());
// }
//名字
if(competeStartOrder.getTeam().equals((byte) 0)){
//个人人名
CompetePlayer player = competePlayerDao.selectByPrimaryKey(competeStartOrder.getPlayerId());
if(ObjectUtil.isNotNull(player)) {
totalScoreDisplay.setPeopleName(player.getName());
//个人所属团队名
CompeteCompany competeCompany = competeCompanyMapper.selectByPrimaryKey(player.getCompanyId());
if (ObjectUtil.isNotNull(competeCompany)){
totalScoreDisplay.setCompanyName(competeCompany.getName());
}
}
}else {
//团体名
CompeteTeam competeTeam = competeTeamDao.selectByPrimaryKey(competeStartOrder.getPlayerId());
CompeteCompany competeCompany =competeCompanyMapper.selectByPrimaryKey(competeTeam.getCompanyId());
totalScoreDisplay.setCompanyName(competeCompany.getName());
//团队人名
CompeteTeamMemberExample competeTeamMemberExample = new CompeteTeamMemberExample();
competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
List<CompeteTeamMember> competeTeamMemberList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample);
StringBuilder stringBuilder=new StringBuilder("");
competeTeamMemberList.forEach(mes->{
CompetePlayer competePlayer = competePlayerDao.selectByPrimaryKey(mes.getPlayerId());
stringBuilder.append(competePlayer.getName()+"、");
});
//totalScoreDisplay.setPeopleName(stringBuilder.toString());
// CompeteTeamMemberExample competeTeamMemberExample =new CompeteTeamMemberExample();
// competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeStartOrder.getPlayerId());
// List<CompeteTeamMember> competeTeamMembersList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample);
public PageInfo<CompeteVo.TotalScoreDisplay> showResult(ScoreDto.ShowResultW param) {
PageHelper.startPage(param.getPageNum(), param.getPageSize());
List<CompeteVo.TotalScoreDisplay> list = competeScoreDao.queryVarietyScore(param.getProjectId());
return new PageInfo<>(list);
}
// public List<CompeteVo.TotalScoreDisplay> showResult(ScoreDto.ShowResultW param) {
// List<CompeteVo.TotalScoreDisplay> totalScoreDisplaysList=new ArrayList<>();
// CompeteStartOrderExample competeStartOrderExample =new CompeteStartOrderExample();
// competeStartOrderExample.createCriteria().andProjectIdEqualTo(param.getProjectId());
// competeStartOrderExample.setOrderByClause("player_id DESC");
// List<CompeteStartOrder> competeStartOrdersList = competeStartOrderMapper.selectByExample(competeStartOrderExample);
//// if(competeStartOrdersList.size()<1){
//// throw new BaseException(CodeEnum.PARAM_ERROR);
//// }
// competeStartOrdersList.forEach(competeStartOrder -> {
// //一个人或者一个团队得数据
// CompeteVo.TotalScoreDisplay totalScoreDisplay = new CompeteVo.TotalScoreDisplay();
// totalScoreDisplay.setRemark(totalScoreDisplay.getRemark());
// //项目名
//// CompeteProject project = competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId());
//// if(ObjectUtil.isNotNull(project)) {
//// totalScoreDisplay.setCompanyName(project.getName());
//// }
// //名字
// if(competeStartOrder.getTeam().equals((byte) 0)){
// //个人人名
// CompetePlayer player = competePlayerDao.selectByPrimaryKey(competeStartOrder.getPlayerId());
// if(ObjectUtil.isNotNull(player)) {
// totalScoreDisplay.setPeopleName(player.getName());
// //个人所属团队名
// CompeteCompany competeCompany = competeCompanyMapper.selectByPrimaryKey(player.getCompanyId());
// if (ObjectUtil.isNotNull(competeCompany)){
// totalScoreDisplay.setCompanyName(competeCompany.getName());
// }
// }
// }else {
// //团体名
// CompeteTeam competeTeam = competeTeamDao.selectByPrimaryKey(competeStartOrder.getPlayerId());
// CompeteCompany competeCompany =competeCompanyMapper.selectByPrimaryKey(competeTeam.getCompanyId());
// totalScoreDisplay.setCompanyName(competeCompany.getName());
// //团队人名
// CompeteTeamMemberExample competeTeamMemberExample = new CompeteTeamMemberExample();
// competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
// List<CompeteTeamMember> competeTeamMemberList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample);
// StringBuilder stringBuilder=new StringBuilder("");
// competeTeamMembersList.forEach(competeTeamMember -> {
// stringBuilder.append(competePlayerDao.selectByPrimaryKey(competeTeamMember.getPlayerId()).getName()+'、');
// competeTeamMemberList.forEach(mes->{
// CompetePlayer competePlayer = competePlayerDao.selectByPrimaryKey(mes.getPlayerId());
// stringBuilder.append(competePlayer.getName()+"、");
// });
String namess=stringBuilder.toString().substring(0,stringBuilder.length()-1);
totalScoreDisplay.setPeopleName(namess);
}
List<CompeteVo.Result> results = competeTimeDao.selectJudgmentS(competeStartOrder.getId());
//7个教练成绩也上去了
for (CompeteVo.Result r :results){
if(r.getChief()==0){
totalScoreDisplay.setReferee0(r.getScore());
}else if(r.getChief()==1){
totalScoreDisplay.setReferee1(r.getScore());
}else if(r.getChief()==2){
totalScoreDisplay.setReferee2(r.getScore());
}else if(r.getChief()==3){
totalScoreDisplay.setReferee3(r.getScore());
}else if(r.getChief()==4){
totalScoreDisplay.setReferee4(r.getScore());
}else if(r.getChief()==5){
totalScoreDisplay.setReferee5(r.getScore());
}else if(r.getChief()==6){
totalScoreDisplay.setReferee6(r.getScore());
}
}
BigDecimal bigDecimal1to3=new BigDecimal(0);
bigDecimal1to3.add(totalScoreDisplay.getReferee1()).add(totalScoreDisplay.getReferee2()).add(totalScoreDisplay.getReferee3());
BigDecimal bigDecimalavg1to3=new BigDecimal(0);
BigDecimal bignum=new BigDecimal(3);
totalScoreDisplay.setAvg1To3(bigDecimalavg1to3.divide(bignum,2,BigDecimal.ROUND_HALF_UP));
BigDecimal bigDecimal4to6=new BigDecimal(0);
bigDecimal4to6.add(totalScoreDisplay.getReferee4()).add(totalScoreDisplay.getReferee5()).add(totalScoreDisplay.getReferee6());
BigDecimal bigDecimalavg4to6=new BigDecimal(0);
BigDecimal bignum1=new BigDecimal(3);
totalScoreDisplay.setAvg4To6(bigDecimalavg4to6.divide(bignum1,2,BigDecimal.ROUND_HALF_UP));
//总成绩也出来了
BigDecimal re=new BigDecimal(0);
re.add(totalScoreDisplay.getAvg1To3()).add(totalScoreDisplay.getAvg4To6()).subtract(totalScoreDisplay.getReferee0());
totalScoreDisplay.setResult(re);
totalScoreDisplaysList.add(totalScoreDisplay);
});
// Collections.sort(totalScoreDisplaysList, new Comparator<CompeteVo.TotalScoreDisplay>() {
// @Override
// public BigDecimal compare(CompeteVo.TotalScoreDisplay o1, CompeteVo.TotalScoreDisplay o2) {
// o1.getResult().subtract(o2.getResult());
// return o1.getResult();
// //totalScoreDisplay.setPeopleName(stringBuilder.toString());
//// CompeteTeamMemberExample competeTeamMemberExample =new CompeteTeamMemberExample();
//// competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeStartOrder.getPlayerId());
//// List<CompeteTeamMember> competeTeamMembersList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample);
//// StringBuilder stringBuilder=new StringBuilder("");
//// competeTeamMembersList.forEach(competeTeamMember -> {
//// stringBuilder.append(competePlayerDao.selectByPrimaryKey(competeTeamMember.getPlayerId()).getName()+'、');
//// });
// String namess=stringBuilder.toString().substring(0,stringBuilder.length()-1);
// totalScoreDisplay.setPeopleName(namess);
// }
// List<CompeteVo.Result> results = competeTimeDao.selectJudgmentS(competeStartOrder.getId());
// //7个教练成绩也上去了
// for (CompeteVo.Result r :results){
// if(r.getChief()==0){
// totalScoreDisplay.setReferee0(r.getScore());
// }else if(r.getChief()==1){
// totalScoreDisplay.setReferee1(r.getScore());
// }else if(r.getChief()==2){
// totalScoreDisplay.setReferee2(r.getScore());
// }else if(r.getChief()==3){
// totalScoreDisplay.setReferee3(r.getScore());
// }else if(r.getChief()==4){
// totalScoreDisplay.setReferee4(r.getScore());
// }else if(r.getChief()==5){
// totalScoreDisplay.setReferee5(r.getScore());
// }else if(r.getChief()==6){
// totalScoreDisplay.setReferee6(r.getScore());
// }
// }
// BigDecimal bigDecimal1to3=new BigDecimal(0);
// bigDecimal1to3.add(totalScoreDisplay.getReferee1()).add(totalScoreDisplay.getReferee2()).add(totalScoreDisplay.getReferee3());
// BigDecimal bigDecimalavg1to3=new BigDecimal(0);
// BigDecimal bignum=new BigDecimal(3);
// totalScoreDisplay.setAvg1To3(bigDecimalavg1to3.divide(bignum,2,BigDecimal.ROUND_HALF_UP));
//
// BigDecimal bigDecimal4to6=new BigDecimal(0);
// bigDecimal4to6.add(totalScoreDisplay.getReferee4()).add(totalScoreDisplay.getReferee5()).add(totalScoreDisplay.getReferee6());
// BigDecimal bigDecimalavg4to6=new BigDecimal(0);
// BigDecimal bignum1=new BigDecimal(3);
// totalScoreDisplay.setAvg4To6(bigDecimalavg4to6.divide(bignum1,2,BigDecimal.ROUND_HALF_UP));
// //总成绩也出来了
// BigDecimal re=new BigDecimal(0);
// re.add(totalScoreDisplay.getAvg1To3()).add(totalScoreDisplay.getAvg4To6()).subtract(totalScoreDisplay.getReferee0());
// totalScoreDisplay.setResult(re);
// totalScoreDisplaysList.add(totalScoreDisplay);
// });
for (int i = 0; i < totalScoreDisplaysList.size() - 1; i++) {
for (int j = 1; j < totalScoreDisplaysList.size() - i; j++) {
BigDecimal b1 = totalScoreDisplaysList.get(j - 1).getResult();
BigDecimal b2 = totalScoreDisplaysList.get(j).getResult();
CompeteVo.TotalScoreDisplay a;
if (b1.compareTo(b2) < 0) {
a = totalScoreDisplaysList.get(j - 1);
totalScoreDisplaysList.set((j - 1), totalScoreDisplaysList.get(j));
totalScoreDisplaysList.set(j, a);
}
}
}
for (int i=0; i<totalScoreDisplaysList.size();i++){
CompeteVo.TotalScoreDisplay totalScoreDisplay = totalScoreDisplaysList.get(i);
totalScoreDisplay.setOrder(i+1);
}
return totalScoreDisplaysList;
}
//// Collections.sort(totalScoreDisplaysList, new Comparator<CompeteVo.TotalScoreDisplay>() {
//// @Override
//// public BigDecimal compare(CompeteVo.TotalScoreDisplay o1, CompeteVo.TotalScoreDisplay o2) {
//// o1.getResult().subtract(o2.getResult());
//// return o1.getResult();
//// }
//// });
//
// for (int i = 0; i < totalScoreDisplaysList.size() - 1; i++) {
// for (int j = 1; j < totalScoreDisplaysList.size() - i; j++) {
// BigDecimal b1 = totalScoreDisplaysList.get(j - 1).getResult();
// BigDecimal b2 = totalScoreDisplaysList.get(j).getResult();
//
// CompeteVo.TotalScoreDisplay a;
// if (b1.compareTo(b2) < 0) {
// a = totalScoreDisplaysList.get(j - 1);
// totalScoreDisplaysList.set((j - 1), totalScoreDisplaysList.get(j));
// totalScoreDisplaysList.set(j, a);
// }
// }
// }
//
// for (int i=0; i<totalScoreDisplaysList.size();i++){
// CompeteVo.TotalScoreDisplay totalScoreDisplay = totalScoreDisplaysList.get(i);
// totalScoreDisplay.setOrder(i+1);
// }
//
// return totalScoreDisplaysList;
// }
/**
@ -1403,43 +1409,55 @@ public class CompeteService implements ICompeteService {
@Override
public List<ScoreVo.CountScoreCurrentSite> countScoreCurrentSite(CompeteDto.CompeteSite params) {
int siteId = params.getSiteId();
Long siteId = params.getSiteId();
List<ScoreVo.CountScoreCurrentSite> countScoreCurrentSites = competeScoreDao.selectCountScoreCurrentSite(siteId);
countScoreCurrentSites.forEach(mes->{
CompeteStartOrder competeStartOrder = competeStartOrderMapper.selectByPrimaryKey(siteId);
CompeteVideoExample competeVideoExample = new CompeteVideoExample();
competeVideoExample.createCriteria().andProjectIdEqualTo(competeStartOrder.getProjectId()).andPlayerIdEqualTo(competeStartOrder.getPlayerId());
List<CompeteVideo> competeVideos = competeVideoMapper.selectByExample(competeVideoExample);
CompeteVideo competeVideo = competeVideos.get(0);
String path = competeVideo.getVideoUrl();
mes.setVideoUrl(path);
});
return countScoreCurrentSites;
}
@Override
public void submitScore(CompeteDto.SubmitScore params) {
long competeTimeId = params.getCompeteTimeId();
long projectId = params.getProjectId();
long siteOrderId = params.getSiteOrderId();
CompeteCountScoreExample competeCountScoreExample = new CompeteCountScoreExample();
competeCountScoreExample.createCriteria().
andCompeteTimeIdEqualTo(competeTimeId).
andProjectIdEqualTo(projectId).andSiteOrderIdEqualTo(siteOrderId).
andSiteOrderIdEqualTo(params.getSiteOrderId()).
andChiefJudgmentScoreEqualTo(params.getMainScore()).
andJudgmentAScoreEqualTo(params.getMainOneScore()).
andJudgmentBScore2EqualTo(params.getMainTwoScore()).
andShouldTimesEqualTo(params.getShouldScore()).
andDeductTimesEqualTo(params.getDeductTime()).
andDeductCauseEqualTo(params.getDeductReason()).
andFinalScoreEqualTo(params.getFinalScore()).
andIdEqualTo(snowflake.nextId());
CompeteCountScore competeCountScore = new CompeteCountScore();
competeCountScore.setCompeteTimeId(competeTimeId);
competeCountScore.setProjectId(projectId);
competeCountScore.setSiteOrderId(siteOrderId);
competeCountScore.setChiefJudgmentScore(params.getMainScore());
competeCountScore.setJudgmentAScore(params.getMainOneScore());
competeCountScore.setJudgmentBScore2(params.getMainTwoScore());
competeCountScore.setShouldTimes(params.getShouldScore());
competeCountScore.setDeductTimes(params.getDeductTime());
competeCountScore.setDeductCause(params.getDeductReason());
competeCountScore.setFinalScore(params.getFinalScore());
competeCountScore.setId(snowflake.nextId());
competeCountScore.setRecStatus((byte) 0);
competeCountScoreMapper.insert(competeCountScore);
// long competeTimeId = params.getCompeteTimeId();
// long projectId = params.getProjectId();
// long siteOrderId = params.getSiteOrderId();
// CompeteCountScoreExample competeCountScoreExample = new CompeteCountScoreExample();
// competeCountScoreExample.createCriteria().
// andCompeteTimeIdEqualTo(competeTimeId).
// andProjectIdEqualTo(projectId).andSiteOrderIdEqualTo(siteOrderId).
// andSiteOrderIdEqualTo(params.getSiteOrderId()).
// andChiefJudgmentScoreEqualTo(params.getMainScore()).
// andJudgmentAScoreEqualTo(params.getMainOneScore()).
// andJudgmentBScore2EqualTo(params.getMainTwoScore()).
// andShouldTimesEqualTo(params.getShouldScore()).
// andDeductTimesEqualTo(params.getDeductTime()).
// andDeductCauseEqualTo(params.getDeductReason()).
// andFinalScoreEqualTo(params.getFinalScore()).
// andIdEqualTo(snowflake.nextId());
// CompeteCountScore competeCountScore = new CompeteCountScore();
// competeCountScore.setCompeteTimeId(competeTimeId);
// competeCountScore.setProjectId(projectId);
// competeCountScore.setSiteOrderId(siteOrderId);
// competeCountScore.setChiefJudgmentScore(params.getMainScore());
// competeCountScore.setJudgmentAScore(params.getMainOneScore());
// competeCountScore.setJudgmentBScore2(params.getMainTwoScore());
// competeCountScore.setShouldTimes(params.getShouldScore());
// competeCountScore.setDeductTimes(params.getDeductTime());
// competeCountScore.setDeductCause(params.getDeductReason());
// competeCountScore.setFinalScore(params.getFinalScore());
// competeCountScore.setId(snowflake.nextId());
// competeCountScore.setRecStatus((byte) 0);
// competeCountScoreMapper.insert(competeCountScore);
}
@Override
@ -1815,6 +1833,30 @@ public class CompeteService implements ICompeteService {
return null;
}
@Override
public PageInfo<ScoreVo.CountScorePublicity> queryCountScore(ScoreDto.ShowResult param) {
log.info("计数赛成绩公示:{}", param);
CompeteProject project = competeProjectMapper.selectByPrimaryKey(param.getProjectId());
log.info("查询{}项目的成绩:", project);
if (project == null) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
PageHelper.startPage(param.getPage(), param.getSize());
List<ScoreVo.CountScorePublicity> list;
if (project.getTeam() == Constant.Compete.TEAM_YES) {
// 团体赛
list = competeScoreDao.queryCountScoreTeam(param.getProjectId());
} else {
// 个人赛
list = competeScoreDao.queryCountScorePerson(param.getProjectId());
}
return new PageInfo<>(list);
}
@Override
public String speedPassOut(CompeteDto.CompeteTimeAndProjectId params) throws IOException {

9
mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java

@ -206,7 +206,7 @@ public class CompeteTaskService implements ICompeteTaskService {
competeStartOrder.setSite((byte) site);
competeStartOrder.setTeam(project.getTeam());
competeStartOrder.setCompeteOrder((byte) competeOrder);
// competeStartOrder.setTaskId(taskId);
competeStartOrder.setTaskId(taskId);
competeStartOrder.setStartTime(projectStartTime);
competeStartOrder.setEndTime(projectStartTime + orderTime);
log.info("添加场次信息:{}", competeStartOrder);
@ -422,6 +422,7 @@ public class CompeteTaskService implements ICompeteTaskService {
List<ProvinceCompeteVo.QueryJudgment> queryJudgmentList = competeJudgmentDao.queryJudgment(param.getCompeteTimeId(), param.getProjectId());
if (CollectionUtil.isNotEmpty(queryJudgmentList)) {
queryJudgmentList.forEach(projectJudgment -> {
// for(ProvinceCompeteVo.QueryJudgment projectJudgment : queryJudgmentList){
//裁判数量
int count = projectJudgment.getProjectType() == 0 ? 3 : 7;
for (int i = 0; i < projectJudgment.getSiteNums(); i++) {
@ -438,7 +439,10 @@ public class CompeteTaskService implements ICompeteTaskService {
}
} else {
int a = projectJudgment.getSiteList().size();
for (int j = 0; j < count - a; j++) {
System.out.println("==========="+ a);
System.out.println("==========="+ projectJudgment.getSiteNums());
System.out.println("==========="+ (projectJudgment.getSiteNums()-a));
for (int j = 0; j < projectJudgment.getSiteNums() - a; j++) {
ProvinceCompeteVo.ProjectSite siteJudgment = new ProvinceCompeteVo.ProjectSite();
siteJudgment.setSiteNum(a + j + 1);
projectJudgment.getSiteList().add(siteJudgment);
@ -451,6 +455,7 @@ public class CompeteTaskService implements ICompeteTaskService {
}
}
}
// }
});
}
return queryJudgmentList;

131
mt/src/main/java/com/ccsens/mt/service/ExcelService.java

@ -1,8 +1,8 @@
package com.ccsens.mt.service;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdcardUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.dto.ScoreDto;
@ -13,24 +13,15 @@ import com.ccsens.mt.bean.vo.ScoreVo;
import com.ccsens.mt.bean.vo.TableVo;
import com.ccsens.mt.persist.dao.*;
import com.ccsens.mt.persist.mapper.*;
import com.ccsens.util.CodeEnum;
import com.ccsens.mt.util.Constant;
import com.ccsens.util.PoiUtil;
import com.ccsens.util.PropUtil;
import com.ccsens.util.RedisUtil;
import com.ccsens.util.WebConstant;
import com.ccsens.util.bean.dto.QueryDto;
import com.ccsens.util.exception.BaseException;
import com.ctc.wstx.util.DataUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.time.DateUtils;
import org.apache.poi.POIDocument;
import org.apache.poi.ss.usermodel.Table;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@ -38,7 +29,6 @@ import org.eclipse.jetty.util.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.unit.DataUnit;
import javax.annotation.Resource;
import java.io.File;
@ -46,11 +36,9 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
@Slf4j
@ -68,21 +56,11 @@ public class ExcelService implements IExcelService {
@Resource
private CompetePlayerDao competePlayerDao;
@Resource
private CompeteTeamMemberMapper competeTeamMemberMapper;
@Resource
private CompeteProjectMapper competeProjectMapper;
@Resource
private CompeteProjectPlayerMapper competeProjectPlayerMapper;
@Resource
private CompeteGroupMapper competeGroupMapper;
@Resource
private CompeteProjectConfigMapper competeProjectConfigMapper;
@Resource
private CommonFileMapper commonFileMapper;
@Resource
private IProvinceService provinceService;
@Resource
CompeteCoachMapper competeCoachMapper;
private CompeteCoachMapper competeCoachMapper;
@Resource
private CompetePlayerMapper competePlayerMapper;
@ -1237,7 +1215,6 @@ public class ExcelService implements IExcelService {
private String getExcelFilePathForSchedulePlanning(List<TableVo.SchedulePlan> arrayList) throws IOException {
//创建excle表格对象
List<List<PoiUtil.PoiUtilCell>> list = new ArrayList<>();
@ -1335,7 +1312,7 @@ public class ExcelService implements IExcelService {
@Override
public String patternExpTable(ScoreDto.ShowResultW param) {
List<CompeteVo.TotalScoreDisplay> totalScoreDisplays = competeService.showResult(param);
List<CompeteVo.TotalScoreDisplay> totalScoreDisplays = competeService.showResult(param).getList();
List<List<PoiUtil.PoiUtilCell>> list = new ArrayList<>();
List<PoiUtil.PoiUtilCell> zero=new ArrayList<>();
PoiUtil.PoiUtilCell zeroOne=new PoiUtil.PoiUtilCell("比赛成绩公示(花样赛)", 14, 1);
@ -1587,5 +1564,105 @@ public class ExcelService implements IExcelService {
return PropUtil.domain + "file/download/know?path="+path;
}
@Override
public String beforeEight(QueryDto<CompeteDto.CompeteTime> params) {
log.info("导出{}大赛各项的前八名", params);
// 查询项目
Long competeTimeId = params.getParam().getCompeteTimeId();
List<CompeteProject> list = competeProjectDao.queryProject(competeTimeId);
Workbook workbook = new XSSFWorkbook();
list.forEach(project -> {
List<CompeteExcelVo.BeforeEight> eights;
// 个人赛
if (project.getTeam() == Constant.Compete.TEAM_NO) {
eights = competeScoreDao.queryEight(project.getId(), competeTimeId);
} else if (project.getJoinRule() == Constant.Compete.PROJECT_JOIN_RULE_GROUP_NOT_LIMIT) {
// 团体赛不限组别 整体排名
eights = competeScoreDao.queryEightGroupNotLimit(project.getId(), competeTimeId);
} else {
// 团体赛限组别 组别内排名
eights = competeScoreDao.queryEightGroupLimit(project.getId(), competeTimeId);
}
List<List<PoiUtil.PoiUtilCell>> raws = new ArrayList<>();
initTitle(project, raws);
fillBody(project, eights, raws);
PoiUtil.exportWB(project.getName(), raws, workbook);
});
String filepath = "mt/" + DateUtil.today() + "/" + System.currentTimeMillis() + ".xlsx";
String path = PropUtil.path + filepath;
File file = new File(path);
try {
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
}
OutputStream outputStream = new FileOutputStream(file);
workbook.write(outputStream);
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return PropUtil.domain + "file/download/know?path="+path;
}
/**
* 添加导出前八名内容部分
* @param project 项目
* @param eights 前八名信息
* @param raws 表格行对象
*/
private void fillBody(CompeteProject project, List<CompeteExcelVo.BeforeEight> eights, List<List<PoiUtil.PoiUtilCell>> raws) {
if (project.getJoinRule() == Constant.Compete.PROJECT_JOIN_RULE_GROUP_LIMIT) {
eights.forEach(eight -> {
if (StrUtil.isEmpty(eight.getEightNames())) {
return;
}
List<PoiUtil.PoiUtilCell> cells = new ArrayList<>();
cells.add(new PoiUtil.PoiUtilCell(eight.getGroupName()));
String[] split = eight.getEightNames().split(",");
for (String name : split) {
cells.add(new PoiUtil.PoiUtilCell(name));
}
raws.add(cells);
});
} else {
for (int i = 0; i < eights.size(); i++) {
List<PoiUtil.PoiUtilCell> cells = new ArrayList<>();
cells.add(new PoiUtil.PoiUtilCell("第" + i + "名"));
cells.add(new PoiUtil.PoiUtilCell(eights.get(i).getEightNames(), 8, 1));
raws.add(cells);
}
}
}
/**
* 初始化导出前八名表格头
* @param project 项目
* @param raws
*/
private void initTitle(CompeteProject project, List<List<PoiUtil.PoiUtilCell>> raws) {
List<PoiUtil.PoiUtilCell> title = new ArrayList<>();
title.add(new PoiUtil.PoiUtilCell( "2020年山西省学生跳绳比赛", 9 , 1));
raws.add(title);
List<PoiUtil.PoiUtilCell> title2 = new ArrayList<>();
title2.add(new PoiUtil.PoiUtilCell(project.getName() , 9 , 1));
raws.add(title2);
if (project.getJoinRule() == Constant.Compete.PROJECT_JOIN_RULE_GROUP_LIMIT) {
List<PoiUtil.PoiUtilCell> head = new ArrayList<>();
head.add(new PoiUtil.PoiUtilCell(""));
head.add(new PoiUtil.PoiUtilCell("第一名"));
head.add(new PoiUtil.PoiUtilCell("第二名"));
head.add(new PoiUtil.PoiUtilCell("第三名"));
head.add(new PoiUtil.PoiUtilCell("第四名"));
head.add(new PoiUtil.PoiUtilCell("第五名"));
head.add(new PoiUtil.PoiUtilCell("第六名"));
head.add(new PoiUtil.PoiUtilCell("第七名"));
head.add(new PoiUtil.PoiUtilCell("第八名"));
raws.add(head);
}
}
}

7
mt/src/main/java/com/ccsens/mt/service/ICompeteScoreService.java

@ -0,0 +1,7 @@
package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.CompeteDto;
public interface ICompeteScoreService {
void submitScore(CompeteDto.SubmitScore param);
}

12
mt/src/main/java/com/ccsens/mt/service/ICompeteService.java

@ -157,7 +157,7 @@ public interface ICompeteService {
PageInfo<CompeteVo.TotalScoreDisplay> showResultPage(ScoreDto.ShowResultW param);
List<CompeteVo.TotalScoreDisplay> showResult(ScoreDto.ShowResultW param);
PageInfo<CompeteVo.TotalScoreDisplay> showResult(ScoreDto.ShowResultW param);
/**
@ -190,7 +190,6 @@ public interface ICompeteService {
/**
<<<<<<< HEAD
* 速度通级赛
* @param params 项目id和场次id
* @return 返回项目开始时间和比赛状态
@ -199,7 +198,6 @@ public interface ICompeteService {
/**
<<<<<<< HEAD
* 速度通级赛(导出)
* @param params 项目id和场次id
* @return 返回项目开始时间和比赛状态
@ -217,8 +215,12 @@ public interface ICompeteService {
Long getUserCompanyId(Long userId, Byte type);
/**
* 分页查询计数赛成绩
* @param param 项目ID
* @return 成绩
*/
PageInfo<ScoreVo.CountScorePublicity> queryCountScore(ScoreDto.ShowResult param);
}

15
mt/src/main/java/com/ccsens/mt/service/IExcelService.java

@ -1,11 +1,9 @@
package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.dto.ScoreDto;
import com.ccsens.mt.bean.vo.TableVo;
import com.ccsens.util.bean.dto.QueryDto;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.vo.TableVo;
import com.ccsens.util.bean.dto.QueryDto;
import com.github.pagehelper.PageInfo;
@ -94,12 +92,17 @@ public interface IExcelService {
String schedulePlanningOut(CompeteDto.CompeteTime params) throws IOException;
// String patternExpTable(ScoreDto.ShowResult param);
/**
* 生成比赛前八名的表格
* @param params 第几届比赛
* @return 表格下载地址
*/
String beforeEight(QueryDto<CompeteDto.CompeteTime> params);
String patternExpTable(ScoreDto.ShowResultW param);
String countExpTable(ScoreDto.ShowResult param);
}

13
mt/src/main/java/com/ccsens/mt/service/IKCPlayerService.java

@ -1,5 +1,18 @@
package com.ccsens.mt.service;
import java.util.Map;
public interface IKCPlayerService {
/**
* 获取云点播签名
* @param id
* @return
*/
String getSignature(Long id);
/**
* 云点播回调接口
* @param map
*/
void saveVideoUrl(Map map);
}

41
mt/src/main/java/com/ccsens/mt/service/KCPlayerService.java

@ -1,6 +1,12 @@
package com.ccsens.mt.service;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.mt.bean.po.CompeteStartOrder;
import com.ccsens.mt.bean.po.CompeteVideo;
import com.ccsens.mt.bean.po.CompeteVideoExample;
import com.ccsens.mt.persist.mapper.CompeteStartOrderMapper;
import com.ccsens.mt.persist.mapper.CompeteVideoMapper;
import com.ccsens.mt.util.Constant;
import com.ccsens.util.CodeEnum;
import com.ccsens.util.KCPlayerSignature;
@ -12,6 +18,7 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Map;
import java.util.Random;
@Slf4j
@Service
@ -19,6 +26,12 @@ import java.util.Random;
public class KCPlayerService implements IKCPlayerService{
@Resource
private RedisUtil redisUtil;
@Resource
private CompeteStartOrderMapper startOrderMapper;
@Resource
private CompeteVideoMapper competeVideoMapper;
@Resource
private Snowflake snowflake;
/**
* 获取云点播签名
@ -51,4 +64,32 @@ public class KCPlayerService implements IKCPlayerService{
}
return signature;
}
@Override
public void saveVideoUrl(Map map) {
// TODO 获取回传的id(场次id)
Long orderId = null;
// TODO 获取视频路径
String videoUrl = "";
//通过场次id获取场次信息
CompeteStartOrder startOrder = startOrderMapper.selectByPrimaryKey(orderId);
if(ObjectUtil.isNull(startOrder)){
throw new BaseException(CodeEnum.PARAM_ERROR);
}
//查找此场次之前的上传记录
CompeteVideoExample competeVideoExample = new CompeteVideoExample();
competeVideoExample.createCriteria().andProjectIdEqualTo(startOrder.getProjectId())
.andPlayerIdEqualTo(startOrder.getPlayerId());
if(competeVideoMapper.countByExample(competeVideoExample) > 0){
throw new BaseException(CodeEnum.ALREADY_UPLOAD_VIDEO);
}
//将视频信息存入视频表
CompeteVideo competeVideo = new CompeteVideo();
competeVideo.setId(snowflake.nextId());
competeVideo.setProjectId(startOrder.getProjectId());
competeVideo.setPlayerId(startOrder.getPlayerId());
competeVideo.setVideoUrl(videoUrl);
competeVideo.setUploadTime(System.currentTimeMillis());
competeVideoMapper.insertSelective(competeVideo);
}
}

1
mt/src/main/java/com/ccsens/mt/service/ScoreService.java

@ -23,6 +23,7 @@ import com.ccsens.util.ExcelUtil;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.WebConstant;
import com.ccsens.util.exception.BaseException;
import com.sun.xml.internal.bind.v2.TODO;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

4
mt/src/main/java/com/ccsens/mt/util/Constant.java

@ -57,9 +57,9 @@ public class Constant {
*/
public static final long COMPETE_VARIETY = 2002;
/**
* 每个比赛项目留给选手上传视频的时间(暂定个小时可以修改)
* 每个比赛项目留给选手上传视频的时间(暂定个小时可以修改)
*/
public static final long UPLOAD_VIDEO_TIME = 30 * 60 * 1000;
public static final long UPLOAD_VIDEO_TIME = 60 * 60 * 1000;
public final static class Compete{

10
mt/src/main/resources/banner.txt

@ -0,0 +1,10 @@
_ _ U _____ u _ _ U ___ u U ___ u ____ _ ____
|'| |'| \| ___"|/ |"| |"| \/"_ \/ __ __ \/"_ \/U | _"\ u |"| | _"\
/| |_| |\ | _|" U | | u U | | u | | | | \"\ /"/ | | | | \| |_) |/U | | u /| | | |
U| _ |u | |___ \| |/__ \| |/__.-,_| |_| | /\ \ /\ / /\.-,_| |_| | | _ < \| |/__U| |_| |\
|_| |_| |_____| |_____| |_____|\_)-\___/ U \ V V / U\_)-\___/ |_| \_\ |_____||____/ u
// \\ << >> // \\ // \\ \\ .-,_\ /\ /_,-. \\ // \\_ // \\ |||_
(_") ("_)(__) (__)(_")("_)(_")("_) (__) \_)-' '-(_/ (__) (__) (__)(_")("_)(__)_)

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

@ -16,7 +16,7 @@
<resultMap id="startOrderByCompany" type="com.ccsens.mt.bean.vo.ProvinceCompeteVo$StartOrderByCompanyAndProject">
<id column="projectId" property="projectId" />
<result column="projectName" property="projectName" />
<result column="startTime" property="startTime" />
<result column="endTime" property="endTime" />
<collection property="startOrderList" ofType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$StartOrder">
<id column="startOrderId" property="startOrderId" />
<result column="competeOrder" property="competeOrder" />
@ -331,7 +331,7 @@
so.id as startOrderId,
so.compete_order as competeOrder,
so.site as site,
pc.start_time as startTime,
pc.start_time as endTime,
pr.id as projectId,
pr.`name` as projectName,
pr.`team` as team,
@ -390,14 +390,16 @@
ORDER BY so.start_time
</select>
<select id="queryProjectByTaskDetailId" resultType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$QueryProjectByTall">
SELECT
SELECT
s.id as startOrderId,
p.id as projectId,
if(p.parent_id = 2001,0,1) as projectType
FROM
`t_compete_start_order` s LEFT JOIN t_compete_project p on s.project_id = p.id
LEFT JOIN tall.t_pro_task_detail d on d.parent_id = s.task_id
WHERE
s.task_id = #{taskDetailId}
d.id = #{taskDetailId}
and s.rec_status = 0
and p.rec_status = 0
LIMIT 1

14
mt/src/main/resources/mapper_dao/CompeteProjectDao.xml

@ -61,6 +61,20 @@
and g.rec_status = 0
and c.rec_status = 0
</select>
<select id="queryProject" resultMap="com.ccsens.mt.persist.mapper.CompeteProjectMapper.BaseResultMap">
SELECT
project.*
FROM
t_compete_time time,
t_compete_project project
where time.id = #{id}
AND time.type = project.type
AND project.LEVEL = 2
AND project.certificate = 0
AND time.rec_status = 0
AND project.rec_status = 0
</select>
<select id="queryJoinNum" resultType="java.lang.Long">
<if test="team == 0">
SELECT

691
mt/src/main/resources/mapper_dao/CompeteScoreDao.xml

@ -76,33 +76,37 @@
<select id="selectCountScoreCurrentSite" resultType="com.ccsens.mt.bean.vo.ScoreVo$CountScoreCurrentSite" parameterType="java.util.Map">
SELECT
tcp.`name` as name,
tcc.`name` as companyName,
tcg.group_name as groupName,
tcppro.`name` as projectName,
tcso.site as site,
tcso.compete_order as competeOrder,
tccs.chief_judgment_score as mainScore,
tccs.judgment_a_score as mainOneScore,
tccs.judgment_b_score2 as mainTwoScore,
tccs.should_times as shouldScore,
tccs.deduct_times as deductTime,
tccs.deduct_cause as deductReason,
tccs.final_score as finalScore
from
t_compete_start_order tcso LEFT JOIN t_compete_player tcp on tcso.player_id = tcp.id
LEFT JOIN t_compete_company tcc on tcc.id = tcp.company_id
LEFT JOIN t_compete_group tcg on tcg.id = tcp.compete_group_id
LEFT JOIN t_compete_project tcppro on tcppro.id = tcso.project_id
LEFT JOIN t_compete_count_score tccs on tccs.site_order_id = tcso.id
cs.site_order_id,
p.`name` as `name`,
c.`name` as companyName,
g.group_name as groupName,
cp.`name` as projectName,
so.site as site,
so.compete_order as competeOrder,
cs.chief_judgment_score as mainScore,
cs.judgment_a_score as mainOneScore,
cs.judgment_b_score2 as mainTwoScore,
cs.should_times as shouldScore,
cs.deduct_times as deductTime,
cs.deduct_cause as deductReason,
cs.final_score as finalScore
FROM
t_compete_start_order so
LEFT JOIN t_compete_count_score cs on cs.site_order_id = so.id
LEFT JOIN t_compete_project cp on so.project_id = cp.id
LEFT JOIN t_compete_project_player pp on so.player_id = pp.id
LEFT JOIN t_compete_player p on pp.player_id = p.id
LEFT JOIN t_compete_group g on p.compete_group_id = g.id
LEFT JOIN t_compete_company c on p.company_id = c.id
WHERE
tcso.rec_status=0
and tcp.rec_status=0
and tcc.rec_status=0
and tcg.rec_status=0
and tcppro.rec_status=0
and tccs.rec_status =0
and tcso.id =#{siteId}
so.id = #{siteId}
and so.rec_status = 0
and cp.rec_status = 0
and pp.rec_status = 0
and p.rec_status = 0
and g.rec_status = 0
and c.rec_status = 0
</select>
@ -235,6 +239,641 @@
and tcc.rec_status=0
and tcg.rec_status=0
</select>
<select id="queryEight" resultType="com.ccsens.mt.bean.vo.CompeteExcelVo$BeforeEight">
select groupName, GROUP_CONCAT( NAME ) AS eightNames from (
SELECT
t1.group_name AS groupName,
t1.name,
count( t2.id ) as count
FROM
(
SELECT
score.id,
competeGroup.group_name,
player.NAME,
score.final_score
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_project_player pp,
t_compete_player player,
t_compete_group competeGroup
WHERE
score.compete_time_id = #{competeTimeId}
AND score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = pp.id
AND pp.player_id = player.id
AND player.compete_group_id = competeGroup.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND competeGroup.rec_status = 0
ORDER BY
competeGroup.id,
score.final_score
) t1,
(
SELECT
score.id,
competeGroup.group_name,
player.NAME,
score.final_score
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_project_player pp,
t_compete_player player,
t_compete_group competeGroup
WHERE
score.compete_time_id = #{competeTimeId}
AND score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = pp.id
AND pp.player_id = player.id
AND player.compete_group_id = competeGroup.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND competeGroup.rec_status = 0
ORDER BY
competeGroup.id,
score.final_score
) t2
WHERE
t1.group_name = t2.group_name
AND t1.final_score &lt;= t2.final_score
GROUP BY
t1.group_name, t1.name
HAVING
count( t2.id ) &lt;= 8
) t
GROUP BY groupName
</select>
<select id="queryEightGroupLimit" resultType="com.ccsens.mt.bean.vo.CompeteExcelVo$BeforeEight">
select t.group_name as groupName, GROUP_CONCAT(t.name order by t.final_score desc) as eightNames from
(select t1.* from
(SELECT
CONCAT(
CASE team.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS group_name,
GROUP_CONCAT(player.name SEPARATOR '、') as name,
score.final_score
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_team team,
t_compete_team_member tm,
t_compete_player player
WHERE
score.compete_time_id = #{competeTimeId}
AND score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = team.id
AND team.id = tm.compete_team_id
AND tm.player_id = player.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND team.rec_status = 0
AND tm.rec_status = 0
group by score.id) t1,
(SELECT
CONCAT(
CASE team.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS group_name,
GROUP_CONCAT(player.name) as name,
score.final_score
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_team team,
t_compete_team_member tm,
t_compete_player player
WHERE
score.compete_time_id = #{competeTimeId}
AND score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = team.id
AND team.id = tm.compete_team_id
AND tm.player_id = player.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND team.rec_status = 0
AND tm.rec_status = 0
group by score.id) t2
WHERE
t1.group_name = t2.group_name
AND t1.final_score &lt;= t2.final_score
GROUP BY t1.group_name, t1.name
HAVING count( * ) &lt;= 8) t
group by t.group_name
</select>
<select id="queryEightGroupNotLimit" resultType="com.ccsens.mt.bean.vo.CompeteExcelVo$BeforeEight">
SELECT
team.group_name as groupName,
team.members as eightNames
FROM
(
SELECT
id,
site_order_id,
sum(
CASE CODE
WHEN 'setUp' THEN score / 3
WHEN 'show' THEN score / 3
WHEN 'spaceUse' THEN score / 3
WHEN 'accuracy' THEN score / 3
WHEN 'step' THEN score / 3
WHEN 'perfor' THEN score / 3
WHEN 'skilled' THEN score / 3
WHEN 'agree' THEN score / 3
WHEN 'notEnoughTime' THEN -score
WHEN 'footfault' THEN -score
WHEN 'ceremony' THEN -score
ELSE -score END
) AS final_score
FROM
t_compete_variety_score
WHERE
compete_time_id = #{competeTimeId}
AND project_id = #{projectId}
AND rec_status = 0
GROUP BY
site_order_id
) t,
t_compete_start_order o,
(SELECT
t.id,
CONCAT(
CASE t.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE t.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS group_name,
GROUP_CONCAT( p.NAME separator '、' ) as members
FROM
t_compete_team t,
t_compete_team_member m,
t_compete_player p
WHERE
t.id = m.compete_team_id
AND m.player_id = p.id
AND m.rec_status = 0
AND t.rec_status = 0
AND p.rec_status = 0
GROUP BY
t.id,
t.group_remark,
t.gender_group) team
WHERE
t.site_order_id = o.id
AND o.player_id = team.id
AND o.rec_status = 0
order by t. final_score desc
limit 8
</select>
<select id="queryEightVarietyGroupLimit" resultType="com.ccsens.mt.bean.vo.CompeteExcelVo$BeforeEight">
select t1.groupName, GROUP_CONCAT(t1.eightNames order by t1.final_score desc) from
(SELECT
team.group_name as groupName,
team.members as eightNames,
t.final_score
FROM
(
SELECT
id,
site_order_id,
sum(
CASE CODE
WHEN 'setUp' THEN score / 3
WHEN 'show' THEN score / 3
WHEN 'spaceUse' THEN score / 3
WHEN 'accuracy' THEN score / 3
WHEN 'step' THEN score / 3
WHEN 'perfor' THEN score / 3
WHEN 'skilled' THEN score / 3
WHEN 'agree' THEN score / 3
WHEN 'notEnoughTime' THEN -score
WHEN 'footfault' THEN -score
WHEN 'ceremony' THEN -score
ELSE -score END
) AS final_score
FROM
t_compete_variety_score
WHERE
compete_time_id = #{competeTimeId}
AND project_id = #{projectId}
AND rec_status = 0
GROUP BY
site_order_id
) t,
t_compete_start_order o,
(SELECT
t.id,
CONCAT(
CASE t.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE t.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS group_name,
GROUP_CONCAT( p.NAME separator '、' ) as members
FROM
t_compete_team t,
t_compete_team_member m,
t_compete_player p
WHERE
t.id = m.compete_team_id
AND m.player_id = p.id
AND m.rec_status = 0
AND t.rec_status = 0
AND p.rec_status = 0
GROUP BY
t.id,
t.group_remark,
t.gender_group) team
WHERE
t.site_order_id = o.id
AND o.player_id = team.id
AND o.rec_status = 0
) t1,
(SELECT
team.group_name as groupName,
team.members as eightNames,
t.final_score
FROM
(
SELECT
id,
site_order_id,
sum(
CASE CODE
WHEN 'setUp' THEN score / 3
WHEN 'show' THEN score / 3
WHEN 'spaceUse' THEN score / 3
WHEN 'accuracy' THEN score / 3
WHEN 'step' THEN score / 3
WHEN 'perfor' THEN score / 3
WHEN 'skilled' THEN score / 3
WHEN 'agree' THEN score / 3
WHEN 'notEnoughTime' THEN -score
WHEN 'footfault' THEN -score
WHEN 'ceremony' THEN -score
ELSE -score END
) AS final_score
FROM
t_compete_variety_score
WHERE
compete_time_id = #{competeTimeId}
AND project_id = #{projectId}
AND rec_status = 0
GROUP BY
site_order_id
) t,
t_compete_start_order o,
(SELECT
t.id,
CONCAT(
CASE t.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE t.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS group_name,
GROUP_CONCAT( p.NAME separator '、' ) as members
FROM
t_compete_team t,
t_compete_team_member m,
t_compete_player p
WHERE
t.id = m.compete_team_id
AND m.player_id = p.id
AND m.rec_status = 0
AND t.rec_status = 0
AND p.rec_status = 0
GROUP BY
t.id,
t.group_remark,
t.gender_group) team
WHERE
t.site_order_id = o.id
AND o.player_id = team.id
AND o.rec_status = 0
) t2
where t1.groupName = t2.groupName and t1.final_score &lt;= t2.final_score
group by t1.groupName
having count(t2.groupName) &lt;= 8
</select>
<select id="queryCountScoreTeam" resultType="com.ccsens.mt.bean.vo.ScoreVo$CountScorePublicity">
select t1.*, count(*) as rangee from
(SELECT
CONCAT(
CASE team.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS groupName,
GROUP_CONCAT(player.name SEPARATOR '、') as name,
company.name as companyName,
score.judgment_a_score as mainOneScore,
score.judgment_b_score2 as mainTwoScore,
score.should_times as shouldScore,
score.deduct_times as deductTime,
score.final_score as finalScore
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_team team,
t_compete_team_member tm,
t_compete_player player,
t_compete_company company
WHERE
score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = team.id
AND team.id = tm.compete_team_id
AND tm.player_id = player.id
AND player.company_id = company.id
AND company.rec_status = 0
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND team.rec_status = 0
AND tm.rec_status = 0
group by score.id) t1,
(SELECT
CONCAT(
CASE team.group_remark WHEN 1 THEN '小学' WHEN 2 THEN '中学' WHEN 3 THEN '高职院校' WHEN 4 THEN '本科院校' ELSE '俱乐部'END,
CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END
) AS groupName,
GROUP_CONCAT(player.name SEPARATOR '、') as name,
company.name as companyName,
score.judgment_a_score as mainOneScore,
score.judgment_b_score2 as mainTwoScore,
score.should_times as shouldScore,
score.deduct_times as deductTime,
score.final_score as finalScore
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_team team,
t_compete_team_member tm,
t_compete_player player,
t_compete_company company
WHERE
score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = team.id
AND team.id = tm.compete_team_id
AND tm.player_id = player.id
AND player.company_id = company.id
AND company.rec_status = 0
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND team.rec_status = 0
AND tm.rec_status = 0
group by score.id) t2
WHERE
t1.groupName = t2.groupName
AND t1.finalScore &lt;= t2.finalScore
GROUP BY t1.groupName, t1.name
order by rangee desc
</select>
<select id="queryCountScorePerson" resultType="com.ccsens.mt.bean.vo.ScoreVo$CountScorePublicity">
select t1.*, count(t2.id) as rangee from
(SELECT
competeGroup.group_name as groupName,
player.NAME as name,
score.final_score as finalScore,
p.NAME as companyName,
score.id,
score.judgment_a_score as mainOneScore,
score.judgment_b_score2 as mainTwoScore,
score.should_times as shouldScore,
score.deduct_times as deductTime
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_project_player pp,
t_compete_player player,
t_compete_group competeGroup,
t_compete_company p
WHERE
score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = pp.id
AND pp.player_id = player.id
AND player.compete_group_id = competeGroup.id
and player.company_id = p.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND competeGroup.rec_status = 0)t1,
(SELECT
competeGroup.group_name as groupName,
player.NAME as name,
score.final_score as finalScore,
p.NAME as companyName,
score.id,
score.judgment_a_score as mainOneScore,
score.judgment_b_score2 as mainTwoScore,
score.should_times as shouldScore,
score.deduct_times as deductTime
FROM
t_compete_count_score score,
t_compete_start_order startOrder,
t_compete_project_player pp,
t_compete_player player,
t_compete_group competeGroup,
t_compete_company p
WHERE
score.project_id = #{projectId}
AND score.site_order_id = startOrder.id
AND startOrder.player_id = pp.id
AND pp.player_id = player.id
AND player.compete_group_id = competeGroup.id
and player.company_id = p.id
AND score.rec_status = 0
AND player.rec_status = 0
AND startOrder.rec_status = 0
AND competeGroup.rec_status = 0)t2
where t1.groupName = t2.groupName and t1.finalScore &lt;= t2.finalScore
group by t1.id
order by t1.groupName, rangee
</select>
<select id="queryVarietyScore" resultType="com.ccsens.mt.bean.vo.CompeteVo$TotalScoreDisplay">
select s.*, c.name as companyName, GROUP_CONCAT(p.name) as peopleName, (ifnull(s.referee1,0)+ifnull(s.referee2,0)+ifnull(s.referee3,0))/3 as avg1To3,
(ifnull(s.referee4,0)+ifnull(s.referee5,0)+ifnull(s.referee6,0))/3 as avg4To6,
(ifnull(s.referee1,0)+ifnull(s.referee2,0)+ifnull(s.referee3,0))/3 + (ifnull(s.referee4,0)+ifnull(s.referee5,0)+ifnull(s.referee6,0))/3 - s.referee0 as result,
@rownum := @rownum + 1 AS rownum
from
(select site_order_id, max(if(chief_judgment = 0, score, null)) as referee0, max(if(chief_judgment = 1, score, null)) as referee1,
max(if(chief_judgment = 2, score, null)) as referee2, max(if(chief_judgment = 3, score, null)) as referee3,
max(if(chief_judgment = 4, score, null)) as referee4, max(if(chief_judgment = 5, score, null)) as referee5,
max(if(chief_judgment = 6, score, null)) as referee6, max(if(chief_judgment = 7, score, null)) as referee7
from
(select s.site_order_id, j.chief_judgment, sum(s.score) as score from t_compete_variety_score s, t_compete_judgment j where s.judgment_id = j.id and s.project_id = #{projectId} and s.rec_status = 0 and j.rec_status = 0 group by s.site_order_id,j.chief_judgment) t
group by t.site_order_id) s,
t_compete_start_order o,
t_compete_team t,
t_compete_team_member m,
t_compete_player p,
t_compete_company c,
( SELECT @rownum := 0 ) r
where s.site_order_id = o.id and o.player_id = t.id and t.id = m.compete_team_id and m.player_id = p.id and p.company_id = c.id
and o.rec_status = 0 and t.rec_status = 0 and m.rec_status = 0 and p.rec_status = 0 and c.rec_status = 0
group by s.site_order_id
order by result desc
</select>
<!--<select id="queryEightGroupLimit" resultType="com.ccsens.mt.bean.vo.CompeteExcelVo$BeforeEight">
select t1.group_name as groupName, GROUP_CONCAT(t1.name) as eightNames from
(SELECT
t.id,
CONCAT( team.group_remark, CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END ) AS group_name,
c.NAME,
t.final_score
FROM
(
SELECT
id,
site_order_id,
sum(
(
CASE
CODE
WHEN 'setUp' THEN
score / 3
WHEN 'show' THEN
score / 3
WHEN 'spaceUse' THEN
score / 3
WHEN 'accuracy' THEN
score / 3
WHEN 'step' THEN
score / 3
WHEN 'perfor' THEN
score / 3
WHEN 'skilled' THEN
score / 3
WHEN 'agree' THEN
score / 3
WHEN 'notEnoughTime' THEN
-score
WHEN 'footfault' THEN
-score
WHEN 'ceremony' THEN
-score
ELSE -score
END
)
) AS final_score
FROM
(
SELECT
id,
site_order_id,
CODE,
sum( score ) AS score
FROM
t_compete_variety_score
WHERE
compete_time_id = #{competeTimeId}
AND project_id = #{projectId}
AND rec_status = 0
GROUP BY
site_order_id,
CODE
) t
GROUP BY
site_order_id
) t,
t_compete_start_order o,
t_compete_team team,
t_compete_company c
WHERE
t.site_order_id = o.id
AND o.player_id = team.id
AND team.company_id = c.id
AND o.rec_status = 0
AND team.rec_status = 0
AND c.rec_status = 0
order by t. final_score
) t1,
(SELECT
t.id,
CONCAT( team.group_remark, CASE team.gender_group WHEN 0 THEN '女子组' WHEN 1 THEN '男子组' ELSE '混合组' END ) AS group_name,
c.NAME,
t.final_score
FROM
(
SELECT
id,
site_order_id,
sum(
(
CASE
CODE
WHEN 'setUp' THEN
score / 3
WHEN 'show' THEN
score / 3
WHEN 'spaceUse' THEN
score / 3
WHEN 'accuracy' THEN
score / 3
WHEN 'step' THEN
score / 3
WHEN 'perfor' THEN
score / 3
WHEN 'skilled' THEN
score / 3
WHEN 'agree' THEN
score / 3
WHEN 'notEnoughTime' THEN
-score
WHEN 'footfault' THEN
-score
WHEN 'ceremony' THEN
-score
ELSE -score
END
)
) AS final_score
FROM
(
SELECT
id,
site_order_id,
CODE,
sum( score ) AS score
FROM
t_compete_variety_score
WHERE
compete_time_id = #{competeTimeId}
AND project_id = #{projectId}
AND rec_status = 0
GROUP BY
site_order_id,
CODE
) t
GROUP BY
site_order_id
) t,
t_compete_start_order o,
t_compete_team team,
t_compete_company c
WHERE
t.site_order_id = o.id
AND o.player_id = team.id
AND team.company_id = c.id
AND o.rec_status = 0
AND team.rec_status = 0
AND c.rec_status = 0
order by t. final_score
) t2
where t1.group_name = t2.group_name and t1.final_score &lt;= t2.final_score
GROUP BY t1.group_name
HAVING count(t2.id) &lt;= 8
</select>-->
</mapper>

2
pom.xml

@ -10,7 +10,7 @@
<module>util</module>
<module>tall</module>
<!-- <module>ht</module>-->
<!-- <module>game</module>-->
<module>game</module>
<module>mt</module>
<!-- <module>pims</module>-->
<!-- <module>health</module>-->

22
tall/src/main/resources/banner.txt

@ -0,0 +1,22 @@
/**
* _ooOoo_
* o8888888o
* 88" . "88
* (| -_- |)
* O\ = /O
* ___/`---'\____
* . ' \\| |// `.
* / \\||| : |||// \
* / _||||| -:- |||||- \
* | | \\\ - /// | |
* | \_| ''\---/'' | |
* \ .-\__ `-` ___/-. /
* ___`. .' /--.--\ `. . __
* ."" '< `.___\_<|>_/___.' >'"".
* | | : `- \`.;`\ _ /`;.`/ - ` : | |
* \ \ `-. \_ __\ /__ _/ .-` / /
* ======`-.____`-.___\_____/___.-`____.-'======
* `=---='
* .............................................
* 佛曰:bug泛滥,我已瘫痪!
*/

1
util/src/main/java/com/ccsens/util/CodeEnum.java

@ -178,6 +178,7 @@ public enum CodeEnum {
JOIN_AUTH_GROUP(147,"已参加了其他组别,无法再次报名",true),
ALREADY_JOIN_PROJECT(148,"该选手已经参加了比赛,不可修改身份证组别等信息",true),
ALREADY_JOIN_PROJECT_DEL(149,"取消报名后可删除",true),
ALREADY_UPLOAD_VIDEO(150,"您已经上传了视频,请勿重复提交",true),
;

Loading…
Cancel
Save