From 41b60f3df5f3054aad44307c13a26b14f3b32ac0 Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期二, 21 十一月 2023 09:46:03 +0800 Subject: [PATCH] 11.21 --- cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java | 43 ++++++++++++++++++++++++++----------------- 1 files changed, 26 insertions(+), 17 deletions(-) diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java index d310d4a..ccf0e10 100644 --- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java +++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java @@ -21,6 +21,7 @@ import com.dsh.competition.feignclient.account.model.Student; import com.dsh.competition.feignclient.course.CoursePackagePaymentClient; import com.dsh.competition.feignclient.course.model.PaymentDeductionClassHour; +import com.dsh.competition.feignclient.model.CompetitionUser; import com.dsh.competition.feignclient.other.StoreClient; import com.dsh.competition.feignclient.other.model.Store; import com.dsh.competition.mapper.CompetitionMapper; @@ -97,7 +98,10 @@ public List<CompetitionListVo> queryCompetitionList(String cityCode, String content, Integer registerCondition, String heat) throws Exception { List<CompetitionListVo> competitionListVos = this.baseMapper.queryCompetitionList(cityCode, content, registerCondition, heat); - + for (CompetitionListVo competitionListVo : competitionListVos) { + Integer counts = this.baseMapper.counts(competitionListVo.getId()); + competitionListVo.setHeat(competitionListVo.getHeat()+counts); + } return competitionListVos; @@ -124,7 +128,6 @@ // 2.0 ArrayList<Map<String,Object>> objects = new ArrayList<>(); if(null != competition.getStoreId()){ - String storeId = competition.getStoreId(); for (String s : storeId.split(",")) { HashMap<String, Object> map = new HashMap<>(); @@ -159,10 +162,11 @@ competitionInfo.setRegisterEndTime(sdf.format(competition.getRegisterEndTime())); competitionInfo.setStartTime(sdf.format(competition.getStartTime())); + competitionInfo.setIsReal(competition.getRealName()); competitionInfo.setEndTime(sdf.format(competition.getEndTime())); competitionInfo.setAge(competition.getStartAge() + "-" + competition.getEndAge()); - competitionInfo.setProvince(competition.getEntryProvince()); - competitionInfo.setCity(competition.getEntryCity()); + competitionInfo.setProvince(competition.getProvince()); + competitionInfo.setCity(competition.getCity()); String str = competition.getAddress(); str = str.substring(str.indexOf("省") + 1); @@ -210,6 +214,7 @@ } + /** * 赛事报名 * @param uid @@ -222,9 +227,9 @@ AppUser appUser = appUserClient.queryAppUser(uid); String[] split = paymentCompetitionVo.getIds().split(";"); Competition competition = this.getById(paymentCompetitionVo.getId()); - if ((competition.getBaseNumber()+split.length)>competition.getApplicantsNumber()){ + int competitionId = userCompetitionService.count(new QueryWrapper<UserCompetition>().eq("competitionId", paymentCompetitionVo.getId())); + if ((competitionId+split.length)>competition.getApplicantsNumber()){ return ResultUtil.error("报名人数超过最大限制"); - } BigDecimal money = null; if(paymentCompetitionVo.getPayType() == 1 || paymentCompetitionVo.getPayType() == 2){ @@ -233,21 +238,23 @@ if(paymentCompetitionVo.getPayType() == 3){//玩湃币 money = new BigDecimal(competition.getPlayPaiCoin()).multiply(new BigDecimal(split.length)).setScale(2, RoundingMode.HALF_EVEN); if(money.compareTo(new BigDecimal(appUser.getPlayPaiCoins())) > 0){ - return ResultUtil.error("报名失败,玩湃币不足,请充值"); + + return new ResultUtil(2,"报名失败,玩湃币不足,请充值"); } } if(paymentCompetitionVo.getPayType() == 4){//课程 money = new BigDecimal(competition.getClassPrice()).multiply(new BigDecimal(split.length)).setScale(2, RoundingMode.HALF_EVEN); for (String s : split) { - Participant participant = participantService.getById(s); - Student student = studentClient.queryStudentByPhone(participant.getPhone()); - if(null == student){ - return ResultUtil.error(participant.getName() + "不是学员,无法使用课时支付。"); - } +// Participant participant = participantService.getById(s); +// Student student = studentClient.queryStudentByPhone(participant.getPhone()); +// if(null == student){ +// return ResultUtil.error(participant.getName() + "不是学员,无法使用课时支付。"); +// } // 2.0 Integer integer = coursePackagePaymentClient.queryResidueClassHourById(paymentCompetitionVo.getCoursePaymentId()); if(new BigDecimal(integer).compareTo(new BigDecimal(competition.getClassPrice())) < 0){ - return ResultUtil.error(participant.getName() + "剩余课时不足,无法完成支付。"); + return new ResultUtil(3,"剩余课时不足,无法完成支付。"); + } } } @@ -292,18 +299,19 @@ paymentCompetition.setPayOrderNo(""); paymentCompetitionService.updateById(paymentCompetition); - competition.setApplicantsNumber(competition.getApplicantsNumber() + 1); +// competition.setApplicantsNumber(competition.getApplicantsNumber() + 1); this.updateById(competition); } if(paymentCompetitionVo.getPayType() == 4){//课程 for (String s : split) { - Participant participant = participantService.getById(s); - Student student = studentClient.queryStudentByPhone(participant.getPhone()); +// Participant participant = participantService.getById(s); +// Student student = studentClient.queryStudentByPhone(participant.getPhone()); PaymentDeductionClassHour paymentDeductionClassHour = new PaymentDeductionClassHour(); - paymentDeductionClassHour.setId(student.getId()); + paymentDeductionClassHour.setId(Integer.valueOf(s)); paymentDeductionClassHour.setClassHour(competition.getClassPrice()); paymentDeductionClassHour.setCode(code); paymentDeductionClassHour.setCourseId(paymentCompetitionVo.getCoursePaymentId()); + paymentDeductionClassHour.setUid(uid); coursePackagePaymentClient.paymentDeductionClassHour(paymentDeductionClassHour); } paymentCompetition = paymentCompetitionService.getById(paymentCompetition.getId()); @@ -553,6 +561,7 @@ public void taskSetStatus() { this.baseMapper.taskSetStatusStart(); this.baseMapper.taskSetStatusEnd(); + this.baseMapper.deleteTenMinutes(); } @Override -- Gitblit v1.7.1