update - 查询我已办的任务时,过滤多实例或签被别人完成的任务
This commit is contained in:
parent
89dbf01ebc
commit
e2210b806e
@ -11,6 +11,7 @@ import org.springframework.beans.BeanUtils;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import static cn.axzo.workflow.core.service.converter.BpmnHistoricTaskInstanceConverter.DELETE_REASON_END;
|
||||
import static org.mapstruct.NullValueCheckStrategy.ALWAYS;
|
||||
|
||||
/**
|
||||
@ -47,17 +48,20 @@ public interface BpmnTaskDonePageItemConverter extends EntityConverter<BpmnTaskD
|
||||
}
|
||||
List<BpmnTaskDonePageItemVO> vos = new ArrayList<>();
|
||||
tasks.forEach(i -> {
|
||||
BpmnTaskDonePageItemVO vo = toVo(i);
|
||||
HistoricProcessInstance instance = historicProcessInstanceMap.getOrDefault(i.getProcessInstanceId(), null);
|
||||
if (Objects.nonNull(instance)) {
|
||||
vo.setProcessInstanceId(instance.getId());
|
||||
vo.setProcessInstanceName(instance.getName());
|
||||
vo.setBusinessKey(instance.getBusinessKey());
|
||||
vo.setStartUserId(instance.getStartUserId());
|
||||
vo.setStartTime(instance.getStartTime());
|
||||
vo.setProcessInstanceEndTime(instance.getEndTime());
|
||||
vo.setResult(BpmProcessInstanceResultEnum.valueOfStatus(instance.getBusinessStatus()));
|
||||
vos.add(vo);
|
||||
if (!Objects.equals(DELETE_REASON_END, i.getDeleteReason())) {
|
||||
BpmnTaskDonePageItemVO vo = toVo(i);
|
||||
HistoricProcessInstance instance = historicProcessInstanceMap.getOrDefault(i.getProcessInstanceId(),
|
||||
null);
|
||||
if (Objects.nonNull(instance)) {
|
||||
vo.setProcessInstanceId(instance.getId());
|
||||
vo.setProcessInstanceName(instance.getName());
|
||||
vo.setBusinessKey(instance.getBusinessKey());
|
||||
vo.setStartUserId(instance.getStartUserId());
|
||||
vo.setStartTime(instance.getStartTime());
|
||||
vo.setProcessInstanceEndTime(instance.getEndTime());
|
||||
vo.setResult(BpmProcessInstanceResultEnum.valueOfStatus(instance.getBusinessStatus()));
|
||||
vos.add(vo);
|
||||
}
|
||||
}
|
||||
});
|
||||
return vos;
|
||||
|
||||
@ -91,8 +91,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
|
||||
} else {
|
||||
StringBuilder baseQuerySql = new StringBuilder();
|
||||
NativeHistoricTaskInstanceQuery nativeQuery = compositeTodoQuery(dto, baseQuerySql);
|
||||
NativeHistoricTaskInstanceQuery dataSqlQuery = nativeQuery.parameter("assignee", dto.getUserId());
|
||||
tasks = dataSqlQuery.listPage((dto.getPageNo() - 1) * dto.getPageSize(), dto.getPageSize());
|
||||
tasks = nativeQuery.listPage((dto.getPageNo() - 1) * dto.getPageSize(), dto.getPageSize());
|
||||
NativeHistoricTaskInstanceQuery countSqlQuery = nativeQuery.sql(countSql(baseQuerySql));
|
||||
resultTotalCount = countSqlQuery.count();
|
||||
}
|
||||
@ -129,8 +128,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
|
||||
} else {
|
||||
StringBuilder baseQuerySql = new StringBuilder();
|
||||
NativeHistoricTaskInstanceQuery nativeQuery = compositeDoneQuery(dto, baseQuerySql);
|
||||
NativeHistoricTaskInstanceQuery dataSqlQuery = nativeQuery.parameter("assignee", dto.getUserId());
|
||||
tasks = dataSqlQuery.listPage((dto.getPageNo() - 1) * dto.getPageSize(), dto.getPageSize());
|
||||
tasks = nativeQuery.listPage((dto.getPageNo() - 1) * dto.getPageSize(), dto.getPageSize());
|
||||
NativeHistoricTaskInstanceQuery countSqlQuery = nativeQuery.sql(countSql(baseQuerySql));
|
||||
resultTotalCount = countSqlQuery.count();
|
||||
}
|
||||
@ -150,7 +148,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
|
||||
baseQuerySql.append(sqlConnectors(baseQuerySql)).append(" a.END_TIME_ is null")
|
||||
.append(sqlConnectors(baseQuerySql)).append(" a.ASSIGNEE_ = #{assignee}")
|
||||
.append(" ORDER BY a.END_TIME_ DESC");
|
||||
nativeQuery.sql(baseQuerySql.toString());
|
||||
nativeQuery.sql(baseQuerySql.toString()).parameter("assignee", dto.getUserId());
|
||||
return nativeQuery;
|
||||
}
|
||||
|
||||
@ -159,7 +157,7 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
|
||||
baseQuerySql.append(sqlConnectors(baseQuerySql)).append(" a.END_TIME_ is not null")
|
||||
.append(sqlConnectors(baseQuerySql)).append(" a.ASSIGNEE_ = #{assignee}")
|
||||
.append(" ORDER BY a.START_TIME_ DESC");
|
||||
nativeQuery.sql(baseQuerySql.toString());
|
||||
nativeQuery.sql(baseQuerySql.toString()).parameter("assignee", dto.getUserId());
|
||||
return nativeQuery;
|
||||
}
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ public class BpmTaskDelegateImpl implements BpmTaskDelegate {
|
||||
public List<BpmTaskDelegateAssigner> calculateAssignerAtExecution(BpmTaskCalculateDTO delegateTask) {
|
||||
log.info("计算审核人,当前的审批任务 DefinitionKey 为: {}", delegateTask.getTaskDefinitionKey());
|
||||
List<BpmTaskDelegateAssigner> assigners = new ArrayList<>();
|
||||
if (Objects.equals("sid-6589489F-EE93-43F2-A98F-78F5A578D39B", delegateTask.getTaskDefinitionKey())) {
|
||||
if (Objects.equals("NODE1687954452526_0.3121942479568347_1", delegateTask.getTaskDefinitionKey())) {
|
||||
BpmTaskDelegateAssigner user1 = new BpmTaskDelegateAssigner();
|
||||
user1.setAssignerId("66646");
|
||||
user1.setAssignerName("王军");
|
||||
|
||||
Loading…
Reference in New Issue
Block a user