Application.java 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.uas.search.console.b2b;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import org.springframework.boot.SpringApplication;
  5. import org.springframework.boot.autoconfigure.SpringBootApplication;
  6. import org.springframework.context.annotation.ImportResource;
  7. import org.springframework.transaction.annotation.EnableTransactionManagement;
  8. import org.springframework.web.servlet.config.annotation.EnableWebMvc;
  9. import com.uas.search.console.b2b.core.util.ContextUtils;
  10. import com.uas.search.console.b2b.model.PurchaseInquiryItemSimpleInfo;
  11. import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
  12. import com.uas.search.console.b2b.schedule.service.TaskService;
  13. import com.uas.search.console.b2b.service.RealTimeUpdateMonitorService;
  14. import com.uas.search.console.b2b.service.UpdateVirtualColumnService;
  15. @EnableTransactionManagement
  16. @EnableWebMvc
  17. @SpringBootApplication(scanBasePackages = "com.uas.search.console.b2b")
  18. @ImportResource({ "classpath:spring/dubbo.xml" })
  19. public class Application {
  20. public static void main(String[] args) {
  21. SpringApplication application = new SpringApplication(Application.class);
  22. application.addListeners(new ContextUtils());
  23. application.run(args);
  24. startTask();
  25. }
  26. /**
  27. * 开启定时任务
  28. */
  29. public static void startTask() {
  30. SystemProperties systemProperties = ContextUtils.getBean(SystemProperties.class);
  31. if (systemProperties.isTaskAutoStart()) {
  32. UpdateVirtualColumnService updateVirtualColumnService = ContextUtils
  33. .getBean(UpdateVirtualColumnService.class);
  34. // 需更新的虚拟列
  35. Map<String, Class<?>> fields = new HashMap<>();
  36. fields.put("overdue", Short.class);
  37. // 定时更新模具询价单虚拟列索引
  38. updateVirtualColumnService.newDailyTask(PurchaseInquiryMouldSimpleInfo.class, fields,
  39. systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
  40. systemProperties.getDailyTaskSecond());
  41. // 定时更新采购询价单明细虚拟列索引
  42. updateVirtualColumnService.newDailyTask(PurchaseInquiryItemSimpleInfo.class, fields,
  43. systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
  44. systemProperties.getDailyTaskSecond());
  45. // 定时监控实时更新异常情况
  46. RealTimeUpdateMonitorService realTimeUpdateMonitorService = ContextUtils
  47. .getBean(RealTimeUpdateMonitorService.class);
  48. realTimeUpdateMonitorService.newTask();
  49. // 开启定时任务
  50. TaskService taskService = ContextUtils.getBean(TaskService.class);
  51. if (!taskService.isStopped()) {
  52. taskService.stop();
  53. }
  54. taskService.start();
  55. }
  56. }
  57. }