From 7f85ca5468e097f1749ab1ed812046cb8eb979b7 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期日, 27 四月 2025 17:58:48 +0800
Subject: [PATCH] 表阀一体机与测控一体阀协议中的阀门状态不兼容,做兼容处理。

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/schedulerTask/SchedulerTaskSupport.java |  464 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 464 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/schedulerTask/SchedulerTaskSupport.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/schedulerTask/SchedulerTaskSupport.java
new file mode 100644
index 0000000..0fc205e
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/schedulerTask/SchedulerTaskSupport.java
@@ -0,0 +1,464 @@
+package com.dy.common.schedulerTask;
+
+
+import java.util.*;
+
+import org.quartz.*;
+
+
+public class SchedulerTaskSupport {
+	
+	private static Integer threadPoolMaxCount; 
+	private static Integer threadPoolPriority;
+	
+	public static void setThreadPoolPro(Integer threadPoolMaxCount, Integer threadPoolPriority){
+		if(SchedulerTaskSupport.threadPoolMaxCount == null){
+			SchedulerTaskSupport.threadPoolMaxCount = threadPoolMaxCount;
+		}
+		if(SchedulerTaskSupport.threadPoolPriority == null){
+			SchedulerTaskSupport.threadPoolPriority = threadPoolPriority;
+		}
+	}
+	
+	/**
+	 * 娣诲姞姣廥绉掗挓閲嶅宸ヤ綔涓�娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param futureSecond 寤惰繜鍒板皢鏉ユ椂闀�(鍗曚綅绉�)浠ュ紑濮嬪伐浣�
+	 * @param intervalInSeconds 閲嶅宸ヤ綔闂撮殧鏃堕暱(绉�)
+	 * @param repeatCount  閲嶅宸ヤ綔娆℃暟(濡傛灉灏忎簬0锛屽皢涓�鐩撮噸澶嶆墽琛屼笅鍘� , 濡傛灉鏄�0鎵ц涓�娆★紝濡傛灉鏄�1鎵ц2娆★紝渚濇绫绘帹)
+	 * @return 宸ヤ綔浠诲姟Key  
+	 * @throws Exception 
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addSecondlyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int futureSecond,
+			int intervalInSeconds ,
+			int repeatCount) throws Exception {
+		SchedulerTaskSupport.checkDelayStart(futureSecond) ;
+		if(intervalInSeconds < 1){
+			throw new Exception("閲嶅宸ヤ綔闂撮殧鏃堕暱(鍗曚綅绉�)涓嶈兘灏忎簬1绉�)!") ;
+		}
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+		Date futureDate = DateBuilder.futureDate(futureSecond, DateBuilder.IntervalUnit.SECOND) ;
+		Date startTime = DateBuilder.evenSecondDate(futureDate);
+       
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .startAt(startTime)
+	        .withSchedule(SimpleScheduleBuilder.simpleSchedule()
+	                .withIntervalInSeconds(intervalInSeconds)
+	                .withRepeatCount(repeatCount))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	/**
+	 * 娣诲姞姣廥鍒嗛挓閲嶅宸ヤ綔涓�娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param futureSecond 寤惰繜鍒板皢鏉ユ椂闀�(鍗曚綅绉�)浠ュ紑濮嬪伐浣�
+	 * @param intervalInMinutes 閲嶅宸ヤ綔闂撮殧鏃堕暱(鍒嗛挓)
+	 * @param repeatCount  閲嶅宸ヤ綔娆℃暟(濡傛灉灏忎簬0锛屽皢涓�鐩撮噸澶嶆墽琛屼笅鍘� , 濡傛灉鏄�0鎵ц涓�娆★紝濡傛灉鏄�1鎵ц2娆★紝渚濇绫绘帹)
+	 * @throws Exception 
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addMinutelyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int futureSecond,
+			int intervalInMinutes ,
+			int repeatCount) throws Exception {
+		SchedulerTaskSupport.checkDelayStart(futureSecond) ;
+		if(intervalInMinutes < 1){
+			throw new Exception("閲嶅宸ヤ綔闂撮殧鏃堕暱(鍗曚綅鍒嗛挓)涓嶈兘灏忎簬1鍒嗛挓)!") ;
+		}
+
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+		Date futureDate = DateBuilder.futureDate(futureSecond, DateBuilder.IntervalUnit.SECOND) ;
+		Date startTime = DateBuilder.evenSecondDate(futureDate);
+       
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .startAt(startTime)
+	        .withSchedule(SimpleScheduleBuilder.simpleSchedule()
+	                .withIntervalInMinutes(intervalInMinutes)
+	                .withRepeatCount(repeatCount))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+
+	}
+	/**
+	 * 娣诲姞姣廥灏忔椂閲嶅宸ヤ綔涓�娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param futureSecond 寤惰繜鍒板皢鏉ユ椂闀�(鍗曚綅绉�)浠ュ紑濮嬪伐浣�
+	 * @param intervalInHour 閲嶅宸ヤ綔闂撮殧鏃堕暱(灏忔椂)
+	 * @param repeatCount  閲嶅宸ヤ綔娆℃暟(濡傛灉灏忎簬0锛屽皢涓�鐩撮噸澶嶆墽琛屼笅鍘� , 濡傛灉鏄�0鎵ц涓�娆★紝濡傛灉鏄�1鎵ц2娆★紝渚濇绫绘帹)
+	 * @throws Exception 
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addHourlyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int futureSecond,
+			int intervalInHour ,
+			int repeatCount) throws Exception {
+		SchedulerTaskSupport.checkDelayStart(futureSecond) ;
+		if(intervalInHour < 1){
+			throw new Exception("閲嶅宸ヤ綔闂撮殧鏃堕暱(鍗曚綅灏忔椂)涓嶈兘灏忎簬1灏忔椂)!") ;
+		}
+
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+		Date futureDate = DateBuilder.futureDate(futureSecond, DateBuilder.IntervalUnit.SECOND) ;
+		Date startTime = DateBuilder.evenSecondDate(futureDate);
+       
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .startAt(startTime)
+	        .withSchedule(SimpleScheduleBuilder.simpleSchedule()
+                .withIntervalInHours(intervalInHour)
+                .withRepeatCount(repeatCount))
+            .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	
+	/**
+	 * 娣诲姞姣忓ぉ鏌愭椂鏌愬垎閲嶅宸ヤ綔涓�娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param hour 鏌愭椂(0-23涔嬮棿(鍖呮嫭0涓�23))
+	 * @param minute 鏌愬垎(0-59涔嬮棿(鍖呮嫭0涓�59))
+	 * @throws Exception
+	 */
+//	琛ㄨ揪寮� 鎰忎箟 
+//	"0 0 12 * * ?" 姣忓ぉ涓崍12鐐硅Е鍙� 
+//	"0 15 10 ? * *" 姣忓ぉ涓婂崍10:15瑙﹀彂 
+//	"0 15 10 * * ?" 姣忓ぉ涓婂崍10:15瑙﹀彂 
+//	"0 15 10 * * ? *" 姣忓ぉ涓婂崍10:15瑙﹀彂 
+//	"0 15 10 * * ? 2005" 2005骞寸殑姣忓ぉ涓婂崍10:15瑙﹀彂 
+//	"0 * 14 * * ?" 鍦ㄦ瘡澶╀笅鍗�2鐐瑰埌涓嬪崍2:59鏈熼棿鐨勬瘡1鍒嗛挓瑙﹀彂 
+//	"0 0/5 14 * * ?" 鍦ㄦ瘡澶╀笅鍗�2鐐瑰埌涓嬪崍2:55鏈熼棿鐨勬瘡5鍒嗛挓瑙﹀彂 
+//	"0 0/5 14,18 * * ?" 鍦ㄦ瘡澶╀笅鍗�2鐐瑰埌2:55鏈熼棿鍜屼笅鍗�6鐐瑰埌6:55鏈熼棿鐨勬瘡5鍒嗛挓瑙﹀彂 
+//	"0 0-5 14 * * ?" 鍦ㄦ瘡澶╀笅鍗�2鐐瑰埌涓嬪崍2:05鏈熼棿鐨勬瘡1鍒嗛挓瑙﹀彂 
+//	"0 10,44 14 ? 3 WED" 姣忓勾涓夋湀鐨勬槦鏈熶笁鐨勪笅鍗�2:10鍜�2:44瑙﹀彂 
+//	"0 15 10 ? * MON-FRI" 鍛ㄤ竴鑷冲懆浜旂殑涓婂崍10:15瑙﹀彂 
+//	"0 15 10 15 * ?" 姣忔湀15鏃ヤ笂鍗�10:15瑙﹀彂 
+//	"0 15 10 L * ?" 姣忔湀鏈�鍚庝竴鏃ョ殑涓婂崍10:15瑙﹀彂 
+//	"0 15 10 ? * 6L" 姣忔湀鐨勬渶鍚庝竴涓槦鏈熶簲涓婂崍10:15瑙﹀彂 
+//	"0 15 10 ? * 6L 2002-2005" 2002骞磋嚦2005骞寸殑姣忔湀鐨勬渶鍚庝竴涓槦鏈熶簲涓婂崍10:15瑙﹀彂 
+//	"0 15 10 ? * 6#3" 姣忔湀鐨勭涓変釜鏄熸湡浜斾笂鍗�10:15瑙﹀彂 
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addDailyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int hour ,
+			int minute) throws Exception {
+		SchedulerTaskSupport.checkHour(hour) ;
+		SchedulerTaskSupport.checkMinute(minute) ;
+		
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .withSchedule(CronScheduleBuilder.cronSchedule("0 " + minute + " " + hour + " * * ? *"))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	
+	/**
+	 * 娣诲姞姣忓懆涓�銆佸懆浜屻�佸懆涓夈�佸懆鍥涖�佸懆浜斿悇閲嶅宸ヤ綔涓�娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param hour 鏌愭椂(0-23涔嬮棿(鍖呮嫭0涓�23))
+	 * @param minute 鏌愬垎(0-59涔嬮棿(鍖呮嫭0涓�59))
+	 * @throws Exception
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addWorkingDayInWeekJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int hour ,
+			int minute) throws Exception {
+		SchedulerTaskSupport.checkHour(hour) ;
+		SchedulerTaskSupport.checkMinute(minute) ;
+
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .withSchedule(CronScheduleBuilder.cronSchedule("0 " + minute + " " + hour + " ? * MON-FRI" ))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	/**
+	 * 娣诲姞姣忎竴鍛ㄧ殑鏌愪竴澶╂煇鏃舵煇鍒嗛噸澶嶅伐浣滀竴娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param dayOfWeek 涓�鍛ㄧ殑鏌愪竴澶�(1浠h〃鍛ㄤ竴,渚濇绫绘帹)(鍙栧��1-7(鍖呮嫭1涓�7))
+	 * @param hour 鏌愭椂(0-23涔嬮棿(鍖呮嫭0涓�23))
+	 * @param minute 鏌愬垎(0-59涔嬮棿(鍖呮嫭0涓�59))
+	 * @throws Exception
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addWeeklyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int dayOfWeek,
+			int hour ,
+			int minute) throws Exception {
+		SchedulerTaskSupport.checkHour(hour) ;
+		SchedulerTaskSupport.checkMinute(minute) ;
+		dayOfWeek = SchedulerTaskSupport.checkDayOfWeek(dayOfWeek);
+		
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .withSchedule(CronScheduleBuilder.cronSchedule("0 " + minute + " " + hour + " ? * " + dayOfWeek ))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	/**
+	 * 娣诲姞姣忔湀鐨勬煇涓�澶╂煇鏃舵煇鍒嗛噸澶嶅伐浣滀竴娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param dayOfMonth 涓�鏈堢殑鏌愪竴澶�(1-31涔嬮棿(鍖呮嫭1涓�31))
+	 * @param hour 鏌愭椂(0-23涔嬮棿(鍖呮嫭0涓�23))
+	 * @param minute 鏌愬垎(0-59涔嬮棿(鍖呮嫭0涓�59))
+	 * @throws Exception
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addMonthlyJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int dayOfMonth,
+			int hour ,
+			int minute) throws Exception {
+		SchedulerTaskSupport.checkHour(hour) ;
+		SchedulerTaskSupport.checkMinute(minute) ;
+		SchedulerTaskSupport.checkDayOfMonth(dayOfMonth);
+		
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .withSchedule(CronScheduleBuilder.cronSchedule("0 " + minute + " " + hour + " " + dayOfMonth + " * ?"))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	/**
+	 * 娣诲姞姣忔湀鐨勬渶鍚庝竴澶╂煇鏃舵煇鍒嗛噸澶嶅伐浣滀竴娆$殑宸ヤ綔浠诲姟锛�
+	 * @param jobName 宸ヤ綔鍚嶇О
+	 * @param jobGroupName 宸ヤ綔缁勫悕绉�
+	 * @param jobClass 宸ヤ綔绫�
+	 * @param hour 鏌愭椂(0-23涔嬮棿(鍖呮嫭0涓�23))
+	 * @param minute 鏌愬垎(0-59涔嬮棿(鍖呮嫭0涓�59))
+	 * @throws Exception
+	 */
+	@SuppressWarnings({"unchecked","rawtypes"})
+	public static String addLastDateOfMonthJob(
+			String jobName, 
+			String jobGroupName, 
+			Class jobClass , 
+			HashMap<String , Object> jobDataMap ,
+			int hour ,
+			int minute) throws Exception {
+		SchedulerTaskSupport.checkHour(hour) ;
+		SchedulerTaskSupport.checkMinute(minute) ;
+		
+		Scheduler sched = SchedulerTaskFactory.getSingleScheduler(threadPoolMaxCount, threadPoolPriority) ;
+		
+        JobDetail job = JobBuilder.newJob(jobClass)
+            .withIdentity(jobName, jobGroupName)
+            .build();
+        SchedulerTaskSupport.setDataMap(job, jobDataMap) ;
+        
+        Trigger trigger = TriggerBuilder.newTrigger()
+	        .withIdentity(jobName + "_trigger", jobGroupName + "_trigger")
+	        .withSchedule(CronScheduleBuilder.cronSchedule("0 " + minute + " " + hour + " L * ?"))
+	        .build();
+        
+        sched.scheduleJob(job, trigger);
+        sched.start();
+
+        return job.getKey().toString() ;
+	}
+	
+	
+	/**
+	 * 璁剧疆鍙傛暟鏁版嵁
+	 */
+	private static void setDataMap(JobDetail job , HashMap<String , Object> jobDataMap){
+		if(jobDataMap != null && jobDataMap.size() > 0){
+			JobDataMap map = job.getJobDataMap();
+			Set<Map.Entry<String , Object>> set = jobDataMap.entrySet() ;
+			Iterator<Map.Entry<String , Object>> it = set.iterator() ;
+			Map.Entry<String , Object> entry = null ;
+			String key = null ;
+			Object value = null ;
+			while(it.hasNext()){
+				entry = it.next() ;
+				key = entry.getKey() ;
+				value = entry.getValue() ;
+				map.put(key, value);
+			}
+		}
+	}
+	
+	/**
+	 * 
+	 * @param futureSecond
+	 */
+	private static void checkDelayStart(int futureSecond)throws Exception {
+		if(futureSecond < 0){
+			throw new Exception("寤惰繜寮�濮嬪伐浣滄椂闀�(鍗曚綅绉�)涓嶈兘灏忎簬0!") ;
+		}
+	}
+	
+	/**
+	 * 
+	 * @param hour
+	 * @throws Exception
+	 */
+	private static void checkHour(int hour)throws Exception {
+		if(hour < 0 || hour >= 24){
+			throw new Exception("閲嶅宸ヤ綔鐨勫皬鏃舵椂闂寸偣鍙栧�煎繀椤诲湪0-23涔嬮棿(鍖呮嫭0涓�23)!") ;
+		}
+	}
+	/**
+	 * 
+	 * @param minute
+	 * @throws Exception
+	 */
+	private static void checkMinute(int minute)throws Exception {
+		if(minute < 0 || minute >= 60){
+			throw new Exception("閲嶅宸ヤ綔鐨勫垎閽熸椂闂寸偣鍙栧�煎繀椤诲湪0-59涔嬮棿(鍖呮嫭0涓�59)!") ;
+		}
+	}
+	/**
+	 * 
+	 * @param dayOfWeek
+	 * @throws Exception
+	 */
+	private static int checkDayOfWeek(int dayOfWeek)throws Exception {
+		if(dayOfWeek < 1 || dayOfWeek > 7){
+			throw new Exception("閲嶅宸ヤ綔鐨勪竴鏄熸湡鐨勬煇涓�澶╁彇鍊煎繀椤诲湪1(鍛ㄤ竴)-7(鍛ㄦ棩)闂�(鍖呮嫭1涓�7)!") ;
+		}
+		int d = 0 ;
+		if(dayOfWeek == 1){
+			d = DateBuilder.MONDAY ;
+		}else if(dayOfWeek == 2){
+			d = DateBuilder.TUESDAY ;
+		}else if(dayOfWeek == 3){
+			d = DateBuilder.WEDNESDAY ;
+		}else if(dayOfWeek == 4){
+			d = DateBuilder.THURSDAY ;
+		}else if(dayOfWeek == 5){
+			d = DateBuilder.FRIDAY ;
+		}else if(dayOfWeek == 6){
+			d = DateBuilder.SATURDAY ;
+		}else if(dayOfWeek == 7){
+			d = DateBuilder.SUNDAY ;
+		}
+		return d ;
+	}
+	/**
+	 * 
+	 * @param dayOfMonth
+	 * @throws Exception
+	 */
+	private static void checkDayOfMonth(int dayOfMonth)throws Exception {
+		if(dayOfMonth < 1 || dayOfMonth > 31){
+			throw new Exception("閲嶅宸ヤ綔涓�鏈堟煇涓�澶╁彇鍊煎繀椤诲湪1-31涔嬮棿(鍖呮嫭1涓�31)!") ;
+		}
+	}
+}

--
Gitblit v1.8.0