diff --git a/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/IOaService.java b/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/IOaService.java index 4ae66fae..a19d9c84 100644 --- a/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/IOaService.java +++ b/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/IOaService.java @@ -56,6 +56,15 @@ public interface IOaService { */ List listTaskByUserId(String userId); + /** + * 用户的任务(待办) + * + * @param processInstanceId 实例ID + * @param userId + * @return + */ + List listTaskByProcessDefinitionKeyAndUserId(String processInstanceId, String userId); + /** * 我的任务(待办)总数 * diff --git a/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/impl/OaServiceImpl.java b/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/impl/OaServiceImpl.java index 468d309f..036e1534 100644 --- a/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/impl/OaServiceImpl.java +++ b/module-activiti/src/main/java/ink/wgink/module/activiti/service/oa/impl/OaServiceImpl.java @@ -148,6 +148,13 @@ public class OaServiceImpl extends DefaultBaseService implements IOaService { return listOaTask(tasks); } + @Override + public List listTaskByProcessDefinitionKeyAndUserId(String processDefinitionKey, String userId) { + TaskQuery taskQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId).processDefinitionKey(processDefinitionKey); + List tasks = taskQuery.includeProcessVariables().list(); + return listOaTask(tasks); + } + @Override public Long countTaskOfMine() { String userId = securityComponent.getCurrentUser().getUserId();