15 changed files with 716 additions and 306 deletions
@ -1,225 +1,397 @@ |
|||
package com.ccsens.mt.service; |
|||
|
|||
import cn.hutool.core.lang.Snowflake; |
|||
import cn.hutool.core.util.ObjectUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.ccsens.mt.bean.dto.CompeteDto; |
|||
import com.ccsens.mt.bean.dto.ProvinceCompeteDto; |
|||
import com.ccsens.mt.bean.po.*; |
|||
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; |
|||
import com.ccsens.mt.persist.dao.CompeteCompanyDao; |
|||
import com.ccsens.mt.persist.dao.CompetePlayerDao; |
|||
import com.ccsens.mt.persist.dao.CompeteTimeDao; |
|||
import com.ccsens.mt.persist.mapper.CommonFileMapper; |
|||
import com.ccsens.mt.util.Constant; |
|||
import com.ccsens.util.CodeEnum; |
|||
import com.ccsens.util.PropUtil; |
|||
import com.ccsens.util.UploadFileUtil_Servlet3; |
|||
import com.ccsens.util.exception.BaseException; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Propagation; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import javax.annotation.Resource; |
|||
import javax.servlet.http.Part; |
|||
import java.io.File; |
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author 逗 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) |
|||
public class ProvinceService implements IProvinceService { |
|||
@Resource |
|||
private CompeteCompanyDao competeCompanyDao; |
|||
@Resource |
|||
private Snowflake snowflake; |
|||
@Resource |
|||
private CompeteTimeDao competeTimeDao; |
|||
@Resource |
|||
private CommonFileMapper commonFileMapper; |
|||
@Resource |
|||
private CompetePlayerDao competePlayerDao; |
|||
|
|||
/** |
|||
* 查找当前用户填写的信息的概览 |
|||
*/ |
|||
@Override |
|||
public ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId) { |
|||
return competeCompanyDao.getCompanyOverview(param.getCompeteTimeId(),userId); |
|||
} |
|||
|
|||
/** |
|||
* 通过组别id查找本单位的注册选手 |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.GroupAndPlayer> queryPlayerByGroupId(ProvinceCompeteDto.QueryPlayerByGroup param, Long userId) { |
|||
return competeCompanyDao.queryPlayerByGroupId(param.getCompanyId(),param.getGroupId(),param.getProjectId()); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 查找一级项目 |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.FirstProject> queryFirstProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId) { |
|||
List<ProvinceCompeteVo.FirstProject> firstProjects = new ArrayList<>(); |
|||
//根据比赛类型查找大赛id
|
|||
CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(param.getCompeteTimeId()); |
|||
if(ObjectUtil.isNotNull(competeTime)){ |
|||
firstProjects = competeCompanyDao.queryFirstProjectByCompeteTimeId(competeTime.getType()); |
|||
} |
|||
return firstProjects; |
|||
} |
|||
|
|||
@Override |
|||
public List<ProvinceCompeteVo.CompeteSecondProject> queryProjectByFirstProject(ProvinceCompeteDto.FirstProject param, Long userId) { |
|||
return competeCompanyDao.queryProjectByFirstProject(param.getFirstProjectId()); |
|||
} |
|||
|
|||
/** |
|||
* 添加或修改选手 |
|||
*/ |
|||
@Override |
|||
public void saveOrUpdatePlayer(ProvinceCompeteDto.PlayerInfo param, Long userId) throws Exception { |
|||
//判断选手id是否为空
|
|||
if(ObjectUtil.isNull(param.getPlayerId())){ |
|||
//id为空,新加一个选手
|
|||
CompetePlayer player = new CompetePlayer(); |
|||
player.setId(snowflake.nextId()); |
|||
player.setName(param.getPlayerName()); |
|||
player.setGender((byte) param.getGender()); |
|||
player.setIdCard(param.getIdCard()); |
|||
player.setCompanyId(param.getCompeteId()); |
|||
player.setCompeteGroupId(param.getGroupId()); |
|||
//添加身份证正面照片
|
|||
player.setIdCardFrontFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
//身份证反面
|
|||
player.setIdCardBackFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
//一寸证件照
|
|||
player.setIdPhotoFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
//学籍证明
|
|||
player.setStudentRecordFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
//健康证明
|
|||
player.setHealthRecordFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
//保险证明
|
|||
player.setInsuranceRecordFile(uploadPhotoFile(param.getIdCardFront(),userId)); |
|||
competePlayerDao.insertSelective(player); |
|||
log.info("新加参赛选手:{}",player); |
|||
}else { |
|||
//否则修改选手信息
|
|||
CompetePlayer player = competePlayerDao.selectByPrimaryKey(param.getPlayerId()); |
|||
log.info("查找需要修改的选手信息:{}",player); |
|||
if(ObjectUtil.isNull(player)){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
//字段不为空则修改
|
|||
if(StrUtil.isNotEmpty(param.getPlayerName())){player.setName(param.getPlayerName());} |
|||
if(StrUtil.isNotEmpty(param.getIdCard())){player.setIdCard(param.getIdCard());} |
|||
if(ObjectUtil.isNotNull(param.getGender())){player.setGender((byte) param.getGender());} |
|||
if(ObjectUtil.isNotNull(param.getGroupId())){player.setCompeteGroupId(param.getGroupId());} |
|||
if(ObjectUtil.isNotNull(param.getCompeteId())){player.setCompanyId(param.getCompeteId());} |
|||
if(ObjectUtil.isNotNull(param.getIdCardFront())){player.setIdCardFrontFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
if(ObjectUtil.isNotNull(param.getIdCardBack())){player.setIdCardBackFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
if(ObjectUtil.isNotNull(param.getIdPhone())){player.setIdPhotoFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
if(ObjectUtil.isNotNull(param.getStudentRecord())){ player.setStudentRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
if(ObjectUtil.isNotNull(param.getHealthRecord())){ player.setHealthRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
if(ObjectUtil.isNotNull(param.getInsuranceRecord())){ player.setInsuranceRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));} |
|||
competePlayerDao.updateByPrimaryKeySelective(player); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 查找所有选手 |
|||
* @param param 单位id |
|||
* @param userId userId |
|||
* @return |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.PlayerByCompanyId> queryPlayerByCompanyId(ProvinceCompeteDto.CompanyIdVo param, Long userId) { |
|||
return competePlayerDao.queryPlayerByCompanyId(param.getCompanyId()); |
|||
} |
|||
|
|||
/** |
|||
* 将上传的图片信息保存,并在数据库添加记录 |
|||
*/ |
|||
private Long uploadPhotoFile(Part file,Long userId) throws Exception { |
|||
log.info("上传文件:{}", file.getSubmittedFileName()); |
|||
String allowedExt = "jpg,jpeg,png"; |
|||
String dir = PropUtil.path; |
|||
String path = UploadFileUtil_Servlet3.uploadFile(file, allowedExt, dir); |
|||
log.info(dir+""+path); |
|||
|
|||
CommonFile fileDo = new CommonFile(); |
|||
String name = file.getSubmittedFileName(); |
|||
fileDo.setId(snowflake.nextId()); |
|||
fileDo.setFileName(name); |
|||
fileDo.setLocation(dir + File.separator + path); |
|||
fileDo.setUserId(userId); |
|||
fileDo.setVisitLocation(PropUtil.imgDomain + Constant.File.UPLOAD_URL + File.separator + path); |
|||
commonFileMapper.insertSelective(fileDo); |
|||
log.info("保存文件:{}", fileDo); |
|||
return fileDo.getId(); |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public ProvinceCompeteVo.CompeteCompany getCompany(CompeteDto.CompeteTime param, Long userId) { |
|||
Long competeTimeId = param.getCompeteTimeId(); |
|||
return competeCompanyDao.getCompany(competeTimeId,userId); |
|||
} |
|||
|
|||
@Override |
|||
public ProvinceCompeteVo.CompeteCompany changeCompany(CompeteDto.CompeteCompany param) { |
|||
//判断当前单位id是否为空,
|
|||
Long companyid = param.getCompanyId(); |
|||
CompeteCompany competeCompany = new CompeteCompany(); |
|||
ProvinceCompeteVo.CompeteCompany competeCompany1; |
|||
//单位id为空,新增
|
|||
if (ObjectUtil.isNull(companyid)){ |
|||
Long id = snowflake.nextId(); |
|||
competeCompany.setId(id); |
|||
competeCompany.setCoachNum(param.getCoachNum()); |
|||
competeCompany.setName(param.getCompanyName()); |
|||
competeCompany.setContactsName(param.getContactsName()); |
|||
competeCompany.setContactsPhone(param.getContactsPhone()); |
|||
competeCompany.setLeaderNum(param.getGuideNum()); |
|||
competeCompany.setJoinNum(param.getPlayerNum()); |
|||
competeCompanyDao.insertSelective(competeCompany); |
|||
CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample(); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(companyid); |
|||
competeCompany1 = (ProvinceCompeteVo.CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
}else { |
|||
//不为空,根据单位id查出来修改 判断传进来的参数是否为空 为空则跳过 不为空则修改
|
|||
CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample(); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(companyid); |
|||
competeCompany = (CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
if (ObjectUtil.isNotNull(param.getCoachNum())){ |
|||
competeCompany.setCoachNum(param.getCoachNum()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getCompanyName())) { |
|||
competeCompany.setName(param.getCompanyName()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getContactsName())) { |
|||
competeCompany.setContactsName(param.getContactsName()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getContactsPhone())) { |
|||
competeCompany.setContactsPhone(param.getContactsPhone()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getGuideNum())) { |
|||
competeCompany.setLeaderNum(param.getGuideNum()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getPlayerNum())) { |
|||
competeCompany.setJoinNum(param.getPlayerNum()); |
|||
} |
|||
competeCompanyDao.updateByPrimaryKeySelective(competeCompany); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(competeCompany.getId()); |
|||
competeCompany1 = (ProvinceCompeteVo.CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
} |
|||
return competeCompany1; |
|||
} |
|||
|
|||
} |
|||
|
|||
package com.ccsens.mt.service; |
|||
|
|||
import cn.hutool.core.collection.CollectionUtil; |
|||
import cn.hutool.core.lang.Snowflake; |
|||
import cn.hutool.core.util.IdcardUtil; |
|||
import cn.hutool.core.util.ObjectUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.ccsens.mt.bean.dto.CompeteDto; |
|||
import com.ccsens.mt.bean.dto.ProvinceCompeteDto; |
|||
import com.ccsens.mt.bean.po.*; |
|||
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; |
|||
import com.ccsens.mt.persist.dao.CompeteCompanyDao; |
|||
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.util.Constant; |
|||
import com.ccsens.util.CodeEnum; |
|||
import com.ccsens.util.PropUtil; |
|||
import com.ccsens.util.UploadFileUtil_Servlet3; |
|||
import com.ccsens.util.exception.BaseException; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Propagation; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import javax.annotation.Resource; |
|||
import javax.servlet.http.Part; |
|||
import java.io.File; |
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author 逗 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) |
|||
public class ProvinceService implements IProvinceService { |
|||
@Resource |
|||
private CompeteCompanyDao competeCompanyDao; |
|||
@Resource |
|||
private Snowflake snowflake; |
|||
@Resource |
|||
private CompeteTimeDao competeTimeDao; |
|||
@Resource |
|||
private CommonFileMapper commonFileMapper; |
|||
@Resource |
|||
private CompetePlayerDao competePlayerDao; |
|||
@Resource |
|||
private CompeteCoachMapper competeCoachMapper; |
|||
@Resource |
|||
private CompeteProjectMapper competeProjectMapper; |
|||
@Resource |
|||
private CompeteProjectPlayerMapper projectPlayerMapper; |
|||
@Resource |
|||
private CompeteTeamDao competeTeamDao; |
|||
@Resource |
|||
private CompeteTeamMemberMapper teamMemberMapper; |
|||
|
|||
/** |
|||
* 查找当前用户填写的信息的概览 |
|||
*/ |
|||
@Override |
|||
public ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId) { |
|||
ProvinceCompeteVo.CompeteOverview competeOverview = competeCompanyDao.getCompanyOverview(param.getCompeteTimeId(),userId); |
|||
if(ObjectUtil.isNotNull(competeOverview)){ |
|||
competeOverview.setProjectNum(competeCompanyDao.getJoinProjectNum(competeOverview.getCompanyId())); |
|||
} |
|||
return competeOverview; |
|||
} |
|||
|
|||
/** |
|||
* 通过组别id查找本单位的注册选手 |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.GroupAndPlayer> queryPlayerByGroupId(ProvinceCompeteDto.QueryPlayerByGroup param, Long userId) { |
|||
return competeCompanyDao.queryPlayerByGroupId(param.getCompanyId(),param.getGroupId(),param.getProjectId()); |
|||
} |
|||
|
|||
|
|||
/** |
|||
* 查找一级项目 |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.FirstProject> queryFirstProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId) { |
|||
List<ProvinceCompeteVo.FirstProject> firstProjects = new ArrayList<>(); |
|||
//根据比赛类型查找大赛id
|
|||
CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(param.getCompeteTimeId()); |
|||
if(ObjectUtil.isNotNull(competeTime)){ |
|||
firstProjects = competeCompanyDao.queryFirstProjectByCompeteTimeId(competeTime.getType()); |
|||
} |
|||
return firstProjects; |
|||
} |
|||
|
|||
@Override |
|||
public List<ProvinceCompeteVo.CompeteSecondProject> queryProjectByFirstProject(ProvinceCompeteDto.FirstProject param, Long userId) { |
|||
return competeCompanyDao.queryProjectByFirstProject(param.getFirstProjectId()); |
|||
} |
|||
|
|||
/** |
|||
* 添加或修改选手 |
|||
*/ |
|||
@Override |
|||
public void saveOrUpdatePlayer(ProvinceCompeteDto.PlayerInfo param, Long userId) { |
|||
//判断选手id是否为空
|
|||
if(ObjectUtil.isNull(param.getPlayerId())){ |
|||
//id为空,新加一个选手
|
|||
CompetePlayer player = new CompetePlayer(); |
|||
player.setId(snowflake.nextId()); |
|||
player.setName(param.getPlayerName()); |
|||
player.setGender((byte) param.getGender()); |
|||
//身份证不能为空,且正确
|
|||
if(StrUtil.isEmpty(param.getIdCard()) || !IdcardUtil.isValidCard(param.getIdCard())){throw new BaseException(CodeEnum.ID_CARD_ERROR);} |
|||
//是否已注册
|
|||
CompetePlayerExample competePlayerExample = new CompetePlayerExample(); |
|||
competePlayerExample.createCriteria().andIdCardEqualTo(param.getIdCard()); |
|||
if(competePlayerDao.countByExample(competePlayerExample) != 0){ |
|||
throw new BaseException(CodeEnum.WBS_REPEAT_MEMBER_PHONE); |
|||
} |
|||
player.setIdCard(param.getIdCard()); |
|||
player.setCompanyId(param.getCompeteId()); |
|||
player.setCompeteGroupId(param.getGroupId()); |
|||
player.setIdCardFrontFile(param.getIdCardFront()); |
|||
player.setIdCardBackFile(param.getIdCardBack()); |
|||
player.setIdPhotoFile(param.getIdPhone()); |
|||
player.setStudentRecordFile(param.getStudentRecord()); |
|||
player.setHealthRecordFile(param.getHealthRecord()); |
|||
player.setInsuranceRecordFile(param.getInsuranceRecord()); |
|||
// //添加身份证正面照片
|
|||
// player.setIdCardFrontFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
// //身份证反面
|
|||
// player.setIdCardBackFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
// //一寸证件照
|
|||
// player.setIdPhotoFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
// //学籍证明
|
|||
// player.setStudentRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
// //健康证明
|
|||
// player.setHealthRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
// //保险证明
|
|||
// player.setInsuranceRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));
|
|||
competePlayerDao.insertSelective(player); |
|||
log.info("新加参赛选手:{}",player); |
|||
}else { |
|||
//否则修改选手信息
|
|||
CompetePlayer player = competePlayerDao.selectByPrimaryKey(param.getPlayerId()); |
|||
log.info("查找需要修改的选手信息:{}",player); |
|||
if(ObjectUtil.isNull(player)){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
//字段不为空则修改
|
|||
if(StrUtil.isNotEmpty(param.getPlayerName())){player.setName(param.getPlayerName());} |
|||
if(StrUtil.isNotEmpty(param.getIdCard())){player.setIdCard(param.getIdCard());} |
|||
if(ObjectUtil.isNotNull(param.getGender())){player.setGender((byte) param.getGender());} |
|||
if(ObjectUtil.isNotNull(param.getGroupId())){player.setCompeteGroupId(param.getGroupId());} |
|||
if(ObjectUtil.isNotNull(param.getCompeteId())){player.setCompanyId(param.getCompeteId());} |
|||
|
|||
if(ObjectUtil.isNotNull(param.getIdCardFront())){player.setIdCardFrontFile(param.getIdCardFront());} |
|||
if(ObjectUtil.isNotNull(param.getIdCardBack())){player.setIdCardBackFile(param.getIdCardBack());} |
|||
if(ObjectUtil.isNotNull(param.getIdPhone())){player.setIdPhotoFile(param.getIdPhone());} |
|||
if(ObjectUtil.isNotNull(param.getStudentRecord())){player.setStudentRecordFile(param.getStudentRecord());} |
|||
if(ObjectUtil.isNotNull(param.getHealthRecord())){player.setHealthRecordFile(param.getHealthRecord());} |
|||
if(ObjectUtil.isNotNull(param.getInsuranceRecord())){player.setInsuranceRecordFile(param.getInsuranceRecord());} |
|||
|
|||
// if(ObjectUtil.isNotNull(param.getIdCardFront())){player.setIdCardFrontFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
// if(ObjectUtil.isNotNull(param.getIdCardBack())){player.setIdCardBackFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
// if(ObjectUtil.isNotNull(param.getIdPhone())){player.setIdPhotoFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
// if(ObjectUtil.isNotNull(param.getStudentRecord())){ player.setStudentRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
// if(ObjectUtil.isNotNull(param.getHealthRecord())){ player.setHealthRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
// if(ObjectUtil.isNotNull(param.getInsuranceRecord())){ player.setInsuranceRecordFile(uploadPhotoFile(param.getIdCardFront(),userId));}
|
|||
competePlayerDao.updateByPrimaryKeySelective(player); |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 查找所有选手 |
|||
* @param param 单位id |
|||
* @param userId userId |
|||
* @return 返回选手信息 |
|||
*/ |
|||
@Override |
|||
public List<ProvinceCompeteVo.PlayerByCompanyId> queryPlayerByCompanyId(ProvinceCompeteDto.CompanyIdVo param, Long userId) { |
|||
return competePlayerDao.queryPlayerByCompanyId(param.getCompanyId()); |
|||
} |
|||
|
|||
/** |
|||
* 将上传的图片信息保存,并在数据库添加记录 |
|||
*/ |
|||
private Long uploadPhotoFile(Part file,Long userId) throws Exception { |
|||
log.info("上传文件:{}", file.getSubmittedFileName()); |
|||
String allowedExt = "jpg,jpeg,png"; |
|||
String dir = PropUtil.path; |
|||
String path = UploadFileUtil_Servlet3.uploadFile(file, allowedExt, dir); |
|||
log.info(dir+""+path); |
|||
|
|||
CommonFile fileDo = new CommonFile(); |
|||
String name = file.getSubmittedFileName(); |
|||
fileDo.setId(snowflake.nextId()); |
|||
fileDo.setFileName(name); |
|||
fileDo.setLocation(dir + File.separator + path); |
|||
fileDo.setUserId(userId); |
|||
fileDo.setVisitLocation(PropUtil.imgDomain + Constant.File.UPLOAD_URL + File.separator + path); |
|||
commonFileMapper.insertSelective(fileDo); |
|||
log.info("保存文件:{}", fileDo); |
|||
return fileDo.getId(); |
|||
} |
|||
|
|||
|
|||
@Override |
|||
public ProvinceCompeteVo.CompeteCompany getCompany(CompeteDto.CompeteTime param, Long userId) { |
|||
Long competeTimeId = param.getCompeteTimeId(); |
|||
return competeCompanyDao.getCompany(competeTimeId,userId); |
|||
} |
|||
|
|||
@Override |
|||
public ProvinceCompeteVo.CompeteCompany changeCompany(CompeteDto.CompeteCompany param) { |
|||
//判断当前单位id是否为空,
|
|||
Long companyid = param.getCompanyId(); |
|||
CompeteCompany competeCompany = new CompeteCompany(); |
|||
ProvinceCompeteVo.CompeteCompany competeCompany1; |
|||
//单位id为空,新增
|
|||
if (ObjectUtil.isNull(companyid)){ |
|||
Long id = snowflake.nextId(); |
|||
competeCompany.setId(id); |
|||
competeCompany.setCoachNum(param.getCoachNum()); |
|||
competeCompany.setName(param.getCompanyName()); |
|||
competeCompany.setContactsName(param.getContactsName()); |
|||
competeCompany.setContactsPhone(param.getContactsPhone()); |
|||
competeCompany.setLeaderNum(param.getGuideNum()); |
|||
competeCompany.setJoinNum(param.getPlayerNum()); |
|||
competeCompanyDao.insertSelective(competeCompany); |
|||
CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample(); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(companyid); |
|||
competeCompany1 = (ProvinceCompeteVo.CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
}else { |
|||
//不为空,根据单位id查出来修改 判断传进来的参数是否为空 为空则跳过 不为空则修改
|
|||
CompeteCompanyExample competeCompanyExample = new CompeteCompanyExample(); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(companyid); |
|||
competeCompany = (CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
if (ObjectUtil.isNotNull(param.getCoachNum())){ |
|||
competeCompany.setCoachNum(param.getCoachNum()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getCompanyName())) { |
|||
competeCompany.setName(param.getCompanyName()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getContactsName())) { |
|||
competeCompany.setContactsName(param.getContactsName()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getContactsPhone())) { |
|||
competeCompany.setContactsPhone(param.getContactsPhone()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getGuideNum())) { |
|||
competeCompany.setLeaderNum(param.getGuideNum()); |
|||
} |
|||
if (ObjectUtil.isNotNull(param.getPlayerNum())) { |
|||
competeCompany.setJoinNum(param.getPlayerNum()); |
|||
} |
|||
competeCompanyDao.updateByPrimaryKeySelective(competeCompany); |
|||
competeCompanyExample.createCriteria().andIdEqualTo(competeCompany.getId()); |
|||
competeCompany1 = (ProvinceCompeteVo.CompeteCompany) competeCompanyDao.selectByExample(competeCompanyExample); |
|||
} |
|||
return competeCompany1; |
|||
} |
|||
@Override |
|||
public ProvinceCompeteVo.CompeteCompanyCoach queryCoach(CompeteDto.CompeteCompany param) { |
|||
Long company = param.getCompanyId(); |
|||
CompeteCoach competeCoach = competeCoachMapper.selectByPrimaryKey(company); |
|||
if (ObjectUtil.isNull(competeCoach)){ |
|||
throw new BaseException(CodeEnum.PARAM_ERROR); |
|||
} |
|||
ProvinceCompeteVo.CompeteCompanyCoach competeCompanyCoach = new ProvinceCompeteVo.CompeteCompanyCoach(); |
|||
if (competeCoach.getIdentity() == 0){ |
|||
//给领队赋值
|
|||
competeCompanyCoach.setCoachName(competeCoach.getName()); |
|||
competeCompanyCoach.setCoachId(competeCoach.getId()); |
|||
competeCompanyCoach.setGender(competeCoach.getGender()); |
|||
competeCompanyCoach.setPhone(competeCoach.getPhone()); |
|||
}else { |
|||
competeCompanyCoach.setGuideName(competeCoach.getName()); |
|||
competeCompanyCoach.setCoachId(competeCoach.getId()); |
|||
competeCompanyCoach.setGender(competeCoach.getGender()); |
|||
competeCompanyCoach.setPhone(competeCoach.getPhone()); |
|||
} |
|||
return competeCompanyCoach; |
|||
} |
|||
|
|||
@Override |
|||
public void saveCoach(CompeteDto.AddCoach param) { |
|||
CompeteCoach competeCoach = new CompeteCoach(); |
|||
Long companyId = param.getCompanyId(); |
|||
competeCoach.setCompanyId(companyId); |
|||
Long cpachId = param.getCoachId(); |
|||
competeCoach.setId(cpachId); |
|||
int identity = param.getIdentity(); |
|||
competeCoach.setIdentity((byte) identity); |
|||
String name = param.getName(); |
|||
competeCoach.setName(name); |
|||
int gender = param.getGender(); |
|||
competeCoach.setGender((byte) gender); |
|||
String phone = param.getPhone(); |
|||
competeCoach.setPhone(phone); |
|||
String idCard = param.getIdCard(); |
|||
competeCoach.setIdCard(idCard); |
|||
Long idPhoto = param.getIdPhoto(); |
|||
competeCoach.setIdPhoto(idPhoto); |
|||
Long coachCertificate = param.getCoachCertificate(); |
|||
competeCoach.setCoachCertificate(coachCertificate); |
|||
competeCoachMapper.insertSelective(competeCoach); |
|||
} |
|||
|
|||
@Override |
|||
public void deleteCoach(CompeteDto.AddCoach param) { |
|||
Long coachId = param.getCoachId(); |
|||
CompeteCoach competeCoach = competeCoachMapper.selectByPrimaryKey(coachId); |
|||
competeCoachMapper.deleteByPrimaryKey(competeCoach.getId()); |
|||
} |
|||
|
|||
/** |
|||
* 选择选手参加比赛 |
|||
*/ |
|||
@Override |
|||
public void playerJoinProject(ProvinceCompeteDto.JoinProject param) { |
|||
//查找项目信息
|
|||
CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId()); |
|||
if(ObjectUtil.isNull(competeProject)){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
//检查参赛人数是否符合
|
|||
if(CollectionUtil.isEmpty(param.getPlayerId())){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
if(param.getPlayerId().size() < competeProject.getMemberMin() || param.getPlayerId().size() > competeProject.getMemberMax()){ |
|||
throw new BaseException(CodeEnum.TEAM_MEMBER_ERROR); |
|||
} |
|||
//判断项目是个人还是团队
|
|||
if(competeProject.getTeam() == 0){ |
|||
param.getPlayerId().forEach(playerId -> { |
|||
CompetePlayer player = competePlayerDao.selectByPrimaryKey(playerId); |
|||
if(ObjectUtil.isNull(player)){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
//查找此公司此组别是否参加过这个项目
|
|||
int num = competeCompanyDao.getNumByCompanyAndGroup(competeProject.getId(),player.getCompanyId(),player.getCompeteGroupId(),param.getCompeteTimeId()); |
|||
if(num > 0){ |
|||
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg("该项目该组别")); |
|||
} |
|||
//查找个人参赛数量是否符合
|
|||
CompeteProjectPlayerExample projectPlayerExample = new CompeteProjectPlayerExample(); |
|||
projectPlayerExample.createCriteria().andPlayerIdEqualTo(playerId).andCompeteTimeIdEqualTo(param.getCompeteTimeId()); |
|||
if(projectPlayerMapper.countByExample(projectPlayerExample) >= 3){ |
|||
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName())); |
|||
} |
|||
//参加比赛记录
|
|||
CompeteProjectPlayer projectPlayer = new CompeteProjectPlayer(); |
|||
projectPlayer.setId(snowflake.nextId()); |
|||
projectPlayer.setCompeteTimeId(param.getCompeteTimeId()); |
|||
projectPlayer.setProjectId(param.getProjectId()); |
|||
projectPlayer.setPlayerId(playerId); |
|||
projectPlayer.setCompeteGroupId(player.getCompeteGroupId()); |
|||
projectPlayer.setGenderGroup(player.getGender()); |
|||
projectPlayerMapper.insertSelective(projectPlayer); |
|||
}); |
|||
}else { |
|||
//查找当前公司是否已经报名次项目
|
|||
CompeteTeamExample teamExample = new CompeteTeamExample(); |
|||
teamExample.createCriteria().andProjectIdEqualTo(competeProject.getId()).andCompanyIdEqualTo(param.getCompanyId()).andCompeteTimeIdEqualTo(param.getCompeteTimeId()); |
|||
if(competeTeamDao.countByExample(teamExample) > 0){ |
|||
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg("该项目")); |
|||
} |
|||
//生成团队
|
|||
CompeteTeam competeTeam = new CompeteTeam(); |
|||
competeTeam.setId(snowflake.nextId()); |
|||
competeTeam.setCompeteTimeId(param.getCompeteTimeId()); |
|||
competeTeam.setProjectId(param.getProjectId()); |
|||
competeTeam.setCompanyId(param.getCompanyId()); |
|||
//添加成员表
|
|||
for (int i = 0; i < param.getPlayerId().size(); i++) { |
|||
CompetePlayer player = competePlayerDao.selectByPrimaryKey(param.getPlayerId().get(i)); |
|||
if(ObjectUtil.isNull(player)){ throw new BaseException(CodeEnum.PARAM_ERROR); } |
|||
//检查该选手报名项目数量
|
|||
int a = competeCompanyDao.getTeamNumByPlayerId(param.getCompeteTimeId(),player.getId()); |
|||
if(a >= 6){ |
|||
throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName())); |
|||
} |
|||
//团队性别组根据参赛成员而定
|
|||
if (i == 0){ |
|||
competeTeam.setGenderGroup(player.getGender()); |
|||
}else { |
|||
if(!competeTeam.getGenderGroup().equals(player.getGender())){ |
|||
competeTeam.setGenderGroup((byte) 2); |
|||
} |
|||
} |
|||
//添加成员表
|
|||
CompeteTeamMember teamMember = new CompeteTeamMember(); |
|||
teamMember.setId(snowflake.nextId()); |
|||
teamMember.setCompeteTeamId(competeTeam.getId()); |
|||
teamMember.setPlayerId(player.getId()); |
|||
teamMemberMapper.insertSelective(teamMember); |
|||
} |
|||
//添加团队表
|
|||
competeTeamDao.insertSelective(competeTeam); |
|||
} |
|||
} |
|||
} |
|||
|
|||
|
@ -1,4 +1,4 @@ |
|||
spring: |
|||
profiles: |
|||
active: dev |
|||
include: common, util-dev |
|||
active: test |
|||
include: common, util-test |
@ -1,9 +1,5 @@ |
|||
spring: |
|||
profiles: |
|||
<<<<<<< HEAD |
|||
active: test |
|||
include: util-test,common |
|||
======= |
|||
active: dev |
|||
include: util-dev,common |
|||
>>>>>>> f7d8f099ca8ad4f99f76e5616b35eb8202fecdf8 |
|||
|
|||
|
Loading…
Reference in new issue