diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java
index f017c6ec..58eaaccd 100644
--- a/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java
+++ b/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java
@@ -149,6 +149,7 @@ public class LevyExclBean extends AbstractBean {
if (levyExclSeCd.equals("3")) {
// 감액(TB_RDAMT) 등록
Rdamt rdamt = new Rdamt();
+ rdamt.setSggCd(levyExclInfo.string("SGG_CD"));
rdamt.setLevyId(levyExclInfo.string("LEVY_ID")); // 부과 ID
rdamt.setRdamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자
rdamt.setRdamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소
diff --git a/src/main/java/cokr/xit/fims/nxrp/service/bean/SnisBean.java b/src/main/java/cokr/xit/fims/nxrp/service/bean/SnisBean.java
index 13629941..a7bc4963 100644
--- a/src/main/java/cokr/xit/fims/nxrp/service/bean/SnisBean.java
+++ b/src/main/java/cokr/xit/fims/nxrp/service/bean/SnisBean.java
@@ -415,7 +415,6 @@ public class SnisBean extends ScheduledBean {
if ("완납".equals(status)) {
Rcvmt rcvmt = Rcvmt.create(levy); // 수납등록
rcvmt.setRcvmtAmt(rcvmtAmt); // 수납금액
- rcvmt.setRcvmtYmd(notice.getNapbuYmd()); // 수납일자
if ("1".equals(statusCode)) { // 완납
String rcvmtSttsCd = switch (crdn.getCrdnSttsCd()) {
case "23", "31", "42", "43", "44", "45" -> "1"; // 사전부과, 의견제출, 사전통보발송, 사전통보완료 -> 사전통보수납
diff --git a/src/main/java/cokr/xit/fims/rcvm/Rcvmt.java b/src/main/java/cokr/xit/fims/rcvm/Rcvmt.java
index 1db48077..9e111574 100644
--- a/src/main/java/cokr/xit/fims/rcvm/Rcvmt.java
+++ b/src/main/java/cokr/xit/fims/rcvm/Rcvmt.java
@@ -25,11 +25,16 @@ public class Rcvmt extends AbstractEntity {
rcvmt.setTxitmCd(levy.getTxitmCd()); // 세목
rcvmt.setLevyNo(levy.getLevyNo()); // 부과번호
rcvmt.setIspySn(null); // 분납 일련번호
- rcvmt.setAcntgYmd(rcvmt.getRcvmtYmd()); // 회계일자
- rcvmt.setTsfYmd(rcvmt.getRcvmtYmd()); // 이체일자
+ String rcvmtYmd = levy.getRcvmtYmd();
+ rcvmt.setRcvmtYmd(rcvmtYmd); // 수납일자
+ rcvmt.setAcntgYmd(rcvmtYmd); // 회계일자
+ rcvmt.setTsfYmd(rcvmtYmd); // 이체일자
rcvmt.setPayMthdSeCd("10"); // 납부방법구분: 기타 (FIM045)
rcvmt.setEpayno(levy.getEpayno()); // 전자납부번호
+ rcvmt.setRcvmtPcptax(levy.getRcvmtPcptax());
+ rcvmt.setRcvmtAdamt(levy.getRcvmtAdamt());
+
rcvmt.setLastPcptax(levy.lastPcptax()); // 최종본세
rcvmt.setLastAdamt(levy.lastAdamt()); // 최종가산금
diff --git a/src/main/resources/sql/mapper/fims/rdca/rdcamt-mapper.xml b/src/main/resources/sql/mapper/fims/rdca/rdcamt-mapper.xml
index c692aa2a..6e220983 100644
--- a/src/main/resources/sql/mapper/fims/rdca/rdcamt-mapper.xml
+++ b/src/main/resources/sql/mapper/fims/rdca/rdcamt-mapper.xml
@@ -7,167 +7,161 @@
2024-02-01 JoJH 최초 작성
============================ -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
- SELECT R.RDAMT_ID
- , R.LEVY_ID
- , R.LAST_PCPTAX
- , R.LAST_ADAMT
- , R.RDAMT_YMD
- , R.RDAMT_SE_CD
- , R.RDAMT_RSN_CD
- , R.RDAMT_PCPTAX
- , R.RDAMT_ADAMT
- , R.RDAMT_RTRCN_YN
- , R.RDAMT_RTRCN_YMD
- , R.RDAMT_RTRCN_RSN
- , R.DEL_YN
- , R.REG_DT
- , R.RGTR
- , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM
- , R.MDFCN_DT
- , R.MDFR
- , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM
- FROM TB_RDAMT R
- INNER JOIN TB_LEVY L ON (R.LEVY_ID = L.LEVY_ID)
-
+SELECT R.RDAMT_ID
+ , R.LEVY_ID
+ , R.LAST_PCPTAX
+ , R.LAST_ADAMT
+ , R.RDAMT_YMD
+ , R.RDAMT_SE_CD
+ , R.RDAMT_RSN_CD
+ , R.RDAMT_PCPTAX
+ , R.RDAMT_ADAMT
+ , R.RDAMT_RTRCN_YN
+ , R.RDAMT_RTRCN_YMD
+ , R.RDAMT_RTRCN_RSN
+ , R.DEL_YN
+ , R.REG_DT
+ , R.RGTR
+ , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM
+ , R.MDFCN_DT
+ , R.MDFR
+ , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM
+ FROM TB_RDAMT R
+ INNER JOIN TB_LEVY L ON (R.LEVY_ID = L.LEVY_ID)
-
- SELECT R.RDAMT_ID
- , R.LEVY_ID
- , R.LAST_PCPTAX
- , R.LAST_ADAMT
- , R.RDAMT_YMD
- , R.RDAMT_SE_CD
- , R.RDAMT_RSN_CD
- , R.RDAMT_PCPTAX
- , R.RDAMT_ADAMT
- , R.RDAMT_RTRCN_YN
- , R.RDAMT_RTRCN_YMD
- , R.RDAMT_RTRCN_RSN
- , R.DEL_YN
- , R.REG_DT
- , R.RGTR
- , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM
- , R.MDFCN_DT
- , R.MDFR
- , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM
- , R.DEL_DT
- , R.DLTR
- , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.DLTR) AS DLTR_NM
- , R.DEL_RSN
- FROM TB_RDAMT
-
+SELECT R.RDAMT_ID
+ , R.LEVY_ID
+ , R.LAST_PCPTAX
+ , R.LAST_ADAMT
+ , R.RDAMT_YMD
+ , R.RDAMT_SE_CD
+ , R.RDAMT_RSN_CD
+ , R.RDAMT_PCPTAX
+ , R.RDAMT_ADAMT
+ , R.RDAMT_RTRCN_YN
+ , R.RDAMT_RTRCN_YMD
+ , R.RDAMT_RTRCN_RSN
+ , R.DEL_YN
+ , R.REG_DT
+ , R.RGTR
+ , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM
+ , R.MDFCN_DT
+ , R.MDFR
+ , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM
+ , R.DEL_DT
+ , R.DLTR
+ , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.DLTR) AS DLTR_NM
+ , R.DEL_RSN
+ FROM TB_RDAMT
-
+
-
+
- /* 감액 대장 등록(rdcamtMapper.insertRdamt) */
-
- SELECT CONCAT(#{rdamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(RDAMT_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID
- FROM TB_RDAMT
- WHERE RDAMT_ID LIKE CONCAT(#{rdamt.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
-
- INSERT
- INTO TB_RDAMT (
- RDAMT_ID
- , LEVY_ID
- , LAST_PCPTAX
- , LAST_ADAMT
- , RDAMT_YMD
- , RDAMT_SE_CD
- , RDAMT_RSN_CD
- , RDAMT_PCPTAX
- , RDAMT_ADAMT
- , RDAMT_RTRCN_YN
- , RDAMT_RTRCN_YMD
- , RDAMT_RTRCN_RSN
- , DEL_YN
- , REG_DT
- , RGTR
- , MDFCN_DT
- , MDFR
- )
- VALUES (
- #{rdamt.rdamtId}
- , #{rdamt.levyId}
- , #{rdamt.lastPcptax}
- , #{rdamt.lastAdamt}
- , #{rdamt.rdamtYmd}
- , #{rdamt.rdamtSeCd}
- , #{rdamt.rdamtRsnCd}
- , #{rdamt.rdamtPcptax}
- , #{rdamt.rdamtAdamt}
- , 'N'
- , #{rdamt.rdamtRtrcnYmd}
- , #{rdamt.rdamtRtrcnRsn}
- , 'N'
- ,
- , #{rdamt.createdBy}
- ,
- , #{rdamt.modifiedBy}
- )
-
+/* 감액 대장 등록(rdcamtMapper.insertRdamt) */
+
+SELECT CONCAT(#{rdamt.sggCd}, THIS_YEAR, LPAD(CAST(IFNULL(MAX(SUBSTRING(RDAMT_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID
+ FROM (SELECT DATE_FORMAT(CURRENT_DATE, '%Y') THIS_YEAR FROM DUAL) A
+ LEFT OUTER JOIN TB_RDAMT B ON RDAMT_ID LIKE CONCAT(#{rdamt.sggCd}, THIS_YEAR, '%')
+
+INSERT INTO TB_RDAMT (
+ RDAMT_ID
+ , LEVY_ID
+ , LAST_PCPTAX
+ , LAST_ADAMT
+ , RDAMT_YMD
+ , RDAMT_SE_CD
+ , RDAMT_RSN_CD
+ , RDAMT_PCPTAX
+ , RDAMT_ADAMT
+ , RDAMT_RTRCN_YN
+ , RDAMT_RTRCN_YMD
+ , RDAMT_RTRCN_RSN
+ , DEL_YN
+ , REG_DT
+ , RGTR
+ , MDFCN_DT
+ , MDFR
+) VALUES (
+ #{rdamt.rdamtId}
+ , #{rdamt.levyId}
+ , #{rdamt.lastPcptax}
+ , #{rdamt.lastAdamt}
+ , #{rdamt.rdamtYmd}
+ , #{rdamt.rdamtSeCd}
+ , #{rdamt.rdamtRsnCd}
+ , #{rdamt.rdamtPcptax}
+ , #{rdamt.rdamtAdamt}
+ , 'N'
+ , #{rdamt.rdamtRtrcnYmd}
+ , #{rdamt.rdamtRtrcnRsn}
+ , 'N'
+ ,
+ , #{rdamt.createdBy}
+ ,
+ , #{rdamt.modifiedBy}
+)
+
- /* 감액 대장 수정(rdamtMapper.updateRdamt) */
- UPDATE TB_RDAMT
- SET LAST_PCPTAX = #{rdamt.lastPcptax}
- , LAST_ADAMT = #{rdamt.lastAdamt}
- , RDAMT_YMD = #{rdamt.rdamtYmd}
- , RDAMT_SE_CD = #{rdamt.rdamtSeCd}
- , RDAMT_RSN_CD = #{rdamt.rdamtRsnCd}
- , RDAMT_PCPTAX = #{rdamt.rdamtPcptax}
- , RDAMT_ADAMT = #{rdamt.rdamtAdamt}
- , RDAMT_RTRCN_YN = #{rdamt.rdamtRtrcnYn}
- , RDAMT_RTRCN_YMD = #{rdamt.rdamtRtrcnYmd}
- , RDAMT_RTRCN_RSN = #{rdamt.rdamtRtrcnRsn}
- , MDFCN_DT =
- , MDFR = #{rdamt.modifiedBy}
- WHERE RDAMT_ID = #{rdamt.rdamtId}
- AND DEL_YN = 'N'
-
+/* 감액 대장 수정(rdamtMapper.updateRdamt) */
+UPDATE TB_RDAMT
+ SET LAST_PCPTAX = #{rdamt.lastPcptax}
+ , LAST_ADAMT = #{rdamt.lastAdamt}
+ , RDAMT_YMD = #{rdamt.rdamtYmd}
+ , RDAMT_SE_CD = #{rdamt.rdamtSeCd}
+ , RDAMT_RSN_CD = #{rdamt.rdamtRsnCd}
+ , RDAMT_PCPTAX = #{rdamt.rdamtPcptax}
+ , RDAMT_ADAMT = #{rdamt.rdamtAdamt}
+ , RDAMT_RTRCN_YN = #{rdamt.rdamtRtrcnYn}
+ , RDAMT_RTRCN_YMD = #{rdamt.rdamtRtrcnYmd}
+ , RDAMT_RTRCN_RSN = #{rdamt.rdamtRtrcnRsn}
+ , MDFCN_DT =
+ , MDFR = #{rdamt.modifiedBy}
+ WHERE RDAMT_ID = #{rdamt.rdamtId}
+ AND DEL_YN = 'N'
+
- /* 감액 대장 삭제(rdamtMapper.deleteRdamt) */
- UPDATE TB_RDAMT
- SET DEL_YN = 'Y'
- , DEL_DT =
- , DLTR = #{rdamt.modifiedBy}
- , DEL_RSN = #{rdamt.delRsn}
- WHERE RDAMT_ID = #{rdamt.rdamtId}
- AND DEL_YN = 'N'
-
+/* 감액 대장 삭제(rdamtMapper.deleteRdamt) */
+UPDATE TB_RDAMT
+ SET DEL_YN = 'Y'
+ , DEL_DT =
+ , DLTR = #{rdamt.modifiedBy}
+ , DEL_RSN = #{rdamt.delRsn}
+ WHERE RDAMT_ID = #{rdamt.rdamtId}
+ AND DEL_YN = 'N'
+
-
+
\ No newline at end of file