Merge remote-tracking branch 'origin/master' into hotfix/node-alter
This commit is contained in:
commit
87a3fb93a1
@ -5,7 +5,6 @@ import cn.axzo.workflow.common.enums.BpmnCountersignTypeEnum;
|
|||||||
import cn.axzo.workflow.common.enums.BpmnFlowNodeType;
|
import cn.axzo.workflow.common.enums.BpmnFlowNodeType;
|
||||||
import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum;
|
import cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum;
|
||||||
import cn.axzo.workflow.common.exception.WorkflowEngineException;
|
import cn.axzo.workflow.common.exception.WorkflowEngineException;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.BpmnNoticeConf;
|
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnNodeBackSystemOperateDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnNodeBackSystemOperateDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnOptionalNodeDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnOptionalNodeDTO;
|
||||||
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCompleteDTO;
|
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnRobotTaskCompleteDTO;
|
||||||
@ -51,9 +50,6 @@ import cn.axzo.workflow.core.engine.cmd.CustomResetTaskApproversAsyncCmd;
|
|||||||
import cn.axzo.workflow.core.engine.cmd.CustomResetTaskApproversCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomResetTaskApproversCmd;
|
||||||
import cn.axzo.workflow.core.engine.cmd.CustomTransferUserTaskAsyncCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomTransferUserTaskAsyncCmd;
|
||||||
import cn.axzo.workflow.core.engine.cmd.CustomTransferUserTaskCmd;
|
import cn.axzo.workflow.core.engine.cmd.CustomTransferUserTaskCmd;
|
||||||
import cn.axzo.workflow.core.engine.event.MessagePushEventBuilder;
|
|
||||||
import cn.axzo.workflow.core.engine.event.MessagePushEventImpl;
|
|
||||||
import cn.axzo.workflow.core.engine.event.MessagePushEventType;
|
|
||||||
import cn.axzo.workflow.core.repository.entity.ExtAxHiTaskInst;
|
import cn.axzo.workflow.core.repository.entity.ExtAxHiTaskInst;
|
||||||
import cn.axzo.workflow.core.service.BpmnProcessDefinitionService;
|
import cn.axzo.workflow.core.service.BpmnProcessDefinitionService;
|
||||||
import cn.axzo.workflow.core.service.BpmnProcessTaskService;
|
import cn.axzo.workflow.core.service.BpmnProcessTaskService;
|
||||||
@ -65,15 +61,12 @@ import cn.axzo.workflow.core.service.converter.BpmnTaskConverter;
|
|||||||
import cn.axzo.workflow.core.service.converter.BpmnTaskDonePageItemConverter;
|
import cn.axzo.workflow.core.service.converter.BpmnTaskDonePageItemConverter;
|
||||||
import cn.axzo.workflow.core.service.converter.BpmnTaskTodoPageItemConverter;
|
import cn.axzo.workflow.core.service.converter.BpmnTaskTodoPageItemConverter;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import com.google.common.collect.Lists;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
import org.apache.commons.lang3.tuple.Pair;
|
||||||
import org.flowable.bpmn.model.BaseElement;
|
import org.flowable.bpmn.model.BaseElement;
|
||||||
import org.flowable.bpmn.model.BpmnModel;
|
import org.flowable.bpmn.model.BpmnModel;
|
||||||
import org.flowable.bpmn.model.FlowElement;
|
import org.flowable.bpmn.model.FlowElement;
|
||||||
import org.flowable.bpmn.model.Process;
|
|
||||||
import org.flowable.common.engine.api.delegate.event.FlowableEventDispatcher;
|
|
||||||
import org.flowable.common.engine.impl.identity.Authentication;
|
import org.flowable.common.engine.impl.identity.Authentication;
|
||||||
import org.flowable.common.engine.impl.interceptor.CommandExecutor;
|
import org.flowable.common.engine.impl.interceptor.CommandExecutor;
|
||||||
import org.flowable.engine.HistoryService;
|
import org.flowable.engine.HistoryService;
|
||||||
@ -83,9 +76,6 @@ import org.flowable.engine.RuntimeService;
|
|||||||
import org.flowable.engine.TaskService;
|
import org.flowable.engine.TaskService;
|
||||||
import org.flowable.engine.history.HistoricProcessInstance;
|
import org.flowable.engine.history.HistoricProcessInstance;
|
||||||
import org.flowable.engine.history.HistoricProcessInstanceQuery;
|
import org.flowable.engine.history.HistoricProcessInstanceQuery;
|
||||||
import org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl;
|
|
||||||
import org.flowable.engine.impl.util.CommandContextUtil;
|
|
||||||
import org.flowable.engine.impl.util.ProcessDefinitionUtil;
|
|
||||||
import org.flowable.engine.runtime.ProcessInstance;
|
import org.flowable.engine.runtime.ProcessInstance;
|
||||||
import org.flowable.engine.task.Attachment;
|
import org.flowable.engine.task.Attachment;
|
||||||
import org.flowable.engine.task.Comment;
|
import org.flowable.engine.task.Comment;
|
||||||
@ -131,7 +121,6 @@ import static cn.axzo.workflow.common.code.BpmnTaskRespCode.FIND_TASK_BY_PERSON_
|
|||||||
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.REACHED_BACKED_MAXIMUM_NUM;
|
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.REACHED_BACKED_MAXIMUM_NUM;
|
||||||
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.TASK_COMPLETE_FAIL_NOT_EXISTS;
|
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.TASK_COMPLETE_FAIL_NOT_EXISTS;
|
||||||
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.TASK_HAS_BEEN_COMPLETE;
|
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.TASK_HAS_BEEN_COMPLETE;
|
||||||
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.TASK_REMIND_ERROR_NOT_EXISTS;
|
|
||||||
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_ADVICE;
|
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_ADVICE;
|
||||||
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_COMMENT_EXT;
|
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_COMMENT_EXT;
|
||||||
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_OPERATION_DESC;
|
import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_OPERATION_DESC;
|
||||||
@ -156,7 +145,6 @@ import static cn.axzo.workflow.common.enums.BpmnProcessInstanceResultEnum.valueO
|
|||||||
import static cn.axzo.workflow.common.util.BpmnNativeQueryUtil.countSql;
|
import static cn.axzo.workflow.common.util.BpmnNativeQueryUtil.countSql;
|
||||||
import static cn.axzo.workflow.common.util.BpmnNativeQueryUtil.sqlConnectors;
|
import static cn.axzo.workflow.common.util.BpmnNativeQueryUtil.sqlConnectors;
|
||||||
import static cn.axzo.workflow.core.common.utils.BpmnCollectionUtils.convertSet;
|
import static cn.axzo.workflow.core.common.utils.BpmnCollectionUtils.convertSet;
|
||||||
import static cn.axzo.workflow.core.common.utils.BpmnMetaParserHelper.getActivitySignature;
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@ -882,7 +870,7 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService {
|
|||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void resetTaskApprovers(BpmnTaskResetApproversDTO dto) {
|
public void resetTaskApprovers(BpmnTaskResetApproversDTO dto) {
|
||||||
CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor();
|
CommandExecutor commandExecutor = processEngineConfiguration.getCommandExecutor();
|
||||||
if(dto.getAsync() != null && dto.getAsync()) {
|
if (dto.getAsync() != null && dto.getAsync()) {
|
||||||
commandExecutor.execute(new CustomResetTaskApproversAsyncCmd(dto));
|
commandExecutor.execute(new CustomResetTaskApproversAsyncCmd(dto));
|
||||||
} else {
|
} else {
|
||||||
commandExecutor.execute(new CustomResetTaskApproversCmd(dto.getTaskId(), dto.getAdvice(),
|
commandExecutor.execute(new CustomResetTaskApproversCmd(dto.getTaskId(), dto.getAdvice(),
|
||||||
@ -916,8 +904,11 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String findTaskIdByInstanceIdAndPersonId(String processInstanceId, String personId) {
|
public String findTaskIdByInstanceIdAndPersonId(String processInstanceId, String personId) {
|
||||||
List<Task> list = taskService.createTaskQuery().processInstanceId(processInstanceId)
|
TaskQuery taskQuery = taskService.createTaskQuery().processInstanceId(processInstanceId);
|
||||||
.taskAssigneeLike("%|" + personId)
|
if (StringUtils.hasText(personId)) {
|
||||||
|
taskQuery.taskAssigneeLike("%|" + personId);
|
||||||
|
}
|
||||||
|
List<Task> list = taskQuery
|
||||||
.active()
|
.active()
|
||||||
.list();
|
.list();
|
||||||
if (CollectionUtils.isEmpty(list) || list.size() > 1) {
|
if (CollectionUtils.isEmpty(list) || list.size() > 1) {
|
||||||
|
|||||||
@ -24,7 +24,7 @@ import static org.dromara.easyes.annotation.rely.Analyzer.IK_MAX_WORD;
|
|||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Settings(settingsProvider = CustomIndexSettingProvider.class, replicasNum = 1, shardsNum = 1)
|
@Settings(settingsProvider = CustomIndexSettingProvider.class, replicasNum = 1, shardsNum = 1)
|
||||||
@IndexName(value = "process_instance_document", keepGlobalPrefix = true, refreshPolicy = RefreshPolicy.IMMEDIATE)
|
@IndexName(value = "process_instance_document", keepGlobalPrefix = true, refreshPolicy = RefreshPolicy.NONE)
|
||||||
@Join(nodes = {@Node(parentClass = ProcessInstanceDocument.class, parentAlias = "process_instance_document", childClasses = {ProcessTaskDocument.class}, childAliases = {"process_task_document"})})
|
@Join(nodes = {@Node(parentClass = ProcessInstanceDocument.class, parentAlias = "process_instance_document", childClasses = {ProcessTaskDocument.class}, childAliases = {"process_task_document"})})
|
||||||
public class ProcessInstanceDocument {
|
public class ProcessInstanceDocument {
|
||||||
|
|
||||||
|
|||||||
@ -109,7 +109,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
||||||
}
|
}
|
||||||
List<AttachmentDTO> tempAttachments = ListUtils.defaultIfNull(dto.getAttachmentList(), new ArrayList<>());
|
List<AttachmentDTO> tempAttachments = ListUtils.defaultIfNull(dto.getAttachmentList(), new ArrayList<>());
|
||||||
@ -135,7 +135,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
||||||
}
|
}
|
||||||
List<AttachmentDTO> tempAttachments = ListUtils.defaultIfNull(dto.getAttachmentList(), new ArrayList<>());
|
List<AttachmentDTO> tempAttachments = ListUtils.defaultIfNull(dto.getAttachmentList(), new ArrayList<>());
|
||||||
@ -196,7 +196,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
||||||
}
|
}
|
||||||
populateUsersAvatar(dto.getApprover());
|
populateUsersAvatar(dto.getApprover());
|
||||||
@ -229,7 +229,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getApprover().getPersonId()));
|
||||||
}
|
}
|
||||||
populateUsersAvatar(dto.getApprover());
|
populateUsersAvatar(dto.getApprover());
|
||||||
@ -263,7 +263,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
||||||
}
|
}
|
||||||
// 填充头像
|
// 填充头像
|
||||||
@ -310,7 +310,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
||||||
}
|
}
|
||||||
// 填充头像
|
// 填充头像
|
||||||
@ -334,7 +334,7 @@ public class BpmnProcessTaskController extends BasicPopulateAvatarController imp
|
|||||||
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getProcessInstanceId()) && !StringUtils.hasText(dto.getTaskId())) {
|
||||||
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
throw new WorkflowEngineException(TASK_OPERATION_PARAM_INVALID);
|
||||||
}
|
}
|
||||||
if(!StringUtils.hasText(dto.getTaskId())) {
|
if (!StringUtils.hasText(dto.getTaskId())) {
|
||||||
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
dto.setTaskId(bpmnProcessTaskService.findTaskIdByInstanceIdAndPersonId(dto.getProcessInstanceId(), dto.getOriginAssigner().getPersonId()));
|
||||||
}
|
}
|
||||||
populateUsersAvatar(dto.getOriginAssigner());
|
populateUsersAvatar(dto.getOriginAssigner());
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user