From 1750e6ed47de528dd7f34f719cdd6da8abf57b8d Mon Sep 17 00:00:00 2001 From: mjkhan21 Date: Tue, 29 Apr 2025 16:28:51 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B8=B0=EA=B8=88,=20=EA=B5=AD=EC=84=B8,=20?= =?UTF-8?q?=EC=8B=9C=EC=84=B8,=20=EA=B5=AC=EC=84=B8=20=EA=B4=80=EB=A0=A8?= =?UTF-8?q?=20=EB=A9=94=EC=86=8C=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sntris/fileoffer/Ye22InputDTO.java | 11 +++++++ .../sntris/fileoffer/Ye22NoticeInfoDTO.java | 31 +++++++++++++++++++ .../sntris/prenotice/Bu18WebPreNoticeDTO.java | 2 +- .../prenotice/Bu18WebReturnInfoDTO.java | 22 +++++++++++++ .../sntris/service/bean/SntrisBean.java | 16 +++++----- 5 files changed, 73 insertions(+), 9 deletions(-) diff --git a/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22InputDTO.java b/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22InputDTO.java index 378aae9..cf7fa05 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22InputDTO.java +++ b/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22InputDTO.java @@ -14,16 +14,27 @@ import cokr.xit.interfaces.sntris.SntrisWSDTO; public class Ye22InputDTO extends SntrisWSDTO { private static final long serialVersionUID = 1L; + /** 과태료대장 키 */ private String buAk; + /** 부서코드 */ private String buseoCd; + /** 물건명 */ private String mulNm; + /** 납부자 ID */ private String napId; + /** 납부자 이름 */ private String napNm; + /** 세목코드 */ private String semokCd; + /** 시구코드 */ private String siguCd; + /** 시스템 구분 */ private String systemGubun; + /** 과세구분 */ private String taxGubun; + /** 과세번호 */ private String taxNo; + /** 과세년월 */ private String taxYm; public Ye22InputDTO() {} diff --git a/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22NoticeInfoDTO.java b/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22NoticeInfoDTO.java index acdb1d3..42f5c64 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22NoticeInfoDTO.java +++ b/src/main/java/cokr/xit/interfaces/sntris/fileoffer/Ye22NoticeInfoDTO.java @@ -1156,6 +1156,30 @@ public class Ye22NoticeInfoDTO extends SntrisWSDTO { getters.put("K뱅크", this::getQAccountNo); return getters; } + /**기금합계를 반환한다. + * @return 기금합계 + */ + public long getGigumAmt() { + return gigum + gigumGasanAmt + gigumIja; + } + /**국세합계를 반환한다. + * @return 국세합계 + */ + public long getGukseAmt() { + return gukse + gukseGasanAmt + gukseIja; + } + /**시세합계를 반환한다. + * @return 시세합계 + */ + public long getSiseAmt() { + return sise + siseGasanAmt + siseIja; + } + /**구세합계를 반환한다. + * @return 구세합계 + */ + public long getGuseAmt() { + return guse + guseGasanAmt + guseIja; + } /**가산금 합계를 반환한다. * @return 가산금 합계 @@ -1171,6 +1195,13 @@ public class Ye22NoticeInfoDTO extends SntrisWSDTO { return getTaxAmt() + getGasanAmt(); } + /**최종금액을 반환한다. + * @return 최종금액 + */ + public long getFinalAmt() { + return getTaxAmt() - getGigumAmt() - getGukseAmt() - getSiseAmt() - getGuseAmt(); + } + private Object __equalsCalc = null; @Override public synchronized boolean equals(Object obj) { diff --git a/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebPreNoticeDTO.java b/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebPreNoticeDTO.java index ec99358..2099c3a 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebPreNoticeDTO.java +++ b/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebPreNoticeDTO.java @@ -754,7 +754,7 @@ public class Bu18WebPreNoticeDTO extends SntrisWSDTO { } ); - public static org.apache.axis.description.TypeDesc getTypeDesc() { + public static TypeDesc getTypeDesc() { return typeDesc; } 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 5970229..cef1471 100644 --- a/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java +++ b/src/main/java/cokr/xit/interfaces/sntris/prenotice/Bu18WebReturnInfoDTO.java @@ -1,5 +1,9 @@ package cokr.xit.interfaces.sntris.prenotice; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.function.Supplier; + import javax.xml.namespace.QName; import org.apache.axis.description.ElementDesc; @@ -36,6 +40,7 @@ public class Bu18WebReturnInfoDTO extends SntrisWSDTO { private String SAccountNo; /** 계좌번호(우리) */ private String WAccountNo; + /** 세외수입부과 키 */ private String buAfk; /** 전자납부번호 */ private String enapbuNo; @@ -44,6 +49,7 @@ public class Bu18WebReturnInfoDTO extends SntrisWSDTO { private String etcColmn3; private String etcColmn4; private String etcColmn5; + /** 과태료대장 키 */ private String noticeAk; private String returnCode; private String returnMsg; @@ -390,6 +396,22 @@ public class Bu18WebReturnInfoDTO extends SntrisWSDTO { this.returnMsg = returnMsg; } + public Map> accountGetters() { + LinkedHashMap> getters = new LinkedHashMap<>(); + getters.put("신한", this::getSAccountNo); + getters.put("우리", this::getWAccountNo); + getters.put("하나", this::getHAccountNo); + getters.put("국민", this::getKAccountNo); + getters.put("기업", this::getIAccountNo); + getters.put("우체국", this::getPAccountNo); + getters.put("씨티", this::getCAccountNo); + getters.put("농협", this::getNAccountNo); + getters.put("수협", this::getFAccountNo); + getters.put("카카오", this::getOAccountNo); + getters.put("K뱅크", this::getQAccountNo); + return getters; + } + public boolean isSuccess() { return "0".equals(returnCode); } 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 38e7f33..0609e60 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 @@ -100,14 +100,6 @@ public class SntrisBean extends AbstractBean { } } - public List getPreNoticeList(Ye22InputDTO input) { - try { - return List.of(fileOfferWS.webGwaseInfo007(input)); - } catch (Exception e) { - throw runtimeException(e); - } - } - public Map> registerPreNotices(Ye22InputDTO input, Map prenotices) { return registerPreNotices(prenotices).entrySet().stream() .filter(entry -> entry.getValue().isSuccess()) @@ -120,6 +112,14 @@ public class SntrisBean extends AbstractBean { )); } + public List getPreNoticeList(Ye22InputDTO input) { + try { + return List.of(fileOfferWS.webGwaseInfo007(input)); + } catch (Exception e) { + throw runtimeException(e); + } + } + public List parseNotices(InputStream input) { return new Ye22NoticeReader().read(input, null); }