From 79bbee5adf0071808a33c09d5f87c5573d83cb3b Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期二, 21 十一月 2023 19:44:15 +0800
Subject: [PATCH] 11.21。1

---
 cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 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 ccf0e10..e8a2393 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
@@ -31,6 +31,7 @@
 import com.dsh.competition.service.IPaymentCompetitionService;
 import com.dsh.competition.service.UserCompetitionService;
 import com.dsh.competition.util.*;
+import org.checkerframework.checker.units.qual.A;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -227,6 +228,7 @@
         AppUser appUser = appUserClient.queryAppUser(uid);
         String[] split = paymentCompetitionVo.getIds().split(";");
         Competition competition = this.getById(paymentCompetitionVo.getId());
+
         int competitionId = userCompetitionService.count(new QueryWrapper<UserCompetition>().eq("competitionId", paymentCompetitionVo.getId()));
         if ((competitionId+split.length)>competition.getApplicantsNumber()){
             return ResultUtil.error("报名人数超过最大限制");
@@ -557,11 +559,25 @@
     /**
      * 定时任务修改赛事状态
      */
+
     @Override
     public void taskSetStatus() {
         this.baseMapper.taskSetStatusStart();
         this.baseMapper.taskSetStatusEnd();
-        this.baseMapper.deleteTenMinutes();
+
+        Date currentTime = new Date();
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(currentTime);
+        calendar.add(Calendar.MINUTE, -10);
+        Date tenMinutesAgo = calendar.getTime();
+        List<PaymentCompetition> payStatus = paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>().eq("payStatus", 1).le("insertTime", tenMinutesAgo));
+        List<Long> pays = new ArrayList<>();
+        for (PaymentCompetition status : payStatus) {
+            pays.add(status.getId());
+        }
+        if (!pays.isEmpty()) {
+            this.baseMapper.deleteTenMinutes(pays);
+        }
     }
 
     @Override

--
Gitblit v1.7.1