diff --git a/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java b/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java index e885ad8..1dfcd93 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java +++ b/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java @@ -36,6 +36,7 @@ public class Bu18WebReturnInfoDTO extends SntrisWSDTO { /** 계좌번호(우리) */ private String WAccountNo; private String buAfk; + /** 전자납부번호 */ private String enapbuNo; private String etcColmn1; private String etcColmn2; diff --git a/src/main/java/cokr/xit/interfaces/sntris/service/bean/SntrisBean.java b/src/main/java/cokr/xit/interfaces/sntris/service/bean/SntrisBean.java index 4a57a7d..f394f3b 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/service/bean/SntrisBean.java +++ b/src/main/java/cokr/xit/interfaces/sntris/service/bean/SntrisBean.java @@ -1,5 +1,8 @@ package cokr.xit.interfaces.sntris.service.bean; +import java.util.Map; +import java.util.stream.Collectors; + import org.springframework.stereotype.Component; import cokr.xit.foundation.component.AbstractBean; @@ -41,4 +44,31 @@ public class SntrisBean extends AbstractBean { throw runtimeException(e); } } + + public Map registerPreNotices(Ye22InputDTO input, Map prenotices) { + Map registered = prenotices.entrySet().stream().collect(Collectors.toMap( + entry -> entry.getKey(), + entry -> { + try { + return register(entry.getValue()); + } catch (Exception e) { + Bu18WebReturnInfoDTO dto = new Bu18WebReturnInfoDTO(); + dto.setReturnMsg(ifEmpty(e.getLocalizedMessage(), e::toString)); + return dto; + } + } + )); + return registered.entrySet().stream().collect(Collectors.toMap( + entry -> entry.getKey(), + entry -> { + input.setBuAk(entry.getValue().getNoticeAk()); + Ye22NoticeInfoDTO[] dtos = getPreNoticeList(input); + return switch (dtos.length) { + case 0 -> null; + case 1 -> dtos[0]; + default -> throw new RuntimeException("Multiple prenotices returned"); + }; + } + )); + } } \ No newline at end of file