|
|
@ -23,9 +23,7 @@ import com.ccsens.util.bean.dto.QueryDto; |
|
|
|
import com.ccsens.util.exception.BaseException; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
|
|
|
|
import org.apache.poi.ss.usermodel.BuiltinFormats; |
|
|
|
import org.apache.poi.ss.usermodel.Cell; |
|
|
|
import org.apache.poi.ss.usermodel.CellType; |
|
|
|
import org.apache.commons.lang.StringUtils; |
|
|
|
|
|
|
|
import org.apache.poi.ss.usermodel.Workbook; |
|
|
|
import org.apache.poi.xssf.usermodel.XSSFRow; |
|
|
@ -46,6 +44,7 @@ import java.util.ArrayList; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.concurrent.atomic.AtomicInteger; |
|
|
|
|
|
|
|
/** |
|
|
|
* @author 逗 |
|
|
@ -54,6 +53,8 @@ import java.util.Map; |
|
|
|
@Service |
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) |
|
|
|
public class CompeteService implements ICompeteService { |
|
|
|
@Resource |
|
|
|
private CompeteTeamMapper competeTeamMapper; |
|
|
|
@Resource |
|
|
|
private CompeteTimeDao competeTimeDao; |
|
|
|
@Resource |
|
|
@ -94,7 +95,10 @@ public class CompeteService implements ICompeteService { |
|
|
|
private CompeteScoreDao competeScoreDao; |
|
|
|
@Resource |
|
|
|
private CompeteCountScoreMapper competeCountScoreMapper; |
|
|
|
|
|
|
|
@Resource |
|
|
|
private CompetePlayerMapper competePlayerMapper; |
|
|
|
@Resource |
|
|
|
private CompeteJudgmentMapper competeJudgmentMapper; |
|
|
|
/** |
|
|
|
* 花样赛总成绩展示 |
|
|
|
* @param param |
|
|
@ -109,26 +113,44 @@ public class CompeteService implements ICompeteService { |
|
|
|
//一个人或者一个团队得数据
|
|
|
|
CompeteVo.TotalScoreDisplay totalScoreDisplay = new CompeteVo.TotalScoreDisplay(); |
|
|
|
//项目名
|
|
|
|
CompeteProject project = competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId()); |
|
|
|
if(ObjectUtil.isNotNull(project)) { |
|
|
|
totalScoreDisplay.setCompanyName(project.getName()); |
|
|
|
} |
|
|
|
// CompeteProject project = competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId());
|
|
|
|
// if(ObjectUtil.isNotNull(project)) {
|
|
|
|
// totalScoreDisplay.setCompanyName(project.getName());
|
|
|
|
// }
|
|
|
|
//名字
|
|
|
|
if(competeStartOrder.getTeam().equals((byte) 0)){ |
|
|
|
//个人
|
|
|
|
//个人人名
|
|
|
|
CompetePlayer player = competePlayerDao.selectByPrimaryKey(competeStartOrder.getPlayerId()); |
|
|
|
if(ObjectUtil.isNotNull(player)) { |
|
|
|
totalScoreDisplay.setPeopleName(player.getName()); |
|
|
|
//个人所属团队名
|
|
|
|
CompeteCompany competeCompany = competeCompanyMapper.selectByPrimaryKey(player.getCompanyId()); |
|
|
|
if (ObjectUtil.isNotNull(competeCompany)){ |
|
|
|
totalScoreDisplay.setCompanyName(competeCompany.getName()); |
|
|
|
} |
|
|
|
} |
|
|
|
}else { |
|
|
|
//团体
|
|
|
|
CompeteTeamMemberExample competeTeamMemberExample =new CompeteTeamMemberExample(); |
|
|
|
competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeStartOrder.getPlayerId()); |
|
|
|
List<CompeteTeamMember> competeTeamMembersList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample); |
|
|
|
//团体名
|
|
|
|
CompeteTeam competeTeam = competeTeamDao.selectByPrimaryKey(competeStartOrder.getPlayerId()); |
|
|
|
CompeteCompany competeCompany =competeCompanyMapper.selectByPrimaryKey(competeTeam.getCompanyId()); |
|
|
|
totalScoreDisplay.setCompanyName(competeCompany.getName()); |
|
|
|
//团队人名
|
|
|
|
CompeteTeamMemberExample competeTeamMemberExample = new CompeteTeamMemberExample(); |
|
|
|
competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId()); |
|
|
|
List<CompeteTeamMember> competeTeamMemberList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample); |
|
|
|
StringBuilder stringBuilder=new StringBuilder(""); |
|
|
|
competeTeamMembersList.forEach(competeTeamMember -> { |
|
|
|
stringBuilder.append(competePlayerDao.selectByPrimaryKey(competeTeamMember.getPlayerId()).getName()+'、'); |
|
|
|
competeTeamMemberList.forEach(mes->{ |
|
|
|
CompetePlayer competePlayer = competePlayerDao.selectByPrimaryKey(mes.getPlayerId()); |
|
|
|
stringBuilder.append(competePlayer.getName()); |
|
|
|
}); |
|
|
|
totalScoreDisplay.setPeopleName(stringBuilder.toString()); |
|
|
|
// CompeteTeamMemberExample competeTeamMemberExample =new CompeteTeamMemberExample();
|
|
|
|
// competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo(competeStartOrder.getPlayerId());
|
|
|
|
// List<CompeteTeamMember> competeTeamMembersList = competeTeamMemberMapper.selectByExample(competeTeamMemberExample);
|
|
|
|
// StringBuilder stringBuilder=new StringBuilder("");
|
|
|
|
// competeTeamMembersList.forEach(competeTeamMember -> {
|
|
|
|
// stringBuilder.append(competePlayerDao.selectByPrimaryKey(competeTeamMember.getPlayerId()).getName()+'、');
|
|
|
|
// });
|
|
|
|
totalScoreDisplay.setPeopleName(stringBuilder.toString().substring(0,stringBuilder.length())); |
|
|
|
} |
|
|
|
List<CompeteVo.Result> results = competeTimeDao.selectJudgmentS(competeStartOrder.getId()); |
|
|
@ -150,7 +172,6 @@ public class CompeteService implements ICompeteService { |
|
|
|
totalScoreDisplay.setReferee6(r.getScore()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
BigDecimal bigDecimal1to3=new BigDecimal(0); |
|
|
|
bigDecimal1to3.add(totalScoreDisplay.getReferee1()).add(totalScoreDisplay.getReferee2()).add(totalScoreDisplay.getReferee3()); |
|
|
|
BigDecimal bigDecimalavg1to3=new BigDecimal(0); |
|
|
@ -190,7 +211,12 @@ public class CompeteService implements ICompeteService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return null; |
|
|
|
for (int i=0; i<totalScoreDisplaysList.size();i++){ |
|
|
|
CompeteVo.TotalScoreDisplay totalScoreDisplay = totalScoreDisplaysList.get(i); |
|
|
|
totalScoreDisplay.setOrder(i+1); |
|
|
|
} |
|
|
|
|
|
|
|
return totalScoreDisplaysList; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -1007,7 +1033,67 @@ public class CompeteService implements ICompeteService { |
|
|
|
} |
|
|
|
@Override |
|
|
|
public void submitOrderList(ScoreDto.InformationSubmitted param) { |
|
|
|
CompeteJudgment competeJudgment = competeJudgmentMapper.selectByPrimaryKey(param.getJudgmentId()); |
|
|
|
CompeteStartOrder competeStartOrder1 = competeStartOrderMapper.selectByPrimaryKey(param.getSiteOrderId()); |
|
|
|
if(competeJudgment.getChiefJudgment()!=(byte)0){ |
|
|
|
//不是主裁判
|
|
|
|
//先判断主裁判提交了没
|
|
|
|
// Integer ti= new Integer(0);//0代表没提交 1代表提交了
|
|
|
|
// CompeteVarietyScoreExample competeVarietyScoreExample=new CompeteVarietyScoreExample();
|
|
|
|
// competeVarietyScoreExample.createCriteria().andSiteOrderIdEqualTo(param.getSiteOrderId()).andRecStatusEqualTo((byte) 0);
|
|
|
|
// List<CompeteVarietyScore> competeVarietyScoresList = competeVarietyScoreMapper.selectByExample(competeVarietyScoreExample);
|
|
|
|
// //下面就是想看看主裁判提交了没
|
|
|
|
// if(competeVarietyScoresList.size()>0){
|
|
|
|
// for (CompeteVarietyScore competeVarietyScore:competeVarietyScoresList){
|
|
|
|
// CompeteJudgment competeJudgment1 = competeJudgmentMapper.selectByPrimaryKey(competeVarietyScore.getJudgmentId());
|
|
|
|
// if(competeJudgment1.getChiefJudgment()==(byte)0){
|
|
|
|
// ti=1;
|
|
|
|
// break;
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// if(ti>0){
|
|
|
|
// //主裁判提交了,则看一下他里面是否选择了弃权
|
|
|
|
// if(competeStartOrder1.getWaiver()!=(byte)0){
|
|
|
|
// for(int j=0;j<param.getFractionsList().size();j++){
|
|
|
|
// param.getFractionsList().get(j).setScore(new BigDecimal(0));
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
if(competeStartOrder1.getWaiver()!=(byte)0){ |
|
|
|
for(int j=0;j<param.getFractionsList().size();j++){ |
|
|
|
param.getFractionsList().get(j).setScore(new BigDecimal(0)); |
|
|
|
} |
|
|
|
} |
|
|
|
}else { |
|
|
|
//现在开始写主裁判提交的情况
|
|
|
|
if(param.getWaiver()!=(byte)0){ |
|
|
|
//主裁判宣布个人弃权啥的
|
|
|
|
CompeteVarietyScoreExample competeVarietyScoreExample=new CompeteVarietyScoreExample(); |
|
|
|
competeVarietyScoreExample.createCriteria().andRecStatusEqualTo((byte)0).andSiteOrderIdEqualTo(param.getSiteOrderId()); |
|
|
|
List<CompeteVarietyScore> competeVarietyScoresList = competeVarietyScoreMapper.selectByExample(competeVarietyScoreExample); |
|
|
|
for (int i = 0; i < competeVarietyScoresList.size(); i++) { |
|
|
|
competeVarietyScoresList.get(i).setScore(new BigDecimal(0)); |
|
|
|
competeVarietyScoreMapper.updateByPrimaryKeySelective(competeVarietyScoresList.get(i)); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
param.getFractionsList().forEach(mes->{ |
|
|
|
if(StringUtils.isNotBlank(param.getRemark())){ |
|
|
|
CompeteStartOrder competeStartOrder=new CompeteStartOrder(); |
|
|
|
competeStartOrder.setId(param.getSiteOrderId()); |
|
|
|
competeStartOrder.setRemark(param.getRemark()); |
|
|
|
competeStartOrderMapper.updateByPrimaryKeySelective(competeStartOrder); |
|
|
|
} |
|
|
|
if(param.getWaiver()!=((byte)0)){ |
|
|
|
CompeteStartOrder competeStartOrder=new CompeteStartOrder(); |
|
|
|
competeStartOrder.setId(param.getSiteOrderId()); |
|
|
|
competeStartOrder.setWaiver(param.getWaiver()); |
|
|
|
competeStartOrderMapper.updateByPrimaryKeySelective(competeStartOrder); |
|
|
|
for (int i = 0; i < param.getFractionsList().size(); i++) { |
|
|
|
param.getFractionsList().get(i).setScore(new BigDecimal(0)); |
|
|
|
} |
|
|
|
} |
|
|
|
CompeteVarietyScore competeVarietyScore=new CompeteVarietyScore(); |
|
|
|
competeVarietyScore.setId(snowflake.nextId()); |
|
|
|
competeVarietyScore.setCompeteTimeId(param.getCompeteTimeId()); |
|
|
@ -1380,4 +1466,127 @@ public class CompeteService implements ICompeteService { |
|
|
|
return countScoreCurrentSiteList; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public CompeteVo.SelScropeVo selSubmitOrderList(ScoreDto.SelScrop param) { |
|
|
|
CompeteVo.SelScropeVo selScropeVo=new CompeteVo.SelScropeVo(); |
|
|
|
|
|
|
|
//场次表里面的东西
|
|
|
|
CompeteStartOrder competeStartOrder1 = competeStartOrderMapper.selectByPrimaryKey(param.getSiteOrderId()); |
|
|
|
selScropeVo.setWaiver(competeStartOrder1.getWaiver()); |
|
|
|
//项目表里面的东西
|
|
|
|
CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(competeStartOrder1.getProjectId()); |
|
|
|
//项目名称
|
|
|
|
if(StringUtils.isNotBlank(competeProject.getName())){ |
|
|
|
selScropeVo.setProjectName(competeProject.getName()); |
|
|
|
} |
|
|
|
//备注
|
|
|
|
if(StringUtils.isNotBlank(competeStartOrder1.getRemark())){ |
|
|
|
selScropeVo.setRemark(competeStartOrder1.getRemark()); |
|
|
|
} |
|
|
|
//场地信息
|
|
|
|
selScropeVo.setSite(competeStartOrder1.getSite()); |
|
|
|
|
|
|
|
if(competeProject.getTeam()==((byte) 0)){ |
|
|
|
//个人
|
|
|
|
selScropeVo.setId(competeProject.getId()); |
|
|
|
//个人信息
|
|
|
|
CompetePlayer competePlayer = competePlayerMapper.selectByPrimaryKey(competeStartOrder1.getPlayerId()); |
|
|
|
CompeteGroup competeGroup = competeGroupMapper.selectByPrimaryKey(competePlayer.getCompeteGroupId()); |
|
|
|
//组别信息
|
|
|
|
selScropeVo.setGroupId(competeGroup.getId()); |
|
|
|
selScropeVo.setGroupName(competeGroup.getGroupName()); |
|
|
|
//单位信息
|
|
|
|
CompeteCompany competeCompany = competeCompanyMapper.selectByPrimaryKey(competePlayer.getCompanyId()); |
|
|
|
if(StringUtils.isNotBlank(competePlayer.getName())){ |
|
|
|
//人名
|
|
|
|
selScropeVo.setName(competePlayer.getName()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotBlank(competeCompany.getName())){ |
|
|
|
//单位名称
|
|
|
|
selScropeVo.setCompanyName(competeCompany.getName()); |
|
|
|
selScropeVo.setCompanyId(competeCompany.getId()); |
|
|
|
} |
|
|
|
|
|
|
|
/* |
|
|
|
* { |
|
|
|
"param": |
|
|
|
{ |
|
|
|
"competeTimeId":1, |
|
|
|
"judgmentId":1, |
|
|
|
"projectId":2011, |
|
|
|
"siteOrderId":1329256152512466944 |
|
|
|
} |
|
|
|
} |
|
|
|
* */ |
|
|
|
}else { |
|
|
|
CompeteTeam competeTeam = competeTeamMapper.selectByPrimaryKey(competeStartOrder1.getPlayerId()); |
|
|
|
if(competeProject.getJoinRule()==(byte)1){ |
|
|
|
selScropeVo.setGroupName("不限组别"); |
|
|
|
|
|
|
|
}else { |
|
|
|
|
|
|
|
CompeteGroupExample competeGroupExample=new CompeteGroupExample(); |
|
|
|
competeGroupExample.createCriteria().andSexEqualTo(competeTeam.getGenderGroup()).andGroupRemarkEqualTo(competeTeam.getGroupRemark()); |
|
|
|
List<CompeteGroup> competeGroups = competeGroupMapper.selectByExample(competeGroupExample); |
|
|
|
if(competeGroups.size()>0){ |
|
|
|
//设置完组别了
|
|
|
|
selScropeVo.setGroupName(competeGroups.get(0).getGroupName()); |
|
|
|
selScropeVo.setGroupId(competeGroups.get(0).getId()); |
|
|
|
} |
|
|
|
} |
|
|
|
//设置公司名称
|
|
|
|
selScropeVo.setCompanyName(competeCompanyMapper.selectByPrimaryKey(competeTeam.getCompanyId()).getName()); |
|
|
|
selScropeVo.setCompanyId(competeTeam.getCompanyId()); |
|
|
|
|
|
|
|
CompeteTeamMemberExample competeTeamMemberExample=new CompeteTeamMemberExample(); |
|
|
|
competeTeamMemberExample.createCriteria().andCompeteTeamIdEqualTo( competeStartOrder1.getPlayerId()).andRecStatusEqualTo((byte) 0); |
|
|
|
List<CompeteTeamMember> competeTeamMembers = competeTeamMemberMapper.selectByExample(competeTeamMemberExample); |
|
|
|
StringBuilder names=new StringBuilder(""); |
|
|
|
//姓名也完成了
|
|
|
|
competeTeamMembers.forEach(mes->{ |
|
|
|
names.append(competePlayerMapper.selectByPrimaryKey(mes.getPlayerId()).getName()+"、"); |
|
|
|
}); |
|
|
|
String name= String.valueOf(names.substring(0,names.length()-2)); |
|
|
|
selScropeVo.setName(name); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
CompeteVarietyScoreExample competeVarietyScoreExample=new CompeteVarietyScoreExample(); |
|
|
|
competeVarietyScoreExample.createCriteria().andSiteOrderIdEqualTo(param.getSiteOrderId()).andJudgmentIdEqualTo(param.getJudgmentId()).andProjectIdEqualTo(param.getProjectId()).andRecStatusEqualTo((byte) 0); |
|
|
|
|
|
|
|
List<CompeteVarietyScore> competeVarietyScores = competeVarietyScoreMapper.selectByExample(competeVarietyScoreExample); |
|
|
|
List<CompeteVo.ScropList> scropLists=new ArrayList<>(); |
|
|
|
competeVarietyScores.forEach(mes->{ |
|
|
|
CompeteVo.ScropList scropList=new CompeteVo.ScropList(); |
|
|
|
scropList.setCode(mes.getCode()); |
|
|
|
scropList.setScore(mes.getScore()); |
|
|
|
scropLists.add(scropList); |
|
|
|
}); |
|
|
|
/* |
|
|
|
{ |
|
|
|
"param": |
|
|
|
{ |
|
|
|
"competeTimeId":1, |
|
|
|
"judgmentId":2, |
|
|
|
"projectId":2012, |
|
|
|
"siteOrderId":1329256313087201280 |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
*/ |
|
|
|
selScropeVo.setScoreList(scropLists); |
|
|
|
return selScropeVo; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Long getUserCompanyId(Long userId, Byte type) { |
|
|
|
CompeteCompanyExample competeCompanyExample=new CompeteCompanyExample(); |
|
|
|
competeCompanyExample.createCriteria().andUserIdEqualTo(userId).andTypeEqualTo(type).andRecStatusEqualTo((byte) 0); |
|
|
|
List<CompeteCompany> competeCompanies = competeCompanyMapper.selectByExample(competeCompanyExample); |
|
|
|
if(competeCompanies.size()>0){ |
|
|
|
return competeCompanies.get(0).getId(); |
|
|
|
} |
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
} |