diff --git a/WebContent/jsp/onl/apim/messagerequest/messageRequestMan.jsp b/WebContent/jsp/onl/apim/messagerequest/messageRequestMan.jsp
index 603aa47..5df54c8 100644
--- a/WebContent/jsp/onl/apim/messagerequest/messageRequestMan.jsp
+++ b/WebContent/jsp/onl/apim/messagerequest/messageRequestMan.jsp
@@ -62,7 +62,19 @@
return '' + escapeHtmlJs(rowObject.sentDateShort || '') + '';
}
+ function toDashDate(yyyymmdd) {
+ return yyyymmdd.substring(0, 4) + "-" + yyyymmdd.substring(4, 6) + "-" + yyyymmdd.substring(6, 8);
+ }
+
function init() {
+ $("#startDatepicker").datepicker().inputmask("yyyy-mm-dd",{'autoUnmask':true});
+ $("#endDatepicker").datepicker().inputmask("yyyy-mm-dd",{'autoUnmask':true});
+
+ var today = getToday();
+
+ $("input[name=searchFromDate]").val(toDashDate(today.substring(0,6)+"01"));
+ $("input[name=searchToDate]").val(toDashDate(today));
+
$.ajax({
type: "POST", url: url, dataType: "json",
data: {cmd: 'LIST_INIT_COMBO'},
@@ -145,6 +157,20 @@
init();
$("#btn_search").click(function () {
+ var start = $("input[name=searchFromDate]").val().replace(/-/gi, "");
+ var end = $("input[name=searchToDate]").val().replace(/-/gi, "");
+
+ if (start && start > getToday()) {
+ alert("시작일이 오늘 이후입니다. 시작일을 확인해주세요.");
+ $("input[name=searchFromDate]").focus();
+ return false;
+ }
+ if (start && end && start > end) {
+ alert("조회기간 종료일은 시작일보다 커야합니다.");
+ $("input[name=searchToDate]").focus();
+ return false;
+ }
+
var postData = getSearchForJqgrid("cmd", "LIST");
$("#grid").setGridParam({url: url, postData: postData, page: 1}).trigger("reloadGrid");
});
@@ -198,7 +224,9 @@
요청기간 |
- ~
+
+ ~
+
|
diff --git a/WebContent/jsp/onl/apim/webhook/webhookSendLogMan.jsp b/WebContent/jsp/onl/apim/webhook/webhookSendLogMan.jsp
index fba0ece..1007a35 100644
--- a/WebContent/jsp/onl/apim/webhook/webhookSendLogMan.jsp
+++ b/WebContent/jsp/onl/apim/webhook/webhookSendLogMan.jsp
@@ -222,9 +222,9 @@
|
발송기간 |
-
+
~
-
+
|
diff --git a/src/main/java/com/eactive/eai/rms/common/scheduler/ClusteredSchedulerConfig.java b/src/main/java/com/eactive/eai/rms/common/scheduler/ClusteredSchedulerConfig.java
index 333dbd7..7d3ff53 100644
--- a/src/main/java/com/eactive/eai/rms/common/scheduler/ClusteredSchedulerConfig.java
+++ b/src/main/java/com/eactive/eai/rms/common/scheduler/ClusteredSchedulerConfig.java
@@ -19,23 +19,7 @@ public class ClusteredSchedulerConfig {
@Autowired @Qualifier("MONITORING")
private DataSourceType monitoringDatasource;
-
- /*
- public class AutowiringSpringBeanJobFactory extends SpringBeanJobFactory {
- @Override
- protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception {
- Object job = super.createJobInstance(bundle);
- applicationContext.getAutowireCapableBeanFactory().autowireBean(job);
- return job;
- }
- }
-
- @Bean
- public SpringBeanJobFactory springBeanJobFactory() {
- return new AutowiringSpringBeanJobFactory();
- }
- */
-
+
@Bean(name = "clusteredScheduler")
public SchedulerFactoryBean clusteredScheduler() {
@@ -81,11 +65,15 @@ public class ClusteredSchedulerConfig {
factory.setQuartzProperties(quartzProperties);
factory.setAutoStartup(true);
factory.setSchedulerName("EMS_ClusteredScheduler");
-// factory.setJobFactory(springBeanJobFactory());
-
+
+ AutoWiringSpringBeanJobFactory jobFactory =
+ new AutoWiringSpringBeanJobFactory(applicationContext.getAutowireCapableBeanFactory());
+ jobFactory.setApplicationContext(applicationContext);
+ factory.setJobFactory(jobFactory);
+
factory.setApplicationContextSchedulerContextKey("applicationContext");
factory.setApplicationContext(applicationContext);
-
+
return factory;
}
diff --git a/src/main/java/com/eactive/eai/rms/onl/apim/messagerequest/MessageRequestManService.java b/src/main/java/com/eactive/eai/rms/onl/apim/messagerequest/MessageRequestManService.java
index 6629c40..f4e5dd8 100644
--- a/src/main/java/com/eactive/eai/rms/onl/apim/messagerequest/MessageRequestManService.java
+++ b/src/main/java/com/eactive/eai/rms/onl/apim/messagerequest/MessageRequestManService.java
@@ -58,7 +58,11 @@ public class MessageRequestManService extends BaseService {
ui.setMessageType(e.getMessageType());
// 본문: 패턴 마스킹 + 색상강조 안전 HTML
- ui.setMessageHtml(MessagePatternMaskingUtils.maskAndHighlight(e.getMessage()));
+ if (e.getMessageCode() == MessageCode.API_STATUS_CHANGED) {
+ ui.setMessageHtml(e.getMessage());
+ } else {
+ ui.setMessageHtml(MessagePatternMaskingUtils.maskAndHighlight(e.getMessage()));
+ }
// 수신자 마스킹 (email/phone 은 @Convert 로 이미 복호화된 평문)
ui.setUsername(MaskingUtils.maskName(e.getUsername()));
diff --git a/src/main/java/com/eactive/eai/rms/onl/common/service/UmsDispatchJob.java b/src/main/java/com/eactive/eai/rms/onl/common/service/UmsDispatchJob.java
index 993e165..af91e13 100644
--- a/src/main/java/com/eactive/eai/rms/onl/common/service/UmsDispatchJob.java
+++ b/src/main/java/com/eactive/eai/rms/onl/common/service/UmsDispatchJob.java
@@ -3,6 +3,7 @@ package com.eactive.eai.rms.onl.common.service;
import com.eactive.eai.rms.onl.common.service.ums.UmsDispatchService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.quartz.DisallowConcurrentExecution;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
@@ -21,6 +22,7 @@ import java.util.stream.Collectors;
*/
// Cron Expression: */5 * * * * ?
@Slf4j
+@DisallowConcurrentExecution
public class UmsDispatchJob implements Job {
private final UmsDispatchService umsDispatchService;