From 0c1a606dd49a3a92848a185e8b2c538219e8f854 Mon Sep 17 00:00:00 2001 From: wangliwen Date: Wed, 12 Oct 2022 15:57:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=88=91=E7=9A=84=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=90=84=E7=B1=BB=E5=9E=8B=E7=9A=84=E5=BE=85=E5=8A=9E?= =?UTF-8?q?=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ActTaskController.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java b/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java index e3fcf86a..e334b0af 100644 --- a/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java +++ b/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java @@ -15,11 +15,19 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.activiti.engine.RepositoryService; +import org.activiti.engine.TaskService; +import org.activiti.engine.repository.ProcessDefinition; +import org.activiti.engine.repository.ProcessDefinitionQuery; +import org.activiti.engine.task.TaskQuery; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; +import java.util.LinkedHashMap; +import java.util.List; import java.util.Map; /** @@ -35,6 +43,13 @@ public class ActTaskController { private ActTaskService actTaskService; @Autowired private SysUserService sysUserService; + @Autowired + private JdbcTemplate jdbcTemplate; + + @Autowired + protected RepositoryService repositoryService; + @Autowired + protected TaskService taskService; /** * 获取用户任务列表 @@ -85,6 +100,30 @@ public class ActTaskController { return new Result>().ok(page); } + @GetMapping("myToDoTaskNum") + @ApiOperation("我的待办数目") + @ApiImplicitParams({ + @ApiImplicitParam(name = "taskName", value = "任务名称", paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "processDefinitionKey", value = "流程定义KEY", paramType = "query", dataType = "String") + }) + public Result> myToDoTaskNum(@ApiIgnore @RequestParam Map params) { + Map result = new LinkedHashMap<>(); + params.put("userId", SecurityUser.getUserId().toString()); + ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery() + .orderByProcessDefinitionId().desc().orderByProcessDefinitionKey().desc(); + processDefinitionQuery.latestVersion(); + List processDefinitionList = processDefinitionQuery.list(); // 获取所有流程模型 获取流程key + processDefinitionList.stream().forEach(index -> { + TaskQuery taskQuery = taskService.createTaskQuery(); + taskQuery.processDefinitionKey(index.getKey()); // 流程模型key + taskQuery.taskAssignee(SecurityUser.getUserId().toString()); + taskQuery.active(); + result.put(index.getKey(), taskQuery.count()); + }); + result.put("meetingroom_book", jdbcTemplate.queryForObject("SELECT COUNT(id) FROM t_meetingroom_book WHERE state = 1;", Long.class)); + return new Result>().ok(result); + } + @GetMapping("deptToDoTaskPage") @ApiOperation("部门待办列表") @LogOperation("部门待办列表查询")