|
|
@@ -126,6 +126,7 @@ public class KxsBcqtTeamServiceImpl extends ServiceImpl<KxsBcqtTeamMapper, KxsBc
|
|
|
public boolean verifyAddTeam(CampAddBcqtTeamDTO param) {
|
|
|
String teamName = param.getTeamName();
|
|
|
Long captainId = param.getCaptainId();
|
|
|
+
|
|
|
//不存在同名团队
|
|
|
KxsBcqtTeam kxsBcqtTeam = baseMapper.selectOne(Wrappers.<KxsBcqtTeam>query().lambda().eq(KxsBcqtTeam::getTeamName, teamName));
|
|
|
if (kxsBcqtTeam != null) {
|
|
|
@@ -212,6 +213,11 @@ public class KxsBcqtTeamServiceImpl extends ServiceImpl<KxsBcqtTeamMapper, KxsBc
|
|
|
if (kxsBcqtTeam ==null){
|
|
|
return R.failed("该活动不存在");
|
|
|
}
|
|
|
+ Long userId = SecurityUtils.getUser().getId();
|
|
|
+ KxsBcqtTeamDetail bcqtTeamDetail = kxsBcqtTeamDetailMapper.selectOne(Wrappers.<KxsBcqtTeamDetail>query().lambda().eq(KxsBcqtTeamDetail::getTeamId, id).eq(KxsBcqtTeamDetail::getUserId, userId));
|
|
|
+ if (bcqtTeamDetail == null){
|
|
|
+ return R.failed("非法参数,无法查看未加入的团队");
|
|
|
+ }
|
|
|
//复制活动信息
|
|
|
BeanUtil.copyProperties(kxsBcqtTeam,campGetBcqtDetailVO);
|
|
|
//总激活
|
|
|
@@ -415,11 +421,55 @@ public class KxsBcqtTeamServiceImpl extends ServiceImpl<KxsBcqtTeamMapper, KxsBc
|
|
|
return R.ok(kxsBcqtTeamDetails);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public R joinTheTeam(long id) {
|
|
|
+ Long userId = SecurityUtils.getUser().getId();
|
|
|
+ KxsBcqtTeamDetail bcqtTeamDetail = kxsBcqtTeamDetailMapper.selectOne(Wrappers.<KxsBcqtTeamDetail>query().lambda().eq(KxsBcqtTeamDetail::getUserId, userId).eq(KxsBcqtTeamDetail::getEndFlag, 0));
|
|
|
+ if (bcqtTeamDetail != null){
|
|
|
+ return R.failed("每个用户同一时间只能加入一个团队");
|
|
|
+ }
|
|
|
+ KxsBcqtTeam kxsBcqtTeam = kxsBcqtTeamMapper.selectById(id);
|
|
|
+ if (kxsBcqtTeam == null){
|
|
|
+ return R.failed("非法参数,团队不存在");
|
|
|
+ }
|
|
|
+ if (kxsBcqtTeam.getStatus() != 0){
|
|
|
+ return R.failed("只能加入未开始的团队");
|
|
|
+ }
|
|
|
+ R<KxsUser> kxsUserR = remoteKxsUserService.loadUserById(Math.toIntExact(userId),SecurityConstants.FROM_IN);
|
|
|
+ KxsUser kxsUser = kxsUserR.getData();
|
|
|
+ if (kxsUser == null){
|
|
|
+ return R.failed("系统错误,请重新登录");
|
|
|
+ }
|
|
|
+ Long captainId = kxsBcqtTeam.getCaptainId();
|
|
|
+ String pidPath = kxsUser.getPidPath();
|
|
|
+ String pid = "," + captainId + ",";
|
|
|
+ if (!pidPath.contains(pid)){
|
|
|
+ return R.failed("您无法加入您体系外的团队");
|
|
|
+ }
|
|
|
+ Integer teamNumber = kxsBcqtTeam.getTeamNumber();
|
|
|
+ if (teamNumber >= 10){
|
|
|
+ return R.failed("该团队人数已满");
|
|
|
+ }
|
|
|
+ //加入
|
|
|
+ kxsBcqtTeam.setTeamNumber(teamNumber + 1);
|
|
|
+ kxsBcqtTeamMapper.updateById(kxsBcqtTeam);
|
|
|
+ KxsBcqtTeamDetail kxsBcqtTeamDetail = new KxsBcqtTeamDetail();
|
|
|
+ kxsBcqtTeamDetail.setCreateTime(LocalDateTime.now());
|
|
|
+ kxsBcqtTeamDetail.setDelFlag("0");
|
|
|
+ kxsBcqtTeamDetail.setUserId(Long.valueOf(kxsUser.getId()));
|
|
|
+ kxsBcqtTeamDetail.setUsername(kxsUser.getUsername());
|
|
|
+ kxsBcqtTeamDetail.setUserCode(kxsUser.getUserCode());
|
|
|
+ kxsBcqtTeamDetail.setPosActivateNumber(0);
|
|
|
+ kxsBcqtTeamDetail.setLkbActivateNumber(0);
|
|
|
+ kxsBcqtTeamDetail.setGdActivateNumber(0);
|
|
|
+ kxsBcqtTeamDetail.setCaptainStatus(0);
|
|
|
+ kxsBcqtTeamDetail.setEndFlag(0);
|
|
|
+ kxsBcqtTeamDetail.setTeamId(id);
|
|
|
+ kxsBcqtTeamDetailMapper.insert(kxsBcqtTeamDetail);
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|