diff --git a/mt/src/main/java/com/ccsens/mt/api/ProvinceController.java b/mt/src/main/java/com/ccsens/mt/api/ProvinceController.java index acf78581..c367fec8 100644 --- a/mt/src/main/java/com/ccsens/mt/api/ProvinceController.java +++ b/mt/src/main/java/com/ccsens/mt/api/ProvinceController.java @@ -111,6 +111,15 @@ public class ProvinceController { log.info("添加/修改单位信息:{}",competeCompany); return JsonResponse.newInstance().ok(competeCompany); } + @MustLogin + @ApiOperation(value ="添加/修改领队或教练",notes = "") + @RequestMapping(value = "/province/save/coach",method = RequestMethod.POST,produces = {"application/json;charset=UTF-8"}) + public JsonResponse updataLeader(@ApiParam @Validated @RequestBody QueryDto params){ + log.info("添加/修改单位信息:{}",params); + provinceService.updateLeader(params.getParam()); + return JsonResponse.newInstance().ok(); + } + @MustLogin @ApiOperation(value = "查找此单位的领队和教练信息", notes = "") @@ -142,13 +151,32 @@ public class ProvinceController { return JsonResponse.newInstance().ok(); } - @MustLogin + @ApiOperation(value = "参加比赛", notes = "") @RequestMapping(value = "/join", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) public JsonResponse playerJoinProject(@ApiParam @Validated @RequestBody QueryDto params) { - log.info("参加比赛:{}",params); + log.info("参加比赛:{}", params); provinceService.playerJoinProject(params.getParam()); return JsonResponse.newInstance().ok(); } + @MustLogin + @ApiOperation(value = "删除选手信息", notes = "") + @RequestMapping(value = "/del/player", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse deletePlayer(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("删除选手信息:{}",params); + provinceService.deletePlayer(params.getParam()); + log.info("删除选手信息:{}","删除成功"); + return JsonResponse.newInstance().ok(); + } + + @MustLogin + @ApiOperation(value = "选手详细信息", notes = "") + @RequestMapping(value = "/playerInfo", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse getPlayerInfo(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("选手详细信息:{}",params); + ProvinceCompeteVo.PlayerInfo playerInfo = provinceService.getPlayerInfo(params.getParam()); + log.info("选手详细信息:{}",playerInfo); + return JsonResponse.newInstance().ok(playerInfo); + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java index 5122a834..82582a2e 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java @@ -3,7 +3,6 @@ package com.ccsens.mt.bean.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.List; @@ -257,19 +256,25 @@ public class CompeteDto { @ApiModelProperty("教练或领队的id,有则修改,没有则添加") private Long coachId; @ApiModelProperty("身份: 0领队 1教练") - private int identity ; + private int identity; @ApiModelProperty("姓名") - private String name ; + private String name; @ApiModelProperty("性别") - private int gender ; + private int gender; @ApiModelProperty("手机号") - private String phone ; + private String phone; @ApiModelProperty("身份证号") - private String idCard; + private String idCard; @ApiModelProperty("证件照(文件类型") private Long idPhoto; @ApiModelProperty("教练证(只有教练需要,文件类型") private Long coachCertificate; } + @Data + @ApiModel("项目id和组别id") + public static class DelPlayer{ + @ApiModelProperty("选手id") + private Long playerId; + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index c913f01f..b4aba3df 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.servlet.http.Part; import javax.validation.constraints.NotNull; import java.util.List; @@ -96,4 +95,26 @@ public class ProvinceCompeteDto { private List playerId; } + @Data + @ApiModel("添加/修改领队或教练") + public static class ModifyLeader{ + @ApiModelProperty("参赛单位id") + private Long companyId; //参赛单位id + @ApiModelProperty("教练或领队的id") + private Long coachId; //教练或领队的id,有则修改,没有则添加 + @ApiModelProperty("身份: 0领队 1教练") + private int identity; //身份: 0领队 1教练 + @ApiModelProperty("姓名") + private String name; //姓名 + @ApiModelProperty("性别") + private String gender; //性别 + @ApiModelProperty("联系方式") + private String phone; //联系方式 + @ApiModelProperty("身份证号") + private String idCard; //身份证号 + @ApiModelProperty("证件照") + private Long idPhoto; //证件照(文件类型) + @ApiModelProperty("教练证") + private Long coachCertificate; //教练证(只有教练需要,文件类型) + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java index 745c1121..d9b10438 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java @@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.servlet.http.Part; import java.util.List; @@ -106,8 +107,8 @@ public class ProvinceCompeteVo { @ApiModelProperty("参赛人员的人数") private int playerNum; } - @Data + @Data @ApiModel("查询当前用户参赛单位基本信息") public static class CompeteCompanyCoach { @ApiModelProperty("教练id") @@ -123,4 +124,32 @@ public class ProvinceCompeteVo { @ApiModelProperty("联系方式") private String phone; } + @Data + @ApiModel("查询当前用户参赛单位基本信息") + public static class PlayerInfo { + @ApiModelProperty("选手id") + private Long playerId ; + @ApiModelProperty("参赛单位id") + private Long competeId; + @ApiModelProperty("组别id") + private Long groupId; + @ApiModelProperty("选手姓名") + private String playerName; + @ApiModelProperty("性别") + private int gender; + @ApiModelProperty("身份证号") + private String idCard; + @ApiModelProperty("身份证正面照片 或户口本照片 (浏览路径)") + private String idCardFront ; + @ApiModelProperty("身份证反面照片(浏览路径)") + private String idCardBack; + @ApiModelProperty("一寸证件照(浏览路径)") + private Long idPhone; + @ApiModelProperty("学籍证明(浏览路径)") + private Long studentRecord; + @ApiModelProperty("体检证明(浏览路径)") + private Long healthRecord; + @ApiModelProperty("保险证明(浏览路径)") + private Long insuranceRecord; + } } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java index 53c51615..fac2476c 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java @@ -49,4 +49,5 @@ public interface CompeteTimeDao extends CompeteTimeMapper { * @return 返回组别信息 */ List queryGroupByProject(@Param("type") int type, @Param("projectId") Long projectId); + } diff --git a/mt/src/main/java/com/ccsens/mt/service/IProvinceService.java b/mt/src/main/java/com/ccsens/mt/service/IProvinceService.java index d206d84b..5d58e16c 100644 --- a/mt/src/main/java/com/ccsens/mt/service/IProvinceService.java +++ b/mt/src/main/java/com/ccsens/mt/service/IProvinceService.java @@ -74,6 +74,11 @@ public interface IProvinceService { */ ProvinceCompeteVo.CompeteCompany changeCompany(CompeteDto.CompeteCompany param); + /** + * 添加/修改领队或教练 + * @param param + */ + void updateLeader(ProvinceCompeteDto.ModifyLeader param); /** * 查找此单位的领队和教练信息 @@ -104,4 +109,20 @@ public interface IProvinceService { * @param param 选手id和项目id */ void playerJoinProject(ProvinceCompeteDto.JoinProject param); + /** + * 删除选手信息 + * @param + * @param + * @return + */ + void deletePlayer(CompeteDto.DelPlayer param); + + /** + * 查看选手信息 + * @param + * @param + * @return + */ + ProvinceCompeteVo.PlayerInfo getPlayerInfo(CompeteDto.DelPlayer param); + } diff --git a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java index df6a13cf..8daa95b8 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java @@ -1,5 +1,6 @@ package com.ccsens.mt.service; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.IdcardUtil; @@ -14,6 +15,9 @@ import com.ccsens.mt.persist.dao.CompetePlayerDao; import com.ccsens.mt.persist.dao.CompeteTeamDao; import com.ccsens.mt.persist.dao.CompeteTimeDao; import com.ccsens.mt.persist.mapper.*; +import com.ccsens.mt.persist.mapper.CommonFileMapper; +import com.ccsens.mt.persist.mapper.CompeteCoachMapper; +import com.ccsens.mt.persist.mapper.CompetePlayerMapper; import com.ccsens.mt.util.Constant; import com.ccsens.util.CodeEnum; import com.ccsens.util.PropUtil; @@ -57,6 +61,8 @@ public class ProvinceService implements IProvinceService { private CompeteTeamDao competeTeamDao; @Resource private CompeteTeamMemberMapper teamMemberMapper; + @Resource + private CompetePlayerMapper competePlayerMapper; /** * 查找当前用户填写的信息的概览 @@ -308,9 +314,70 @@ public class ProvinceService implements IProvinceService { @Override public void deleteCoach(CompeteDto.AddCoach param) { +//<<<<<<< HEAD +// Long coachId = param.getCoachId(); +// CompeteCoach competeCoach = competeCoachMapper.selectByPrimaryKey(coachId); +// competeCoachMapper.deleteByPrimaryKey(competeCoach.getId()); +//======= Long coachId = param.getCoachId(); CompeteCoach competeCoach = competeCoachMapper.selectByPrimaryKey(coachId); - competeCoachMapper.deleteByPrimaryKey(competeCoach.getId()); + competeCoach.setRecStatus((byte) 2); + CompeteCoachExample competeCoachExample = new CompeteCoachExample(); + competeCoachExample.createCriteria().andIdEqualTo(coachId); + competeCoachMapper.updateByExample(competeCoach,competeCoachExample); + + } + + @Override + public void deletePlayer(CompeteDto.DelPlayer param) { + Long playerId = param.getPlayerId(); +// competePlayerMapper.deleteByPrimaryKey(playerId); + CompetePlayer competePlayer = competePlayerMapper.selectByPrimaryKey(playerId); + competePlayer.setRecStatus((byte) 2); + CompetePlayerExample competePlayerExample = new CompetePlayerExample(); + competePlayerExample.createCriteria().andIdEqualTo(playerId); + competePlayerMapper.updateByExampleSelective(competePlayer,competePlayerExample); + + } + + @Override + public ProvinceCompeteVo.PlayerInfo getPlayerInfo(CompeteDto.DelPlayer param) { + Long playerId = param.getPlayerId(); + CompetePlayer competePlayer = competePlayerMapper.selectByPrimaryKey(playerId); + if (ObjectUtil.isNull(competePlayer)){ + throw new BaseException(CodeEnum.PARAM_ERROR); + } + ProvinceCompeteVo.PlayerInfo playerInfo = new ProvinceCompeteVo.PlayerInfo(); + playerInfo.setPlayerId(competePlayer.getId()); + playerInfo.setCompeteId(competePlayer.getCompeteTimeId()); + playerInfo.setGroupId(competePlayer.getCompeteGroupId()); + playerInfo.setPlayerName(competePlayer.getName()); + playerInfo.setGender(competePlayer.getGender()); + playerInfo.setIdCard(competePlayer.getIdCard()); + playerInfo.setIdCardFront(competePlayer.getIdCardFront()); + playerInfo.setIdCardBack(competePlayer.getIdCardBack()); + playerInfo.setIdPhone(competePlayer.getIdPhotoFile()); + playerInfo.setStudentRecord(competePlayer.getStudentRecordFile()); + playerInfo.setHealthRecord(competePlayer.getHealthRecordFile()); + playerInfo.setInsuranceRecord(competePlayer.getInsuranceRecordFile()); + return playerInfo; + } + + @Override + public void updateLeader(ProvinceCompeteDto.ModifyLeader param) { + Long coachId=param.getCoachId(); + if(ObjectUtil.isNull(coachId)){ + CompeteCoach competeCoach=new CompeteCoach(); + competeCoach.setId(snowflake.nextId()); + BeanUtil.copyProperties(param,competeCoach); + competeCoachMapper.insertSelective(competeCoach); + }else{ + CompeteCoach competeCoach=competeCoachMapper.selectByPrimaryKey(coachId); + if(ObjectUtil.isNotNull(competeCoach)){ + BeanUtil.copyProperties(param,competeCoach); + competeCoachMapper.updateByPrimaryKeySelective(competeCoach); + } + } } /** diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index 5889ff7f..5c2cd5c4 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: test - include: common, util-test \ No newline at end of file + active: dev + include: common, util-dev \ No newline at end of file