diff --git a/src/main/java/cokr/xit/fims/excl/OpnnSbmsn.java b/src/main/java/cokr/xit/fims/excl/OpnnSbmsn.java index 77fc3ccc..6faefc4e 100644 --- a/src/main/java/cokr/xit/fims/excl/OpnnSbmsn.java +++ b/src/main/java/cokr/xit/fims/excl/OpnnSbmsn.java @@ -24,6 +24,11 @@ public class OpnnSbmsn extends AbstractEntity { */ private String crdnId; + /** + * 감면 ID + */ + private String rdctId; + /** * 접수 번호 */ diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java index aa643276..bb7f5d06 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java @@ -256,15 +256,9 @@ public class OpnnSbmsnBean extends AbstractBean { return rtnMsg; } - // 의견제출 답변을 수정한다. - rtnNocs = opnnSbmsnMapper.updateOpnnSbmsnAnswer(opnnSbmsn); - if (rtnNocs != 1) { - throw new RuntimeException("의견제출 심의 처리에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback - } - // 조회된 의견제출상태 코드와 수정 할 의견제출상태 코드가 다르다면.. if (!opnnSbmsn.getOpnnSbmsnSttsCd().equals(opnnSbmsnInfo.string("OPNN_SBMSN_STTS_CD"))) { - // 의견제출답변결과(OPNN_SBMSN_STTS_CD)가 과태료감경(04) 이라면.. + // 의견제출답변결과(OPNN_SBMSN_STTS_CD)가 과태료감경(04) 이라면 감경 등록 if (opnnSbmsn.getOpnnSbmsnSttsCd().equals("04")) { Rdct rdct = new Rdct(); rdct.setSggCd(opnnSbmsnInfo.string("SGG_CD")); @@ -277,11 +271,13 @@ public class OpnnSbmsnBean extends AbstractBean { rtnMsg = rdctBean.createRdct(rdct); if (!rtnMsg.contains("[S]")) { - throw new RuntimeException("의견제출 심의 처리 중 과태료 감경 등록(수정)에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + throw new RuntimeException("의견제출 심의 처리 중 과태료 감경 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } + + // 감면 ID + opnnSbmsn.setRdctId(rdct.getRdctId()); } else { - // 의견제출 심의로 인한 과태료 감경 대장인지 확인 - if (crdnRdctInfo != null && crdnRdctInfo.string("RDCT_ETC_CN").contains("의견제출 심의 처리")) { + if (!opnnSbmsnInfo.string("RDCT_ID").equals("")) { Rdct rdct = new Rdct(); rdct.setRdctId(opnnSbmsnInfo.string("RDCT_ID")); rdct.setDelRsn("의견제출 심의 처리에 의한 감경 삭제"); @@ -290,9 +286,18 @@ public class OpnnSbmsnBean extends AbstractBean { if (!rtnMsg.contains("[S]")) { throw new RuntimeException("의견제출 심의 처리 중 과태료 감경 등록(수정)에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } + + // 감면 ID + opnnSbmsn.setRdctId(null); } } + // 의견제출 답변을 수정한다. + rtnNocs = opnnSbmsnMapper.updateOpnnSbmsnAnswer(opnnSbmsn); + if (rtnNocs != 1) { + throw new RuntimeException("의견제출 심의 처리에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + } + // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록한다. String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD) diff --git a/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml b/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml index d33eb318..2c87f219 100644 --- a/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml +++ b/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml @@ -10,6 +10,7 @@ + @@ -120,7 +121,7 @@ LEFT OUTER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID) LEFT OUTER JOIN TB_PAYER P ON (C.RTPYR_ID = P.RTPYR_ID) LEFT OUTER JOIN TB_PAYER_ADDR PA ON (C.RTPYR_ID = PA.RTPYR_ID AND C.ADDR_SN = PA.ADDR_SN) - LEFT OUTER JOIN TB_RDCT R ON (C.CRDN_ID = R.CRDN_ID AND R.DEL_YN = 'N') + LEFT OUTER JOIN TB_RDCT R ON (OS.RDCT_ID = R.RDCT_ID AND R.DEL_YN = 'N') /* 의견제출 대장 객체 가져오기(opnnSbmsnMapper.selectOpnnSbmsns) */ @@ -407,6 +414,7 @@ INTO TB_OPNN_SBMSN ( OPNN_ID , CRDN_ID + , RDCT_ID , RCPT_NO , RCPT_YMD , RCPT_SE_CD @@ -438,6 +446,7 @@ VALUES ( #{opnnId} , #{crdnId} + , #{rdctId} , #{rcptNo} , #{rcptYmd} , #{rcptSeCd} @@ -494,7 +503,8 @@ /* 의견제출 대장 답변 수정(opnnSbmsnMapper.updateOpnnSbmsnAnswer) */ UPDATE TB_OPNN_SBMSN - SET DOC_NO = #{docNo} + SET RDCT_ID = #{rdctId} + , DOC_NO = #{docNo} , NTFCTN_SE_CD = #{ntfctnSeCd} , PIC_RVW_OPNN = #{picRvwOpnn} , OPNN_SBMSN_STTS_CD= #{opnnSbmsnSttsCd}