Browse Source

加入团队

master
zhizhi wu 5 years ago
parent
commit
a3f9c28aca
  1. 2
      mt/src/main/java/com/ccsens/mt/api/CompeteController.java
  2. 10
      mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java
  3. 47
      mt/src/main/java/com/ccsens/mt/service/CompeteService.java
  4. 2
      mt/src/main/java/com/ccsens/mt/service/ICompeteService.java
  5. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

2
mt/src/main/java/com/ccsens/mt/api/CompeteController.java

@ -125,7 +125,7 @@ public class CompeteController {
@MustLogin @MustLogin
@ApiOperation(value = "扫码加入团队", notes = "") @ApiOperation(value = "扫码加入团队", notes = "")
@RequestMapping(value = "/joinGroup", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @RequestMapping(value = "/joinGroup", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<CompeteVo.CompeteTeamProject> joinCompeteGroup(@ApiParam @Validated @RequestBody QueryDto params) { public JsonResponse<CompeteVo.CompeteTeamProject> joinCompeteGroup(@ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteGroup> params) {
log.info("扫码加入团队:{}",params); log.info("扫码加入团队:{}",params);
CompeteVo.CompeteTeamProject competeTeamProject = competeService.joinCompeteGroup(params); CompeteVo.CompeteTeamProject competeTeamProject = competeService.joinCompeteGroup(params);
return JsonResponse.newInstance().ok(competeTeamProject); return JsonResponse.newInstance().ok(competeTeamProject);

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

@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull;
/** /**
* @author * @author
*/ */
@ -74,4 +76,12 @@ public class CompeteDto {
private Long competeTimeId; private Long competeTimeId;
} }
@Data
@ApiModel("项目团队ID")
public static class CompeteGroup{
@NotNull(message="请选择团队信息")
@ApiModelProperty("团队ID")
private Long id;
}
} }

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

@ -1,18 +1,43 @@
package com.ccsens.mt.service; package com.ccsens.mt.service;
import cn.hutool.core.collection.CollectionUtil;
import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.po.CompetePlayer;
import com.ccsens.mt.bean.po.CompetePlayerExample;
import com.ccsens.mt.bean.po.CompeteTeamMember;
import com.ccsens.mt.bean.po.CompeteTeamMemberExample;
import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.persist.mapper.CompeteGroupMapper;
import com.ccsens.mt.persist.mapper.CompetePlayerMapper;
import com.ccsens.mt.persist.mapper.CompeteTeamMapper;
import com.ccsens.mt.persist.mapper.CompeteTeamMemberMapper;
import com.ccsens.util.CodeEnum;
import com.ccsens.util.bean.dto.QueryDto; import com.ccsens.util.bean.dto.QueryDto;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; 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; import java.util.List;
/** /**
* @author * @author
*/ */
@Slf4j
@Service @Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class CompeteService implements ICompeteService{ public class CompeteService implements ICompeteService{
@Resource
private CompeteTeamMapper competeTeamMapper;
@Resource
private CompetePlayerMapper competePlayerMapper;
@Resource
private CompeteTeamMemberMapper competeTeamMemberMapper;
/** /**
* 查看第几届 * 查看第几届
*/ */
@ -97,7 +122,27 @@ public class CompeteService implements ICompeteService{
* 扫码加入团队 * 扫码加入团队
*/ */
@Override @Override
public CompeteVo.CompeteTeamProject joinCompeteGroup(QueryDto params) { public CompeteVo.CompeteTeamProject joinCompeteGroup(QueryDto<CompeteDto.CompeteGroup> params) {
log.info("扫码加入团队:{}", params);
CompetePlayerExample playerExample = new CompetePlayerExample();
playerExample.createCriteria().andUserIdEqualTo(params.getUserId());
List<CompetePlayer> competePlayers = competePlayerMapper.selectByExample(playerExample);
log.info("选手信息:{}", competePlayers);
if (CollectionUtil.isEmpty(competePlayers)) {
throw new BaseException(CodeEnum.PARAM_ERROR);
}
CompetePlayer player = competePlayers.get(0);
CompeteTeamMemberExample teamMemberExample = new CompeteTeamMemberExample();
// TODO 缺少团队ID
teamMemberExample.createCriteria().andPlayerIdEqualTo(player.getId());
long count = competeTeamMemberMapper.countByExample(teamMemberExample);
if (count > 0) {
throw new BaseException(CodeEnum.JOINED_TEAM);
}
return null; return null;
} }
} }

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

@ -84,5 +84,5 @@ public interface ICompeteService {
* @param params * @param params
* @return * @return
*/ */
CompeteVo.CompeteTeamProject joinCompeteGroup(QueryDto params); CompeteVo.CompeteTeamProject joinCompeteGroup(QueryDto<CompeteDto.CompeteGroup> params);
} }

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

@ -140,6 +140,7 @@ public enum CodeEnum {
NOT_CONFIG_OR_ERR(118,"缺少配置信息,或配置信息异常",true), NOT_CONFIG_OR_ERR(118,"缺少配置信息,或配置信息异常",true),
GROUP_MEMBER_LIMIT(119,"当前组内人员已满,请选择其他组",true), GROUP_MEMBER_LIMIT(119,"当前组内人员已满,请选择其他组",true),
GROUP_NOT_CHOICE(120,"请选择要加入的队伍",true), GROUP_NOT_CHOICE(120,"请选择要加入的队伍",true),
JOINED_TEAM(121,"您已经加入队伍",true),
; ;

Loading…
Cancel
Save