From a75b18a4157ab486e0b51c438ac165ab3a08e3e0 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 25 七月 2024 18:10:00 +0800
Subject: [PATCH] 代码提交

---
 server/service/src/main/java/com/doumee/dao/timer/scheduler/QuartzManage.java |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/dao/timer/scheduler/QuartzManage.java b/server/service/src/main/java/com/doumee/dao/timer/scheduler/QuartzManage.java
index e0191a9..599446e 100644
--- a/server/service/src/main/java/com/doumee/dao/timer/scheduler/QuartzManage.java
+++ b/server/service/src/main/java/com/doumee/dao/timer/scheduler/QuartzManage.java
@@ -1,5 +1,7 @@
 package com.doumee.dao.timer.scheduler;
 
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
 import com.doumee.dao.timer.entity.JobState;
 import com.doumee.dao.timer.entity.QuartzJob;
 import org.quartz.*;
@@ -85,14 +87,18 @@
             CronScheduleBuilder scheduleBuilder = CronScheduleBuilder
                                                 .cronSchedule(quartzJob.getCronExpres())
                                                 .withMisfireHandlingInstructionDoNothing();
-            // 浠诲姟瑙﹀彂鍣�
-            CronTrigger trigger = getCronTrigger(quartzJob.getId())
-                                .getTriggerBuilder().withIdentity(triggerKey)
-                                .withSchedule(scheduleBuilder).build();
-            trigger.getJobDataMap().put(QuartzJob.JOB_PARAM_KEY, quartzJob);
-            scheduler.rescheduleJob(triggerKey, trigger);
-            // 鐘舵�佹牎楠�
-            checkStop(quartzJob) ;
+            CronTrigger t =  getCronTrigger(quartzJob.getId());
+            if(t !=null){
+                // 浠诲姟瑙﹀彂鍣�
+                CronTrigger trigger = t
+                        .getTriggerBuilder().withIdentity(triggerKey)
+                        .withSchedule(scheduleBuilder).build();
+                trigger.getJobDataMap().put(QuartzJob.JOB_PARAM_KEY, quartzJob);
+                scheduler.rescheduleJob(triggerKey, trigger);
+                // 鐘舵�佹牎楠�
+                checkStop(quartzJob) ;
+            }
+
         } catch (SchedulerException e) {
             throw new RuntimeException("updateJob Fail",e) ;
         }
@@ -142,7 +148,7 @@
                 this.scheduler.pauseJob(getJobKey(quartzJob.getId()));
             }
         } catch (SchedulerException e){
-            throw new RuntimeException("pauseJob Fail",e) ;
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"pauseJob Fail",e) ;
         }
     }
 

--
Gitblit v1.9.3