Browse Source

20200904_1.0

master
zy_Java 5 years ago
parent
commit
d225a11d9c
  1. 3
      mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java
  2. 50
      mt/src/main/java/com/ccsens/mt/service/CompeteService.java
  3. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

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

@ -49,6 +49,9 @@ public class CompeteDto {
@Data @Data
@ApiModel("提交报名基本信息") @ApiModel("提交报名基本信息")
public static class CompetePlayerInfo{ public static class CompetePlayerInfo{
@NotNull
@ApiModelProperty("第几届信息的id")
private Long competeTimeId;
@NotNull @NotNull
@ApiModelProperty("比赛的类型,0跳绳比赛") @ApiModelProperty("比赛的类型,0跳绳比赛")
private int type; private int type;

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

@ -3,6 +3,7 @@ package com.ccsens.mt.service;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake; import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.po.*; import com.ccsens.mt.bean.po.*;
import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.CompeteVo;
@ -102,9 +103,7 @@ public class CompeteService implements ICompeteService{
//根据type查找数据库内所有参赛单位 //根据type查找数据库内所有参赛单位
List<CompeteVo.CompeteCompany> competeCompanyList = competeTimeDao.queryCompeteCompanyByType(competeType.getType()); List<CompeteVo.CompeteCompany> competeCompanyList = competeTimeDao.queryCompeteCompanyByType(competeType.getType());
if(CollectionUtil.isNotEmpty(competeCompanyList)){ if(CollectionUtil.isNotEmpty(competeCompanyList)){
competeCompanyList.forEach(competeCompany -> { competeCompanyList.forEach(competeCompany -> redisUtil.lSet(key,competeCompany,Constant.Redis.COMPETE_COMPANY_TIME));
redisUtil.lSet(key,competeCompany,Constant.Redis.COMPETE_COMPANY_TIME);
});
} }
} }
@ -115,34 +114,49 @@ public class CompeteService implements ICompeteService{
public CompeteVo.CompetePlayerInfo saveCompetePlayerInfo(QueryDto<CompeteDto.CompetePlayerInfo> params) { public CompeteVo.CompetePlayerInfo saveCompetePlayerInfo(QueryDto<CompeteDto.CompetePlayerInfo> params) {
CompeteDto.CompetePlayerInfo competePlayerInfo = params.getParam(); CompeteDto.CompetePlayerInfo competePlayerInfo = params.getParam();
Long userId = params.getUserId(); Long userId = params.getUserId();
//检查验证码是否正确 //检查验证码是否正确
if (!redisUtil.hasKey(RedisKeyManager.getSigninSmsKey(competePlayerInfo.getPhone()))) { // if (!redisUtil.hasKey(RedisKeyManager.getSigninSmsKey(competePlayerInfo.getPhone()))) {
throw new BaseException(CodeEnum.SMS_CODE_CORRECT); // throw new BaseException(CodeEnum.SMS_CODE_CORRECT);
// }
// if (!competePlayerInfo.getSmsCode().equals(redisUtil.get(RedisKeyManager.getSigninSmsKey(competePlayerInfo.getPhone())).toString())) {
// throw new BaseException(CodeEnum.SMS_CODE_CORRECT);
// }
//检查此用户是否已经报名
CompetePlayerExample playerExample = new CompetePlayerExample();
playerExample.createCriteria().andUserIdEqualTo(userId);
if(competePlayerDao.countByExample(playerExample) != 0){
throw new BaseException(CodeEnum.PLAYER_INFO_ALREADY);
} }
if (!competePlayerInfo.getSmsCode().equals(redisUtil.get(RedisKeyManager.getSigninSmsKey(competePlayerInfo.getPhone())).toString())) { //检查组别是否存在
throw new BaseException(CodeEnum.SMS_CODE_CORRECT); CompeteGroup group = competeGroupMapper.selectByPrimaryKey(competePlayerInfo.getGroupId());
if(ObjectUtil.isNull(group)){
throw new BaseException(CodeEnum.PARAM_ERROR);
} }
//添加基本信息
CompetePlayer player = new CompetePlayer();
BeanUtil.copyProperties(competePlayerInfo,player);
player.setId(snowflake.nextId());
player.setUserId(userId);
//检查参赛单位是否存在,不存在则添加 //检查参赛单位是否存在,不存在则添加
CompeteCompany company;
CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample(); CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample();
competeCompanyExample.createCriteria().andNameEqualTo(competePlayerInfo.getCompanyName()); competeCompanyExample.createCriteria().andNameEqualTo(competePlayerInfo.getCompanyName());
List<CompeteCompany> companyList = competeCompanyMapper.selectByExample(competeCompanyExample); List<CompeteCompany> companyList = competeCompanyMapper.selectByExample(competeCompanyExample);
if(CollectionUtil.isEmpty(companyList)){ if(CollectionUtil.isEmpty(companyList)){
CompeteCompany company = new CompeteCompany(); company = new CompeteCompany();
company.setId(snowflake.nextId()); company.setId(snowflake.nextId());
company.setType((byte) competePlayerInfo.getType()); company.setType((byte) competePlayerInfo.getType());
company.setName(competePlayerInfo.getCompanyName()); company.setName(competePlayerInfo.getCompanyName());
player.setCompanyId(company.getId()); competeCompanyMapper.insertSelective(company);
}else { }else {
player.setCompanyId(companyList.get(0).getId()); company = companyList.get(0);
} }
//添加基本信息
CompetePlayer player = new CompetePlayer();
BeanUtil.copyProperties(competePlayerInfo,player);
player.setId(snowflake.nextId());
player.setUserId(userId);
player.setCompeteGroupId(competePlayerInfo.getGroupId());
player.setCompanyId(company.getId());
competePlayerDao.insertSelective(player);
// CompeteVo.CompetePlayerInfo playerInfo = return new CompeteVo.CompetePlayerInfo(player, group, company,getCompeteProjectAll(params.getUserId(), params.getParam().getCompeteTimeId()));
return null;
} }
/** /**
@ -195,7 +209,7 @@ public class CompeteService implements ICompeteService{
team.setCompeteTimeId(params.getParam().getCompeteTimeId()); team.setCompeteTimeId(params.getParam().getCompeteTimeId());
team.setCertificate(params.getParam().getCertificate()); team.setCertificate(params.getParam().getCertificate());
team.setGenderGroup(player.getGender()); team.setGenderGroup(player.getGender());
String qrCode = PropUtil.signUpUrl + "home"; String qrCode = PropUtil.signUpUrl + "home&teamId=" + team.getId();
String qrCodeVisit = QrCodeUtil.urlToQRCode(qrCode, PropUtil.path + "qrCode"); String qrCodeVisit = QrCodeUtil.urlToQRCode(qrCode, PropUtil.path + "qrCode");
team.setQrCode(qrCodeVisit); team.setQrCode(qrCodeVisit);
competeTeamDao.insertSelective(team); competeTeamDao.insertSelective(team);

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

@ -147,6 +147,7 @@ public enum CodeEnum {
BASE_INFO_LACK(125,"请先填写您的基本信息", true), BASE_INFO_LACK(125,"请先填写您的基本信息", true),
JOINED_MORE(126,"该类型比赛您参赛的数目已达上限", true), JOINED_MORE(126,"该类型比赛您参赛的数目已达上限", true),
JOINED_SAME(127,"您已经参加同类型的比赛了,不能再重复参加参赛", true), JOINED_SAME(127,"您已经参加同类型的比赛了,不能再重复参加参赛", true),
PLAYER_INFO_ALREADY(127,"您已经有了报名信息,请不要重复提交", true),
; ;

Loading…
Cancel
Save