1. 부과제외 수정.

2. 단속상태변경이력 수정.
3. 민원접수 초기자료 편집 수정.
main
jjh 6 months ago
parent fa8ab2c595
commit bbcdb21fed

@ -58,18 +58,7 @@ public interface CrdnSttsHstryMapper extends AbstractMapper {
* </ul>
* @return
*/
int insertCrdnSttsHstry(Map<String, Object> params);
/** .
* @param crdnSttsHstry
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insert(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstry != null && insertCrdnSttsHstry(params().set("crdnSttsHstry", crdnSttsHstry)) == 1;
}
int insertCrdnSttsHstry(CrdnSttsHstry crdnSttsHstry);
/** .
* @param params
@ -78,18 +67,7 @@ public interface CrdnSttsHstryMapper extends AbstractMapper {
* </ul>
* @return
*/
int updateCrdnSttsHstry(Map<String, Object> params);
/** .
* @param crdnSttsHstry
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean update(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstry != null && updateCrdnSttsHstry(params().set("crdnSttsHstry", crdnSttsHstry)) == 1;
}
int updateCrdnSttsHstry(CrdnSttsHstry crdnSttsHstry);
/** .
* @param params
@ -98,18 +76,7 @@ public interface CrdnSttsHstryMapper extends AbstractMapper {
* </ul>
* @return
*/
int deleteCrdnSttsHstry(Map<String, ?> params);
/** .
* @param crdnSttsHstry
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstry != null && deleteCrdnSttsHstry(params().set("crdnSttsHstry", crdnSttsHstry)) == 1;
}
int deleteCrdnSttsHstry(CrdnSttsHstry crdnSttsHstry);
/**(TB_CRDN) .
* @param params
@ -118,17 +85,6 @@ public interface CrdnSttsHstryMapper extends AbstractMapper {
* </ul>
* @return
*/
int updateCrdnSttsCd(Map<String, Object> params);
/**(TB_CRDN) .
* @param excl01
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean updateCrdn(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstry != null && updateCrdnSttsCd(params().set("crdnSttsHstry", crdnSttsHstry)) == 1;
}
int updateCrdnSttsCd(CrdnSttsHstry crdnSttsHstry);
}

@ -66,7 +66,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
crdnSttsHstry.setUseYn("Y");
}
return crdnSttsHstryMapper.insert(crdnSttsHstry);
return crdnSttsHstryMapper.insertCrdnSttsHstry(crdnSttsHstry) == 1;
}
/** .
@ -77,10 +77,10 @@ public class CrdnSttsHstryBean extends AbstractBean {
* </ul>
*/
public boolean update(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstryMapper.update(crdnSttsHstry);
return crdnSttsHstryMapper.updateCrdnSttsHstry(crdnSttsHstry) == 1;
}
/** .
/** . ID .
* @param crdnSttsHstry
* @return
* <ul><li> true</li>
@ -88,7 +88,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
* </ul>
*/
public boolean remove(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstryMapper.delete(crdnSttsHstry);
return crdnSttsHstryMapper.deleteCrdnSttsHstry(crdnSttsHstry) >= 1;
}
/** .
@ -99,7 +99,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
* </ul>
*/
public boolean updateCrdn(CrdnSttsHstry crdnSttsHstry) {
return crdnSttsHstryMapper.updateCrdn(crdnSttsHstry);
return crdnSttsHstryMapper.updateCrdnSttsCd(crdnSttsHstry) == 1;
}
/** , .
@ -111,7 +111,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
*/
public boolean createHstryUpdateCrdnSttsCd(CrdnSttsHstry crdnSttsHstry) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
int rtnNocs = -1;
// 사용 여부
if (crdnSttsHstry.getUseYn() == null) {
@ -125,13 +125,13 @@ public class CrdnSttsHstryBean extends AbstractBean {
}
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다.
rtnScs = crdnSttsHstryMapper.insert(crdnSttsHstry);
if (!rtnScs) {
rtnNocs = crdnSttsHstryMapper.insertCrdnSttsHstry(crdnSttsHstry);
if (rtnNocs != 1) {
throw new RuntimeException("단속상태이력 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
// 단속(TB_CRDN) 대장을 수정 한다.
rtnScs = crdnSttsHstryMapper.updateCrdn(crdnSttsHstry);
if (!rtnScs) {
rtnNocs = crdnSttsHstryMapper.updateCrdnSttsCd(crdnSttsHstry);
if (rtnNocs != 1) {
throw new RuntimeException("단속상태이력 정보 등록 중 오류가 발생하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -147,7 +147,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
*/
public boolean removeHstryUpdateCrdnSttsCd(String crdnId, String crdnSttsCd, String deltSttsCd, String deltEtcCn, boolean insertBfrSttsYn) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
int rtnNocs = -1;
// 단속 ID에 해당하는 단속상태코드의 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 조회 한다.
DataObject crdnSttsHstryInfo = crdnSttsHstryMapper.selectCrdnSttsHstryInfo(crdnId, crdnSttsCd, "Y");
@ -161,8 +161,8 @@ public class CrdnSttsHstryBean extends AbstractBean {
crdnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID"));
crdnSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.update(crdnSttsHstry);
if (!rtnScs) {
rtnNocs = crdnSttsHstryMapper.updateCrdnSttsHstry(crdnSttsHstry);
if (rtnNocs != 1) {
throw new RuntimeException("단속상태이력 대장에 이력 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
@ -182,8 +182,8 @@ public class CrdnSttsHstryBean extends AbstractBean {
opnnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID"));
opnnSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.update(opnnSttsHstry);
if (!rtnScs) {
rtnNocs = crdnSttsHstryMapper.updateCrdnSttsHstry(opnnSttsHstry);
if (rtnNocs != 1) {
throw new RuntimeException("단속상태이력 대장에 의견제출접수 이력 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
@ -196,8 +196,8 @@ public class CrdnSttsHstryBean extends AbstractBean {
deleteSttsHstry.setEtcCn(deltEtcCn);
deleteSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.insert(deleteSttsHstry);
if (!rtnScs) {
rtnNocs = crdnSttsHstryMapper.insertCrdnSttsHstry(deleteSttsHstry);
if (rtnNocs != 1) {
throw new RuntimeException("삭제 단속상태이력 정보 등록 중 오류가 발생하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
@ -212,7 +212,7 @@ public class CrdnSttsHstryBean extends AbstractBean {
crdnSttsHstry.setCrdnSttsChgDt(crdnSttsHstryInfo.string("BFR_STTS_CHG_DT"));
crdnSttsHstry.setUseYn("Y");
rtnScs = createHstryUpdateCrdnSttsCd(crdnSttsHstry);
boolean rtnScs = createHstryUpdateCrdnSttsCd(crdnSttsHstry);
if (!rtnScs) {
throw new RuntimeException("단속상태이력 정보 등록 중 오류가 발생하였습니다."); // 예외를 발생시켜서 DB Rollback
}

@ -215,12 +215,12 @@ public class CrdnCvlcptSubBean extends AbstractBean {
boolean retSuccess = false;
LevyExcl excl01 = new LevyExcl();
excl01.setCrdnId(crdn.getCrdnId());
excl01.setSggCd(crdn.getSggCd());
excl01.setLevyExclYmd(crdn.getLevyExclYmd());
excl01.setLevyExclSeCd(crdn.getLevyExclSeCd());
excl01.setLevyExclRsnCd(crdn.getLevyExclRsnCd());
excl01.setEtcCn(crdn.getEtcCn());
retSuccess = levyExclMapper.insertLevyExcl(excl01);
retSuccess = levyExclMapper.insertLevyExcl(excl01) == 1 ? true : false;
if (!retSuccess) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("부과제외 대장 등록에 실패하였습니다.");
@ -265,8 +265,8 @@ public class CrdnCvlcptSubBean extends AbstractBean {
crdnSttsHstry.setEtcCn("민원 요청 수용");
}
boolean retSuccess = crdnSttsHstryMapper.insert(crdnSttsHstry);
if(!retSuccess) {
int rtnNocs = crdnSttsHstryMapper.insertCrdnSttsHstry(crdnSttsHstry);
if(rtnNocs != 1) {
throw new RuntimeException("단속민원답변 수정 중 단속상태변경 이력 등록에 실패하였습니다.");
}
}
@ -351,7 +351,7 @@ public class CrdnCvlcptSubBean extends AbstractBean {
excl01.setLevyExclSeCd("1");
excl01.setLevyExclRsnCd(levyExclRsnCd);
excl01.setEtcCn(etcCn);
saved = levyExclMapper.insertLevyExcl(excl01);
saved = levyExclMapper.insertLevyExcl(excl01) == 1 ? true : false;
if (!saved) {
throw new RuntimeException("서손처리 중 부과제외 대장 등록에 실패하였습니다.");
}
@ -373,7 +373,7 @@ public class CrdnCvlcptSubBean extends AbstractBean {
crdnSttsHstry.setCrdnSttsCd("81");
crdnSttsHstry.setTaskDtlId(excl01.getLevyExclId());
crdnSttsHstry.setEtcCn(etcCn);
saved = crdnSttsHstryMapper.insert(crdnSttsHstry);
saved = crdnSttsHstryMapper.insertCrdnSttsHstry(crdnSttsHstry) == 1 ? true : false;
if (!saved) {
throw new RuntimeException("서손처리 중 단속상태이력 등록에 실패하였습니다.");
}

@ -1,7 +1,6 @@
package cokr.xit.fims.excl.dao;
import java.util.List;
import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
@ -63,18 +62,7 @@ public interface LevyExclMapper extends AbstractMapper {
* </ul>
* @return
*/
int insertLevyExcl(Map<String, Object> params);
/** .
* @param levyExcl
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insertLevyExcl(LevyExcl levyExcl) {
return levyExcl != null && insertLevyExcl(params().set("levyExcl", levyExcl)) == 1;
}
int insertLevyExcl(LevyExcl levyExcl);
/** .
* @param params
@ -83,18 +71,7 @@ public interface LevyExclMapper extends AbstractMapper {
* </ul>
* @return
*/
int updateLevyExcl(Map<String, Object> params);
/** .
* @param levyExcl
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean updateLevyExcl(LevyExcl levyExcl) {
return levyExcl != null && updateLevyExcl(params().set("levyExcl", levyExcl)) == 1;
}
int updateLevyExcl(LevyExcl levyExcl);
/** .
* @param params
@ -103,50 +80,12 @@ public interface LevyExclMapper extends AbstractMapper {
* </ul>
* @return
*/
int deleteLevyExcl(Map<String, Object> params);
/** .
* @param levyExcl
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean deleteLevyExcl(LevyExcl levyExcl) {
return levyExcl != null && deleteLevyExcl(params().set("levyExcl", levyExcl)) == 1;
}
int deleteLevyExcl(LevyExcl levyExcl);
/**(TB_CRDN) .
* @param crdn
* @return
*/
int updateParkngPsbltyRsltCd(Map<String, Object> params);
default boolean updateParkngPsbltyRsltCd(Crdn crdn) {
return crdn != null && updateParkngPsbltyRsltCd(params().set("crdn", crdn)) == 1;
}
/** .
* @param crdnId ID
* @return ,
*/
DataObject selectSndngDtl(LevyExclQuery req);
default DataObject selectSndngDtlInfo(String crdnId, String sndngRcvmtCd) {
DataObject sndngDtlInfo = selectSndngDtl(new LevyExclQuery().setCrdnId(crdnId)
.setSndngRcvmtCd(sndngRcvmtCd));
return sndngDtlInfo;
}
/** (TB_SNDNG_DTL) .
* @param sndngDtl
* @return
*/
int updateRcvmtCd(Map<String, Object> params);
default boolean updateRcvmtCd(SndngDtl sndngDtl) {
return sndngDtl != null && updateRcvmtCd(params().set("sndngDtl", sndngDtl)) >= 1;
}
int updateParkngPsbltyRsltCd(Crdn crdn);
}

@ -110,47 +110,45 @@ public class LevyExclBean extends AbstractBean {
*/
public String createLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
boolean rtnScs = false; // 처리 결과
int rtnNocs = -1; // 처리 결과 건수
String rtnMsg = ""; // 처리 결과 메시지
// 단속 ID로 단속, 부과제외 정보 조회
DataObject crdnLevyExclInfo = levyExclMapper.selectLevyExclInfo(new LevyExclQuery().setCrdnId(levyExcl.getCrdnId())
.setDelYn("N"));
DataObject levyExclInfo = levyExclMapper.selectLevyExclInfo(new LevyExclQuery().setCrdnId(levyExcl.getCrdnId()));
// 조회된 자료 정보로 등록 가능한지 검증
if (!crdnLevyExclInfo.string("LEVY_EXCL_ID").equals("")) { // 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료..
// 등록 대상 자료 검증
if (!levyExclInfo.string("LEVY_EXCL_ID").equals("")) { // 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료..
rtnMsg = "[F] 작업중 이미 등록된 부과제외 자료가 존재합니다.";
return rtnMsg;
}
if (!levyExclInfo.string("CVLCPT_LINK_ID").equals("")) { // 민원 ID
if (levyExclInfo.string("CVLCPT_PRCS_CD").equals("00")) { // 민원 처리상태 확인
rtnMsg = "[F] 작업중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.";
return rtnMsg;
}
}
if (levyExcl.getLevyExclSeCd().contains("1,2")) { // 비부과(서손), 계고
if (crdnLevyExclInfo.number("CRDN_STTS_CD").intValue() >= 51) { // 단속상태코드가 부과(51) 보다 크다면, 비부과 또는 계고 등록을 할 수 없다.
rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + crdnLevyExclInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
if (levyExclInfo.number("CRDN_STTS_CD").intValue() >= 51) { // 단속상태코드가 부과(51) 보다 크다면, 비부과 또는 계고 등록을 할 수 없다.
rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg;
}
} else if (levyExcl.getLevyExclSeCd().equals("3")) { // 부과취소
if (crdnLevyExclInfo.number("CRDN_STTS_CD").intValue() < 51) { // 단속상태코드가 부과(51) 보다 작다면, 전액감액 등록 할 수 없다.
rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + crdnLevyExclInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
if (levyExclInfo.number("CRDN_STTS_CD").intValue() < 51) { // 단속상태코드가 부과(51) 보다 작다면, 전액감액 등록 할 수 없다.
rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg;
}
}
// 단속 민원(TB_CRDN_CVLCPT) 민원 처리 확인
if (!crdnLevyExclInfo.string("CVLCPT_LINK_ID").equals("")) {
if (crdnLevyExclInfo.string("CVLCPT_PRCS_CD").equals("00")) {
rtnMsg = "[F] 작업중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.<br>";
if (levyExclInfo.string("LEVY_ID").equals("")) { // 부과(TB_LEVY) 정보 확인
rtnMsg = "[F] 작업 중 부과 자료가 존재하지 않습니다.<br>비부과로 처리 하시기 바랍니다.";
return rtnMsg;
}
}
// 부과취소(전액감액)일 경우 부과(TB_LEVY)에 감액금액 입력이 필요..
if (levyExcl.getLevyExclSeCd().equals("3")) {
if (crdnLevyExclInfo.string("LEVY_ID").equals("")) {
rtnMsg = "[F] 작업 중 부과 자료가 존재하지 않습니다.<br>비부과로 처리 하시기 바랍니다.<br>";
return rtnMsg;
}
// 감액(TB_RDCAMT) 등록
Rdcamt rdcamt = new Rdcamt();
rdcamt.setLevyId(crdnLevyExclInfo.string("LEVY_ID")); // 부과 ID
rdcamt.setLevyId(levyExclInfo.string("LEVY_ID")); // 부과 ID
rdcamt.setRdcamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자
rdcamt.setRdcamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소
rdcamt.setRdcamtRsnCd(levyExcl.getLevyExclRsnCd()); // 감액 사유 코드
@ -162,14 +160,25 @@ public class LevyExclBean extends AbstractBean {
}
// 부과제외(TB_LEVY_EXCL) 대장을 등록 한다.
rtnScs = levyExclMapper.insertLevyExcl(levyExcl);
if (!rtnScs) {
rtnNocs = levyExclMapper.insertLevyExcl(levyExcl);
if (rtnNocs != 1) {
throw new RuntimeException("부과제외 정보 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
// 표지정보 확인여부가 미확인(0)이면 -> 조회미대상(9) 으로
if (levyExclInfo.string("PARKNG_PSBLTY_RSLT_CD").equals("0")) { // 주차 가능 결과 코드(FIM034) - 0: 미확인
Crdn crdn = new Crdn();
crdn.setCrdnId(levyExclInfo.string("CRDN_ID")); // 단속 ID
crdn.setParkngPsbltyRsltCd("9"); // 주차 가능 결과 코드(FIM034) 9: 조회미대상
rtnNocs = levyExclMapper.updateParkngPsbltyRsltCd(crdn);
if (rtnNocs != 1) {
throw new RuntimeException("부과제외 삭제 작업 중 단속 대장의 표지정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD)
if (levyExcl.getLevyExclSeCd().equals("1")) { // 비부과
newCrdnSttsCd = "81"; // 비부과(서손)
} else if (levyExcl.getLevyExclSeCd().equals("2")) { // 계고
@ -180,9 +189,9 @@ public class LevyExclBean extends AbstractBean {
// 단속상태이력(TB_CRDN_STTS_HSTRY)
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnLevyExclInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(crdnLevyExclInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(crdnLevyExclInfo.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnId(levyExclInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(levyExclInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(levyExclInfo.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnSttsCd(newCrdnSttsCd);
crdnSttsHstry.setTaskDtlId(levyExcl.getLevyExclId());
@ -205,12 +214,12 @@ public class LevyExclBean extends AbstractBean {
*/
public String updateLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
int rtnNocs = -1; // 처리 결과 건수
String rtnMsg = ""; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 대장을 수정 한다.
rtnScs = levyExclMapper.updateLevyExcl(levyExcl);
if (!rtnScs) {
rtnNocs = levyExclMapper.updateLevyExcl(levyExcl);
if (rtnNocs != 1) {
throw new RuntimeException("부과제외 정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -229,17 +238,17 @@ public class LevyExclBean extends AbstractBean {
public String removeLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
int rtnNocs = -1; // 처리 결과 건수
String rtnMsg = ""; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 정보를 조회한다.
DataObject levyExclInfo = levyExclMapper.selectLevyExclInfo(new LevyExclQuery().setLevyExclId(levyExcl.getLevyExclId()));
// 부과제외 ID가 조회되지 않았다면 종료..
// 삭제 대상 자료 검증
if (levyExclInfo.string("LEVY_EXCL_ID").equals("")) {
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>부과제외 자료가 존재하지 않습니다.";
return rtnMsg;
}
// 단속 상태 코드(CRDN_STTS_CD) 확인..
if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("1") && !levyExclInfo.string("CRDN_STTS_CD").equals("81")) { // 비부과(서손)
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return rtnMsg;
@ -252,8 +261,8 @@ public class LevyExclBean extends AbstractBean {
}
// 부과제외(TB_LEVY_EXCL) 대장을 삭제 한다.
rtnScs = levyExclMapper.deleteLevyExcl(levyExcl);
if (!rtnScs) {
rtnNocs = levyExclMapper.deleteLevyExcl(levyExcl);
if (rtnNocs != 1) {
throw new RuntimeException("부과제외 정보 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -281,8 +290,8 @@ public class LevyExclBean extends AbstractBean {
crdn.setCrdnId(levyExclInfo.string("CRDN_ID")); // 단속 ID
crdn.setParkngPsbltyRsltCd("0"); // 주차 가능 결과 코드 - 0 미확인
rtnScs = levyExclMapper.updateParkngPsbltyRsltCd(crdn);
if (!rtnScs) {
rtnNocs = levyExclMapper.updateParkngPsbltyRsltCd(crdn);
if (rtnNocs != 1) {
throw new RuntimeException("부과제외 삭제 작업 중 단속 대장의 표지정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}

@ -6,6 +6,7 @@ import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.ss.usermodel.CellStyle;
import org.springframework.stereotype.Controller;
@ -175,7 +176,7 @@ public class Excl01Controller extends ApplicationController {
*/
@Task
@RequestMapping(name="부과제외 정보 조회", value=METHOD_URL.getLevyExclusionInfo)
public ModelAndView getLevyExclusionInfo(String saveCallbackFuncName, String savedCallbackFuncName, LevyExclQuery req) {
public ModelAndView getLevyExclusionInfo(HttpServletRequest hReq, LevyExclQuery req) {
DataObject info = levyExclService.getLevyExclInfo(req);
// 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인.
@ -196,8 +197,6 @@ public class Excl01Controller extends ApplicationController {
addCodes(commonCodes, mav, "FIM021", "FIM022");
return mav
.addObject("saveCallbackFuncName", saveCallbackFuncName) //
.addObject("savedCallbackFuncName", savedCallbackFuncName) //
.addObject("pageName", "excl01020") //
.addObject("infoPrefix", "levyExcl") // prefix
.addObject("infoPrefixUrl", "/excl/excl01") // prefixUrl
@ -205,6 +204,9 @@ public class Excl01Controller extends ApplicationController {
.addObject("FIM021List", commonCodes.get("FIM021")) // 부과 제외 구분 코드(LEVY_EXCL_SE_CD)
.addObject("FIM022List", commonCodes.get("FIM022")) // 부과 제외 사유 코드(LEVY_EXCL_RSN_CD)
.addObject("levyExclInfo", json ? info : toJson(info)) // 부과제외 정보
.addObject("saveCallbackFuncName", hReq.getParameter("saveCallbackFuncName")) //
.addObject("savedCallbackFuncName", hReq.getParameter("savedCallbackFuncName")) //
.addObject("openerPageName", hReq.getParameter("openerPageName"))
;
}
}

@ -289,6 +289,7 @@ public class PayerBean extends AbstractBean {
if (payerInfo.getZip().equals(payer.getZip())
&& payerInfo.getAddr().equals(payer.getAddr())
&& payerInfo.getDtlAddr().equals(payer.getDtlAddr())) {
payer.setAddrSn(payerInfo.getAddrSn()); // 주소 일련번호
rtnScs = updatePayerAddr(payer); // 납부자 주소 수정일자만 수정
} else {
rtnScs = createPayerAddr(payer); // 납부자 주소 등록

@ -23,23 +23,23 @@
</resultMap>
<sql id="select">
SELECT CSH.STTS_HSTRY_ID /* 상태 이력 ID */
, CSH.CRDN_ID /* 단속 ID */
, CSH.BFR_STTS_CD /* 이전 상태 코드 */
, CSH.BFR_STTS_CHG_DT /* 이전 상태 변경 일시 */
, CSH.CRDN_STTS_CD /* 단속 상태 코드 */
, CSH.TASK_DTL_ID /* 업무 상세 ID */
, CSH.USE_YN /* 사용 여부 */
, CSH.ETC_CN /* 기타 내용 */
, CSH.REG_DT /* 등록 일시 */
, CSH.RGTR /* 등록자 */
, CSH.MDFCN_DT /* 수정 일시 */
, CSH.MDFR /* 수정자 */
, (SELECT GET_CODE_NM('FIM010', CSH.BFR_STTS_CD) FROM DUAL) AS BFR_STTS_NM /* 이전 상태 명 */
, (SELECT GET_CODE_NM('FIM010', CSH.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, (SELECT GET_CODE_NM('CMN003', CSH.USE_YN) FROM DUAL) AS USE_YN_NM /* 사용 여부 명 */
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.RGTR) AS RGTR_NM /* 등록자 명 */
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.MDFR) AS MDFR_NM /* 수정자 명 */
SELECT CSH.STTS_HSTRY_ID <!-- 상태 이력 ID -->
, CSH.CRDN_ID <!-- 단속 ID -->
, CSH.BFR_STTS_CD <!-- 이전 상태 코드 -->
, (SELECT GET_CODE_NM('FIM010', CSH.BFR_STTS_CD) FROM DUAL) AS BFR_STTS_NM <!-- 이전 상태 명 -->
, CSH.BFR_STTS_CHG_DT <!-- 이전 상태 변경 일시 -->
, CSH.CRDN_STTS_CD <!-- 단속 상태 코드 -->
, (SELECT GET_CODE_NM('FIM010', CSH.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM <!-- 단속 상태 명 -->
, CSH.TASK_DTL_ID <!-- 업무 상세 ID -->
, CSH.USE_YN <!-- 사용 여부 -->
, (SELECT GET_CODE_NM('CMN003', CSH.USE_YN) FROM DUAL) AS USE_YN_NM <!-- 사용 여부 명 -->
, CSH.ETC_CN <!-- 기타 내용 -->
, CSH.REG_DT <!-- 등록 일시 -->
, CSH.RGTR <!-- 등록자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, CSH.MDFCN_DT <!-- 수정 일시 -->
, CSH.MDFR <!-- 수정자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CSH.MDFR) AS MDFR_NM <!-- 수정자 명 -->
FROM TB_CRDN_STTS_HSTRY CSH
LEFT OUTER JOIN TB_CRDN C ON (CSH.CRDN_ID = C.CRDN_ID)
</sql>
@ -88,57 +88,59 @@
<include refid="utility.sortBy" />
</select>
<insert id="insertCrdnSttsHstry" parameterType="map">/* 단속 상태 이력 등록(crdnSttsHstryMapper.insertCrdnSttsHstry) */
<selectKey resultType="string" keyProperty="crdnSttsHstry.sttsHstryId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(STTS_HSTRY_ID, 5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID
FROM TB_CRDN_STTS_HSTRY
WHERE STTS_HSTRY_ID LIKE CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
<insert id="insertCrdnSttsHstry" parameterType="cokr.xit.fims.cmmn.CrdnSttsHstry">/* 단속 상태 이력 등록(crdnSttsHstryMapper.insertCrdnSttsHstry) */
<selectKey resultType="string" keyProperty="sttsHstryId" keyColumn="NEW_ID" order="BEFORE">
<include refid="numbering.keyByYear">
<property name="TABLE_NAME" value="TB_CRDN_STTS_HSTRY" />
<property name="TABLE_KEY" value="STTS_HSTRY_ID" />
<property name="pad" value="20" />
</include>
</selectKey>
INSERT
INTO TB_CRDN_STTS_HSTRY (
STTS_HSTRY_ID /* 상태 이력 ID */
, CRDN_ID /* 단속 ID */
, BFR_STTS_CD /* 이전 상태 코드 */
, BFR_STTS_CHG_DT /* 이전 상태 변경 일시 */
, CRDN_STTS_CD /* 단속 상태 코드 */
, TASK_DTL_ID /* 업무 상세 ID */
, ETC_CN /* 기타 내용 */
, USE_YN /* 사용 여부 */
, REG_DT /* 등록 일시*/
, RGTR /* 등록자 */
, MDFCN_DT /* 수정 일시 */
, MDFR /* 수정자 */
STTS_HSTRY_ID <!-- 상태 이력 ID -->
, CRDN_ID <!-- 단속 ID -->
, BFR_STTS_CD <!-- 이전 상태 코드 -->
, BFR_STTS_CHG_DT <!-- 이전 상태 변경 일시 -->
, CRDN_STTS_CD <!-- 단속 상태 코드 -->
, TASK_DTL_ID <!-- 업무 상세 ID -->
, ETC_CN <!-- 기타 내용 -->
, USE_YN <!-- 사용 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
)
VALUES (
#{crdnSttsHstry.sttsHstryId} /* 상태 이력 ID */
, #{crdnSttsHstry.crdnId} /* 단속 ID */
, #{crdnSttsHstry.bfrSttsCd} /* 이전 상태 코드 */
, #{crdnSttsHstry.bfrSttsChgDt} /* 이전 상태 변경 일시 */
, #{crdnSttsHstry.crdnSttsCd} /* 단속 상태 코드 */
, #{crdnSttsHstry.taskDtlId} /* 업무 상세 ID */
, #{crdnSttsHstry.etcCn} /* 기타 내용 */
, #{crdnSttsHstry.useYn} /* 사용 여부 */
, <include refid="utility.now" /> /* 등록 일시 */
, #{crdnSttsHstry.createdBy} /* 등록자 */
, <include refid="utility.now" /> /* 수정 일시 */
, #{crdnSttsHstry.modifiedBy} /* 수정자 */
#{sttsHstryId} <!-- 상태 이력 ID -->
, #{crdnId} <!-- 단속 ID -->
, #{bfrSttsCd} <!-- 이전 상태 코드 -->
, #{bfrSttsChgDt} <!-- 이전 상태 변경 일시 -->
, #{crdnSttsCd} <!-- 단속 상태 코드 -->
, #{taskDtlId} <!-- 업무 상세 ID -->
, #{etcCn} <!-- 기타 내용 -->
, #{useYn} <!-- 사용 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateCrdnSttsHstry" parameterType="map">/* 단속 상태 이력 수정(crdnSttsHstryMapper.updateCrdnSttsHstry) */
<update id="updateCrdnSttsHstry" parameterType="cokr.xit.fims.cmmn.CrdnSttsHstry">/* 단속 상태 이력 수정(crdnSttsHstryMapper.updateCrdnSttsHstry) */
UPDATE TB_CRDN_STTS_HSTRY
SET USE_YN = #{crdnSttsHstry.useYn} /* 사용 여부 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */
WHERE STTS_HSTRY_ID = #{crdnSttsHstry.sttsHstryId} /* 상태 이력 ID */
SET USE_YN = #{useYn} <!-- 사용 여부 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE STTS_HSTRY_ID = #{sttsHstryId} <!-- 상태 이력 ID -->
</update>
<update id="deleteCrdnSttsHstry" parameterType="map">/* 단속 상태 이력 삭제(crdnSttsHstryMapper.deleteCrdnSttsHstry) */
<update id="deleteCrdnSttsHstry" parameterType="cokr.xit.fims.cmmn.CrdnSttsHstry">/* 단속 상태 이력 삭제(crdnSttsHstryMapper.deleteCrdnSttsHstry) */
UPDATE TB_CRDN_STTS_HSTRY
SET USE_YN = 'N' /* 사용 여부 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */
WHERE USE_YN = 'Y' /* 사용 여부 */
SET USE_YN = 'N' <!-- 사용 여부 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE USE_YN = 'Y' <!-- 사용 여부 -->
<if test="sttsHstryId != null">
AND STTS_HSTRY_ID = #{sttsHstryId}
</if>
@ -147,20 +149,20 @@
</if>
</update>
<update id="updateCrdnSttsCd" parameterType="map">/* 단속 대장 수정(crdnSttsHstryMapper.updateCrdnSttsCd) */
<update id="updateCrdnSttsCd" parameterType="cokr.xit.fims.cmmn.CrdnSttsHstry">/* 단속 대장 수정(crdnSttsHstryMapper.updateCrdnSttsCd) */
UPDATE TB_CRDN
SET CRDN_STTS_CD = #{crdnSttsHstry.crdnSttsCd} /* 단속 상태 코드 */
SET CRDN_STTS_CD = #{crdnSttsCd} <!-- 단속 상태 코드 -->
<choose>
<when test="crdnSttsHstry.crdnSttsChgDt != null">
, CRDN_STTS_CHG_DT = #{crdnSttsHstry.crdnSttsChgDt} /* 단속 상태 변경 일시 */
<when test="crdnSttsChgDt != null">
, CRDN_STTS_CHG_DT = #{crdnSttsChgDt} <!-- 단속 상태 변경 일시 -->
</when>
<otherwise>
, CRDN_STTS_CHG_DT = <include refid="utility.now" /> /* 단속 상태 변경 일시 */
, CRDN_STTS_CHG_DT = <include refid="utility.now" /> <!-- 단속 상태 변경 일시 -->
</otherwise>
</choose>
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{crdnSttsHstry.modifiedBy} /* 수정자 */
WHERE CRDN_ID = #{crdnSttsHstry.crdnId} /* 단속 ID */
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE CRDN_ID = #{crdnId} <!-- 단속 ID -->
</update>
</mapper>

@ -30,10 +30,13 @@
<sql id="selectList">
SELECT LE.LEVY_EXCL_ID <!-- 부과제외 ID -->
, LE.LEVY_EXCL_YMD <!-- 부과제외 일자 -->
, LE.LEVY_EXCL_SE_CD <!-- 부과 제외 구분 코드 -->
, (SELECT GET_CODE_NM('FIM021', LE.LEVY_EXCL_SE_CD) FROM DUAL) AS LEVY_EXCL_SE_NM <!-- 부과 제외 구분 명 -->
, LE.LEVY_EXCL_RSN_CD <!-- 부과 제외 사유 코드 -->
, (SELECT GET_CODE_NM('FIM022', LE.LEVY_EXCL_RSN_CD) FROM DUAL) AS LEVY_EXCL_RSN_NM <!-- 부과 제외 사유 명 -->
, LE.ETC_CN <!-- 기타 내용 -->
, LE.DEL_YN <!-- 삭제 여부 -->
, (SELECT GET_CODE_NM('CMN007', LE.DEL_YN) FROM DUAL) AS DEL_YN_NM <!-- 삭제 여부 명 -->
, LE.REG_DT <!-- 등록 일시 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LE.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, LE.MDFCN_DT <!-- 수정 일시 -->
@ -45,23 +48,19 @@
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM <!-- 단속 일시 -->
, C.VHRNO <!-- 차량번호 -->
, C.CRDN_STDG_NM <!-- 단속 법정동 명 -->
, C.CRDN_ROAD_NM <!-- 단속 도로 명 -->
, C.CRDN_PLC <!-- 단속 장소 -->
, C.FFNLG_CRDN_AMT <!-- 과태료 단속 금액 -->
, C.FFNLG_AMT <!-- 과태료 금액 -->
, C.CRDN_STTS_CD <!-- 단속 상태 코드 -->
, (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM <!-- 단속 상태 명 -->
, (SELECT GET_CODE_NM('FIM002', CA.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM <!-- 단속 구분 명 -->
, (SELECT GET_CODE_NM('FIM007', CA.CRDN_SPAREA_CD) FROM DUAL) AS CRDN_SPAREA_NM <!-- 단속 특별구역 명 -->
, (SELECT GET_CODE_NM('LVS005', CA.USE_FUEL_CD) FROM DUAL) AS USE_FUEL_NM <!-- 사용 연료 명 -->
, (SELECT GET_CODE_NM('FIM034', CA.PARKNG_PSBLTY_RSLT_CD) FROM DUAL) AS PARKNG_PSBLTY_RSLT_NM <!-- 주차 가능 결과 명 -->
, V.VLTN_ID <!-- 위반 ID -->
, V.VLTN_CD <!-- 위반 코드 -->
, V.VLTN_ARTCL <!-- 위반 항목 -->
, (SELECT V.VLTN_ARTCL FROM TB_VLTN V WHERE C.VLTN_ID = V.VLTN_ID) AS VLTN_ARTCL <!-- 위반 항목 -->
, P.RTPYR_ID <!-- 납부자 ID -->
, (SELECT GET_CODE_NM('FIM011', P.RTPYR_SE_CD) FROM DUAL) AS RTPYR_SE_NM <!-- 납부자 구분 명 -->
, P.RTPYR_NO <!-- 납부자 번호 -->
, P.RTPYR_NM <!-- 납부자 명 -->
, (SELECT GET_BRDT_FORMAT(P.RTPYR_BRDT, '.') FROM DUAL) AS RTPYR_BRDT_MASK <!-- 납부자 생년월일 마스크 -->
, PA.ZIP <!-- 우편번호 -->
, PA.ADDR <!-- 주소 -->
, PA.DTL_ADDR <!-- 상세 주소 -->
@ -74,7 +73,6 @@
FROM TB_LEVY_EXCL LE
INNER JOIN TB_CRDN C ON (LE.CRDN_ID = C.CRDN_ID)
INNER JOIN TB_CRDN_ADI CA ON (C.CRDN_ID = CA.CRDN_ID)
INNER 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_CRDN_CVLCPT CC ON (C.LINK_ID = CC.CVLCPT_LINK_ID AND C.CVLCPT_LINK_YN = 'Y' AND CC.DEL_YN = 'N')
@ -186,15 +184,13 @@
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
, C.CRDN_YMD <!-- 단속 일자 -->
, C.CRDN_TM <!-- 단속 시각 -->
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM <!-- 단속 일시 -->
, C.VHRNO <!-- 차량번호 -->
, C.CRDN_STDG_NM <!-- 단속 법정동 명 -->
, C.CRDN_PLC <!-- 단속 장소 -->
, C.CRDN_STTS_CD <!-- 단속 상태 코드 -->
, (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM <!-- 단속 상태 명 -->
, C.CRDN_STTS_CHG_DT <!-- 단속 상태 변경 일시 -->
, CA.PARKNG_PSBLTY_RSLT_CD <!-- 주차 가능 결과 코드 -->
, CC.CVLCPT_LINK_ID <!-- 민원 연계 ID -->
, CC.CVLCPT_PRCS_CD <!-- 민원 처리 코드 -->
, L.LEVY_ID <!-- 부과 ID -->
@ -210,6 +206,7 @@
, LE.MDFCN_DT <!-- 수정 일시 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LE.MDFR) AS MDFR_NM <!-- 수정자 명 -->
FROM TB_CRDN C
INNER JOIN TB_CRDN_ADI CA ON (C.CRDN_ID = CA.CRDN_ID)
LEFT OUTER JOIN TB_CRDN_CVLCPT CC ON (C.LINK_ID = CC.CVLCPT_LINK_ID AND C.CVLCPT_LINK_YN = 'Y' AND CC.DEL_YN = 'N')
LEFT OUTER JOIN TB_LEVY L ON (C.CRDN_ID = L.CRDN_ID AND L.DEL_YN = 'N')
LEFT OUTER JOIN TB_LEVY_EXCL LE ON (C.CRDN_ID = LE.CRDN_ID AND LE.DEL_YN = 'N')
@ -234,11 +231,14 @@
<include refid="utility.orderBy" />
</select>
<insert id="insertLevyExcl" parameterType="map">/* 부과제외 대장 등록(levyExclMapper.insertLevyExcl) */
<selectKey resultType="string" keyProperty="levyExcl.levyExclId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(#{levyExcl.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(LEVY_EXCL_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID
FROM TB_LEVY_EXCL
WHERE LEVY_EXCL_ID LIKE CONCAT(#{levyExcl.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
<insert id="insertLevyExcl" parameterType="cokr.xit.fims.excl.LevyExcl">/* 부과제외 대장 등록(levyExclMapper.insertLevyExcl) */
<selectKey resultType="string" keyProperty="levyExclId" keyColumn="NEW_ID" order="BEFORE">
<include refid="numbering.keyBySggAndYear">
<property name="TABLE_NAME" value="TB_LEVY_EXCL" />
<property name="TABLE_KEY" value="LEVY_EXCL_ID" />
<property name="sggCd" value="#{sggCd}" />
<property name="pad" value="20" />
</include>
</selectKey>
INSERT
INTO TB_LEVY_EXCL (
@ -255,66 +255,47 @@
, MDFR <!-- 수정자 -->
)
VALUES (
#{levyExcl.levyExclId} <!-- 부과 제외 ID -->
, #{levyExcl.crdnId} <!-- 단속 ID -->
, #{levyExcl.levyExclYmd} <!-- 부과 제외 일자 -->
, #{levyExcl.levyExclSeCd} <!-- 부과 제외 구분 코드 -->
, #{levyExcl.levyExclRsnCd} <!-- 부과 제외 사유 코드 -->
, #{levyExcl.etcCn} <!-- 기타 내용 -->
#{levyExclId} <!-- 부과 제외 ID -->
, #{crdnId} <!-- 단속 ID -->
, #{levyExclYmd} <!-- 부과 제외 일자 -->
, #{levyExclSeCd} <!-- 부과 제외 구분 코드 -->
, #{levyExclRsnCd} <!-- 부과 제외 사유 코드 -->
, #{etcCn} <!-- 기타 내용 -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{levyExcl.createdBy} <!-- 등록자 -->
, #{createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{levyExcl.modifiedBy} <!-- 수정자 -->
, #{modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateLevyExcl" parameterType="map">/* 부과제외 대장 수정(levyExclMapper.updateLevyExcl) */
<update id="updateLevyExcl" parameterType="cokr.xit.fims.excl.LevyExcl">/* 부과제외 대장 수정(levyExclMapper.updateLevyExcl) */
UPDATE TB_LEVY_EXCL
SET LEVY_EXCL_YMD = #{levyExcl.levyExclYmd} <!-- 부과 제외 일자 -->
, LEVY_EXCL_RSN_CD = #{levyExcl.levyExclRsnCd} <!-- 부과 제외 사유 코드 -->
, ETC_CN = #{levyExcl.etcCn} <!-- 기타 내용 -->
SET LEVY_EXCL_YMD = #{levyExclYmd} <!-- 부과 제외 일자 -->
, LEVY_EXCL_RSN_CD = #{levyExclRsnCd} <!-- 부과 제외 사유 코드 -->
, ETC_CN = #{etcCn} <!-- 기타 내용 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{levyExcl.modifiedBy} <!-- 수정자 -->
WHERE LEVY_EXCL_ID = #{levyExcl.levyExclId} <!-- 부과 제외 ID -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE LEVY_EXCL_ID = #{levyExclId} <!-- 부과 제외 ID -->
AND DEL_YN = 'N'
</update>
<update id="deleteLevyExcl" parameterType="map">/* 부과제외 대장 삭제(levyExclMapper.deleteLevyExcl) */
<update id="deleteLevyExcl" parameterType="cokr.xit.fims.excl.LevyExcl">/* 부과제외 대장 삭제(levyExclMapper.deleteLevyExcl) */
UPDATE TB_LEVY_EXCL
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{levyExcl.modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{levyExcl.delRsn} <!-- 삭제 사유 -->
WHERE LEVY_EXCL_ID = #{levyExcl.levyExclId} <!-- 부과 제외 ID -->
, DLTR = #{modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{delRsn} <!-- 삭제 사유 -->
WHERE LEVY_EXCL_ID = #{levyExclId} <!-- 부과 제외 ID -->
AND DEL_YN = 'N'
</update>
<update id="updateParkngPsbltyRsltCd" parameterType="map">/* 단속 대장 주차가능결과코드를 수정(levyExclMapper.updateParkngPsbltyRsltCd) */
<update id="updateParkngPsbltyRsltCd" parameterType="cokr.xit.fims.crdn.Crdn">/* 단속 대장 주차가능결과코드를 수정(levyExclMapper.updateParkngPsbltyRsltCd) */
UPDATE TB_CRDN_ADI
SET PARKNG_PSBLTY_RSLT_CD= #{crdn.parkngPsbltyRsltCd} <!-- 주차 가능 결과 코드 -->
SET PARKNG_PSBLTY_RSLT_CD= #{parkngPsbltyRsltCd} <!-- 주차 가능 결과 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{crdn.modifiedBy} <!-- 수정자 -->
WHERE CRDN_ID = #{crdn.crdnId} <!-- 단속 ID -->
AND DEL_YN = 'N'
</update>
<select id="selectSndngDtl" parameterType="map" resultType="dataobject">/* 발송상세 대장 객체 가져오기(levyExclMapper.selectSndngDtl) */
SELECT SNDNG_ID <!-- 발송 ID -->
, CRDN_ID <!-- 단속 ID -->
, SNDNG_RCVMT_CD <!-- 발송 수납 코드 -->
FROM TB_SNDNG_DTL
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE CRDN_ID = #{crdnId} <!-- 단속 ID -->
AND SNDNG_RCVMT_CD = #{sndngRcvmtCd} <!-- 발송 수납 코드 -->
AND DEL_YN = 'N'
</select>
<update id="updateRcvmtCd" parameterType="map">/* 발송상세 대장 수납코드를 수정(levyExclMapper.updateRcvmtCd) */
UPDATE TB_SNDNG_DTL
SET SNDNG_RCVMT_CD = NULL <!-- 발송 수납 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{sndngDtl.modifiedBy} <!-- 수정자 -->
WHERE CRDN_ID = #{sndngDtl.crdnId} <!-- 단속 ID -->
AND DEL_YN = 'N'
</update>

@ -42,7 +42,6 @@
, SV.MDFR <!-- 수정자 -->
, SV.DEL_DT <!-- 삭제 일시 -->
, SV.DLTR <!-- 삭제자 -->
, (SELECT GET_CODE_NM('FIM054', SV.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM <!-- 업무 구분 명 -->
, (SELECT GET_CODE_NM('FIM047', SV.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM <!-- 발송 구분 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.MDFR) AS MDFR_NM <!-- 등록자 명 -->
@ -156,7 +155,6 @@
, SV.MDFR <!-- 수정자 -->
, SV.DEL_DT <!-- 삭제 일시 -->
, SV.DLTR <!-- 삭제자 -->
, (SELECT GET_CODE_NM('FIM054', SV.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM <!-- 업무 구분 명 -->
, (SELECT GET_CODE_NM('FIM047', SV.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM <!-- 발송 구분 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.MDFR) AS MDFR_NM <!-- 등록자 명 -->

@ -466,12 +466,17 @@ $(document).ready(function(){
}
var crdnId = $("#crdnId--${pageName}").val();
var sggCd = $("#sggCd--${pageName}").val();
var taskSeCd = $("#taskSeCd--${pageName}").val();
var params = {
"crdnId" : crdnId,
"levyExclSeCd" : levyExclSeCd,
"openerPageName" : "${pageName}",
"saveCallbackFuncName" : "pageObject['${pageName}']['exclSaveCallback']",
"callPurpose" : "create"
"callPurpose" : "create",
"crdnId" : crdnId,
"sggCd" : sggCd,
"taskSeCd" : taskSeCd,
"levyExclSeCd" : levyExclSeCd
};
ajax.get({
@ -496,17 +501,15 @@ $(document).ready(function(){
$P.save = (info, accept) => {
if (!info) return;
var formData = new FormData(document.getElementById("frmEdit--${pageName}"));
if(accept){
formData.append("acceptYn", "Y");
info.acceptYn = "Y";
} else {
formData.append("acceptYn", "N");
info.acceptYn = "N";
}
ajax.post({
url : $P.crdnControl.urls.update,
data : formData, contentType : false, processData : false,
data : info,
success : (resp) => {
$P.saveCallback(resp);
}
@ -519,6 +522,7 @@ $(document).ready(function(){
mergeInfo.etcCn = exclInfo.etcCn;
mergeInfo.levyExclId = exclInfo.levyExclId;
mergeInfo.levyExclYmd = exclInfo.levyExclYmd;
mergeInfo.levyExclRsnCd = exclInfo.levyExclRsnCd;
mergeInfo.levyExclSeCd = exclInfo.levyExclSeCd;

@ -132,7 +132,7 @@
// 저장 callback
$P.control.onSave = (resp) => {
let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html();
let dialogTitle = $("#" + $P.control.prefix + "Dialog--${openerPageName}").find("h5.modal-title").html();
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
// 메시지 출력
@ -142,7 +142,7 @@
});
if (resp.saved) {
dialog.close($P.control.prefix + "Dialog");
dialog.close($P.control.prefix + "Dialog--${openerPageName}");
if ("${savedCallbackFuncName}" != "") {
${savedCallbackFuncName}(resp.saved);
@ -202,6 +202,9 @@
dialog.alert({
content: "현재 " + $P.control.prefixName + " 정보를 저장하시겠습니까?"
, init: () => {
setDialogZindex();
}
, onOK: () => {
$P.control.save($P.formFields.get()); // formFields
}
@ -233,7 +236,7 @@
// 초기 화면 설정
$P.initForm = () => {
// Dialog 마우스로 드래그 할 수 있도록 설정.
fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog"));
fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog--${openerPageName}"));
// 달력 초기화
initDatepicker("frmEdit--${pageName}");

Loading…
Cancel
Save