From 1b6ac13b5177344eba66a82b1061e086a1d84c71 Mon Sep 17 00:00:00 2001 From: zangchenhao Date: Mon, 7 Jul 2025 17:06:27 +0800 Subject: [PATCH] =?UTF-8?q?feat(workflow):=20=E6=B7=BB=E5=8A=A0=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E7=94=A8=E6=88=B7=E5=BE=85=E5=8A=9E=E5=92=8C=E6=8A=84?= =?UTF-8?q?=E9=80=81=E4=BB=BB=E5=8A=A1=E6=95=B0=E9=87=8F=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 FlwTaskController 中添加了 countTaskWaitByCurrentUser 和 countTaskCopyByCurrentUser 方法 - 在 FlwTaskMapper 中添加了 countTaskWait 和 countTaskCopy 方法 - 在 FlwTaskMapper.xml 中添加了对应的 SQL 查询语句 - 在 FlwTaskServiceImpl 和 IFlwTaskService 中实现了相关业务逻辑 --- .../controller/FlwTaskController.java | 16 +++++ .../workflow/mapper/FlwTaskMapper.java | 16 +++++ .../workflow/service/IFlwTaskService.java | 14 +++++ .../service/impl/FlwTaskServiceImpl.java | 28 +++++++++ .../mapper/workflow/FlwTaskMapper.xml | 59 +++++++++++++++++++ 5 files changed, 133 insertions(+) diff --git a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java index 252cc0e..b8b795a 100644 --- a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java +++ b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/controller/FlwTaskController.java @@ -209,4 +209,20 @@ public class FlwTaskController extends BaseController { return R.ok(flwTaskService.currentTaskAllUser(taskId)); } + /** + * 查询当前用户的待办任务数量 + */ + @GetMapping("/countTaskWaitByCurrentUser") + public R countTaskWaitByCurrentUser() { + return R.ok(flwTaskService.countTaskWaitByCurrentUser()); + } + + /** + * 查询当前用户的抄送任务数量 + */ + @GetMapping("/countTaskCopyByCurrentUser") + public R countTaskCopyByCurrentUser() { + return R.ok(flwTaskService.countTaskCopyByCurrentUser()); + } + } diff --git a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java index fd86c82..e100e0a 100644 --- a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java +++ b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java @@ -54,4 +54,20 @@ public interface FlwTaskMapper { * @return 结果 */ Page getTaskCopyByPage(@Param("page") Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + /** + * 查询当前用户的待办任务数量 + * + * @param queryWrapper 条件 + * @return 数量 + */ + Long countTaskWait(@Param(Constants.WRAPPER) Wrapper queryWrapper); + + /** + * 查询当前用户的抄送任务数量 + * + * @param queryWrapper 条件 + * @return 数量 + */ + Long countTaskCopy(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java index 6c7fc6b..27b18fc 100644 --- a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java +++ b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/IFlwTaskService.java @@ -207,4 +207,18 @@ public interface IFlwTaskService { */ FlowNode getByNodeCode(String nodeCode, Long definitionId); + /** + * 查询当前用户的待办任务数量 + * + * @return 待办任务数量 + */ + Long countTaskWaitByCurrentUser(); + + /** + * 查询当前用户的抄送任务数量 + * + * @return 抄送任务数量 + */ + Long countTaskCopyByCurrentUser(); + } diff --git a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java index 7f1c170..d499095 100644 --- a/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java +++ b/ruoyi-modules/hwmom-workflow/src/main/java/org/dromara/workflow/service/impl/FlwTaskServiceImpl.java @@ -814,4 +814,32 @@ public class FlwTaskServiceImpl implements IFlwTaskService { .eq(FlowNode::getDefinitionId, definitionId)); } + /** + * 查询当前用户的待办任务数量 + * + * @return 待办任务数量 + */ + @Override + public Long countTaskWaitByCurrentUser() { + FlowTaskBo flowTaskBo = new FlowTaskBo(); + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.eq("t.node_type", NodeType.BETWEEN.getKey()); + queryWrapper.in("t.processed_by", SpringUtils.getBean(WorkflowPermissionHandler.class).permissions()); + queryWrapper.in("t.flow_status", BusinessStatusEnum.WAITING.getStatus()); + return flwTaskMapper.countTaskWait(queryWrapper); + } + + /** + * 查询当前用户的抄送任务数量 + * + * @return 抄送任务数量 + */ + @Override + public Long countTaskCopyByCurrentUser() { + FlowTaskBo flowTaskBo = new FlowTaskBo(); + QueryWrapper queryWrapper = buildQueryWrapper(flowTaskBo); + queryWrapper.in("t.processed_by", LoginHelper.getUserIdStr()); + return flwTaskMapper.countTaskCopy(queryWrapper); + } + } diff --git a/ruoyi-modules/hwmom-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml b/ruoyi-modules/hwmom-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml index f539030..ccd9a8a 100644 --- a/ruoyi-modules/hwmom-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml +++ b/ruoyi-modules/hwmom-workflow/src/main/resources/mapper/workflow/FlwTaskMapper.xml @@ -112,4 +112,63 @@ ) t ${ew.getCustomSqlSegment} + + + + + +