From 62a447d89331aee1feae7724c7616aa1bb2cfe79 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 16 十月 2024 14:28:37 +0800
Subject: [PATCH] 将CMQ替换为rabbitmq

---
 fanli/src/main/java/com/yeshi/fanli/job/QuartzManager.java |  405 ++++++++++++++++++++++++++++-----------------------------
 1 files changed, 196 insertions(+), 209 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/job/QuartzManager.java b/fanli/src/main/java/com/yeshi/fanli/job/QuartzManager.java
index 80d4d03..ccea73e 100644
--- a/fanli/src/main/java/com/yeshi/fanli/job/QuartzManager.java
+++ b/fanli/src/main/java/com/yeshi/fanli/job/QuartzManager.java
@@ -1,209 +1,196 @@
-package com.yeshi.fanli.job;
-
-import java.util.Iterator;
-import java.util.Map;
-
-import org.quartz.CronScheduleBuilder;
-import org.quartz.CronTrigger;
-import org.quartz.JobBuilder;
-import org.quartz.JobDetail;
-import org.quartz.JobKey;
-import org.quartz.Scheduler;
-import org.quartz.TriggerBuilder;
-import org.quartz.TriggerKey;
-import org.springframework.stereotype.Component;
-
-import com.yeshi.fanli.log.LogHelper;
-
-@Component
-public class QuartzManager {
-	
-	private static String JOB_GROUP_NAME = "EXTJWEB_JOBGROUP_NAME";
-	private static String TRIGGER_GROUP_NAME = "EXTJWEB_TRIGGERGROUP_NAME";
-
-	/**
-	 *  鍒涘缓浠诲姟锛氫娇鐢ㄩ粯璁� 浠诲姟缁勩�佸畾鏃剁粍鍚�
-	 * @param sched
-	 * @param jobName
-	 * @param time
-	 * @param params
-	 * @param cls
-	 */
-	public static void addJob(Scheduler sched, @SuppressWarnings("rawtypes") Class cls, String jobName, 
-			String time, Map<String, String> params) {
-		try {
-			
-			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
-			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
-			
-			if (trigger == null) {
-				LogHelper.test("------addJob---浠诲姟鍒涘缓-----" + jobName + "------- ");
-				JobDetail jobDetail = JobBuilder.newJob(cls).withIdentity(jobName, JOB_GROUP_NAME).build();
-				if (params != null) {
-					Iterator<String> its = params.keySet().iterator();
-					while (its.hasNext()) {
-						String key = its.next();
-						jobDetail.getJobDataMap().put(key, params.get(key));
-					}
-				}
-				CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(time);
-				trigger = TriggerBuilder.newTrigger().withIdentity(jobName, TRIGGER_GROUP_NAME)
-						.withSchedule(scheduleBuilder).build();
-				sched.scheduleJob(jobDetail, trigger);
-			}
-			
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	
-	
-
-	/**
-	 * 淇敼浠诲姟
-	 * 
-	 * @param sched
-	 * @param jobName
-	 * @param jobGroupName
-	 * @param triggerName
-	 * @param triggerGroupName
-	 * @param time
-	 * @param params
-	 * @param cls
-	 */
-	@SuppressWarnings("rawtypes")
-	public static void modifyJob(Scheduler sched, Class cls, String jobName, 
-			 String time, Map<String, String> params ) {
-
-		try {
-
-			LogHelper.test("------modifyJob---浠诲姟淇敼-----" + jobName + "------- ");
-
-			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
-			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
-			
-			if (trigger == null) {
-				return;
-			}
-			
-			// 鍒犻櫎鍘熶换鍔�
-			removeJob(sched, jobName);
-
-			// 鏂板缓浠诲姟
-			addJob(sched, QualityFactoryJob.class, jobName, time, params);
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw new RuntimeException(e);
-		}
-	}
-	
-	
-
-	/**
-	 * @Description: 淇敼涓�涓换鍔$殑瑙﹀彂鏃堕棿
-	 * 
-	 * @param sched
-	 *            璋冨害鍣� *
-	 * @param sched
-	 *            璋冨害鍣�
-	 * @param triggerName
-	 * @param triggerGroupName
-	 * @param time
-	 * 
-	 * @Title: QuartzManager.java
-	 */
-	public static void modifyJobTime(Scheduler sched, String triggerName, String triggerGroupName, String time) {
-		try {
-			TriggerKey triggerKey = TriggerKey.triggerKey(triggerName, triggerGroupName);
-			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
-			if (trigger == null) {
-				return;
-			}
-			// Trigger宸插瓨鍦紝閭d箞鏇存柊鐩稿簲鐨勫畾鏃惰缃�
-			CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(time);
-
-			// 鎸夋柊鐨刢ronExpression琛ㄨ揪寮忛噸鏂版瀯寤簍rigger
-			trigger = trigger.getTriggerBuilder().withIdentity(triggerKey).withSchedule(scheduleBuilder).build();
-
-			// 鎸夋柊鐨則rigger閲嶆柊璁剧疆job鎵ц
-			sched.rescheduleJob(triggerKey, trigger);
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-
-	/**
-	 * @Description: 绉婚櫎涓�涓换鍔�
-	 * 
-	 * @param sched
-	 *            璋冨害鍣�
-	 * @param jobName
-	 * @param jobGroupName
-	 * @param triggerName
-	 * @param triggerGroupName
-	 * 
-	 * @Title: QuartzManager.java
-	 */
-	public static void removeJob(Scheduler sched, String jobName) {
-		try {
-
-			LogHelper.test("------modifyJob---浠诲姟鍒犻櫎-----" + jobName + "------- ");
-
-
-			JobKey jobKey = new JobKey(jobName, JOB_GROUP_NAME);
-			sched.pauseJob(jobKey);
-			
-			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
-			
-			sched.pauseTrigger(triggerKey); // 鍋滄瑙﹀彂鍣�
-			sched.unscheduleJob(triggerKey);// 绉婚櫎瑙﹀彂鍣�  
-			
-			sched.pauseJob(jobKey); // 鍋滄浠诲姟
-			sched.deleteJob(jobKey);// 鍒犻櫎浠诲姟
-			
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-	/**
-	 * @Description:鍚姩鎵�鏈夊畾鏃朵换鍔�
-	 * 
-	 * @param sched
-	 *            璋冨害鍣�
-	 * 
-	 * @Title: QuartzManager.java
-	 */
-	public static void startJobs(Scheduler sched) {
-		try {
-			sched.start();
-		} catch (Exception e) {
-			e.printStackTrace();
-			throw new RuntimeException(e);
-		}
-	}
-
-	/**
-	 * @Description:鍏抽棴鎵�鏈夊畾鏃朵换鍔�
-	 * 
-	 * 
-	 * @param sched
-	 *            璋冨害鍣�
-	 * 
-	 * 
-	 * @Title: QuartzManager.java
-	 */
-	public static void shutdownJobs(Scheduler sched) {
-		try {
-			if (!sched.isShutdown()) {
-				sched.shutdown();
-			}
-		} catch (Exception e) {
-			throw new RuntimeException(e);
-		}
-	}
-
-}
+package com.yeshi.fanli.job;
+
+import org.quartz.CronScheduleBuilder;
+import org.quartz.CronTrigger;
+import org.quartz.Job;
+import org.quartz.JobBuilder;
+import org.quartz.JobDetail;
+import org.quartz.JobKey;
+import org.quartz.Scheduler;
+import org.quartz.TriggerBuilder;
+import org.quartz.TriggerKey;
+import org.springframework.stereotype.Component;
+
+import com.yeshi.fanli.log.LogHelper;
+
+@Component
+public class QuartzManager {
+	
+	private static String JOB_GROUP_NAME = "EXTJWEB_JOBGROUP_NAME";
+	private static String TRIGGER_GROUP_NAME = "EXTJWEB_TRIGGERGROUP_NAME";
+
+	/**
+	 *  鍒涘缓浠诲姟锛氫娇鐢ㄩ粯璁� 浠诲姟缁勩�佸畾鏃剁粍鍚�
+	 * @param sched
+	 * @param jobName
+	 * @param time
+	 * @param params
+	 * @param cls
+	 */
+	public static void addJob(Scheduler sched, Class <? extends Job> jobClass, String jobName, 
+			String time, Object obj) {
+		try {
+			
+			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
+			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
+			
+			if (trigger == null) {
+				LogHelper.test("------addJob---浠诲姟鍒涘缓-----" + jobName + "------- ");
+				JobDetail jobDetail = JobBuilder.newJob(jobClass).withIdentity(jobName, JOB_GROUP_NAME).build();
+				if (obj != null) {
+					jobDetail.getJobDataMap().put("key", obj);
+				}
+				CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(time);
+				trigger = TriggerBuilder.newTrigger().withIdentity(jobName, TRIGGER_GROUP_NAME)
+						.withSchedule(scheduleBuilder).build();
+				sched.scheduleJob(jobDetail, trigger);
+			}
+			
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+	
+	
+
+	/**
+	 * 淇敼浠诲姟
+	 * 
+	 * @param sched
+	 * @param jobName
+	 * @param jobGroupName
+	 * @param triggerName
+	 * @param triggerGroupName
+	 * @param time
+	 * @param params
+	 * @param cls
+	 */
+	public static void modifyJob(Scheduler sched, Class <? extends Job> jobClass, String jobName, 
+			 String time, Object obj) {
+		try {
+			LogHelper.test("------modifyJob---浠诲姟淇敼-----" + jobName + "------- ");
+			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
+			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
+			
+			if (trigger == null)
+				return;
+			
+			// 鍒犻櫎鍘熶换鍔�
+			removeJob(sched, jobName);
+			// 鏂板缓浠诲姟
+			addJob(sched, jobClass, jobName, time, obj);
+		} catch (Exception e) {
+			e.printStackTrace();
+			throw new RuntimeException(e);
+		}
+	}
+	
+	
+
+	/**
+	 * @Description: 淇敼涓�涓换鍔$殑瑙﹀彂鏃堕棿
+	 * 
+	 * @param sched
+	 *            璋冨害鍣� *
+	 * @param sched
+	 *            璋冨害鍣�
+	 * @param triggerName
+	 * @param triggerGroupName
+	 * @param time
+	 * 
+	 * @Title: QuartzManager.java
+	 */
+	public static void modifyJobTime(Scheduler sched, String triggerName, String triggerGroupName, String time) {
+		try {
+			TriggerKey triggerKey = TriggerKey.triggerKey(triggerName, triggerGroupName);
+			CronTrigger trigger = (CronTrigger) sched.getTrigger(triggerKey);
+			if (trigger == null) {
+				return;
+			}
+			// Trigger宸插瓨鍦紝閭d箞鏇存柊鐩稿簲鐨勫畾鏃惰缃�
+			CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(time);
+
+			// 鎸夋柊鐨刢ronExpression琛ㄨ揪寮忛噸鏂版瀯寤簍rigger
+			trigger = trigger.getTriggerBuilder().withIdentity(triggerKey).withSchedule(scheduleBuilder).build();
+
+			// 鎸夋柊鐨則rigger閲嶆柊璁剧疆job鎵ц
+			sched.rescheduleJob(triggerKey, trigger);
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+
+	/**
+	 * @Description: 绉婚櫎涓�涓换鍔�
+	 * 
+	 * @param sched
+	 *            璋冨害鍣�
+	 * @param jobName
+	 * @param jobGroupName
+	 * @param triggerName
+	 * @param triggerGroupName
+	 * 
+	 * @Title: QuartzManager.java
+	 */
+	public static void removeJob(Scheduler sched, String jobName) {
+		try {
+
+			LogHelper.test("------modifyJob---浠诲姟鍒犻櫎-----" + jobName + "------- ");
+
+
+			JobKey jobKey = new JobKey(jobName, JOB_GROUP_NAME);
+			sched.pauseJob(jobKey);
+			
+			TriggerKey triggerKey = TriggerKey.triggerKey(jobName, TRIGGER_GROUP_NAME);
+			
+			sched.pauseTrigger(triggerKey); // 鍋滄瑙﹀彂鍣�
+			sched.unscheduleJob(triggerKey);// 绉婚櫎瑙﹀彂鍣�  
+			
+			sched.pauseJob(jobKey); // 鍋滄浠诲姟
+			sched.deleteJob(jobKey);// 鍒犻櫎浠诲姟
+			
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+	/**
+	 * @Description:鍚姩鎵�鏈夊畾鏃朵换鍔�
+	 * 
+	 * @param sched
+	 *            璋冨害鍣�
+	 * 
+	 * @Title: QuartzManager.java
+	 */
+	public static void startJobs(Scheduler sched) {
+		try {
+			sched.start();
+		} catch (Exception e) {
+			e.printStackTrace();
+			throw new RuntimeException(e);
+		}
+	}
+
+	/**
+	 * @Description:鍏抽棴鎵�鏈夊畾鏃朵换鍔�
+	 * 
+	 * 
+	 * @param sched
+	 *            璋冨害鍣�
+	 * 
+	 * 
+	 * @Title: QuartzManager.java
+	 */
+	public static void shutdownJobs(Scheduler sched) {
+		try {
+			if (!sched.isShutdown()) {
+				sched.shutdown();
+			}
+		} catch (Exception e) {
+			throw new RuntimeException(e);
+		}
+	}
+
+}

--
Gitblit v1.8.0