Browse Source

11-11-2

tiaosheng
Lihong@123456 5 years ago
parent
commit
80211293c2
  1. 10
      mt/src/main/java/com/ccsens/mt/api/ProvinceController.java
  2. 12
      mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java
  3. 8
      mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java
  4. 17
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java
  5. 6
      mt/src/main/java/com/ccsens/mt/service/IProvinceService.java
  6. 339
      mt/src/main/java/com/ccsens/mt/service/ProvinceService.java
  7. 52
      mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml
  8. 6
      util/src/main/java/com/ccsens/util/CodeEnum.java

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

@ -201,4 +201,14 @@ public class ProvinceController {
log.info("团体报名查询可以参加和已经参加的选手:{}",groupAndPlayer);
return JsonResponse.newInstance().ok(groupAndPlayer);
}
@MustLogin
@ApiOperation(value = "删除报名的队伍", notes = "")
@RequestMapping(value = "/del/team", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse delJoinTeam(@ApiParam @Validated @RequestBody QueryDto<ProvinceCompeteDto.DelTeam> params) {
log.info("删除报名的队伍:{}",params);
provinceService.delJoinTeam(params.getParam());
log.info("删除报名的队伍");
return JsonResponse.newInstance().ok();
}
}

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

@ -95,6 +95,10 @@ public class ProvinceCompeteDto {
private Long projectId;
@ApiModelProperty("单位id")
private Long companyId;
@ApiModelProperty("性别组")
private int gender;
@ApiModelProperty("组别信息")
private int groupRemark;
@ApiModelProperty("选手id")
private List<JoinProjectPlayer> players;
}
@ -185,4 +189,12 @@ public class ProvinceCompeteDto {
@ApiModelProperty("组别信息")
private int groupRemark;
}
@Data
@ApiModel("删除参赛队伍")
public static class DelTeam{
@NotNull(message = "队伍id")
@ApiModelProperty("队伍id")
private Long teamId;
}
}

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

@ -48,6 +48,12 @@ public class ProvinceCompeteVo {
private Long groupId;
@ApiModelProperty("组别名字")
private String groupName;
@ApiModelProperty("性别组")
private int gender;
@ApiModelProperty("组别信息")
private int groupRemark;
@ApiModelProperty("团队id")
private Long teamId;
@ApiModelProperty("选手信息")
private List<PlayerInfoByGroup> playerList;
}
@ -81,6 +87,8 @@ public class ProvinceCompeteVo {
private String name;
@ApiModelProperty("是否是团队项目 0否 1是")
private byte team;
@ApiModelProperty("参赛规则 0限制组别 1不限组别")
private byte joinRule;
@ApiModelProperty("最少人数")
private int memberMin;
@ApiModelProperty("最多人数")

17
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java

@ -102,7 +102,7 @@ public interface CompeteCompanyDao extends CompeteCompanyMapper {
* @param type
* @return
*/
List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(@Param("projectId")Long projectId, @Param("type")Byte type);
List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProject(@Param("companyId")Long companyId, @Param("projectId")Long projectId, @Param("type")Byte type);
/**
* 根据大赛id查看当前大赛所有队伍信息,以及联系人的信息
* @param CompeteTimeId 大赛CompeteTimeId
@ -127,4 +127,19 @@ public interface CompeteCompanyDao extends CompeteCompanyMapper {
* @return 返回选手信息
*/
List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProjectWithRule(@Param("companyId")Long companyId, @Param("projectId")Long projectId, @Param("type")Byte type, @Param("groupRemark")int groupRemark, @Param("gender")int gender);
/**
* 查找该选手是否参加了该项目的其他组别
* @param competeTimeId 大赛id
* @param playerId 选手id
* @param projectId 项目id
* @param companyId 单位id
* @param gender 性别组
* @param groupRemark 组别备注信息
* @return 返回参加的数量
*/
int getTeamNumByPlayerIdAndGroup(@Param("competeTimeId")Long competeTimeId, @Param("playerId")Long playerId, @Param("projectId")Long projectId,
@Param("companyId")Long companyId, @Param("gender")int gender, @Param("groupRemark")int groupRemark);
List<ProvinceCompeteVo.PlayerInfoByGroup> queryPlayersByTeamProject(@Param("companyId")Long companyId, @Param("projectId")Long projectId);
}

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

@ -145,4 +145,10 @@ public interface IProvinceService {
* @return 返回所有可参赛的选手和已经参赛的选手
*/
List<ProvinceCompeteVo.GroupAndPlayer> getPlayerByTeamProjectWithRule(ProvinceCompeteDto.GetPlayerByTeamProjectWithRule param);
/**
* 删除参赛的队伍
* @param param ok
*/
void delJoinTeam(ProvinceCompeteDto.DelTeam param);
}

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

@ -524,102 +524,219 @@ public class ProvinceService implements IProvinceService {
}
}
}else {
//查找当前公司是否已经报名此项目
CompeteTeam competeTeam;
CompeteTeamExample teamExample = new CompeteTeamExample();
teamExample.createCriteria().andProjectIdEqualTo(competeProject.getId()).andCompanyIdEqualTo(param.getCompanyId()).andCompeteTimeIdEqualTo(param.getCompeteTimeId());
List<CompeteTeam> competeTeamList = competeTeamDao.selectByExample(teamExample);
if(CollectionUtil.isNotEmpty(competeTeamList)){
competeTeam = competeTeamList.get(0);
}else {
competeTeam = new CompeteTeam();
competeTeam.setId(snowflake.nextId());
competeTeam.setCompeteTimeId(param.getCompeteTimeId());
competeTeam.setProjectId(param.getProjectId());
competeTeam.setCompanyId(param.getCompanyId());
//添加团队表
competeTeamDao.insertSelective(competeTeam);
}
//检查参赛人数是否符合
int joinCount = 0;
for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){
if(joinProject.getJoinProject() == 1){
joinCount++;
}else {
joinCount--;
if(competeProject.getJoinRule() == 1) {
//查找当前公司是否已经报名此项目
CompeteTeam competeTeam;
CompeteTeamExample teamExample = new CompeteTeamExample();
teamExample.createCriteria().andProjectIdEqualTo(competeProject.getId()).andCompanyIdEqualTo(param.getCompanyId()).andCompeteTimeIdEqualTo(param.getCompeteTimeId());
List<CompeteTeam> competeTeamList = competeTeamDao.selectByExample(teamExample);
if (CollectionUtil.isNotEmpty(competeTeamList)) {
competeTeam = competeTeamList.get(0);
} else {
competeTeam = new CompeteTeam();
competeTeam.setId(snowflake.nextId());
competeTeam.setCompeteTimeId(param.getCompeteTimeId());
competeTeam.setProjectId(param.getProjectId());
competeTeam.setCompanyId(param.getCompanyId());
//添加团队表
competeTeamDao.insertSelective(competeTeam);
}
}
CompeteTeamMemberExample example = new CompeteTeamMemberExample();
example.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
long memberNum = teamMemberMapper.countByExample(example);
if(joinCount + memberNum > 0) {
if (joinCount + memberNum > competeProject.getMemberMax() || joinCount + memberNum < competeProject.getMemberMin()) {
throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
// //检查参赛人数是否符合
// int joinCount = 0;
// for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){
// if(joinProject.getJoinProject() == 1){
// joinCount++;
// }else {
// joinCount--;
// }
// }
// CompeteTeamMemberExample example = new CompeteTeamMemberExample();
// example.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
// long memberNum = teamMemberMapper.countByExample(example);
// if(joinCount + memberNum > 0) {
// if (joinCount + memberNum > competeProject.getMemberMax() || joinCount + memberNum < competeProject.getMemberMin()) {
// throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
// }
// }
for (int i = 0; i < param.getPlayers().size(); i++) {
ProvinceCompeteDto.JoinProjectPlayer joinProjectPlayer = param.getPlayers().get(i);
CompetePlayer player = competePlayerDao.selectByPrimaryKey(joinProjectPlayer.getPlayerId());
if (ObjectUtil.isNull(player)) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
//查找改选手是否在本团队内
CompeteTeamMemberExample memberExample = new CompeteTeamMemberExample();
memberExample.createCriteria().andPlayerIdEqualTo(player.getId())
.andCompeteTeamIdEqualTo(competeTeam.getId());
List<CompeteTeamMember> teamMemberList = teamMemberMapper.selectByExample(memberExample);
//选手现在不参加,但以前参加了。删除以前的数据
if (joinProjectPlayer.getJoinProject() == 0 && CollectionUtil.isNotEmpty(teamMemberList)) {
teamMemberList.forEach(member -> {
member.setRecStatus((byte) 2);
teamMemberMapper.updateByPrimaryKeySelective(member);
});
}
//选手这次参加,以前未参加,添加数据
if (joinProjectPlayer.getJoinProject() == 1 && CollectionUtil.isEmpty(teamMemberList)) {
//检查该选手报名项目数量(团队6个)
int a = competeCompanyDao.getTeamNumByPlayerId(param.getCompeteTimeId(), player.getId());
if (a >= 6) {
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName() + "团队"));
//XXX团队项目参赛次数已满
}
//添加成员表
CompeteTeamMember teamMember = new CompeteTeamMember();
teamMember.setId(snowflake.nextId());
teamMember.setCompeteTeamId(competeTeam.getId());
teamMember.setPlayerId(player.getId());
teamMemberMapper.insertSelective(teamMember);
}
}
}
for (int i = 0; i < param.getPlayers().size(); i++) {
ProvinceCompeteDto.JoinProjectPlayer joinProjectPlayer = param.getPlayers().get(i);
CompetePlayer player = competePlayerDao.selectByPrimaryKey(joinProjectPlayer.getPlayerId());
if(ObjectUtil.isNull(player)){ throw new BaseException(CodeEnum.PARAM_ERROR); }
//查找改选手是否在本团队内
//查询团队内的成员,如果没有则删除团队
CompeteTeamMemberExample memberExample = new CompeteTeamMemberExample();
memberExample.createCriteria().andPlayerIdEqualTo(player.getId())
.andCompeteTeamIdEqualTo(competeTeam.getId());
List<CompeteTeamMember> teamMemberList = teamMemberMapper.selectByExample(memberExample);
//选手现在不参加,但以前参加了。删除以前的数据
if(joinProjectPlayer.getJoinProject() == 0 && CollectionUtil.isNotEmpty(teamMemberList)){
teamMemberList.forEach(member -> {
member.setRecStatus((byte) 2);
teamMemberMapper.updateByPrimaryKeySelective(member);
});
}
//选手这次参加,以前未参加,添加数据
if(joinProjectPlayer.getJoinProject() == 1 && CollectionUtil.isEmpty(teamMemberList)){
//检查该选手报名项目数量(团队6个)
int a = competeCompanyDao.getTeamNumByPlayerId(param.getCompeteTimeId(),player.getId());
if(a >= 6){
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName()+"团队"));
//XXX团队项目参赛次数已满
memberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
if (teamMemberMapper.countByExample(memberExample) == 0) {
competeTeam.setRecStatus((byte) 2);
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
} else {
//当前参赛人数不符提示错误信息
if (teamMemberMapper.countByExample(memberExample) > competeProject.getMemberMax() || teamMemberMapper.countByExample(memberExample) < competeProject.getMemberMin()) {
throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
}
//修改团队的性别组和组别备注信息
ProvinceCompeteVo.TeamGroupRemark teamGroupRemark = competePlayerDao.getTeamGroupRemark(competeTeam.getId());
if (StrUtil.isNotEmpty(teamGroupRemark.getGroupRemark())) {
competeTeam.setGenderGroup((byte) teamGroupRemark.getSexGroup());
if (ObjectUtil.isNull(competeTeam.getGroupRemark()) || competeTeam.getGroupRemark() == 0) {
String groupRemark = teamGroupRemark.getGroupRemark().substring(0, teamGroupRemark.getGroupRemark().length() - 3);
Constant.COMPETE_TEAM_GROUP_REMARK remark = Constant.COMPETE_TEAM_GROUP_REMARK.phaseOf(groupRemark);
if (ObjectUtil.isNotNull(remark)) {
competeTeam.setGroupRemark((byte) remark.value);
} else {
competeTeam.setGroupRemark((byte) 0);
}
}
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
}
//添加成员表
CompeteTeamMember teamMember = new CompeteTeamMember();
teamMember.setId(snowflake.nextId());
teamMember.setCompeteTeamId(competeTeam.getId());
teamMember.setPlayerId(player.getId());
teamMemberMapper.insertSelective(teamMember);
}
}
//查询团队内的成员,如果没有则删除团队
CompeteTeamMemberExample memberExample = new CompeteTeamMemberExample();
memberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
if(teamMemberMapper.countByExample(memberExample) == 0){
competeTeam.setRecStatus((byte) 2);
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
}else {
//当前参赛人数不符提示错误信息
if(teamMemberMapper.countByExample(memberExample) > competeProject.getMemberMax() || teamMemberMapper.countByExample(memberExample) < competeProject.getMemberMin()){
throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
//查找当前单位是否已经报名此项目内的改组别
CompeteTeam competeTeam;
CompeteTeamExample teamExample = new CompeteTeamExample();
teamExample.createCriteria().andProjectIdEqualTo(competeProject.getId()).andCompanyIdEqualTo(param.getCompanyId())
.andCompeteTimeIdEqualTo(param.getCompeteTimeId()).andGenderGroupEqualTo((byte) param.getGender()).andGroupRemarkEqualTo((byte) param.getGroupRemark());
List<CompeteTeam> competeTeamList = competeTeamDao.selectByExample(teamExample);
if (CollectionUtil.isNotEmpty(competeTeamList)) {
competeTeam = competeTeamList.get(0);
} else {
competeTeam = new CompeteTeam();
competeTeam.setId(snowflake.nextId());
competeTeam.setCompeteTimeId(param.getCompeteTimeId());
competeTeam.setProjectId(param.getProjectId());
competeTeam.setCompanyId(param.getCompanyId());
competeTeam.setGenderGroup((byte) param.getGender());
competeTeam.setGroupRemark((byte) param.getGroupRemark());
//添加团队表
competeTeamDao.insertSelective(competeTeam);
}
//修改团队的性别组和组别备注信息
ProvinceCompeteVo.TeamGroupRemark teamGroupRemark = competePlayerDao.getTeamGroupRemark(competeTeam.getId());
if (StrUtil.isNotEmpty(teamGroupRemark.getGroupRemark())) {
competeTeam.setGenderGroup((byte) teamGroupRemark.getSexGroup());
if (ObjectUtil.isNull(competeTeam.getGroupRemark()) || competeTeam.getGroupRemark() == 0) {
String groupRemark = teamGroupRemark.getGroupRemark().substring(0, teamGroupRemark.getGroupRemark().length() - 3);
Constant.COMPETE_TEAM_GROUP_REMARK remark = Constant.COMPETE_TEAM_GROUP_REMARK.phaseOf(groupRemark);
if (ObjectUtil.isNotNull(remark)) {
competeTeam.setGroupRemark((byte) remark.value);
} else {
competeTeam.setGroupRemark((byte) 0);
// //检查参赛人数是否符合
// int joinCount = 0;
// for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){
// if(joinProject.getJoinProject() == 1){
// joinCount++;
// }else {
// joinCount--;
// }
// }
// CompeteTeamMemberExample example = new CompeteTeamMemberExample();
// example.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
// long memberNum = teamMemberMapper.countByExample(example);
// if(joinCount + memberNum > 0) {
// if (joinCount + memberNum > competeProject.getMemberMax() || joinCount + memberNum < competeProject.getMemberMin()) {
// throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
// }
// }
for (int i = 0; i < param.getPlayers().size(); i++) {
ProvinceCompeteDto.JoinProjectPlayer joinProjectPlayer = param.getPlayers().get(i);
CompetePlayer player = competePlayerDao.selectByPrimaryKey(joinProjectPlayer.getPlayerId());
if (ObjectUtil.isNull(player)) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
//查找改选手是否在本团队内
CompeteTeamMemberExample memberExample = new CompeteTeamMemberExample();
memberExample.createCriteria().andPlayerIdEqualTo(player.getId())
.andCompeteTeamIdEqualTo(competeTeam.getId());
List<CompeteTeamMember> teamMemberList = teamMemberMapper.selectByExample(memberExample);
//选手现在不参加,但以前参加了。删除以前的数据
if (joinProjectPlayer.getJoinProject() == 0 && CollectionUtil.isNotEmpty(teamMemberList)) {
teamMemberList.forEach(member -> {
member.setRecStatus((byte) 2);
teamMemberMapper.updateByPrimaryKeySelective(member);
});
}
//选手这次参加,以前未参加,添加数据
if (joinProjectPlayer.getJoinProject() == 1 && CollectionUtil.isEmpty(teamMemberList)) {
//检查该选手报名项目数量(团队6个)
int a = competeCompanyDao.getTeamNumByPlayerId(param.getCompeteTimeId(), player.getId());
if (a >= 6) {
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName() + "团队"));
//XXX团队项目参赛次数已满
}
//查找该选手是否参加了该项目的其他组别
int b = competeCompanyDao.getTeamNumByPlayerIdAndGroup(param.getCompeteTimeId(), player.getId(),param.getProjectId()
,param.getCompanyId(),param.getGender(),param.getGroupRemark());
if (b > 0) {
throw new BaseException(CodeEnum.mtJoinAuthGroup(player.getName()));
}
//添加成员表
CompeteTeamMember teamMember = new CompeteTeamMember();
teamMember.setId(snowflake.nextId());
teamMember.setCompeteTeamId(competeTeam.getId());
teamMember.setPlayerId(player.getId());
teamMemberMapper.insertSelective(teamMember);
}
}
//查询团队内的成员,如果没有则删除团队
CompeteTeamMemberExample memberExample = new CompeteTeamMemberExample();
memberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId());
if (teamMemberMapper.countByExample(memberExample) == 0) {
competeTeam.setRecStatus((byte) 2);
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
} else {
//当前参赛人数不符提示错误信息
if (teamMemberMapper.countByExample(memberExample) > competeProject.getMemberMax() || teamMemberMapper.countByExample(memberExample) < competeProject.getMemberMin()) {
throw new BaseException(CodeEnum.MEMBER_NUM_ERROR);
}
//修改团队的性别组和组别备注信息
ProvinceCompeteVo.TeamGroupRemark teamGroupRemark = competePlayerDao.getTeamGroupRemark(competeTeam.getId());
if (StrUtil.isNotEmpty(teamGroupRemark.getGroupRemark())) {
competeTeam.setGenderGroup((byte) teamGroupRemark.getSexGroup());
if (ObjectUtil.isNull(competeTeam.getGroupRemark()) || competeTeam.getGroupRemark() == 0) {
String groupRemark = teamGroupRemark.getGroupRemark().substring(0, teamGroupRemark.getGroupRemark().length() - 3);
Constant.COMPETE_TEAM_GROUP_REMARK remark = Constant.COMPETE_TEAM_GROUP_REMARK.phaseOf(groupRemark);
if (ObjectUtil.isNotNull(remark)) {
competeTeam.setGroupRemark((byte) remark.value);
} else {
competeTeam.setGroupRemark((byte) 0);
}
}
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
}
}
}
}
}
// /**
// * 参加个人比赛
// */
// private void joinTiwnProject(){
//
// }
/**
* 查找教练详细信息
*/
@ -631,16 +748,33 @@ 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 = new ArrayList<>();
//查找项目
CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId());
if(ObjectUtil.isNotNull(competeProject)){
if(competeProject.getJoinRule() == 0) {
groupAndPlayerList = competeCompanyDao.getPlayerByTeamProject(param.getCompanyId(), param.getProjectId(), competeProject.getType());
}else {
List<ProvinceCompeteVo.PlayerInfoByGroup> playerInfoByGroupList = competeCompanyDao.queryPlayersByTeamProject(param.getCompanyId(),param.getProjectId());
// groupAndPlayerList = competeCompanyDao.queryPlayersByTeamProject(param.getCompanyId(),param.getProjectId());
ProvinceCompeteVo.GroupAndPlayer groupAndPlayer = new ProvinceCompeteVo.GroupAndPlayer();
CompeteTeamExample teamExample = new CompeteTeamExample();
teamExample.createCriteria().andProjectIdEqualTo(param.getProjectId()).andCompanyIdEqualTo(param.getCompanyId());
List<CompeteTeam> teamList = competeTeamDao.selectByExample(teamExample);
if(CollectionUtil.isNotEmpty(teamList)){
groupAndPlayer.setTeamId(teamList.get(0).getId());
}
groupAndPlayer.setGroupName("不限制组别");
groupAndPlayer.setPlayerList(playerInfoByGroupList);
groupAndPlayerList.add(groupAndPlayer);
}
}
return groupAndPlayerList;
}
/**
* 查找符合参赛规则的选手信息
@ -654,6 +788,10 @@ public class ProvinceService implements IProvinceService {
//如果同单位不限组别
if(competeProject.getJoinRule() == 1){
groupAndPlayerList = competeCompanyDao.queryPlayerByGroupId(competeProject.getType(),param.getCompanyId(),null,param.getProjectId());
// List<ProvinceCompeteVo.PlayerInfoByGroup> playerInfoByGroupList = competeCompanyDao.queryPlayersByTeamProject(param.getCompanyId(),param.getProjectId());
// ProvinceCompeteVo.GroupAndPlayer groupAndPlayer = new ProvinceCompeteVo.GroupAndPlayer();
// groupAndPlayer.setGroupName("不限制组别");
// groupAndPlayer.setPlayerList(playerInfoByGroupList);
}
//如果同单位限制组别
if(competeProject.getJoinRule() == 0){
@ -667,5 +805,24 @@ public class ProvinceService implements IProvinceService {
}
return groupAndPlayerList;
}
@Override
public void delJoinTeam(ProvinceCompeteDto.DelTeam param) {
CompeteTeam competeTeam = competeTeamDao.selectByPrimaryKey(param.getTeamId());
if(ObjectUtil.isNotNull(competeTeam)){
competeTeam.setRecStatus((byte) 2);
competeTeamDao.updateByPrimaryKeySelective(competeTeam);
CompeteTeamMemberExample teamMemberExample = new CompeteTeamMemberExample();
teamMemberExample.createCriteria().andCompeteTeamIdEqualTo(param.getTeamId());
List<CompeteTeamMember> teamMemberList = teamMemberMapper.selectByExample(teamMemberExample);
if(CollectionUtil.isNotEmpty(teamMemberList)){
teamMemberList.forEach(teamMember -> {
teamMember.setRecStatus((byte) 2);
teamMemberMapper.updateByPrimaryKeySelective(teamMember);
});
}
}
}
}

52
mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml

@ -19,6 +19,9 @@
<resultMap id="group_player" type="com.ccsens.mt.bean.vo.ProvinceCompeteVo$GroupAndPlayer">
<id column="groupId" property="groupId"/>
<result column="groupName" property="groupName"/>
<result column="gender" property="gender"/>
<result column="groupRemark" property="groupRemark"/>
<result column="teamId" property="teamId"/>
<collection property="playerList" ofType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$PlayerInfoByGroup">
<id column="playerId" property="playerId"/>
<result column="playerName" property="playerName"/>
@ -127,6 +130,7 @@
p.id as id,
p.`name` as `name`,
team,
p.join_rule as joinRule,
member_min as memberMin,
member_max as memberMax,
if(
@ -233,11 +237,13 @@
</select>
<select id="getPlayerByTeamProject" resultMap="group_player">
SELECT
g.id,
g.group_name,
t.project_id,
p.id,
p.`name`
g.id as groupId,
g.group_name as groupName,
p.id as playerId,
p.`name` as playerName,
t.gender_group as gender,
t.group_remark as groupRemark,
t.id as teamId
FROM
t_compete_group g
LEFT JOIN t_compete_team t on g.sex = t.gender_group and g.group_remark = t.group_remark
@ -245,8 +251,8 @@
LEFT JOIN t_compete_player p on m.player_id = p.id
WHERE
t.project_id = #{projectId}
and
g.type = #{type}
and t.company_id = #{companyId}
and g.type = #{type}
and g.rec_status = 0
and t.rec_status = 0
and m.rec_status = 0
@ -289,6 +295,8 @@
g.group_name as groupName,
p.id as playerId,
p.`name` as playerName,
a.mRemark as groupRemark,
a.mGender as gender,
if(a.tId is null,0,1) as joinProject
FROM
t_compete_group g
@ -323,5 +331,35 @@
and (a.mRemark = #{groupRemark} or a.mRemark is null)
and (a.mGender = #{gender} or a.mGender is null)
</select>
<select id="getTeamNumByPlayerIdAndGroup" resultType="java.lang.Integer">
SELECT
count(t.id)
FROM
t_compete_team t
LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id
WHERE
t.company_id = #{companyId}
and t.project_id = #{projectId}
and t.compete_time_id = #{competeTimeId}
and t.gender_group = #{gender}
and t.group_remark = #{groupRemark}
and m.player_id = #{projectId}
and t.rec_status = 0
and m.rec_status = 0
</select>
<select id="queryPlayersByTeamProject" resultType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$PlayerInfoByGroup">
SELECT
p.id as playerId,
p.`name` as playerName
FROM
t_compete_team t LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id
LEFT JOIN t_compete_player p on m.player_id = p.id
WHERE
t.project_id = #{projectId}
and t.company_id = #{companyId}
and t.rec_status = 0
and m.rec_status = 0
and p.rec_status = 0
</select>
</mapper>

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

@ -175,6 +175,7 @@ public enum CodeEnum {
CONTACTS_NAME_EMPTY(144,"联系人名称不能为空",true),
MEMBER_NUM_ERROR(145,"参赛人数不满足比赛人数要求",true),
GENDER_ERROR(146,"请选择正确的性别",true),
JOIN_AUTH_GROUP(147,"已参加了其他组别,无法再次报名",true),
;
@ -183,7 +184,10 @@ public enum CodeEnum {
this.msg = "请上传"+msg;
return this;
}
public static String mtJoinAuthGroup(String msg){
msg = msg+"已参加了其他组别,无法再次报名";
return msg;
}
public CodeEnum mtProjectMsg(String msg){
this.msg = msg+"项目参赛次数已满";
return this;

Loading…
Cancel
Save