update - 优化处理审批过程中计算审批人的调二方接口的参数处理
This commit is contained in:
parent
cbe60a18d0
commit
2ab15f75f1
@ -9,6 +9,7 @@ import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.ListUtils;
|
||||||
import org.flowable.bpmn.model.UserTask;
|
import org.flowable.bpmn.model.UserTask;
|
||||||
import org.flowable.engine.delegate.DelegateExecution;
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -53,15 +54,13 @@ public class AdminTaskAssigneeSelector extends AbstractBpmnTaskAssigneeSelector
|
|||||||
ApproverScopeDTO scopeDto) {
|
ApproverScopeDTO scopeDto) {
|
||||||
ListFlowTaskAssignerReq.ListFlowTaskAssignerReqBuilder builder = ListFlowTaskAssignerReq.builder();
|
ListFlowTaskAssignerReq.ListFlowTaskAssignerReqBuilder builder = ListFlowTaskAssignerReq.builder();
|
||||||
if (!CollectionUtils.isEmpty(scopeDto.getOrgScopes())) {
|
if (!CollectionUtils.isEmpty(scopeDto.getOrgScopes())) {
|
||||||
builder.orgScopes(scopeDto.getOrgScopes().stream()
|
builder.orgScopes(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(e -> BeanUtil
|
.map(e -> BeanUtil.copyProperties(e, ListFlowTaskAssignerReq.OrgScope.class))
|
||||||
.copyProperties(e, ListFlowTaskAssignerReq.OrgScope.class))
|
|
||||||
.collect(Collectors.toList()));
|
.collect(Collectors.toList()));
|
||||||
}
|
}
|
||||||
if (!CollectionUtils.isEmpty(scopeDto.getWorkerTeamScopes())) {
|
if (!CollectionUtils.isEmpty(scopeDto.getWorkerTeamScopes())) {
|
||||||
builder.workerTeamScopes(scopeDto.getWorkerTeamScopes().stream()
|
builder.workerTeamScopes(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(w -> BeanUtil
|
.map(w -> BeanUtil.copyProperties(w, ListFlowTaskAssignerReq.OrgScope.class))
|
||||||
.copyProperties(w, ListFlowTaskAssignerReq.OrgScope.class))
|
|
||||||
.collect(Collectors.toList()));
|
.collect(Collectors.toList()));
|
||||||
}
|
}
|
||||||
ListFlowTaskAssignerReq req = builder.build();
|
ListFlowTaskAssignerReq req = builder.build();
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.ListUtils;
|
||||||
import org.flowable.bpmn.model.UserTask;
|
import org.flowable.bpmn.model.UserTask;
|
||||||
import org.flowable.engine.delegate.DelegateExecution;
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -50,11 +51,11 @@ public class IdentityTaskAssigneeSelector extends AbstractBpmnTaskAssigneeSelect
|
|||||||
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
||||||
ApproverScopeDTO scopeDto) {
|
ApproverScopeDTO scopeDto) {
|
||||||
ListFlowTaskAssignerReq req = ListFlowTaskAssignerReq.builder()
|
ListFlowTaskAssignerReq req = ListFlowTaskAssignerReq.builder()
|
||||||
.orgScopes(scopeDto.getOrgScopes().stream()
|
.orgScopes(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(e -> BeanUtil
|
.map(e -> BeanUtil
|
||||||
.copyProperties(e, ListFlowTaskAssignerReq.OrgScope.class))
|
.copyProperties(e, ListFlowTaskAssignerReq.OrgScope.class))
|
||||||
.collect(Collectors.toList()))
|
.collect(Collectors.toList()))
|
||||||
.workerTeamScopes(scopeDto.getWorkerTeamScopes().stream()
|
.workerTeamScopes(ListUtils.emptyIfNull(scopeDto.getWorkerTeamScopes()).stream()
|
||||||
.map(w -> BeanUtil
|
.map(w -> BeanUtil
|
||||||
.copyProperties(w, ListFlowTaskAssignerReq.OrgScope.class))
|
.copyProperties(w, ListFlowTaskAssignerReq.OrgScope.class))
|
||||||
.collect(Collectors.toList()))
|
.collect(Collectors.toList()))
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.ListUtils;
|
||||||
import org.flowable.bpmn.model.UserTask;
|
import org.flowable.bpmn.model.UserTask;
|
||||||
import org.flowable.engine.delegate.DelegateExecution;
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -60,7 +61,7 @@ public class InitiatorLeaderTaskAssigneeSelector extends AbstractBpmnTaskAssigne
|
|||||||
return super.invokeService(userTask, execution, scopeDto);
|
return super.invokeService(userTask, execution, scopeDto);
|
||||||
}
|
}
|
||||||
FlowTaskAssignerReq req = FlowTaskAssignerReq.builder()
|
FlowTaskAssignerReq req = FlowTaskAssignerReq.builder()
|
||||||
.orgScopes(scopeDto.getOrgScopes().stream()
|
.orgScopes(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(o -> FlowTaskAssignerReq.OrgScope.builder()
|
.map(o -> FlowTaskAssignerReq.OrgScope.builder()
|
||||||
.ouId(o.getOuId())
|
.ouId(o.getOuId())
|
||||||
.workspaceId(o.getWorkspaceId())
|
.workspaceId(o.getWorkspaceId())
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.ListUtils;
|
||||||
import org.flowable.bpmn.model.UserTask;
|
import org.flowable.bpmn.model.UserTask;
|
||||||
import org.flowable.engine.delegate.DelegateExecution;
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -51,7 +52,7 @@ public class PositionTaskAssigneeSelector extends AbstractBpmnTaskAssigneeSelect
|
|||||||
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
||||||
ApproverScopeDTO scopeDto) {
|
ApproverScopeDTO scopeDto) {
|
||||||
FlowTaskAssignerReq req = FlowTaskAssignerReq.builder()
|
FlowTaskAssignerReq req = FlowTaskAssignerReq.builder()
|
||||||
.orgScopes(scopeDto.getOrgScopes().stream()
|
.orgScopes(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(e -> BeanUtil.copyProperties(e, FlowTaskAssignerReq.OrgScope.class))
|
.map(e -> BeanUtil.copyProperties(e, FlowTaskAssignerReq.OrgScope.class))
|
||||||
.collect(Collectors.toList()))
|
.collect(Collectors.toList()))
|
||||||
.jobCodes(super.getTypes(userTask))
|
.jobCodes(super.getTypes(userTask))
|
||||||
|
|||||||
@ -9,6 +9,7 @@ import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner;
|
|||||||
import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
import cn.axzo.workflow.core.deletage.approverscope.ApproverScopeDTO;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.collections4.ListUtils;
|
||||||
import org.flowable.bpmn.model.UserTask;
|
import org.flowable.bpmn.model.UserTask;
|
||||||
import org.flowable.engine.delegate.DelegateExecution;
|
import org.flowable.engine.delegate.DelegateExecution;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -51,7 +52,7 @@ public class RoleTaskAssigneeSelector extends AbstractBpmnTaskAssigneeSelector {
|
|||||||
@Override
|
@Override
|
||||||
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
protected List<BpmnTaskDelegateAssigner> invokeService(UserTask userTask, DelegateExecution execution,
|
||||||
ApproverScopeDTO scopeDto) {
|
ApproverScopeDTO scopeDto) {
|
||||||
Set<Long> workspaceIdSet = scopeDto.getOrgScopes().stream()
|
Set<Long> workspaceIdSet = ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(OrgScope::getWorkspaceId)
|
.map(OrgScope::getWorkspaceId)
|
||||||
.collect(Collectors.toSet());
|
.collect(Collectors.toSet());
|
||||||
|
|
||||||
@ -59,7 +60,7 @@ public class RoleTaskAssigneeSelector extends AbstractBpmnTaskAssigneeSelector {
|
|||||||
// ouIds、workspaceIds 只能传其中一个 然后代码过滤
|
// ouIds、workspaceIds 只能传其中一个 然后代码过滤
|
||||||
RoleUserParam param = RoleUserParam.builder()
|
RoleUserParam param = RoleUserParam.builder()
|
||||||
.roleIds(super.getTypes(userTask).stream().map(Long::valueOf).collect(Collectors.toSet()))
|
.roleIds(super.getTypes(userTask).stream().map(Long::valueOf).collect(Collectors.toSet()))
|
||||||
.ouIds(scopeDto.getOrgScopes().stream()
|
.ouIds(ListUtils.emptyIfNull(scopeDto.getOrgScopes()).stream()
|
||||||
.map(OrgScope::getOuId)
|
.map(OrgScope::getOuId)
|
||||||
.collect(Collectors.toList()))
|
.collect(Collectors.toList()))
|
||||||
.build();
|
.build();
|
||||||
|
|||||||
@ -40,6 +40,7 @@ import javax.annotation.Resource;
|
|||||||
import javax.validation.constraints.NotBlank;
|
import javax.validation.constraints.NotBlank;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
import static cn.axzo.workflow.common.constant.BpmnConstants.BIZ_ORG_RELATION;
|
import static cn.axzo.workflow.common.constant.BpmnConstants.BIZ_ORG_RELATION;
|
||||||
import static cn.azxo.framework.common.model.CommonResponse.success;
|
import static cn.azxo.framework.common.model.CommonResponse.success;
|
||||||
@ -81,9 +82,10 @@ public class BpmnProcessInstanceController implements ProcessInstanceApi {
|
|||||||
try {
|
try {
|
||||||
result = bpmnProcessInstanceService.createProcessInstance(dto);
|
result = bpmnProcessInstanceService.createProcessInstance(dto);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
LogUtil.error(LogUtil.ErrorType.ERROR_BUSINESS, "发起审核createProcessInstance===>>>异常:{}", e.getMessage());
|
String errorMsg = Objects.nonNull(e.getCause()) ? e.getCause().getMessage() : e.getMessage();
|
||||||
|
LogUtil.error(LogUtil.ErrorType.ERROR_BUSINESS, "发起审核createProcessInstance===>>>异常:{}", errorMsg);
|
||||||
DingTalkUtils.sendDingTalk(profile, dto, e);
|
DingTalkUtils.sendDingTalk(profile, dto, e);
|
||||||
return CommonResponse.fail(e.getMessage());
|
return CommonResponse.fail(errorMsg);
|
||||||
}
|
}
|
||||||
return success(result);
|
return success(result);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user