Browse Source

11-11

tiaosheng
Lihong@123456 5 years ago
parent
commit
0171df5970
  1. 16
      mt/src/main/java/com/ccsens/mt/api/ExcelController.java
  2. 18
      mt/src/main/java/com/ccsens/mt/api/ProvinceController.java
  3. 11
      mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java
  4. 9
      mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java
  5. 80
      mt/src/main/java/com/ccsens/mt/service/ExcelService.java
  6. 12
      mt/src/main/java/com/ccsens/mt/service/IProvinceService.java
  7. 20
      mt/src/main/java/com/ccsens/mt/service/ProvinceService.java
  8. 4
      mt/src/main/resources/application.yml
  9. 3
      mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml
  10. 3
      mt/src/main/resources/mapper_dao/CompeteProjectDao.xml

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

@ -83,28 +83,28 @@ public class ExcelController {
@MustLogin
@ApiOperation(value = "日程安排中间表", notes = "")
@RequestMapping(value = "/dailyScheduleProcess", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<TableVo.DailyScheduleProcess> dailyScheduleProcess(@ApiParam @Validated @RequestBody CompeteDto.CompeteTime params) {
public JsonResponse<TableVo.DailyScheduleProcess> dailyScheduleProcess(@ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteTime> params) {
log.info("日程安排中间表:{}",params);
List<TableVo.DailyScheduleProcess> dailyScheduleProcessList = excelService.dailyScheduleProcess(params);
List<TableVo.DailyScheduleProcess> dailyScheduleProcessList = excelService.dailyScheduleProcess(params.getParam());
return JsonResponse.newInstance().ok(dailyScheduleProcessList);
}
@MustLogin
@ApiOperation(value = "日程安排更新", notes = "")
@RequestMapping(value = "/updateAndSearchSchedule", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<TableVo.DailyScheduleProcess> updateAndSearch(@ApiParam @Validated @RequestBody ProvinceCompeteDto.UpdateAndSearchList params) {
public JsonResponse<TableVo.DailyScheduleProcess> updateAndSearch(@ApiParam @Validated @RequestBody QueryDto<ProvinceCompeteDto.UpdateAndSearchList> params) {
log.info("日程安排更新:{}",params);
excelService.updateAndSearch(params);
return JsonResponse.newInstance().ok();
List<TableVo.DailyScheduleProcess> dailyScheduleProcessList = excelService.updateAndSearch(params.getParam());
return JsonResponse.newInstance().ok(dailyScheduleProcessList);
}
@MustLogin
@ApiOperation(value = "xxx大赛报名表", notes = "")
@RequestMapping(value = "/enterInfo", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<TableVo.DailyScheduleProcess> getEnterInfo(@ApiParam @Validated @RequestBody CompeteDto.CompeteTime params) {
public JsonResponse<TableVo.DailyScheduleProcess> getEnterInfo(@ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteTime> params) {
log.info("日程安排更新:{}",params);
excelService.getCompeteJoinDetail(params);
return JsonResponse.newInstance().ok();
List<TableVo.CompeteJoin> competeJoinList = excelService.getCompeteJoinDetail(params.getParam());
return JsonResponse.newInstance().ok(competeJoinList);
}

18
mt/src/main/java/com/ccsens/mt/api/ProvinceController.java

@ -182,15 +182,15 @@ public class ProvinceController {
return JsonResponse.newInstance().ok(coachInfo);
}
@MustLogin
@ApiOperation(value = "查找团体比赛已报名的选手信息", notes = "")
@RequestMapping(value = "/teamProject/player", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ProvinceCompeteVo.GroupAndPlayer>> getPlayerByTeamProject(@ApiParam @Validated @RequestBody QueryDto<ProvinceCompeteDto.GetPlayerByTeamProject> params) {
log.info("查找团体比赛已报名的选手信息:{}",params);
List<ProvinceCompeteVo.GroupAndPlayer> groupAndPlayer = provinceService.getPlayerByTeamProject(params.getParam());
log.info("查找团体比赛已报名的选手信息:{}",groupAndPlayer);
return JsonResponse.newInstance().ok(groupAndPlayer);
}
// @MustLogin
// @ApiOperation(value = "查找团体比赛已报名的选手信息", notes = "")
// @RequestMapping(value = "/teamProject/player", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
// public JsonResponse<List<ProvinceCompeteVo.GroupAndPlayer>> getPlayerByTeamProject(@ApiParam @Validated @RequestBody QueryDto<ProvinceCompeteDto.GetPlayerByTeamProject> params) {
// log.info("查找团体比赛已报名的选手信息:{}",params);
//// List<ProvinceCompeteVo.GroupAndPlayer> groupAndPlayer = provinceService.getPlayerByTeamProject(params.getParam());
// log.info("查找团体比赛已报名的选手信息:{}",groupAndPlayer);
// return JsonResponse.newInstance().ok(groupAndPlayer);
// }
@MustLogin
@ApiOperation(value = "团体报名查询可以参加和已经参加的选手", notes = "")

11
mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java

@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
/**
@ -133,18 +134,20 @@ public class ProvinceCompeteDto {
@Data
@ApiModel("修改日程安排")
public static class UpdateAndSearch{
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("参赛项目")
private String projectName;
@ApiModelProperty("参赛人/队伍")
private int joinNum;
@ApiModelProperty("单项时间")
private long singleTime;
private Long singleTime;
@ApiModelProperty("场地")
private int siteNum;
@ApiModelProperty("场次")
private long games;
private Long games;
@ApiModelProperty("总时间")
private long timeSum;
private Long timeSum;
@ApiModelProperty("项目开始时间")
private Long startTime;
@ApiModelProperty("项目结束时间")
@ -156,6 +159,7 @@ public class ProvinceCompeteDto {
public static class UpdateAndSearchList {
private List<UpdateAndSearch> updateAndSearchList;
}
@ApiModel("查找团队项目下已参加的选手信息")
public static class GetPlayerByTeamProject{
@NotNull(message = "请先填写基础信息")
@ -164,6 +168,7 @@ public class ProvinceCompeteDto {
@NotNull(message = "请选择项目")
@ApiModelProperty("项目id")
private Long projectId;
}
@Data

9
mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java

@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@ -17,6 +18,8 @@ public class TableVo {
@Data
@ApiModel("XXXX大赛报名表")
public static class CompeteJoin{
@ApiModelProperty("参赛id")
private Long projectId;
@ApiModelProperty("参赛项目")
private String competeProject;
@ApiModelProperty("组别")
@ -113,6 +116,8 @@ public class TableVo {
@Data
@ApiModel("日程安排")
public static class DailyScheduleProcess{
@ApiModelProperty("参赛id")
private Long projectId;
@ApiModelProperty("参赛项目")
private String projectName;
@ApiModelProperty("参赛人/队伍")
@ -122,9 +127,9 @@ public class TableVo {
@ApiModelProperty("场地")
private int siteNum;
@ApiModelProperty("场次")
private long games;
private double games;
@ApiModelProperty("总时间")
private long timeSum;
private double timeSum;
@ApiModelProperty("项目开始时间")
private Long startTime;
@ApiModelProperty("项目结束时间")

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

@ -16,6 +16,8 @@ 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 lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@ -27,7 +29,9 @@ import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Slf4j
@ -383,6 +387,8 @@ public class ExcelService implements IExcelService {
// }
//参赛项目名赋值
competeJoin.setCompeteProject(projectName);
//项目id
competeJoin.setProjectId(competeProject.getId());
competeJoinList.add(competeJoin);
}
@ -453,6 +459,8 @@ public class ExcelService implements IExcelService {
// }
//参赛项目名赋值
competeJoin.setCompeteProject(projectName);
//项目id
competeJoin.setProjectId(competeProject.getId());
competeJoinList.add(competeJoin);
}
}
@ -538,7 +546,8 @@ public class ExcelService implements IExcelService {
@Override
public String competeJoinCount(CompeteDto.CompeteTime params) throws IOException {
public String
competeJoinCount(CompeteDto.CompeteTime params) throws IOException {
List<TableVo.CompeteOverview> competeOverviewList = competeJoinCountList(params);
String path = getExcelFilePathForCompeteJoinCount(competeOverviewList);
return path;
@ -793,7 +802,8 @@ public class ExcelService implements IExcelService {
dailyScheduleProcess.setJoinNum((int) count);
//项目名
dailyScheduleProcess.setProjectName(competeProject.getName());
//项目id
dailyScheduleProcess.setProjectId(competeProject.getId());
CompeteProjectConfig competeProjectConfig = competeProjectConfigDao.selectByProjectId(competeProject.getId());
if (ObjectUtil.isNotNull(competeProjectConfig)) {
//单项时间
@ -801,10 +811,11 @@ public class ExcelService implements IExcelService {
//场地
dailyScheduleProcess.setSiteNum(competeProjectConfig.getSiteNum());
//场次
long times = count / competeProjectConfig.getSiteNum();
double a = (double)count / (double)competeProjectConfig.getSiteNum();
double times = Math.ceil(a);
dailyScheduleProcess.setGames(times);
//总时间
long second = competeProjectConfig.getProjectDuration() * times;
double second = competeProjectConfig.getProjectDuration() * times;
dailyScheduleProcess.setTimeSum(second);
//项目开始时间
dailyScheduleProcess.setStartTime(competeProjectConfig.getStartTime());
@ -816,13 +827,14 @@ public class ExcelService implements IExcelService {
//是团队
CompeteTeamExample competeTeamExample = new CompeteTeamExample();
competeTeamExample.createCriteria().andProjectIdEqualTo(competeProject.getId());
long count = competeTeamDao.countByExample(competeTeamExample);
int count = (int) competeTeamDao.countByExample(competeTeamExample);
TableVo.DailyScheduleProcess dailyScheduleProcess = new TableVo.DailyScheduleProcess();
//队伍/人数
dailyScheduleProcess.setJoinNum((int) count);
//项目名
dailyScheduleProcess.setProjectName(competeProject.getName());
//项目id
dailyScheduleProcess.setProjectId(competeProject.getId());
CompeteProjectConfig competeProjectConfig = competeProjectConfigDao.selectByProjectId(competeProject.getId());
if (ObjectUtil.isNotNull(competeProjectConfig)) {
//单项时间
@ -830,10 +842,12 @@ public class ExcelService implements IExcelService {
//场地
dailyScheduleProcess.setSiteNum(competeProjectConfig.getSiteNum());
//场次
long times = count / competeProjectConfig.getSiteNum();
double a = (double)count / (double)competeProjectConfig.getSiteNum();
double times = Math.ceil(a);
dailyScheduleProcess.setGames(times);
//总时间
long second = competeProjectConfig.getProjectDuration() * times;
double second = competeProjectConfig.getProjectDuration() * times;
dailyScheduleProcess.setTimeSum(second);
dailyScheduleProcess.setTimeSum(second);
//项目开始时间
dailyScheduleProcess.setStartTime(competeProjectConfig.getStartTime());
@ -852,38 +866,45 @@ public class ExcelService implements IExcelService {
List<TableVo.DailyScheduleProcess> dailyScheduleProcessList = new ArrayList<>();
List<ProvinceCompeteDto.UpdateAndSearch> updateAndSearchList = params.getUpdateAndSearchList();
for (ProvinceCompeteDto.UpdateAndSearch updateAndSearch : updateAndSearchList){
//根据项目查项目id
CompeteProject competeProject = competeProjectDao.getProjectByProjectName(updateAndSearch.getProjectName());
long projectId = competeProject.getId();
//查询数据库中现有数据对象
CompeteProjectConfig competeProjectConfig = competeProjectConfigDao.selectByProjectId(projectId);
CompeteProjectConfig competeProjectConfig = competeProjectConfigDao.selectByProjectId(updateAndSearch.getProjectId());
//修改单项时间,场地和开始结束时间
if (ObjectUtil.isNotNull(competeProjectConfig)){
competeProjectConfig.setProjectDuration(updateAndSearch.getSingleTime());
competeProjectConfig.setSiteNum(updateAndSearch.getSiteNum());
competeProjectConfig.setStartTime(updateAndSearch.getStartTime());
competeProjectConfig.setEndTime(updateAndSearch.getEndTime());
competeProjectConfigDao.updateByPrimaryKeySelective(competeProjectConfig);
CompeteProjectConfigExample competeProjectConfigExample = new CompeteProjectConfigExample();
competeProjectConfigExample.createCriteria().andProjectIdEqualTo(updateAndSearch.getProjectId());
int num = competeProjectConfigDao.updateByExampleSelective(competeProjectConfig,competeProjectConfigExample);
System.out.println(num);
}
//返回前台的对象赋值
TableVo.DailyScheduleProcess dailyScheduleProcess = new TableVo.DailyScheduleProcess();
//项目名
dailyScheduleProcess.setProjectName(updateAndSearch.getProjectName());
//项目id
dailyScheduleProcess.setProjectId(updateAndSearch.getProjectId());
//参赛人或者队伍
dailyScheduleProcess.setJoinNum(updateAndSearch.getJoinNum());
//单项时间
CompeteProjectConfig competeProjectConfig1 = competeProjectConfigDao.selectByProjectId(competeProject.getId());
dailyScheduleProcess.setSingleTime(competeProjectConfig1.getProjectDuration());
//场地
dailyScheduleProcess.setSiteNum(competeProjectConfig1.getSiteNum());
//场次
long games = updateAndSearch.getJoinNum()/competeProjectConfig1.getSiteNum();
dailyScheduleProcess.setGames(games);
//总时间
long second = competeProjectConfig1.getProjectDuration()*games;
dailyScheduleProcess.setTimeSum(second);
//开始时间
dailyScheduleProcess.setStartTime(competeProjectConfig1.getStartTime());
//结束时间
dailyScheduleProcess.setEndTime(competeProjectConfig1.getEndTime());
CompeteProjectConfig competeProjectConfig1 = competeProjectConfigDao.selectByProjectId(updateAndSearch.getProjectId());
if (ObjectUtil.isNotNull(competeProjectConfig1)) {
dailyScheduleProcess.setSingleTime(competeProjectConfig1.getProjectDuration());
//场地
dailyScheduleProcess.setSiteNum(competeProjectConfig1.getSiteNum());
//场次
double a = (double) updateAndSearch.getJoinNum() /(double) competeProjectConfig1.getSiteNum();
double games = Math.ceil(a);
dailyScheduleProcess.setGames(games);
//总时间
double second = competeProjectConfig1.getProjectDuration() * games;
dailyScheduleProcess.setTimeSum(second);
//开始时间
dailyScheduleProcess.setStartTime(competeProjectConfig1.getStartTime());
//项目结束时间
dailyScheduleProcess.setEndTime(competeProjectConfig1.getEndTime());
}
dailyScheduleProcessList.add(dailyScheduleProcess);
}
return dailyScheduleProcessList;
@ -912,6 +933,8 @@ public class ExcelService implements IExcelService {
//查询每个报名人的详细信息下
CompetePlayer competePlayer = competePlayerDao.selectByPrimaryKey(competeProjectPlayer.getPlayerId());
TableVo.CompeteJoin competeJoin = new TableVo.CompeteJoin();
//项目id
competeJoin.setProjectId(competeProject.getId());
//姓名
competeJoin.setName(competePlayer.getName());
//身份证号
@ -980,6 +1003,8 @@ public class ExcelService implements IExcelService {
//查询成员详细信息
CompetePlayer competePlayer = competePlayerDao.selectByPrimaryKey(competeTeamMember.getPlayerId());
TableVo.CompeteJoin competeJoin = new TableVo.CompeteJoin();
//项目id
competeJoin.setProjectId(competeProject.getId());
//姓名
competeJoin.setName(competePlayer.getName());
//身份证号
@ -995,7 +1020,6 @@ public class ExcelService implements IExcelService {
} else {
competeJoin.setGender("男");
}
//查询单位,并赋值
CompeteCompany competeCompany = competeCompanyMapper.selectByPrimaryKey(competePlayer.getCompanyId());
if (ObjectUtil.isNotNull(competeCompany)) {

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

@ -132,12 +132,12 @@ public interface IProvinceService {
*/
ProvinceCompeteVo.GetCoach getCoachInfo(CompeteDto.LeaderId param);
/**
* 查找团队项目下已参加的选手信息
* @param param 单位id和团体项目id
* @return 返回参加的选手的详细信息按组别分类
*/
List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(ProvinceCompeteDto.GetPlayerByTeamProject param);
// /**
// * 查找团队项目下已参加的选手信息
// * @param param 单位id和团体项目id
// * @return 返回参加的选手的详细信息,按组别分类
// */
// List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(ProvinceCompeteDto.GetPlayerByTeamProject param);
/**
* 查找团队下符合规则的选手信息

20
mt/src/main/java/com/ccsens/mt/service/ProvinceService.java

@ -631,16 +631,16 @@ public class ProvinceService implements IProvinceService {
/**
* 查找团体项目下的参赛选手信息
*/
@Override
public List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(ProvinceCompeteDto.GetPlayerByTeamProject param) {
List<ProvinceCompeteVo.GroupAndPlayer> groupAndPlayerList = null;
//查找项目
CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId());
if(ObjectUtil.isNotNull(competeProject)){
groupAndPlayerList = competeCompanyDao.getPlayerByTeamProject(param.getProjectId(),competeProject.getType());
}
return groupAndPlayerList;
}
// @Override
// public List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(ProvinceCompeteDto.GetPlayerByTeamProject param) {
// List<ProvinceCompeteVo.GroupAndPlayer> groupAndPlayerList = null;
// //查找项目
// CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId());
// if(ObjectUtil.isNotNull(competeProject)){
// groupAndPlayerList = competeCompanyDao.getPlayerByTeamProject(param.getProjectId(),competeProject.getType());
// }
// return groupAndPlayerList;
// }
/**
* 查找符合参赛规则的选手信息

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

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

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

@ -14,6 +14,7 @@
</resultMap>
<select id="selectByProjectId" resultMap="BaseResultMap" parameterType="java.util.Map">
select * from t_compete_project_config
where project_id = #{ProjectId}
where project_id = #{projectId}
and rec_status = 0
</select>
</mapper>

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

@ -4,6 +4,7 @@
<select id="getProjectByProjectName" resultType="com.ccsens.mt.bean.po.CompeteProject" parameterType="java.util.Map">
select * from t_compete_project
where project_name = #{ProjectName}
where name = #{projectName}
and rec_status = 0
</select>
</mapper>
Loading…
Cancel
Save