mirror of
https://github.com/dromara/RuoYi-Vue-Plus.git
synced 2025-09-30 07:06:39 +08:00
add 添加查询当前租户所有待办,已办任务
This commit is contained in:
parent
54837deda0
commit
f58f12c603
@ -70,6 +70,16 @@ public class ActTaskController extends BaseController {
|
||||
return iActTaskService.getTaskWaitByPage(taskBo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前租户所有待办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
*/
|
||||
@GetMapping("/getAllTaskWaitByPage")
|
||||
public TableDataInfo<TaskVo> getAllTaskWaitByPage(TaskBo taskBo) {
|
||||
return iActTaskService.getAllTaskWaitByPage(taskBo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前用户的已办任务
|
||||
*
|
||||
@ -80,6 +90,16 @@ public class ActTaskController extends BaseController {
|
||||
return iActTaskService.getTaskFinishByPage(taskBo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前租户所有已办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
*/
|
||||
@GetMapping("/getAllTaskFinishByPage")
|
||||
public TableDataInfo<TaskVo> getAllTaskFinishByPage(TaskBo taskBo) {
|
||||
return iActTaskService.getAllTaskFinishByPage(taskBo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 签收(拾取)任务
|
||||
*
|
||||
|
@ -37,6 +37,15 @@ public interface IActTaskService {
|
||||
*/
|
||||
TableDataInfo<TaskVo> getTaskWaitByPage(TaskBo taskBo);
|
||||
|
||||
/**
|
||||
* 查询当前租户所有待办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
* @return 结果
|
||||
*/
|
||||
TableDataInfo<TaskVo> getAllTaskWaitByPage(TaskBo taskBo);
|
||||
|
||||
|
||||
/**
|
||||
* 查询当前用户的已办任务
|
||||
*
|
||||
@ -45,6 +54,14 @@ public interface IActTaskService {
|
||||
*/
|
||||
TableDataInfo<TaskVo> getTaskFinishByPage(TaskBo taskBo);
|
||||
|
||||
/**
|
||||
* 查询当前租户所有已办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
* @return 结果
|
||||
*/
|
||||
TableDataInfo<TaskVo> getAllTaskFinishByPage(TaskBo taskBo);
|
||||
|
||||
/**
|
||||
* 委派任务
|
||||
*
|
||||
|
@ -201,6 +201,48 @@ public class ActTaskServiceImpl implements IActTaskService {
|
||||
return new TableDataInfo<>(list, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前租户所有待办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<TaskVo> getAllTaskWaitByPage(TaskBo taskBo) {
|
||||
TaskQuery query = taskService.createTaskQuery().taskTenantId(TenantHelper.getTenantId());
|
||||
if (StringUtils.isNotBlank(taskBo.getName())) {
|
||||
query.taskNameLike("%" + taskBo.getName() + "%");
|
||||
}
|
||||
if (StringUtils.isNotBlank(taskBo.getProcessDefinitionName())) {
|
||||
query.processDefinitionNameLike("%" + taskBo.getProcessDefinitionName() + "%");
|
||||
}
|
||||
if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) {
|
||||
query.processDefinitionKey(taskBo.getProcessDefinitionKey());
|
||||
}
|
||||
List<Task> taskList = query.listPage(taskBo.getPageNum(), taskBo.getPageSize());
|
||||
List<ProcessInstance> processInstanceList = null;
|
||||
if (CollUtil.isNotEmpty(taskList)) {
|
||||
Set<String> processInstanceIds = StreamUtils.toSet(taskList, Task::getProcessInstanceId);
|
||||
processInstanceList = runtimeService.createProcessInstanceQuery().processInstanceIds(processInstanceIds).list();
|
||||
}
|
||||
List<TaskVo> list = new ArrayList<>();
|
||||
for (Task task : taskList) {
|
||||
TaskVo taskVo = BeanUtil.toBean(task, TaskVo.class);
|
||||
if (CollUtil.isNotEmpty(processInstanceList)) {
|
||||
processInstanceList.stream().filter(e -> e.getId().equals(task.getProcessInstanceId())).findFirst().ifPresent(e -> {
|
||||
taskVo.setBusinessStatus(e.getBusinessStatus());
|
||||
taskVo.setBusinessStatusName(BusinessStatusEnum.getEumByStatus(taskVo.getBusinessStatus()));
|
||||
taskVo.setProcessDefinitionKey(e.getProcessDefinitionKey());
|
||||
taskVo.setProcessDefinitionName(e.getProcessDefinitionName());
|
||||
});
|
||||
}
|
||||
taskVo.setAssignee(StringUtils.isNotBlank(task.getAssignee()) ? Long.valueOf(task.getAssignee()) : null);
|
||||
taskVo.setParticipantVo(WorkflowUtils.getCurrentTaskParticipant(task.getId()));
|
||||
list.add(taskVo);
|
||||
}
|
||||
long count = query.count();
|
||||
return new TableDataInfo<>(list, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前用户的已办任务
|
||||
*
|
||||
@ -244,6 +286,48 @@ public class ActTaskServiceImpl implements IActTaskService {
|
||||
return new TableDataInfo<>(list, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询当前租户所有已办任务
|
||||
*
|
||||
* @param taskBo 参数
|
||||
*/
|
||||
@Override
|
||||
public TableDataInfo<TaskVo> getAllTaskFinishByPage(TaskBo taskBo) {
|
||||
HistoricTaskInstanceQuery query = historyService.createHistoricTaskInstanceQuery()
|
||||
.taskTenantId(TenantHelper.getTenantId()).finished().orderByHistoricTaskInstanceStartTime().desc();
|
||||
if (StringUtils.isNotBlank(taskBo.getName())) {
|
||||
query.taskNameLike("%" + taskBo.getName() + "%");
|
||||
}
|
||||
if (StringUtils.isNotBlank(taskBo.getProcessDefinitionName())) {
|
||||
query.processDefinitionNameLike("%" + taskBo.getProcessDefinitionName() + "%");
|
||||
}
|
||||
if (StringUtils.isNotBlank(taskBo.getProcessDefinitionKey())) {
|
||||
query.processDefinitionKey(taskBo.getProcessDefinitionKey());
|
||||
}
|
||||
List<HistoricTaskInstance> taskInstanceList = query.listPage(taskBo.getPageNum(), taskBo.getPageSize());
|
||||
List<HistoricProcessInstance> historicProcessInstanceList = null;
|
||||
if (CollUtil.isNotEmpty(taskInstanceList)) {
|
||||
Set<String> processInstanceIds = StreamUtils.toSet(taskInstanceList, HistoricTaskInstance::getProcessInstanceId);
|
||||
historicProcessInstanceList = historyService.createHistoricProcessInstanceQuery().processInstanceIds(processInstanceIds).list();
|
||||
}
|
||||
List<TaskVo> list = new ArrayList<>();
|
||||
for (HistoricTaskInstance task : taskInstanceList) {
|
||||
TaskVo taskVo = BeanUtil.toBean(task, TaskVo.class);
|
||||
if (CollUtil.isNotEmpty(historicProcessInstanceList)) {
|
||||
historicProcessInstanceList.stream().filter(e -> e.getId().equals(task.getProcessInstanceId())).findFirst().ifPresent(e -> {
|
||||
taskVo.setBusinessStatus(e.getBusinessStatus());
|
||||
taskVo.setBusinessStatusName(BusinessStatusEnum.getEumByStatus(taskVo.getBusinessStatus()));
|
||||
taskVo.setProcessDefinitionKey(e.getProcessDefinitionKey());
|
||||
taskVo.setProcessDefinitionName(e.getProcessDefinitionName());
|
||||
});
|
||||
}
|
||||
taskVo.setAssignee(StringUtils.isNotBlank(task.getAssignee()) ? Long.valueOf(task.getAssignee()) : null);
|
||||
list.add(taskVo);
|
||||
}
|
||||
long count = query.count();
|
||||
return new TableDataInfo<>(list, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 委派任务
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user