From 6c73947ef385eff4b09f2d517f62486cb990856c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B8=85=E6=99=A8?= <136767481@qq.com> Date: Tue, 6 May 2025 11:11:41 +0800 Subject: [PATCH] =?UTF-8?q?feat(work):=20=E6=B7=BB=E5=8A=A0=E5=85=B1?= =?UTF-8?q?=E4=BA=AB=E8=B4=A6=E5=8F=B7=E7=BB=9F=E8=AE=A1=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=B9=B6=E4=BC=98=E5=8C=96=E5=88=97=E8=A1=A8=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 ITzSharedAccountService 接口中添加 queryCount 方法,用于查询共享账号数量 - 在 TzSharedAccountController 中添加 count 接口,提供共享账号统计功能 - 在 TzSharedAccountServiceImpl 中实现 queryCount 方法,统计账号总数量、未使用数量和使用中数量- 优化 queryList 方法,按创建时间降序排序共享账号列表 - 移除无效的代码和注释,提高代码可读性 --- .../controller/TzSharedAccountController.java | 9 +++++ .../work/service/ITzSharedAccountService.java | 9 +++++ .../impl/TzSharedAccountServiceImpl.java | 38 ++++++++++++------- 3 files changed, 43 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/controller/TzSharedAccountController.java b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/controller/TzSharedAccountController.java index 0d4b176..cde1209 100644 --- a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/controller/TzSharedAccountController.java +++ b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/controller/TzSharedAccountController.java @@ -1,6 +1,7 @@ package org.dromara.work.controller; import java.util.List; +import java.util.Map; import lombok.RequiredArgsConstructor; import jakarta.servlet.http.HttpServletResponse; @@ -45,6 +46,14 @@ public class TzSharedAccountController extends BaseController { return tzSharedAccountService.queryPageList(bo, pageQuery); } + /** + * 共享账号统计 + */ + @SaCheckPermission("work:sharedAccount:list") + @GetMapping("/count") + public R> count(TzSharedAccountBo bo) { + return R.ok(tzSharedAccountService.queryCount(bo)); + } /** * 导出共享账号列表 */ diff --git a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/ITzSharedAccountService.java b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/ITzSharedAccountService.java index 46e0b4a..2ecb006 100644 --- a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/ITzSharedAccountService.java +++ b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/ITzSharedAccountService.java @@ -7,6 +7,7 @@ import org.dromara.common.mybatis.core.page.PageQuery; import java.util.Collection; import java.util.List; +import java.util.Map; /** * 共享账号Service接口 @@ -65,4 +66,12 @@ public interface ITzSharedAccountService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + /** + * 查询共享账号数量 + * + * @param bo 查询条件 + * @return 共享账号数量 + */ + Map queryCount(TzSharedAccountBo bo); } diff --git a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/impl/TzSharedAccountServiceImpl.java b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/impl/TzSharedAccountServiceImpl.java index 17ebf2f..0814184 100644 --- a/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/impl/TzSharedAccountServiceImpl.java +++ b/ruoyi-modules/ruoyi-work/src/main/java/org/dromara/work/service/impl/TzSharedAccountServiceImpl.java @@ -15,6 +15,7 @@ import org.dromara.work.domain.TzSharedAccount; import org.dromara.work.mapper.TzSharedAccountMapper; import org.dromara.work.service.ITzSharedAccountService; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Collection; @@ -56,6 +57,29 @@ public class TzSharedAccountServiceImpl implements ITzSharedAccountService { return TableDataInfo.build(result); } + /** + * 查询共享账号数量 + * + * @param bo 查询条件 + * @return 共享账号数量 + */ + @Override + public Map queryCount(TzSharedAccountBo bo) { + List list = queryList(bo); + //账号总数量 + Long count = (long) list.size(); + //账号未使用数量 + Long notUsedCount = list.stream().filter(item -> item.getStatus() == 0).count(); + //账号使用中数量 + Long usingCount = list.stream().filter(item -> item.getStatus() == 1).count(); + + Map map = new HashMap<>(); + map.put("count", count); + map.put("notUsedCount", notUsedCount); + map.put("usingCount", usingCount); + return map; + } + /** * 查询符合条件的共享账号列表 * @@ -71,7 +95,7 @@ public class TzSharedAccountServiceImpl implements ITzSharedAccountService { private LambdaQueryWrapper buildQueryWrapper(TzSharedAccountBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.orderByAsc(TzSharedAccount::getId); + lqw.orderByDesc(TzSharedAccount::getCreateTime); lqw.eq(bo.getUserId() != null, TzSharedAccount::getUserId, bo.getUserId()); lqw.like(StringUtils.isNotBlank(bo.getUserName()), TzSharedAccount::getUserName, bo.getUserName()); lqw.eq(StringUtils.isNotBlank(bo.getCode()), TzSharedAccount::getCode, bo.getCode()); @@ -97,7 +121,6 @@ public class TzSharedAccountServiceImpl implements ITzSharedAccountService { @Override public Boolean insertByBo(TzSharedAccountBo bo) { TzSharedAccount add = MapstructUtils.convert(bo, TzSharedAccount.class); - validEntityBeforeSave(add); boolean flag = baseMapper.insert(add) > 0; if (flag) { bo.setId(add.getId()); @@ -114,17 +137,9 @@ public class TzSharedAccountServiceImpl implements ITzSharedAccountService { @Override public Boolean updateByBo(TzSharedAccountBo bo) { TzSharedAccount update = MapstructUtils.convert(bo, TzSharedAccount.class); - validEntityBeforeSave(update); return baseMapper.updateById(update) > 0; } - /** - * 保存前的数据校验 - */ - private void validEntityBeforeSave(TzSharedAccount entity){ - //TODO 做一些数据校验,如唯一约束 - } - /** * 校验并批量删除共享账号信息 * @@ -134,9 +149,6 @@ public class TzSharedAccountServiceImpl implements ITzSharedAccountService { */ @Override public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { - if(isValid){ - //TODO 做一些业务上的校验,判断是否需要校验 - } return baseMapper.deleteByIds(ids) > 0; } }