diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/config/ActivitiConfig.java b/laws-modules/src/main/java/com/jero/modules/activiti/config/ActivitiConfig.java index 2d59a6c3..2fc8a517 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/config/ActivitiConfig.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/config/ActivitiConfig.java @@ -14,6 +14,7 @@ import org.springframework.context.annotation.Configuration; import org.springframework.transaction.PlatformTransactionManager; import javax.annotation.Resource; +import javax.persistence.EntityManagerFactory; import javax.sql.DataSource; @@ -22,48 +23,11 @@ import javax.sql.DataSource; * @date 2023-09-05 17:53 */ @Configuration -public class ActivitiConfig extends AbstractProcessEngineConfigurator { - @Resource - private ICustomProcessDiagramGenerator customProcessDiagramGenerator; - @Autowired - private DataSource dataSource; - @Autowired - private PlatformTransactionManager transactionManager; - @Autowired - private MyGen myGen; - /** - * 初始化配置 - * - * @return - */ - @Bean - public SpringProcessEngineConfiguration processEngineConfiguration() { - SpringProcessEngineConfiguration configuration = new SpringProcessEngineConfiguration(); - // 执行工作流对应的数据源 - configuration.setDataSource(dataSource); - // 是否自动创建流程引擎表 - configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE); - configuration.setAsyncExecutorActivate(false); - // 流程历史等级 - configuration.setHistoryLevel(HistoryLevel.FULL); - // 流程图字体 - configuration.setActivityFontName("宋体"); - configuration.setAnnotationFontName("宋体"); - configuration.setLabelFontName("宋体"); - configuration.setTransactionManager(transactionManager); - configuration.setProcessDiagramGenerator(customProcessDiagramGenerator); - return configuration; - - } - @Bean - public ProcessEngineConfigurationImpl processEngineConfigurationImpl(ProcessEngineConfigurationImpl processEngineConfigurationImpl) { - //自定义id生成规则 - //设置ProcessEngineConfigurationImpl里的CustomIdGenerator - processEngineConfigurationImpl.setIdGenerator(myGen); - //设置DbSqlSessionFactory的CustomIdGenerator ,否则流程id,任务id,实例id依然是用DbIdGenerator生成 - processEngineConfigurationImpl.getDbSqlSessionFactory().setIdGenerator(myGen); - return processEngineConfigurationImpl; +public class ActivitiConfig implements ProcessEngineConfigurationConfigurer { + @Override + public void configure(SpringProcessEngineConfiguration springProcessEngineConfiguration) { + springProcessEngineConfiguration.setIdGenerator(new MyGen()); } } diff --git a/laws-single-startup/src/main/resources/application-dev.yml b/laws-single-startup/src/main/resources/application-dev.yml index fbf9e5f6..c9f25501 100644 --- a/laws-single-startup/src/main/resources/application-dev.yml +++ b/laws-single-startup/src/main/resources/application-dev.yml @@ -70,23 +70,14 @@ spring: jpa: open-in-view: false activiti: - #1.false,默认值,acticiti启动时对比数据库表中保存的版本,如果没有表或者版本不匹配,将抛出异常 - #2.true,acticiti会对数据中所有的表进行更新操作,如果表不存在,则自动创建 - #3.create_drop,在acticiti启动时创建表,关闭时删除表(必须手动关闭引擎才能删除表) - #4.drop_create,在acticiti启动时删除原来的表,然后创建新表(不需要手动关闭引擎) - database-schema-update: true - #默认true,效验流程文件,默认效验resources下的processes文件夹里的流程,为true自动部署流程,为false则不部署 + database-schema-update: false + # 自动部署验证设置:true-开启(默认)、false-关闭 + # 关闭activiti自动部署(使用流程设计器部署,不使用具体文件访问方式) check-process-definitions: false - # 流程文件存放目录 - process-definition-location-prefix: classpath:/processes/ - async-executor-activate: false - # 启用历史记录 - db-history-used: true - #历史记录等级 - #1.none:不保存任何历史记录,因此在流程执行过程中,这是最高效的 - #2.acticiti:级别高于none,保存流程实例与流程行为,其他数据不保存 - #3.audit:除activiti级别会保存的数据外,还会保存全部的流程任务及其属性,audit为默认值 - #4.full:保存历史数据的最高级别,除了保存audit级别的数据外,还会保存其他流程相关的细节数据,包括一些流程参数等 +# none:不保存任何的历史数据,因此,在流程执行过程中,这是最高效的。 +# activity:级别高于none,保存流程实例与流程行为,其他数据不保存。 +# audit:除activity级别会保存的数据外,还会保存全部的流程任务及其属性。audit为history的默认值。 +# full:保存历史数据的最高级别,除了会保存audit级别的数据外,还会保存其他全部流程相关的细节数据,包括一些流程参数等。 history-level: full aop: proxy-target-class: true