From 32be453ce79ce4e9efbeb3ab4ef6db501a6f0230 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期一, 31 三月 2025 09:19:23 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java | 71 ++++++++++++-----------------------
1 files changed, 24 insertions(+), 47 deletions(-)
diff --git a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
index 3fe1de0..2bb58bd 100644
--- a/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
+++ b/lxzn-module-flowable/src/main/java/org/jeecg/modules/flowable/service/impl/FlowTaskServiceImpl.java
@@ -1,20 +1,20 @@
package org.jeecg.modules.flowable.service.impl;
-
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
-import org.flowable.bpmn.model.Process;
import org.flowable.bpmn.model.*;
+import org.flowable.bpmn.model.Process;
import org.flowable.common.engine.api.FlowableException;
import org.flowable.common.engine.api.FlowableObjectNotFoundException;
import org.flowable.common.engine.impl.identity.Authentication;
@@ -33,19 +33,19 @@
import org.flowable.task.api.Task;
import org.flowable.task.api.TaskQuery;
import org.flowable.task.api.history.HistoricTaskInstance;
-import org.flowable.task.api.history.HistoricTaskInstanceQuery;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.SpringContextUtils;
+import org.jeecg.modules.flowable.apithird.business.dto.FlowMyBusinessDto;
import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
import org.jeecg.modules.flowable.apithird.business.service.impl.FlowMyBusinessServiceImpl;
+import org.jeecg.modules.flowable.apithird.common.constant.ProcessConstants;
+import org.jeecg.modules.flowable.apithird.common.enums.FlowComment;
+import org.jeecg.modules.flowable.apithird.common.exception.CustomException;
import org.jeecg.modules.flowable.apithird.entity.ActStatus;
import org.jeecg.modules.flowable.apithird.entity.SysUser;
import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
import org.jeecg.modules.flowable.apithird.service.IFlowThirdService;
-import org.jeecg.modules.flowable.apithird.common.constant.ProcessConstants;
-import org.jeecg.modules.flowable.apithird.common.enums.FlowComment;
-import org.jeecg.modules.flowable.apithird.common.exception.CustomException;
import org.jeecg.modules.flowable.domain.dto.FlowCommentDto;
import org.jeecg.modules.flowable.domain.dto.FlowNextDto;
import org.jeecg.modules.flowable.domain.dto.FlowTaskDto;
@@ -872,7 +872,7 @@
String myTaskId = null;
HistoricTaskInstance myTask = null;
for (HistoricTaskInstance hti : htiList) {
- if (loginUser.getUsername().toString().equals(hti.getAssignee())) {
+ if (loginUser.getUsername().equals(hti.getAssignee())) {
myTaskId = hti.getId();
myTask = hti;
break;
@@ -970,55 +970,32 @@
* @return
*/
@Override
- public Result finishedList(Integer pageNum, Integer pageSize) {
- Page<FlowTaskDto> page = new Page<>();
+ public Result finishedList(Integer pageNum, Integer pageSize, FlowMyBusinessDto flowMyBusinessDto) {
+ //淇敼鏌ヨ锛屾坊鍔犳煡璇㈡潯浠�
+ Page page = new Page(pageNum, pageSize);
String username = iFlowThirdService.getLoginUser().getUsername();
- HistoricTaskInstanceQuery taskInstanceQuery = historyService.createHistoricTaskInstanceQuery()
- .includeProcessVariables()
- .finished()
- .taskAssignee(username)
- .orderByHistoricTaskInstanceEndTime()
- .desc();
- List<HistoricTaskInstance> historicTaskInstanceList = taskInstanceQuery.listPage((pageNum - 1)*pageSize, pageSize);
- List<FlowTaskDto> hisTaskList = Lists.newArrayList();
- for (HistoricTaskInstance histTask : historicTaskInstanceList) {
- FlowTaskDto flowTask = new FlowTaskDto();
- // 褰撳墠娴佺▼淇℃伅
- flowTask.setTaskId(histTask.getId());
- // 瀹℃壒浜哄憳淇℃伅
- flowTask.setCreateTime(histTask.getCreateTime());
- flowTask.setFinishTime(histTask.getEndTime());
- flowTask.setDuration(getDate(histTask.getDurationInMillis()));
- flowTask.setProcDefId(histTask.getProcessDefinitionId());
- flowTask.setTaskDefKey(histTask.getTaskDefinitionKey());
- flowTask.setTaskName(histTask.getName());
- flowTask.setDescription(flowMyBusinessService.getByProcessInstanceId(histTask.getProcessInstanceId()).getTitle());
+ flowMyBusinessDto.setCurrentUser(username);
+ IPage<FlowTaskDto> flowTaskDtoIPage = flowMyBusinessService.getPageListMyBusiness(page,flowMyBusinessDto);
+ flowTaskDtoIPage.getRecords().forEach(flowTaskDto -> {
// 娴佺▼瀹氫箟淇℃伅
ProcessDefinition pd = repositoryService.createProcessDefinitionQuery()
- .processDefinitionId(histTask.getProcessDefinitionId())
+ .processDefinitionId(flowTaskDto.getProcessDefinitionId())
.singleResult();
- flowTask.setDeployId(pd.getDeploymentId());
- flowTask.setProcDefName(pd.getName());
- flowTask.setProcDefVersion(pd.getVersion());
- flowTask.setProcInsId(histTask.getProcessInstanceId());
- flowTask.setHisProcInsId(histTask.getProcessInstanceId());
-
+ flowTaskDto.setDeployId(pd.getDeploymentId());
+ flowTaskDto.setProcDefName(pd.getName());
+ flowTaskDto.setProcDefVersion(pd.getVersion());
+ flowTaskDto.setCategory(pd.getCategory());
// 娴佺▼鍙戣捣浜轰俊鎭�
HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery()
- .processInstanceId(histTask.getProcessInstanceId())
+ .processInstanceId(flowTaskDto.getTaskId())
.singleResult();
SysUser startUser = iFlowThirdService.getUserByUsername(historicProcessInstance.getStartUserId());
- flowTask.setStartUserId(startUser.getUsername());
- flowTask.setStartUserName(startUser.getRealname());
+ flowTaskDto.setStartUserId(startUser.getUsername());
+ flowTaskDto.setStartUserName(startUser.getRealname());
List<String> departNamesByUsername = iFlowThirdService.getDepartNamesByUsername(historicProcessInstance.getStartUserId());
- flowTask.setStartDeptName(CollUtil.join(departNamesByUsername,"锛�"));
- hisTaskList.add(flowTask);
- }
- page.setTotal(hisTaskList.size());
- page.setRecords(hisTaskList);
-// Map<String, Object> result = new HashMap<>();
-// result.put("result",page);
-// result.put("finished",true);
+ flowTaskDto.setStartDeptName(CollUtil.join(departNamesByUsername,"锛�"));
+ flowTaskDto.setTaskId(flowTaskDto.getHisProcInsId());
+ });
return Result.OK(page);
}
--
Gitblit v1.9.3