From cdc8036e0349ca25ea67a4d97ded25e904d84e29 Mon Sep 17 00:00:00 2001 From: ysCha Date: Wed, 26 Nov 2025 10:27:13 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B0=B0=EC=B9=98=ED=97=88=EC=9A=A9=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80(plan,=20esti,=20bom)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../qcast/batch/JobLauncherController.java | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/interplug/qcast/batch/JobLauncherController.java b/src/main/java/com/interplug/qcast/batch/JobLauncherController.java index 284a7d51..ebcdf9cf 100644 --- a/src/main/java/com/interplug/qcast/batch/JobLauncherController.java +++ b/src/main/java/com/interplug/qcast/batch/JobLauncherController.java @@ -218,10 +218,32 @@ public class JobLauncherController { return "Job " + jobName + " not found"; } - if (!"Y".equals(scheduler) && !"materialJob".equals(jobName) && !"commonCodeJob".equals(jobName) && !"specialNoteDispItemAdditionalJob".equals(jobName)) { - log.info("Scheduler disabled, skipping job {}", jobName); - return "Scheduler disabled"; - } +// if (!"Y".equals(scheduler) && +// !"materialJob".equals(jobName) && +// !"commonCodeJob".equals(jobName) && +// !"specialNoteDispItemAdditionalJob".equals(jobName) && +// !"planConfirmJob".equals(jobName) && +// !"estimateSyncJob".equals(jobName) && +// !"bomJob".equals(jobName)){ +// log.info("Scheduler disabled, skipping job {}", jobName); +// return "Scheduler disabled"; +// } + + // 허용된 작업 목록 정의 + Set allowedJobs = new HashSet<>(Arrays.asList( + "materialJob", + "commonCodeJob", + "specialNoteDispItemAdditionalJob", + "planConfirmJob", + "estimateSyncJob", + "bomJob" + )); + + // 스케줄러가 비활성화되어 있고, 허용된 작업이 아닌 경우 + if (!"Y".equals(scheduler) && !allowedJobs.contains(jobName)) { + log.info("스케줄러가 비활성화되어 작업을 건너뜁니다: {}", jobName); + return "Scheduler disabled"; + } // 실행 중인 Job 확인 (데이터베이스 기반) if (isJobRunning(jobName)) {