From 4cfc4fd71156687129c65951c7a54543c7e3d695 Mon Sep 17 00:00:00 2001 From: "cyril.tsui" Date: Tue, 9 Sep 2025 18:54:41 +0800 Subject: [PATCH] update scheduler --- .../ffii/fpsms/m18/web/M18TestController.kt | 10 ++-- .../scheduler/web/SchedulerController.kt | 30 ++++++++++++ .../entity/ProductionScheduleRepository.kt | 47 ++++++++++++++----- .../entity/projections/ProdScheduleInfo.kt | 1 + 4 files changed, 70 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/ffii/fpsms/modules/common/scheduler/web/SchedulerController.kt diff --git a/src/main/java/com/ffii/fpsms/m18/web/M18TestController.kt b/src/main/java/com/ffii/fpsms/m18/web/M18TestController.kt index 5da2114..74e7768 100644 --- a/src/main/java/com/ffii/fpsms/m18/web/M18TestController.kt +++ b/src/main/java/com/ffii/fpsms/m18/web/M18TestController.kt @@ -64,11 +64,11 @@ class M18TestController ( return schedulerService.getM18Pos(); } // --------------------------------------------- Scheduler --------------------------------------------- /// - @GetMapping("/schedule/po") // - fun schedulePo(@RequestParam @Valid newCron: String) { - settingsService.update(SettingNames.SCHEDULE_M18_PO, newCron); - schedulerService.scheduleM18PoTask() - } +// @GetMapping("/schedule/po") +// fun schedulePo(@RequestParam @Valid newCron: String) { +// settingsService.update(SettingNames.SCHEDULE_M18_PO, newCron); +// schedulerService.scheduleM18PoTask() +// } // --------------------------------------------- Master Data --------------------------------------------- /// @GetMapping("/all") diff --git a/src/main/java/com/ffii/fpsms/modules/common/scheduler/web/SchedulerController.kt b/src/main/java/com/ffii/fpsms/modules/common/scheduler/web/SchedulerController.kt new file mode 100644 index 0000000..54d0ff8 --- /dev/null +++ b/src/main/java/com/ffii/fpsms/modules/common/scheduler/web/SchedulerController.kt @@ -0,0 +1,30 @@ +package com.ffii.fpsms.modules.common.scheduler.web + +import com.ffii.fpsms.modules.common.SettingNames +import com.ffii.fpsms.modules.common.scheduler.service.SchedulerService +import com.ffii.fpsms.modules.settings.service.SettingsService +import jakarta.validation.Valid +import org.springframework.web.bind.annotation.GetMapping +import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RequestParam +import org.springframework.web.bind.annotation.RestController + +@RestController +@RequestMapping("/scheduler") +class SchedulerController( + val schedulerService: SchedulerService, + val settingsService: SettingsService +) { + @GetMapping("/testDetailedProd") + fun testDetailedProd(): Any { + schedulerService.getDetailedProdSchedule() + return 200 + } + + // Cron Settings + @GetMapping("/updateSetting/poCron") + fun schedulePo(@RequestParam @Valid newCron: String) { + settingsService.update(SettingNames.SCHEDULE_M18_PO, newCron); + schedulerService.scheduleM18PoTask() + } +} \ No newline at end of file diff --git a/src/main/java/com/ffii/fpsms/modules/master/entity/ProductionScheduleRepository.kt b/src/main/java/com/ffii/fpsms/modules/master/entity/ProductionScheduleRepository.kt index cb216f8..1532cc4 100644 --- a/src/main/java/com/ffii/fpsms/modules/master/entity/ProductionScheduleRepository.kt +++ b/src/main/java/com/ffii/fpsms/modules/master/entity/ProductionScheduleRepository.kt @@ -36,9 +36,17 @@ interface ProductionScheduleRepository : AbstractRepository