From 640ff18d2d7f4be02ddb7f8f75e899f05545eb98 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期一, 05 二月 2024 11:56:52 +0800 Subject: [PATCH] 更新bug修改 --- cloud-server-competition/src/main/java/com/dsh/competition/util/TaskUtilCompetition.java | 36 ++++++++++++++++++++++++++++++++++-- 1 files changed, 34 insertions(+), 2 deletions(-) diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/TaskUtilCompetition.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/TaskUtilCompetition.java index 7bf9077..d661dd3 100644 --- a/cloud-server-competition/src/main/java/com/dsh/competition/util/TaskUtilCompetition.java +++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/TaskUtilCompetition.java @@ -3,14 +3,22 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.competition.entity.Competition; +import com.dsh.competition.entity.PaymentCompetition; +import com.dsh.competition.feignclient.account.StudentHonorClient; +import com.dsh.competition.feignclient.account.model.StudentHonor; import com.dsh.competition.model.TCompetition; import com.dsh.competition.service.CompetitionService; +import com.dsh.competition.service.IPaymentCompetitionService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.util.Arrays; import java.util.Date; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; /** * @author shaqian @@ -22,6 +30,14 @@ @Resource private CompetitionService competitionService; + @Resource + private StudentHonorClient studentHonorClient; + + @Autowired + private IPaymentCompetitionService paymentCompetitionService; + + + /** * 每秒去处理的定时任务 */ @@ -32,15 +48,31 @@ .ne("status", 4).ne("state", 3)); for (Competition competition : list) { // 当前时间小于开始时间 - if (competition.getStartTime().after(new Date())) { + if (competition.getStatus() != 1 && competition.getStartTime().after(new Date())) { competition.setStatus(1); } - if (competition.getStartTime().before(new Date())) { + if (competition.getStatus() == 1 && competition.getStartTime().before(new Date())) { if (competition.getEndTime().after(new Date())) { competition.setStatus(2); } else { competition.setStatus(3); } + + if(competition.getStatus() == 2){ + //添加勋章数据 + List<PaymentCompetition> list1 = paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>() + .eq("competitionId", competition.getId()).eq("payStatus", 2).eq("state", 1)); + Set<Integer> collect = list1.stream().map(PaymentCompetition::getAppUserId).collect(Collectors.toSet()); + for (Integer integer : collect) { + int count = paymentCompetitionService.count(new QueryWrapper<PaymentCompetition>() + .eq("appUserId", integer).eq("payStatus", 2).eq("state", 1)); + StudentHonor studentHonor = new StudentHonor(); + studentHonor.setAppUserId(integer); + studentHonor.setHonorType(2); + studentHonor.setNumber(count); + studentHonorClient.saveStudentHonor(studentHonor); + } + } } competitionService.updateById(competition); } -- Gitblit v1.7.1