ActivitiConfig.java 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. package com.ruoyi.config;
  2. import org.activiti.engine.*;
  3. import org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration;
  4. import org.activiti.engine.repository.DeploymentBuilder;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.context.annotation.Bean;
  7. import org.springframework.context.annotation.Configuration;
  8. import org.springframework.core.io.Resource;
  9. import org.springframework.core.io.support.ResourcePatternResolver;
  10. import javax.annotation.PostConstruct;
  11. import javax.sql.DataSource;
  12. import java.io.IOException;
  13. /**
  14. * 使用Java类完成配置文件
  15. */
  16. @Configuration
  17. public class ActivitiConfig {
  18. @Autowired
  19. private DataSource dataSource;
  20. @Autowired
  21. private ResourcePatternResolver resourceLoader;
  22. /**
  23. * 初始化配置,将创建28张表
  24. *
  25. * @return
  26. */
  27. @Bean
  28. public StandaloneProcessEngineConfiguration processEngineConfiguration() {
  29. /*ProcessEngineConfiguration pec = ProcessEngineConfiguration.createStandaloneInMemProcessEngineConfiguration();
  30. pec.setJdbcDriver("oracle.jdbc.driver.OracleDriver");
  31. pec.setJdbcUrl("jdbc:oracle:thin:@47.114.101.16:1521/xe");
  32. pec.setJdbcUsername("newcpms");
  33. pec.setJdbcPassword("ssy123456");
  34. pec.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
  35. //pec.setDatabaseSchema("FLOWABLE");
  36. pec.setDatabaseTablePrefix("flow");
  37. ProcessEngine processEngine = pec.buildProcessEngine();*/
  38. StandaloneProcessEngineConfiguration configuration = new StandaloneProcessEngineConfiguration();
  39. configuration.setDataSource(dataSource);
  40. configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
  41. configuration.setDbIdentityUsed(false);
  42. configuration.setAsyncExecutorActivate(true);
  43. configuration.setActivityFontName("宋体");
  44. configuration.setAnnotationFontName("宋体");
  45. configuration.setLabelFontName("宋体");
  46. return configuration;
  47. }
  48. @Bean
  49. public ProcessEngine processEngine() {
  50. return processEngineConfiguration().buildProcessEngine();
  51. }
  52. @Bean
  53. public RepositoryService repositoryService() {
  54. return processEngine().getRepositoryService();
  55. }
  56. @Bean
  57. public RuntimeService runtimeService() {
  58. return processEngine().getRuntimeService();
  59. }
  60. @Bean
  61. public TaskService taskService() {
  62. return processEngine().getTaskService();
  63. }
  64. @Bean
  65. public HistoryService historyService() {
  66. return processEngine().getHistoryService();
  67. }
  68. /**
  69. * 部署流程
  70. *
  71. * @throws IOException
  72. */
  73. @PostConstruct
  74. public void initProcess() throws IOException {
  75. // DeploymentBuilder deploymentBuilder = repositoryService().createDeployment();
  76. // Resource common = resourceLoader.getResource("classpath:/processes/common.bpmn"); //加载流程图资源文件
  77. // deploymentBuilder.enableDuplicateFiltering().addInputStream(common.getFilename(), common.getInputStream()).name("普通隐患审批流程").deploy(); //按流程id部署
  78. //
  79. // DeploymentBuilder deploymentBuilder1 = repositoryService().createDeployment();
  80. // Resource major= resourceLoader.getResource("classpath:/processes/major.bpmn");
  81. // deploymentBuilder1.enableDuplicateFiltering().addInputStream(major.getFilename(), major.getInputStream()).name("重大隐患审批流程").deploy();
  82. //
  83. // DeploymentBuilder deploymentBuilder2 = repositoryService().createDeployment();
  84. // Resource accident = resourceLoader.getResource("classpath:/processes/accident.bpmn"); //加载流程图资源文件
  85. // deploymentBuilder2.enableDuplicateFiltering().addInputStream(accident.getFilename(), accident.getInputStream()).name("事件审批流程").deploy();//按流程id部署
  86. //
  87. DeploymentBuilder deploymentBuilder3 = repositoryService().createDeployment();
  88. Resource spec = resourceLoader.getResource("classpath:/processes/MyProcess.bpmn"); //加载流程图资源文件
  89. deploymentBuilder3.enableDuplicateFiltering().addInputStream(spec.getFilename(), spec.getInputStream()).name("特种设备审批流程").deploy();//按流程id部署
  90. // DeploymentBuilder deploymentBuilder4 = repositoryService().createDeployment();
  91. // Resource spec2 = resourceLoader.getResource("classpath:/processes/his/semsAddDelProcess.bpmn"); //加载流程图资源文件
  92. // deploymentBuilder4.enableDuplicateFiltering().addInputStream(spec2.getFilename(), spec2.getInputStream()).name("特种设备新增修改流程").deploy();//按流程id部署
  93. //
  94. // DeploymentBuilder deploymentBuilder5 = repositoryService().createDeployment();
  95. // Resource spec3 = resourceLoader.getResource("classpath:/processes/sems/yearProcess.bpmn"); //加载流程图资源文件
  96. // deploymentBuilder5.enableDuplicateFiltering().addInputStream(spec3.getFilename(), spec3.getInputStream()).name("特种设备年检报告流程").deploy();//按流程id部署
  97. //
  98. // DeploymentBuilder deploymentBuilder6 = repositoryService().createDeployment();
  99. // Resource spec4 = resourceLoader.getResource("classpath:/processes/sems/monthProcess.bpmn"); //加载流程图资源文件
  100. // deploymentBuilder6.enableDuplicateFiltering().addInputStream(spec4.getFilename(), spec4.getInputStream()).name("特种设备月度检验流程").deploy();//按流程id部署
  101. // DeploymentBuilder deploymentBuilder7 = repositoryService().createDeployment();
  102. // Resource spec7 = resourceLoader.getResource("classpath:/processes/specTraining/specTrainingPlanProcess.bpmn"); //加载流程图资源文件
  103. // deploymentBuilder7.enableDuplicateFiltering().addInputStream(spec7.getFilename(), spec7.getInputStream()).name("专项培训计划审核").deploy();//按流程id部署
  104. //
  105. // DeploymentBuilder deploymentBuilder8 = repositoryService().createDeployment();
  106. // Resource spec8 = resourceLoader.getResource("classpath:/processes/maintenance.bpmn"); //加载流程图资源文件
  107. // deploymentBuilder8.enableDuplicateFiltering().addInputStream(spec8.getFilename(), spec8.getInputStream()).name("设备维修审核").deploy();//按流程id部署
  108. //
  109. // DeploymentBuilder deploymentBuilder9 = repositoryService().createDeployment();
  110. // Resource spec9 = resourceLoader.getResource("classpath:/processes/intact/intactChangeApplicationProcess.bpmn"); //加载流程图资源文件
  111. // deploymentBuilder9.enableDuplicateFiltering().addInputStream(spec9.getFilename(), spec9.getInputStream()).name("设备变更申请流程").deploy();//按流程id部署
  112. //
  113. // DeploymentBuilder deploymentBuilder10 = repositoryService().createDeployment();
  114. // Resource spec10 = resourceLoader.getResource("classpath:/processes/kekao/reliability.bpmn"); //加载流程图资源文件
  115. // deploymentBuilder10.enableDuplicateFiltering().addInputStream(spec10.getFilename(), spec10.getInputStream()).name("可靠性管理申请流程").deploy();//按流程id部署
  116. //
  117. // DeploymentBuilder deploymentBuilder11 = repositoryService().createDeployment();
  118. // Resource spec11 = resourceLoader.getResource("classpath:/processes/reserveInvoice.bpmn"); //加载流程图资源文件
  119. // deploymentBuilder11.enableDuplicateFiltering().addInputStream(spec11.getFilename(), spec11.getInputStream()).name("预约开票审批流程").deploy();//按流程id部署
  120. //
  121. // DeploymentBuilder deploymentBuilder12 = repositoryService().createDeployment();
  122. // Resource spec12 = resourceLoader.getResource("classpath:/processes/apply/offlinevalve.bpmn"); //加载流程图资源文件
  123. // deploymentBuilder12.enableDuplicateFiltering().addInputStream(spec12.getFilename(), spec12.getInputStream()).name("安全阀离线/切出申请流程").deploy();//按流程id部署
  124. //
  125. // DeploymentBuilder deploymentBuilder13 = repositoryService().createDeployment();
  126. // Resource spec13 = resourceLoader.getResource("classpath:/processes/apply/safetychange.bpmn"); //加载流程图资源文件
  127. // deploymentBuilder13.enableDuplicateFiltering().addInputStream(spec13.getFilename(), spec13.getInputStream()).name("组织保护措施状态变更申请流程").deploy();//按流程id部署
  128. //
  129. // DeploymentBuilder deploymentBuilder14 = repositoryService().createDeployment();
  130. // Resource spec14 = resourceLoader.getResource("classpath:/processes/sai/saiApply.bpmn"); //加载流程图资源文件
  131. // deploymentBuilder14.enableDuplicateFiltering().addInputStream(spec14.getFilename(), spec14.getInputStream()).name("SAI开项申请流程").deploy();//按流程id部署
  132. //
  133. // DeploymentBuilder deploymentBuilder15 = repositoryService().createDeployment();
  134. // Resource spec15 = resourceLoader.getResource("classpath:/processes/sems/semsWeekcheck.bpmn"); //加载流程图资源文件
  135. // deploymentBuilder15.enableDuplicateFiltering().addInputStream(spec15.getFilename(), spec15.getInputStream()).name("每周安全排查报告").deploy();//按流程id部署
  136. //
  137. DeploymentBuilder deploymentBuilder16 = repositoryService().createDeployment();
  138. Resource spec16 = resourceLoader.getResource("classpath:/processes/bccnew/dsdtTraining.bpmn"); //加载流程图资源文件
  139. deploymentBuilder16.enableDuplicateFiltering().addInputStream(spec16.getFilename(), spec16.getInputStream()).name("导师带徒经理签字").deploy();//按流程id部署
  140. DeploymentBuilder deploymentBuilder17 = repositoryService().createDeployment();
  141. Resource spec17 = resourceLoader.getResource("classpath:/processes/bccnew/dsdtNoPass.bpmn"); //加载流程图资源文件
  142. deploymentBuilder17.enableDuplicateFiltering().addInputStream(spec17.getFilename(), spec17.getInputStream()).name("导师带徒学员成绩不合格审批").deploy();//按流程id部署
  143. }
  144. }