| | |
| | | if(System.currentTimeMillis() > worldCup.getEndTime().getTime()){ |
| | | return ResultUtil.error("世界杯赛事已结束,无法完成报名"); |
| | | } |
| | | |
| | | String cupIds = paymentWorldCup.getIds(); |
| | | JSONArray jsonArray = JSON.parseArray(cupIds); |
| | | List<WorldCupPayment> payments = worldCupPaymentService.list(new QueryWrapper<WorldCupPayment>().eq("worldCupId", worldCup.getId()) |
| | | .eq("payStatus", 2).eq("state", 1)); |
| | | List<Long> ids = payments.stream().map(WorldCupPayment::getId).collect(Collectors.toList()); |
| | | if(ids.size() > 0){ |
| | | int count = worldCupPaymentParticipantService.count(new QueryWrapper<WorldCupPaymentParticipant>().eq("worldCupId", worldCup.getId()) |
| | | .eq("worldCupPaymentId", ids)); |
| | | if((count + jsonArray.size()) >= worldCup.getMatchNumber()){ |
| | | return ResultUtil.error("已超出最大报名人数"); |
| | | } |
| | | } |
| | | |
| | | List<WorldCupPayment> list = worldCupPaymentService.list(new QueryWrapper<WorldCupPayment>().eq("worldCupId", worldCup.getId()).eq("appUserId", paymentWorldCup.getUid()) |
| | | .eq("payStatus", 2).eq("state", 1)); |
| | | List<Long> collect = list.stream().map(WorldCupPayment::getId).collect(Collectors.toList()); |
| | | String ids = paymentWorldCup.getIds(); |
| | | JSONArray jsonArray = JSON.parseArray(ids); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | JSONObject jsonObject = jsonArray.getJSONObject(i); |
| | |
| | | Integer isStudent = jsonObject.getInteger("isStudent"); |
| | | if(isStudent == 1){ |
| | | TStudent tStudent = studentClient.queryById(id.intValue()); |
| | | if(worldCup.getGender() != 0 && !tStudent.getSex().equals(worldCup.getGender())){ |
| | | return ResultUtil.error("此比赛只能是" + (worldCup.getGender() == 1 ? "男" : "女") + "性参加"); |
| | | } |
| | | if(collect.size() > 0){ |
| | | WorldCupPaymentParticipant one = worldCupPaymentParticipantService.getOne(new QueryWrapper<WorldCupPaymentParticipant>().eq("worldCupId", worldCup.getId()) |
| | | .eq("participantId", id).eq("participantType", isStudent == 0 ? 2 : 1).in("worldCupPaymentId", collect)); |
| | |
| | | } |
| | | }else{ |
| | | Participant participant = participantClient.getParticipant(id); |
| | | if(worldCup.getGender() != 0 && !participant.getGender().equals(worldCup.getGender())){ |
| | | return ResultUtil.error("此比赛只能是" + (worldCup.getGender() == 1 ? "男" : "女") + "性参加"); |
| | | } |
| | | if(collect.size() > 0){ |
| | | WorldCupPaymentParticipant one = worldCupPaymentParticipantService.getOne(new QueryWrapper<WorldCupPaymentParticipant>().eq("worldCupId", worldCup.getId()) |
| | | .eq("participantId", id).eq("participantType", isStudent == 0 ? 2 : 1).in("worldCupPaymentId", collect)); |
| | |
| | | map.put("total", count); |
| | | return map; |
| | | } |
| | | |
| | | /** |
| | | * 修改所有参数 |
| | | * @param worldCup |
| | | */ |
| | | @Override |
| | | public void updateWorldCupAll(WorldCup worldCup) { |
| | | this.baseMapper.updateWorldCupAll(worldCup); |
| | | } |
| | | } |