From 9423184d37b9fa83151f39ebbf265d4e7f57b3bf Mon Sep 17 00:00:00 2001 From: wkc <978997012@qq.com> Date: Sat, 28 Feb 2026 08:53:02 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=9E=E7=8E=B0=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=BB=9F=E8=AE=A1=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 getStatusCounts() 方法实现 - 使用 MyBatis Plus selectCount 统计各状态项目数量 - 统计全部项目、进行中(0)、已完成(1)、已归档(2)的项目数量 --- .../service/impl/CcdiProjectServiceImpl.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectServiceImpl.java b/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectServiceImpl.java index 76e5e35..e24abdf 100644 --- a/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectServiceImpl.java +++ b/ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiProjectServiceImpl.java @@ -1,9 +1,11 @@ package com.ruoyi.ccdi.project.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.ccdi.project.domain.CcdiProject; import com.ruoyi.ccdi.project.domain.dto.CcdiProjectQueryDTO; import com.ruoyi.ccdi.project.domain.dto.CcdiProjectSaveDTO; +import com.ruoyi.ccdi.project.domain.vo.CcdiProjectStatusCountsVO; import com.ruoyi.ccdi.project.domain.vo.CcdiProjectVO; import com.ruoyi.ccdi.project.mapper.CcdiProjectMapper; import com.ruoyi.ccdi.project.service.ICcdiProjectService; @@ -86,4 +88,36 @@ public class CcdiProjectServiceImpl implements ICcdiProjectService { public Page selectProjectPage(Page page, CcdiProjectQueryDTO queryDTO) { return projectMapper.selectProjectPage(page, queryDTO); } + + @Override + public CcdiProjectStatusCountsVO getStatusCounts() { + CcdiProjectStatusCountsVO vo = new CcdiProjectStatusCountsVO(); + + // 统计全部项目 + Long totalCount = projectMapper.selectCount(null); + vo.setAll(totalCount); + + // 统计进行中项目(状态0) + Long status0Count = projectMapper.selectCount( + new LambdaQueryWrapper() + .eq(CcdiProject::getStatus, "0") + ); + vo.setStatus0(status0Count); + + // 统计已完成项目(状态1) + Long status1Count = projectMapper.selectCount( + new LambdaQueryWrapper() + .eq(CcdiProject::getStatus, "1") + ); + vo.setStatus1(status1Count); + + // 统计已归档项目(状态2) + Long status2Count = projectMapper.selectCount( + new LambdaQueryWrapper() + .eq(CcdiProject::getStatus, "2") + ); + vo.setStatus2(status2Count); + + return vo; + } }