|
|
@@ -33,6 +33,9 @@ import com.uas.search.console.b2b.util.SearchConstants.DataSourceQualifier;
|
|
|
@RequestMapping("/schedule")
|
|
|
public class ScheduleController {
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SystemProperties systemProperties;
|
|
|
+
|
|
|
@Autowired
|
|
|
private UpdateVirtualColumnService updateVirtualColumnService;
|
|
|
|
|
|
@@ -109,63 +112,68 @@ public class ScheduleController {
|
|
|
|
|
|
@RequestMapping("/init")
|
|
|
@ResponseBody
|
|
|
- public String init() throws NotSerializableException, ClassNotFoundException, IOException {
|
|
|
- startTask();
|
|
|
- return "已初始化";
|
|
|
+ public List<TaskInformation> init(Integer hour, Integer minute, Integer second)
|
|
|
+ throws NotSerializableException, ClassNotFoundException, IOException {
|
|
|
+ return startTask(hour, minute, second);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 开启定时任务
|
|
|
*
|
|
|
+ * @return
|
|
|
+ *
|
|
|
* @throws IOException
|
|
|
* @throws ClassNotFoundException
|
|
|
* @throws NotSerializableException
|
|
|
*/
|
|
|
- private void startTask() throws NotSerializableException, ClassNotFoundException, IOException {
|
|
|
- SystemProperties systemProperties = ContextUtils.getBean(SystemProperties.class);
|
|
|
- if (systemProperties.isTaskAutoStart()) {
|
|
|
- UpdateVirtualColumnService updateVirtualColumnService = ContextUtils
|
|
|
- .getBean(UpdateVirtualColumnService.class);
|
|
|
- // 需更新的虚拟列 定时更新采购询价单明细虚拟列索引
|
|
|
- Map<String, Class<?>> purchaseInquiryItemFields = new HashMap<>();
|
|
|
- purchaseInquiryItemFields.put("overdue", Short.class);
|
|
|
- purchaseInquiryItemFields.put("invalid", Short.class);
|
|
|
- updateVirtualColumnService.newDailyTask(PurchaseInquiryItemSimpleInfo.class, purchaseInquiryItemFields,
|
|
|
- systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
|
|
|
- systemProperties.getDailyTaskSecond());
|
|
|
-
|
|
|
- // 定时更新主动报价单虚拟列索引
|
|
|
- Map<String, Class<?>> saleQuotationFields = new HashMap<>();
|
|
|
- saleQuotationFields.put("overdue", Short.class);
|
|
|
- updateVirtualColumnService.newDailyTask(SaleQuotationSimpleInfo.class, saleQuotationFields,
|
|
|
- systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
|
|
|
- systemProperties.getDailyTaskSecond());
|
|
|
-
|
|
|
- // 需更新的虚拟列 定时更新模具询价单虚拟列索引
|
|
|
- Map<String, Class<?>> inquiryMouldFields = new HashMap<>();
|
|
|
- inquiryMouldFields.put("overdue", Short.class);
|
|
|
- updateVirtualColumnService.newDailyTask(PurchaseInquiryMouldSimpleInfo.class, inquiryMouldFields,
|
|
|
- systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
|
|
|
- systemProperties.getDailyTaskSecond());
|
|
|
-
|
|
|
- // 定时更新招标单虚拟列索引
|
|
|
- Map<String, Class<?>> purchaseTenderFields = new HashMap<>();
|
|
|
- purchaseTenderFields.put("overdue", Short.class);
|
|
|
- purchaseTenderFields.put("result", Short.class);
|
|
|
- updateVirtualColumnService.newDailyTask(PurchaseTenderSimpleInfo.class, purchaseTenderFields,
|
|
|
- systemProperties.getDailyTaskHour(), systemProperties.getDailyTaskMinute(),
|
|
|
- systemProperties.getDailyTaskSecond());
|
|
|
-
|
|
|
- // 定时监控实时更新异常情况
|
|
|
- new RealTimeUpdateMonitor(DataSourceQualifier.PLATFORMB2B_DATASOURCE).newTask();
|
|
|
- new RealTimeUpdateMonitor(DataSourceQualifier.PLATFORMMANAGER_DATASOURCE).newTask();
|
|
|
-
|
|
|
- // 开启定时任务
|
|
|
- TaskService taskService = ContextUtils.getBean(TaskService.class);
|
|
|
- if (!taskService.isStopped()) {
|
|
|
- taskService.stop();
|
|
|
- }
|
|
|
- taskService.start();
|
|
|
+ private List<TaskInformation> startTask(Integer hour, Integer minute, Integer second)
|
|
|
+ throws NotSerializableException, ClassNotFoundException, IOException {
|
|
|
+ if (hour == null) {
|
|
|
+ hour = systemProperties.getDailyTaskHour();
|
|
|
+ }
|
|
|
+ if (minute == null) {
|
|
|
+ minute = systemProperties.getDailyTaskMinute();
|
|
|
+ }
|
|
|
+ if (second == null) {
|
|
|
+ second = systemProperties.getDailyTaskSecond();
|
|
|
}
|
|
|
+ UpdateVirtualColumnService updateVirtualColumnService = ContextUtils.getBean(UpdateVirtualColumnService.class);
|
|
|
+ // 需更新的虚拟列 定时更新采购询价单明细虚拟列索引
|
|
|
+ Map<String, Class<?>> purchaseInquiryItemFields = new HashMap<>();
|
|
|
+ purchaseInquiryItemFields.put("overdue", Short.class);
|
|
|
+ purchaseInquiryItemFields.put("invalid", Short.class);
|
|
|
+ updateVirtualColumnService.newDailyTask(PurchaseInquiryItemSimpleInfo.class, purchaseInquiryItemFields, hour,
|
|
|
+ minute, second);
|
|
|
+
|
|
|
+ // 定时更新主动报价单虚拟列索引
|
|
|
+ Map<String, Class<?>> saleQuotationFields = new HashMap<>();
|
|
|
+ saleQuotationFields.put("overdue", Short.class);
|
|
|
+ updateVirtualColumnService.newDailyTask(SaleQuotationSimpleInfo.class, saleQuotationFields, hour, minute,
|
|
|
+ second);
|
|
|
+
|
|
|
+ // 需更新的虚拟列 定时更新模具询价单虚拟列索引
|
|
|
+ Map<String, Class<?>> inquiryMouldFields = new HashMap<>();
|
|
|
+ inquiryMouldFields.put("overdue", Short.class);
|
|
|
+ updateVirtualColumnService.newDailyTask(PurchaseInquiryMouldSimpleInfo.class, inquiryMouldFields, hour, minute,
|
|
|
+ second);
|
|
|
+
|
|
|
+ // 定时更新招标单虚拟列索引
|
|
|
+ Map<String, Class<?>> purchaseTenderFields = new HashMap<>();
|
|
|
+ purchaseTenderFields.put("overdue", Short.class);
|
|
|
+ purchaseTenderFields.put("result", Short.class);
|
|
|
+ updateVirtualColumnService.newDailyTask(PurchaseTenderSimpleInfo.class, purchaseTenderFields, hour, minute,
|
|
|
+ second);
|
|
|
+
|
|
|
+ // 定时监控实时更新异常情况
|
|
|
+ new RealTimeUpdateMonitor(DataSourceQualifier.PLATFORMB2B_DATASOURCE).newTask();
|
|
|
+ new RealTimeUpdateMonitor(DataSourceQualifier.PLATFORMMANAGER_DATASOURCE).newTask();
|
|
|
+
|
|
|
+ // 开启定时任务
|
|
|
+ TaskService taskService = ContextUtils.getBean(TaskService.class);
|
|
|
+ if (!taskService.isStopped()) {
|
|
|
+ taskService.stop();
|
|
|
+ }
|
|
|
+ taskService.start();
|
|
|
+ return taskService.all();
|
|
|
}
|
|
|
}
|