From b75a76c1b54ed2951724dc89091893766c147966 Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Wed, 11 Dec 2024 12:38:25 +0900 Subject: [PATCH] =?UTF-8?q?schedulerUtil=EC=9D=84=20local,=20dev=20?= =?UTF-8?q?=EB=91=98=EB=8B=A4=20=EC=8B=A4=ED=96=89=20=EC=95=88=EB=90=98?= =?UTF-8?q?=EA=B2=8C=20=EC=84=A4=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../addr/service/impl/FaxAddrServiceImpl.java | 50 ++++++++++--------- .../itn/let/schdlr/service/SchedulerUtil.java | 9 ++-- 2 files changed, 32 insertions(+), 27 deletions(-) diff --git a/src/main/java/itn/let/fax/addr/service/impl/FaxAddrServiceImpl.java b/src/main/java/itn/let/fax/addr/service/impl/FaxAddrServiceImpl.java index cede9f9a..9c56a1ab 100644 --- a/src/main/java/itn/let/fax/addr/service/impl/FaxAddrServiceImpl.java +++ b/src/main/java/itn/let/fax/addr/service/impl/FaxAddrServiceImpl.java @@ -408,28 +408,6 @@ public class FaxAddrServiceImpl extends EgovAbstractServiceImpl implements FaxAd ); } - // step2 신규 주소록 생성 및 북마크 체크 - if ("NEW".equals(faxAddrListVO.get(0).getAddrGrpId())) { - FaxAddrGroupVO faxAddrGroupVO = new FaxAddrGroupVO(); - faxAddrGroupVO.setMberId(userId); - faxAddrGroupVO.setAddrGrpNm(faxAddrListVO.get(0).getAddrGrpNm()); - - // 정렬순서 - int nextOrderNumber = faxAddrGroupDAO.selectMaxOrderFaxNumber(faxAddrGroupVO); - faxAddrGroupVO.setGrpOrder(nextOrderNumber); - - faxAddrGroupDAO.insertFaxAddrGroup(faxAddrGroupVO); - - // 신규 추가한 그룹아이디 - for (FaxAddrVO faxAddr : faxAddrListVO) { faxAddr.setAddrGrpId(faxAddrGroupVO.getAddrGrpId()); } - }else if ("bookmark".equals(faxAddrListVO.get(0).getAddrGrpId())) { - for (FaxAddrVO faxAddr : faxAddrListVO) { - faxAddr.setBookmark("Y"); - faxAddr.setAddrGrpId("0"); - } - }else { - for (FaxAddrVO faxAddr : faxAddrListVO) { faxAddr.setBookmark("N"); } - } // step3 // => 팩스번호 빼고 바이트 체크해서 20byte만 짜르고 넣기 @@ -441,7 +419,6 @@ public class FaxAddrServiceImpl extends EgovAbstractServiceImpl implements FaxAd AtomicInteger invalid = new AtomicInteger(0); // 스레드-안전(thread-safe)하게 정수 값을 업데이트할 수 있는 기능을 제공 faxAddrListVO.removeIf(faxAddr -> { String phoneNo = faxAddr.getAddrPhoneNo(); - log.info(" + phoneNo :: [{}]", phoneNo); if (isValidFaxNumber(phoneNo)) { faxAddr.setAddrPhoneNo(phoneNo); // 하이픈이 제거된 유효한 번호 설정 trimFieldsBytes(faxAddr); // 다른 필드들에 대한 20바이트 체크 및 자르기 @@ -461,6 +438,33 @@ public class FaxAddrServiceImpl extends EgovAbstractServiceImpl implements FaxAd try { if(faxAddrListVO.size() > 0) { + + + + // step2 신규 주소록 생성 및 북마크 체크 + if ("NEW".equals(faxAddrListVO.get(0).getAddrGrpId())) { + FaxAddrGroupVO faxAddrGroupVO = new FaxAddrGroupVO(); + faxAddrGroupVO.setMberId(userId); + faxAddrGroupVO.setAddrGrpNm(faxAddrListVO.get(0).getAddrGrpNm()); + + // 정렬순서 + int nextOrderNumber = faxAddrGroupDAO.selectMaxOrderFaxNumber(faxAddrGroupVO); + faxAddrGroupVO.setGrpOrder(nextOrderNumber); + + faxAddrGroupDAO.insertFaxAddrGroup(faxAddrGroupVO); + + // 신규 추가한 그룹아이디 + for (FaxAddrVO faxAddr : faxAddrListVO) { faxAddr.setAddrGrpId(faxAddrGroupVO.getAddrGrpId()); } + }else if ("bookmark".equals(faxAddrListVO.get(0).getAddrGrpId())) { + for (FaxAddrVO faxAddr : faxAddrListVO) { + faxAddr.setBookmark("Y"); + faxAddr.setAddrGrpId("0"); + } + }else { + for (FaxAddrVO faxAddr : faxAddrListVO) { faxAddr.setBookmark("N"); } + } + + // 등록 faxAddrDAO.insertFaxAddrList(faxAddrListVO); }else { diff --git a/src/main/java/itn/let/schdlr/service/SchedulerUtil.java b/src/main/java/itn/let/schdlr/service/SchedulerUtil.java index dc42c346..deebfdef 100644 --- a/src/main/java/itn/let/schdlr/service/SchedulerUtil.java +++ b/src/main/java/itn/let/schdlr/service/SchedulerUtil.java @@ -39,7 +39,7 @@ import net.javacrumbs.shedlock.core.SchedulerLock; import net.javacrumbs.shedlock.provider.jdbctemplate.JdbcTemplateLockProvider; import net.javacrumbs.shedlock.spring.annotation.EnableSchedulerLock; -@Profile("!local") +@Profile({"!local", "!dev"}) @Service("SchedulerUtil") @EnableScheduling @EnableSchedulerLock(defaultLockAtMostFor = "PT30S") // Scheduler Lock 사용 가능 설정 (기본 30초동안 Lock) @@ -89,7 +89,7 @@ public class SchedulerUtil { private static final String ONE_MIN = "PT1M"; // 1분동안 LOCK /* - * 2분 마다 1주일 데이터에서 환불 대상을 찾아서 환불 한다. + * 10분 마다 1주일 데이터에서 환불 대상을 찾아서 환불 한다. * */ // Schdule Lock (10분동안) @Scheduled(cron = "0 0/10 * * * ?") @@ -361,7 +361,7 @@ public class SchedulerUtil { int nowDate =EgovDateUtil.nowDateToInt("yyyyMMdd"); - // 전일 알림톡발송 건 통계 insert + // 전일 카톡발송 건 통계 insert FaxStatVO faxStatVO = new FaxStatVO(); faxStatVO.setStatStartDate(nowDate); faxStatVO.setStatEndDate(nowDate); @@ -481,7 +481,8 @@ public class SchedulerUtil { if ("ONE".equals(p_type)) { //하루에 한번만 31일 대상으로 실행 schdlrManageService.msgFailPayBackOneByDay(); - }else { //2분 마다는 7일을 대상으로 실행 + }else { + // 10분 마다 1주일 데이터에서 환불 대상을 찾아서 환불 한다. //어플리케이션 트랜잭션 문제가 있어 Util 단으로 DB 호출을 가져옴 - 2024-03-14 //schdlrManageService.msgFailPayBack();