Merge remote-tracking branch 'origin/master' into pre

# Conflicts:
#	workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerCmd.java
#	workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/TestController.java
This commit is contained in:
wangli 2025-09-09 14:53:57 +08:00
commit 54a7adbaed
4 changed files with 13 additions and 18 deletions

View File

@ -12,7 +12,6 @@ import org.flowable.common.engine.impl.interceptor.CommandContext;
import org.flowable.engine.RuntimeService;
import org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl;
import org.flowable.engine.impl.util.CommandContextUtil;
import org.flowable.job.service.TimerJobService;
import org.flowable.engine.impl.util.ProcessDefinitionUtil;
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.slf4j.Logger;
@ -66,9 +65,6 @@ public class CustomActivityTriggerCmd extends AbstractCommand<Void> implements S
addComment(commandContext, task, COMMENT_TYPE_OPERATION_DESC, "已同意");
RuntimeService runtimeService = processEngineConfiguration.getRuntimeService();
// 告警节点生产的定时任务需要删除否则会因为外键约束导致触发功能会重试并抛出触发节点不存在的问题
TimerJobService timerJobService = CommandContextUtil.getTimerJobService();
timerJobService.findTimerJobsByProcessInstanceId(task.getProcessInstanceId()).forEach(timerJobService::deleteTimerJob);
runtimeService.trigger(dto.getTriggerId());
return null;
}

View File

@ -45,17 +45,17 @@ public class DingTalkAlter implements Alter {
if (obj instanceof AlterDTO) {
AlterDTO alterDTO = (AlterDTO) obj;
if (Objects.equals(profile, "master")) {
DingTalkUtils.sendDingTalkForBizNodeAlter(profile, alterDTO, refreshProperties.getAlterMobiles());
} else {
rivenDingtalk(alterDTO);
} else {
DingTalkUtils.sendDingTalkForBizNodeAlter(profile, alterDTO, refreshProperties.getAlterMobiles());
}
}
if (obj instanceof NextNodePreCheckAlterDTO) {
NextNodePreCheckAlterDTO alterDTO = (NextNodePreCheckAlterDTO) obj;
if(Objects.equals(profile, "master")){
DingTalkUtils.sendDingTalkForNodePreCheck(profile, alterDTO, refreshProperties.getAlterMobiles());
} else {
if (Objects.equals(profile, "master")) {
rivenDingtalkForNodePreCheck(alterDTO);
} else {
DingTalkUtils.sendDingTalkForNodePreCheck(profile, alterDTO, refreshProperties.getAlterMobiles());
}
}
}

View File

@ -23,7 +23,6 @@ import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerInstanceEventListener
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerNotificationEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerTaskEventListener;
import cn.axzo.workflow.starter.mq.broadcast.consumer.InnerWorkflowListener;
import cn.axzo.workflow.starter.mq.check.ImplementationReadyChecker;
import cn.axzo.workflow.starter.mq.monitor.WorkflowEngineStarterDefaultMQMonitor;
import cn.axzo.workflow.starter.mq.monitor.console.WorkflowEngineStarterMQMonitorController;
import cn.axzo.workflow.starter.selector.MetaFeignClientEnableSelector;
@ -156,9 +155,9 @@ public class WorkflowEngineStarterAutoConfiguration {
return new WorkflowEngineStarterDefaultMQMonitor(mqAdminExtObjectProvider, broadcastDLQProcessorObjectProvider, rpcDLQProcessorObjectProvider, workflowEngineStarterProperties, environment);
}
@Bean
public ImplementationReadyChecker implementationReadyChecker() {
return new ImplementationReadyChecker();
}
// @Bean
// public ImplementationReadyChecker implementationReadyChecker() {
// return new ImplementationReadyChecker();
// }
}

View File

@ -81,13 +81,13 @@ public class ImplementationReadyChecker implements ApplicationListener<Applicati
}
}
log.info("实现 {} 接口的Bean数量: {}", TARGET_INTERFACE.getName(), handlers.size());
log.info("方法实现情况:(二进制:{})(十进制:{})", String.format("%4s", Integer.toBinaryString(binaryResult)).replace(' ', '0'), binaryResult);
log.warn("实现 {} 接口的Bean数量: {}", TARGET_INTERFACE.getName(), handlers.size());
log.warn("方法实现情况:(二进制:{})(十进制:{})", String.format("%4s", Integer.toBinaryString(binaryResult)).replace(' ', '0'), binaryResult);
if (!unimplementedMethods.isEmpty()) {
log.error("以下方法未被任何实现类覆盖: {}。请确保至少有一个实现类覆盖这些方法以处理相应的事件。", String.join(", ", unimplementedMethods));
} else {
log.info("Congratulations, passed the verification");
log.info("祝贺,已通过必接事件的校验!但仍然请确保您的实现类逻辑正确无误,不允许出现空实现,否则生产问题自行负责!");
log.warn("Congratulations, passed the verification");
log.warn("祝贺,已通过必接事件的校验!但仍然请确保您的实现类逻辑正确无误,不允许出现空实现,否则生产问题自行负责!");
}
}
}