From 9b2fec3aeb20208948f422fae3317f75ed518304 Mon Sep 17 00:00:00 2001 From: hylee Date: Thu, 4 Jul 2024 17:30:24 +0900 Subject: [PATCH 1/3] =?UTF-8?q?[=EC=82=AC=EC=9A=A9=EC=9E=90]=20=EA=B2=B0?= =?UTF-8?q?=EC=A0=9C=EA=B4=80=EB=A6=AC=20>=20=EC=9A=94=EA=B8=88=20?= =?UTF-8?q?=EC=82=AC=EC=9A=A9=EB=82=B4=EC=97=AD=20=3D=3D>=20=EA=B2=80?= =?UTF-8?q?=EC=83=89=EA=B8=B0=EA=B0=84=20=ED=95=84=EC=88=98=EA=B0=92?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EB=B3=80=EA=B2=BD=20=ED=95=98=EA=B3=A0=20?= =?UTF-8?q?=EA=B8=B0=EB=B3=B8=EA=B0=92=20=EC=A0=9C=EA=B3=B5=20=EC=95=88?= =?UTF-8?q?=ED=95=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/mjo/pay/web/MjonPayController.java | 19 ++++++++- .../WEB-INF/jsp/web/custom/MsgCustomView.jsp | 6 --- .../WEB-INF/jsp/web/pay/PayUserSWList.jsp | 42 ++++++++++++++++++- .../WEB-INF/jsp/web/pay/PayUserSWListAjax.jsp | 2 + 4 files changed, 60 insertions(+), 9 deletions(-) diff --git a/src/main/java/itn/let/mjo/pay/web/MjonPayController.java b/src/main/java/itn/let/mjo/pay/web/MjonPayController.java index 152a69cc..68f68989 100644 --- a/src/main/java/itn/let/mjo/pay/web/MjonPayController.java +++ b/src/main/java/itn/let/mjo/pay/web/MjonPayController.java @@ -61,6 +61,7 @@ import itn.com.cmm.EgovMessageSource; import itn.com.cmm.LoginVO; import itn.com.cmm.service.EgovCmmUseService; import itn.com.cmm.service.FileVO; +import itn.com.cmm.util.DateUtil; import itn.com.cmm.util.MJUtil; import itn.com.cmm.util.RedirectUrlMaker; import itn.com.cmm.util.StringUtil; @@ -2694,7 +2695,11 @@ public class MjonPayController { model.addAttribute("negoPriceYn", negoPriceYn); } - + { + // 초기 날짜 셋팅 + model.addAttribute("startDate", DateUtil.getDateDaysAgo(365)); + model.addAttribute("endDate", DateUtil.getCurrentDate()); + } return "/web/pay/PayUserSWList"; } @@ -2738,6 +2743,16 @@ public class MjonPayController { mjonMsgVO.setSearchSortOrd("desc"); } + // 검색 데이터가 없거나 + // 시작일자가 종료일자보다 이후이거나 + // 총 기간이 365일이 넘으면 현재일부터 365일 전 날짜를 넣어서 검색 + if(!DateUtil.dateChk365AndValueChk(mjonMsgVO.getStartDate(),mjonMsgVO.getEndDate() )) { + + mjonMsgVO.setStartDate(DateUtil.getDateDaysAgo(365)); + mjonMsgVO.setEndDate(DateUtil.getCurrentDate()); + + }; + List payUserSWList = mjonMsgDataService.selectPayUserSWList(mjonMsgVO); paginationInfo.setTotalRecordCount(payUserSWList.size()> 0 ? payUserSWList.get(0).getTotCnt() : 0); @@ -2749,6 +2764,8 @@ public class MjonPayController { }else { model.addAttribute("totSuccSendPrice", 0); } + model.addAttribute("mjonMsgVO", mjonMsgVO); + } catch (Exception e) { System.out.println("PayUserSWListAjax Controller Error!!! " + e); diff --git a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp index 48eb93fe..1150a007 100644 --- a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp @@ -161,12 +161,6 @@ function fn_dataValueChk(){ return false; } - // 시작일자가 종료일자보다 이후인지 확인 - if (start > end) { - alert("검색 시작일자는 종료일자보다 이전이어야 합니다."); - return false; - } - // 총 기간이 365일을 넘는지 확인 var diffTime = Math.abs(end - start); var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); diff --git a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp index 28ac2512..237ec0f9 100644 --- a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp @@ -56,12 +56,50 @@ function setCalVal(val,targetObj){ // 요금사용내역 리스트 function payUserListAjax(pageNo){ + + if(!fn_dataValueChk()){ + return; + }; + + document.listForm.pageIndex.value = pageNo; var sendData= $(document.listForm).serializeArray(); $("#payUserListLoad").load("/web/member/pay/PayUserSWListAjax.do", sendData ,function(response, status, xhr){ }); } + +function fn_dataValueChk(){ + // 시작일자와 종료일자를 가져오기 + var startDate = document.getElementById("startDate").value; + var endDate = document.getElementById("endDate").value; + + // 날짜가 입력되었는지 확인 + if (!startDate || !endDate) { + alert("검색 시작일자와 종료일자를 입력해주세요."); + return false; + } + + // 날짜 형식으로 변환 + var start = new Date(startDate); + var end = new Date(endDate); + + // 날짜 유효성 체크 + if (isNaN(start.getTime()) || isNaN(end.getTime())) { + alert("유효한 날짜 형식을 입력해주세요."); + return false; + } + + // 총 기간이 365일을 넘는지 확인 + var diffTime = Math.abs(end - start); + var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); + if (diffDays > 365) { + alert("총 검색 기간은 1년을 넘을 수 없습니다."); + return false; + } + + return true; +} function payUserTab(obj, pageType){ var $tab = $(obj).closest("li"); @@ -482,9 +520,9 @@ function fnRevDetailPop03(msgGroupId){
기간선택
- + ~ - +
diff --git a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWListAjax.jsp b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWListAjax.jsp index cc8d8a05..f96e8530 100644 --- a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWListAjax.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWListAjax.jsp @@ -20,6 +20,8 @@ + + diff --git a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp index 1150a007..a45c2505 100644 --- a/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/custom/MsgCustomView.jsp @@ -129,7 +129,7 @@ function customSampleListAjax(pageNo){ //맞춤제작 내보관함 리스트 function myCustomListAjax(pageNo){ - if(!fn_dataValueChk()){ + if(!fn_cmndataValueChk("startDate", "endDate", 365)){ return; }; @@ -140,38 +140,6 @@ function myCustomListAjax(pageNo){ }); } -function fn_dataValueChk(){ - // 시작일자와 종료일자를 가져오기 - var startDate = document.getElementById("startDate").value; - var endDate = document.getElementById("endDate").value; - - // 날짜가 입력되었는지 확인 - if (!startDate || !endDate) { - alert("검색 시작일자와 종료일자를 입력해주세요."); - return false; - } - - // 날짜 형식으로 변환 - var start = new Date(startDate); - var end = new Date(endDate); - - // 날짜 유효성 체크 - if (isNaN(start.getTime()) || isNaN(end.getTime())) { - alert("유효한 날짜 형식을 입력해주세요."); - return false; - } - - // 총 기간이 365일을 넘는지 확인 - var diffTime = Math.abs(end - start); - var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); - if (diffDays > 365) { - alert("총 검색 기간은 1년을 넘을 수 없습니다."); - return false; - } - - return true; -} - //맞춤제작 내보관함 정렬 조회 function fnMyCustomSearchListOrd(){ diff --git a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp index 237ec0f9..be8de4a8 100644 --- a/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/pay/PayUserSWList.jsp @@ -57,7 +57,7 @@ function setCalVal(val,targetObj){ // 요금사용내역 리스트 function payUserListAjax(pageNo){ - if(!fn_dataValueChk()){ + if(!fn_cmndataValueChk("startDate", "endDate", 365)){ return; }; @@ -69,37 +69,6 @@ function payUserListAjax(pageNo){ } -function fn_dataValueChk(){ - // 시작일자와 종료일자를 가져오기 - var startDate = document.getElementById("startDate").value; - var endDate = document.getElementById("endDate").value; - - // 날짜가 입력되었는지 확인 - if (!startDate || !endDate) { - alert("검색 시작일자와 종료일자를 입력해주세요."); - return false; - } - - // 날짜 형식으로 변환 - var start = new Date(startDate); - var end = new Date(endDate); - - // 날짜 유효성 체크 - if (isNaN(start.getTime()) || isNaN(end.getTime())) { - alert("유효한 날짜 형식을 입력해주세요."); - return false; - } - - // 총 기간이 365일을 넘는지 확인 - var diffTime = Math.abs(end - start); - var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); - if (diffDays > 365) { - alert("총 검색 기간은 1년을 넘을 수 없습니다."); - return false; - } - - return true; -} function payUserTab(obj, pageType){ var $tab = $(obj).closest("li"); diff --git a/src/main/webapp/publish/js/cmnDateAndChk.js b/src/main/webapp/publish/js/cmnDateAndChk.js new file mode 100644 index 00000000..cb544b8f --- /dev/null +++ b/src/main/webapp/publish/js/cmnDateAndChk.js @@ -0,0 +1,36 @@ +$(document).ready(function () { + +}); + + +function fn_cmndataValueChk(startId, endId, chkDay){ + // 시작일자와 종료일자를 가져오기 + var startDate = document.getElementById(startId).value; + var endDate = document.getElementById(endId).value; + + // 날짜가 입력되었는지 확인 + if (!startDate || !endDate) { + alert("검색 시작일자와 종료일자를 입력해주세요."); + return false; + } + + // 날짜 형식으로 변환 + var start = new Date(startDate); + var end = new Date(endDate); + + // 날짜 유효성 체크 + if (isNaN(start.getTime()) || isNaN(end.getTime())) { + alert("유효한 날짜 형식을 입력해주세요."); + return false; + } + + // 총 기간이 chkDay일을 넘는지 확인 + var diffTime = Math.abs(end - start); + var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); + if (diffDays > chkDay) { + alert("총 검색 기간은 "+chkDay+"일을 넘을 수 없습니다."); + return false; + } + + return true; +} \ No newline at end of file From 5c2f7f5e7317732e5c9709dfdcfae4fb6219613b Mon Sep 17 00:00:00 2001 From: hylee Date: Fri, 5 Jul 2024 09:48:06 +0900 Subject: [PATCH 3/3] =?UTF-8?q?fn=5FcmndataValueChk=20=EB=AA=A8=EB=93=88?= =?UTF-8?q?=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/itn/com/cmm/util/DateUtil.java | 4 ++-- .../let/mjo/msgCustom/web/MjonMsgCustomWebController.java | 2 +- src/main/java/itn/let/mjo/pay/web/MjonPayController.java | 2 +- src/main/webapp/publish/js/cmnDateAndChk.js | 8 +++++++- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/main/java/itn/com/cmm/util/DateUtil.java b/src/main/java/itn/com/cmm/util/DateUtil.java index 895b5f79..c1f70068 100644 --- a/src/main/java/itn/com/cmm/util/DateUtil.java +++ b/src/main/java/itn/com/cmm/util/DateUtil.java @@ -135,7 +135,7 @@ public final class DateUtil { } - public static boolean dateChk365AndValueChk(String searchStartDate, String searchEndDate) { + public static boolean dateChkAndValueChk(String searchStartDate, String searchEndDate, int dateVal) { boolean isValid = true; @@ -170,7 +170,7 @@ public final class DateUtil { // 총 기간이 365일을 넘는지 확인 if (isValid) { long daysBetween = ChronoUnit.DAYS.between(startDate, endDate); - if (daysBetween > 365) { + if (daysBetween > dateVal) { isValid = false; } } diff --git a/src/main/java/itn/let/mjo/msgCustom/web/MjonMsgCustomWebController.java b/src/main/java/itn/let/mjo/msgCustom/web/MjonMsgCustomWebController.java index b692ceb9..29a5dfc3 100644 --- a/src/main/java/itn/let/mjo/msgCustom/web/MjonMsgCustomWebController.java +++ b/src/main/java/itn/let/mjo/msgCustom/web/MjonMsgCustomWebController.java @@ -229,7 +229,7 @@ public class MjonMsgCustomWebController { // 검색 데이터가 없거나 // 시작일자가 종료일자보다 이후이거나 // 총 기간이 365일이 넘으면 현재일부터 365일 전 날짜를 넣어서 검색 - if(!DateUtil.dateChk365AndValueChk(mjonMsgCustomVO.getSearchStartDate(),mjonMsgCustomVO.getSearchEndDate() )) { + if(!DateUtil.dateChkAndValueChk(mjonMsgCustomVO.getSearchStartDate(),mjonMsgCustomVO.getSearchEndDate(), 365 )) { mjonMsgCustomVO.setSearchStartDate(DateUtil.getDateDaysAgo(365)); mjonMsgCustomVO.setSearchEndDate(DateUtil.getCurrentDate()); diff --git a/src/main/java/itn/let/mjo/pay/web/MjonPayController.java b/src/main/java/itn/let/mjo/pay/web/MjonPayController.java index 68f68989..47abade8 100644 --- a/src/main/java/itn/let/mjo/pay/web/MjonPayController.java +++ b/src/main/java/itn/let/mjo/pay/web/MjonPayController.java @@ -2746,7 +2746,7 @@ public class MjonPayController { // 검색 데이터가 없거나 // 시작일자가 종료일자보다 이후이거나 // 총 기간이 365일이 넘으면 현재일부터 365일 전 날짜를 넣어서 검색 - if(!DateUtil.dateChk365AndValueChk(mjonMsgVO.getStartDate(),mjonMsgVO.getEndDate() )) { + if(!DateUtil.dateChkAndValueChk(mjonMsgVO.getStartDate(),mjonMsgVO.getEndDate(), 365 )) { mjonMsgVO.setStartDate(DateUtil.getDateDaysAgo(365)); mjonMsgVO.setEndDate(DateUtil.getCurrentDate()); diff --git a/src/main/webapp/publish/js/cmnDateAndChk.js b/src/main/webapp/publish/js/cmnDateAndChk.js index cb544b8f..054dc4e9 100644 --- a/src/main/webapp/publish/js/cmnDateAndChk.js +++ b/src/main/webapp/publish/js/cmnDateAndChk.js @@ -28,7 +28,13 @@ function fn_cmndataValueChk(startId, endId, chkDay){ var diffTime = Math.abs(end - start); var diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); if (diffDays > chkDay) { - alert("총 검색 기간은 "+chkDay+"일을 넘을 수 없습니다."); + + var chkDayTxt = ""; + if(chkDay == 365){ + chkDayTxt = '1년'; + } + + alert("총 검색 기간은 "+chkDayTxt+"을 넘을 수 없습니다."); return false; }