From 6b5bacc49b3bd4979054ad03e47aebac238b711b Mon Sep 17 00:00:00 2001 From: litianxiang Date: Mon, 13 Apr 2026 14:34:05 +0800 Subject: [PATCH] =?UTF-8?q?GlobalAward=E8=BF=94=E5=9B=9E=E6=9C=80=E5=A4=A7?= =?UTF-8?q?=E7=9A=84=E5=8F=82=E8=B5=9B=E8=80=85=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../da/controller/GlobalAwardController.java | 5 +++-- .../com/ai/da/service/GlobalAwardService.java | 7 ++++--- .../service/impl/GlobalAwardServiceImpl.java | 18 ++++++++++++++++-- 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/ai/da/controller/GlobalAwardController.java b/src/main/java/com/ai/da/controller/GlobalAwardController.java index fb5f0001..a63d566b 100644 --- a/src/main/java/com/ai/da/controller/GlobalAwardController.java +++ b/src/main/java/com/ai/da/controller/GlobalAwardController.java @@ -4,6 +4,7 @@ import com.ai.da.common.response.Response; import com.ai.da.model.dto.*; import com.ai.da.model.dto.ContestantDTO; import com.ai.da.model.vo.CheckOTPVO; +import com.ai.da.model.vo.ContestantCountVO; import com.ai.da.service.GlobalAwardService; import com.ai.da.service.upload.UploadService; import com.ai.da.service.upload.UploadTask; @@ -192,8 +193,8 @@ public class GlobalAwardController { } @GetMapping("/contestants/count") - @ApiOperation(value = "查询参赛者总数", notes = "查询数据库中参赛者的总数量") - public Response getContestantCount() { + @ApiOperation(value = "查询参赛者总数", notes = "查询数据库中参赛者的总数量和最大参赛者编号") + public Response getContestantCount() { return Response.success(globalAwardService.getContestantCount()); } diff --git a/src/main/java/com/ai/da/service/GlobalAwardService.java b/src/main/java/com/ai/da/service/GlobalAwardService.java index a6643276..76232238 100644 --- a/src/main/java/com/ai/da/service/GlobalAwardService.java +++ b/src/main/java/com/ai/da/service/GlobalAwardService.java @@ -2,6 +2,7 @@ package com.ai.da.service; import com.ai.da.model.dto.ContestantDTO; import com.ai.da.model.vo.CheckOTPVO; +import com.ai.da.model.vo.ContestantCountVO; import org.springframework.web.multipart.MultipartFile; import java.util.Map; @@ -41,10 +42,10 @@ public interface GlobalAwardService { byte[] exportContestantFilesAsZip(Integer minContestantNumber, Integer maxContestantNumber) throws Exception; /** - * 查询参赛者总数 - * @return 参赛者数量 + * 查询参赛者总数和最大参赛者编号 + * @return 参赛者数量和最大参赛者编号 */ - long getContestantCount(); + ContestantCountVO getContestantCount(); } diff --git a/src/main/java/com/ai/da/service/impl/GlobalAwardServiceImpl.java b/src/main/java/com/ai/da/service/impl/GlobalAwardServiceImpl.java index 17395a0e..e4bc7d01 100644 --- a/src/main/java/com/ai/da/service/impl/GlobalAwardServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/GlobalAwardServiceImpl.java @@ -12,6 +12,7 @@ import com.ai.da.mapper.primary.entity.Notification; import com.ai.da.model.dto.ContestantDTO; import com.ai.da.model.dto.PublishSysNotificationDTO; import com.ai.da.model.vo.CheckOTPVO; +import com.ai.da.model.vo.ContestantCountVO; import com.ai.da.service.GlobalAwardService; import com.ai.da.service.MessageCenterService; import com.alibaba.fastjson.JSON; @@ -592,8 +593,21 @@ public class GlobalAwardServiceImpl implements GlobalAwardService { } @Override - public long getContestantCount() { - return contestantMapper.selectCount(null); + public ContestantCountVO getContestantCount() { + long count = contestantMapper.selectCount(null); + Integer maxContestantNumber = null; + QueryWrapper qMax = new QueryWrapper<>(); + qMax.isNotNull("contestant_number"); + qMax.orderByDesc("contestant_number"); + qMax.last("LIMIT 1"); + Contestant last = contestantMapper.selectOne(qMax); + if (last != null) { + maxContestantNumber = last.getContestantNumber(); + } + return ContestantCountVO.builder() + .count(count) + .maxContestantNumber(maxContestantNumber) + .build(); } private String nullSafe(String value) {