Merge branch 'feature/REQ-5865' into pre

This commit is contained in:
wangli 2025-11-27 15:07:49 +08:00
commit 6e83f04a27
2 changed files with 18 additions and 8 deletions

View File

@ -12,6 +12,7 @@ import org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl;
import org.flowable.engine.impl.util.CommandContextUtil;
import org.flowable.job.service.JobService;
import org.flowable.job.service.impl.persistence.entity.JobEntity;
import org.flowable.task.api.TaskQuery;
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -47,10 +48,12 @@ public class CustomActivityTriggerAsyncCmd extends AbstractCommand<String> imple
public String execute(CommandContext commandContext) {
ProcessEngineConfigurationImpl processEngineConfiguration =
CommandContextUtil.getProcessEngineConfiguration(commandContext);
TaskEntity task = (TaskEntity) processEngineConfiguration.getTaskService().createTaskQuery()
.executionId(dto.getTriggerId())
.taskDefinitionKey(StringUtils.isBlank(dto.getActivityId()) ? null : dto.getActivityId())
.singleResult();
TaskQuery taskQuery = processEngineConfiguration.getTaskService().createTaskQuery()
.executionId(dto.getTriggerId());
if (StringUtils.isNotBlank(dto.getActivityId())) {
taskQuery.taskDefinitionKey(dto.getActivityId());
}
TaskEntity task = (TaskEntity) taskQuery.singleResult();
if (Objects.isNull(task)) {
throw new WorkflowEngineException(ACTIVITY_TRIGGER_NOT_EXISTS, dto.getTriggerId());
}

View File

@ -1,12 +1,12 @@
package cn.axzo.workflow.server.controller.web.bpmn;
import cn.axzo.workflow.client.feign.bpmn.ProcessActivityApi;
import cn.axzo.workflow.common.exception.WorkflowEngineException;
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutCallbackDTO;
import cn.axzo.workflow.common.model.request.bpmn.activity.BpmnActivityTimeoutTriggerDTO;
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivitySetAssigneeDTO;
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnActivityTriggerDTO;
import cn.axzo.workflow.common.model.request.bpmn.task.BpmnTaskDelegateAssigner;
import cn.axzo.workflow.common.exception.WorkflowEngineException;
import cn.axzo.workflow.core.service.BpmnProcessActivityService;
import cn.axzo.workflow.server.common.annotation.ErrorReporter;
import cn.axzo.workflow.server.common.annotation.RepeatSubmit;
@ -24,10 +24,12 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.validation.constraints.NotBlank;
import java.util.ArrayList;
import java.util.List;
import static cn.axzo.workflow.client.config.WorkflowRequestInterceptor.HEADER_SERVER_NAME;
import static cn.axzo.workflow.common.code.BpmnTaskRespCode.ACTIVITY_BIZ_SET_ASSIGNEE_HAS_REPEAT;
import static cn.axzo.workflow.core.engine.cmd.helper.CustomTaskHelper.removeDuplicateByPersonId;
import static cn.azxo.framework.common.model.CommonResponse.success;
@ -44,7 +46,8 @@ import static cn.azxo.framework.common.model.CommonResponse.success;
@ErrorReporter
@Validated
public class BpmnProcessActivityController extends BasicPopulateAvatarController implements ProcessActivityApi {
@Resource
private HttpServletRequest request;
@Resource
private BpmnProcessActivityService bpmnProcessActivityService;
@ -61,7 +64,9 @@ public class BpmnProcessActivityController extends BasicPopulateAvatarController
@RepeatSubmit
@Deprecated
public CommonResponse<Boolean> trigger(@NotBlank(message = "触发 ID 不能为空") @RequestParam String triggerId) {
log.info("业务节点唤醒 trigger2 ===>>>参数:{}", triggerId);
String header = request.getHeader(HEADER_SERVER_NAME);
String remoteAddr = request.getRemoteAddr();
log.info("业务节点唤醒 trigger2 ===>>>参数:{}, 请求来自微服务:{}, ip: {}", triggerId, header, remoteAddr);
return trigger(new BpmnActivityTriggerDTO(triggerId, true, null));
}
@ -76,7 +81,9 @@ public class BpmnProcessActivityController extends BasicPopulateAvatarController
@Override
@RepeatSubmit
public CommonResponse<Boolean> trigger(@Validated @RequestBody BpmnActivityTriggerDTO dto) {
log.info("业务节点唤醒 trigger ===>>>参数:{}", JSON.toJSONString(dto));
String header = request.getHeader(HEADER_SERVER_NAME);
String remoteAddr = request.getRemoteAddr();
log.info("业务节点唤醒 trigger ===>>>参数:{}, 请求来自微服务: {}, ip: {}", JSON.toJSONString(dto), header, remoteAddr);
bpmnProcessActivityService.trigger(dto);
return success(true);
}