1. 과태료 대장 등록 자료 상세 조회(실시간) 수정.

2. 부과제외 수정.
main
jjh 6 months ago
parent 2db70576e6
commit 21df072845

@ -53,6 +53,11 @@ public class CrdnSttsHstry extends AbstractEntity {
*/ */
private String etcCn; private String etcCn;
/**
*
*/
private String useYn;
/** /**
* *
*/ */

@ -63,8 +63,8 @@ public class CrdnSttsHstryBean extends AbstractComponent {
* </ul> * </ul>
*/ */
public boolean create(CrdnSttsHstry crdnSttsHstry) { public boolean create(CrdnSttsHstry crdnSttsHstry) {
if (crdnSttsHstry.getUseYN() == null) { if (crdnSttsHstry.getUseYn() == null) {
crdnSttsHstry.setUseYN("Y"); crdnSttsHstry.setUseYn("Y");
} }
return crdnSttsHstryMapper.insert(crdnSttsHstry); return crdnSttsHstryMapper.insert(crdnSttsHstry);
@ -115,8 +115,8 @@ public class CrdnSttsHstryBean extends AbstractComponent {
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
// 사용 여부 // 사용 여부
if (crdnSttsHstry.getUseYN() == null) { if (crdnSttsHstry.getUseYn() == null) {
crdnSttsHstry.setUseYN("Y"); crdnSttsHstry.setUseYn("Y");
} }
// 단속 상태 변경 일시 // 단속 상태 변경 일시
if (crdnSttsHstry.getCrdnSttsChgDt() == null) { if (crdnSttsHstry.getCrdnSttsChgDt() == null) {
@ -149,7 +149,7 @@ public class CrdnSttsHstryBean extends AbstractComponent {
* <li> false</li> * <li> false</li>
* </ul> * </ul>
*/ */
public boolean removeHstryUpdateCrdnSttsCd(String crdnId, String crdnSttsCd, String deleteSttsCd, boolean insertBfrSttsYn) { public boolean removeHstryUpdateCrdnSttsCd(String crdnId, String crdnSttsCd, String deltSttsCd, String deltEtcCn, boolean insertBfrSttsYn) {
// 변수 선언 // 변수 선언
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
@ -162,9 +162,8 @@ public class CrdnSttsHstryBean extends AbstractComponent {
if (!crdnSttsCd.equals("")) { if (!crdnSttsCd.equals("")) {
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID")); crdnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID"));
crdnSttsHstry.setUseYN("N"); crdnSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.update(crdnSttsHstry); rtnScs = crdnSttsHstryMapper.update(crdnSttsHstry);
if (!rtnScs) { if (!rtnScs) {
@ -173,9 +172,9 @@ public class CrdnSttsHstryBean extends AbstractComponent {
} }
// 삭제 단속상태코드가 있다면.. 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다. // 삭제 단속상태코드가 있다면.. 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다.
if (!deleteSttsCd.equals("")) { if (!deltSttsCd.equals("")) {
// 단속상태가 의견제출접수(31)가 아니면서, 삭제상태코드가 의견제출삭제(92)나 경찰서이첩삭제(97) 일 경우 // 단속상태가 의견제출접수(31)가 아니면서, 삭제상태코드가 의견제출삭제(92)나 경찰서이첩삭제(97) 일 경우
if (!crdnSttsCd.equals("31") && "92,97".contains(deleteSttsCd)) { if (!crdnSttsCd.equals("31") && "92,97".contains(deltSttsCd)) {
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에서 의견제출접수(31) 이력을 조회후 사용여부를 미사용("N")으로 수정. // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에서 의견제출접수(31) 이력을 조회후 사용여부를 미사용("N")으로 수정.
crdnSttsHstryInfo = crdnSttsHstryMapper.selectCrdnSttsHstryInfo(crdnId, "31", "Y"); crdnSttsHstryInfo = crdnSttsHstryMapper.selectCrdnSttsHstryInfo(crdnId, "31", "Y");
@ -184,9 +183,8 @@ public class CrdnSttsHstryBean extends AbstractComponent {
} }
CrdnSttsHstry opnnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry opnnSttsHstry = new CrdnSttsHstry();
opnnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID")); opnnSttsHstry.setSttsHstryId(crdnSttsHstryInfo.string("STTS_HSTRY_ID"));
opnnSttsHstry.setUseYN("N"); opnnSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.update(opnnSttsHstry); rtnScs = crdnSttsHstryMapper.update(opnnSttsHstry);
if (!rtnScs) { if (!rtnScs) {
@ -195,12 +193,12 @@ public class CrdnSttsHstryBean extends AbstractComponent {
} }
CrdnSttsHstry deleteSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry deleteSttsHstry = new CrdnSttsHstry();
deleteSttsHstry.setCrdnId(crdnSttsHstryInfo.string("CRDN_ID")); deleteSttsHstry.setCrdnId(crdnSttsHstryInfo.string("CRDN_ID"));
deleteSttsHstry.setBfrSttsCd(crdnSttsHstryInfo.string("CRDN_STTS_CD")); deleteSttsHstry.setBfrSttsCd(crdnSttsHstryInfo.string("CRDN_STTS_CD"));
deleteSttsHstry.setBfrSttsChgDt(crdnSttsHstryInfo.string("REG_DT")); deleteSttsHstry.setBfrSttsChgDt(crdnSttsHstryInfo.string("REG_DT"));
deleteSttsHstry.setCrdnSttsCd(deleteSttsCd); deleteSttsHstry.setCrdnSttsCd(deltSttsCd);
deleteSttsHstry.setUseYN("N"); deleteSttsHstry.setEtcCn(deltEtcCn);
deleteSttsHstry.setUseYn("N");
rtnScs = crdnSttsHstryMapper.insert(deleteSttsHstry); rtnScs = crdnSttsHstryMapper.insert(deleteSttsHstry);
if (!rtnScs) { if (!rtnScs) {
@ -211,13 +209,12 @@ public class CrdnSttsHstryBean extends AbstractComponent {
if (insertBfrSttsYn) { if (insertBfrSttsYn) {
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다. // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다.
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnSttsHstryInfo.string("CRDN_ID")); crdnSttsHstry.setCrdnId(crdnSttsHstryInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(deleteSttsCd); crdnSttsHstry.setBfrSttsCd(deltSttsCd);
crdnSttsHstry.setBfrSttsChgDt(crdnSttsHstry.getCreatedAt()); crdnSttsHstry.setBfrSttsChgDt(crdnSttsHstry.getCreatedAt());
crdnSttsHstry.setCrdnSttsCd(crdnSttsHstryInfo.string("BFR_STTS_CD")); crdnSttsHstry.setCrdnSttsCd(crdnSttsHstryInfo.string("BFR_STTS_CD"));
crdnSttsHstry.setCrdnSttsChgDt(crdnSttsHstryInfo.string("BFR_STTS_CHG_DT")); crdnSttsHstry.setCrdnSttsChgDt(crdnSttsHstryInfo.string("BFR_STTS_CHG_DT"));
crdnSttsHstry.setUseYN("Y"); crdnSttsHstry.setUseYn("Y");
rtnScs = createHstryUpdateCrdnSttsCd(crdnSttsHstry); rtnScs = createHstryUpdateCrdnSttsCd(crdnSttsHstry);
if (!rtnScs) { if (!rtnScs) {

@ -114,40 +114,36 @@ public class LevyExclBean extends AbstractComponent {
public String createLevyExcl(LevyExcl levyExcl) { public String createLevyExcl(LevyExcl levyExcl) {
// 변수 선언 // 변수 선언
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지 String rtnMsg = ""; // 처리 결과 메시지
String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD) String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD)
// 단속 ID로 단속, 부과제외 정보 조회 // 단속 ID로 단속, 부과제외 정보 조회
DataObject crdnInfo = levyExclMapper.selectCrdnInfo(levyExcl.getCrdnId()); DataObject crdnInfo = levyExclMapper.selectCrdnInfo(levyExcl.getCrdnId());
// 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료.. // 조회된 자료 정보로 등록 가능한지 검증
if (!crdnInfo.string("LEVY_EXCL_ID").equals("")) { if (!crdnInfo.string("LEVY_EXCL_ID").equals("")) { // 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료..
rtnMsg = "[F] 작업 중 이미 등록된 부과제외 자료가 존재합니다."; rtnMsg = "[F] 작업중 이미 등록된 부과제외 자료가 존재합니다.";
return rtnMsg; return rtnMsg;
} }
// 단속 상태 코드(CRDN_STTS_CD) 확인.. if (levyExcl.getLevyExclSeCd().contains("1,2")) { // 비부과(서손), 계고
if (levyExcl.getLevyExclSeCd().equals("1") || levyExcl.getLevyExclSeCd().equals("2")) { // 비부과(서손), 계고 if (crdnInfo.number("CRDN_STTS_CD").intValue() >= 51) { // 단속상태코드가 부과(51) 보다 크다면, 비부과 또는 계고 등록을 할 수 없다.
// 단속 상태 코드가 부과(51) 보다 크다면, 비부과 또는 계고 등록을 할 수 없다. 종료.. rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + crdnInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
if (crdnInfo.number("CRDN_STTS_CD").intValue() >= 51) {
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + crdnInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg; return rtnMsg;
} }
} else if (levyExcl.getLevyExclSeCd().equals("5")) { } else if (levyExcl.getLevyExclSeCd().equals("3")) { // 부과취소
// 단속 상태 코드가 부과(51) 보다 작다면, 전액감액 등록 할 수 없다. 종료.. 전액감액 등록은 부과이후... if (crdnInfo.number("CRDN_STTS_CD").intValue() < 51) { // 단속상태코드가 부과(51) 보다 작다면, 전액감액 등록 할 수 없다.
if (crdnInfo.number("CRDN_STTS_CD").intValue() < 51) { rtnMsg = "[F] 작업중 오류가 발생하였습니다.<br>현재 자료의 단속상태가 " + crdnInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + crdnInfo.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg; return rtnMsg;
} }
} }
// 단속 민원(TB_CRDN_CVLCPT) 민원 처리 확인 if (!crdnInfo.string("CVLCPT_LINK_ID").equals("")) { // 단속 민원(TB_CRDN_CVLCPT) 민원 처리 확인
if (!crdnInfo.string("CVLCPT_LINK_ID").equals("")) {
if (crdnInfo.string("CVLCPT_PRCS_CD").equals("00")) { if (crdnInfo.string("CVLCPT_PRCS_CD").equals("00")) {
rtnMsg = "[F] 작업 중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.<br>"; rtnMsg = "[F] 작업중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.<br>";
return rtnMsg; return rtnMsg;
} }
} }
// 단속 상태 코드 설정. // 단속상태코드 설정.
if (levyExcl.getLevyExclSeCd().equals("1")) { // 비부과 if (levyExcl.getLevyExclSeCd().equals("1")) { // 비부과
newCrdnSttsCd = "81"; // 비부과(서손) newCrdnSttsCd = "81"; // 비부과(서손)
} else if (levyExcl.getLevyExclSeCd().equals("2")) { // 계고 } else if (levyExcl.getLevyExclSeCd().equals("2")) { // 계고
@ -163,9 +159,8 @@ public class LevyExclBean extends AbstractComponent {
return rtnMsg; return rtnMsg;
} }
// 감액 등록 // 감액(TB_RDCAMT) 등록
Rdcamt rdcamt = new Rdcamt(); Rdcamt rdcamt = new Rdcamt();
rdcamt.setLevyId(crdnInfo.string("LEVY_ID")); // 부과 ID rdcamt.setLevyId(crdnInfo.string("LEVY_ID")); // 부과 ID
rdcamt.setRdcamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자 rdcamt.setRdcamtYmd(levyExcl.getLevyExclYmd()); // 감액 일자
rdcamt.setRdcamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소 rdcamt.setRdcamtSeCd("02"); // 감액 구분 코드 FIM085 - 02:부과취소
@ -185,7 +180,6 @@ public class LevyExclBean extends AbstractComponent {
// 단속상태이력(TB_CRDN_STTS_HSTRY) // 단속상태이력(TB_CRDN_STTS_HSTRY)
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnInfo.string("CRDN_ID")); crdnSttsHstry.setCrdnId(crdnInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(crdnInfo.string("CRDN_STTS_CD")); crdnSttsHstry.setBfrSttsCd(crdnInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(crdnInfo.string("CRDN_STTS_CHG_DT")); crdnSttsHstry.setBfrSttsChgDt(crdnInfo.string("CRDN_STTS_CHG_DT"));
@ -213,7 +207,7 @@ public class LevyExclBean extends AbstractComponent {
public String updateLevyExcl(LevyExcl levyExcl) { public String updateLevyExcl(LevyExcl levyExcl) {
// 변수 선언 // 변수 선언
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지 String rtnMsg = ""; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 대장을 수정 한다. // 부과제외(TB_LEVY_EXCL) 대장을 수정 한다.
rtnScs = levyExclMapper.update(levyExcl); rtnScs = levyExclMapper.update(levyExcl);
@ -236,14 +230,10 @@ public class LevyExclBean extends AbstractComponent {
public String removeLevyExcl(LevyExcl levyExcl) { public String removeLevyExcl(LevyExcl levyExcl) {
// 변수 선언 // 변수 선언
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지 String rtnMsg = ""; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 정보를 조회한다. // 부과제외(TB_LEVY_EXCL) 정보를 조회한다.
LevyExclQuery req = new LevyExclQuery(); DataObject levyExclInfo = levyExclMapper.selectLevyExclInfo(new LevyExclQuery().setLevyExclId(levyExcl.getLevyExclId()));
req.setLevyExclId(levyExcl.getLevyExclId());
req.setDelYn("N");
DataObject levyExclInfo = levyExclMapper.selectLevyExclInfo(req);
// 부과제외 ID가 조회되지 않았다면 종료.. // 부과제외 ID가 조회되지 않았다면 종료..
if (levyExclInfo.string("LEVY_EXCL_ID").equals("")) { if (levyExclInfo.string("LEVY_EXCL_ID").equals("")) {
@ -269,16 +259,16 @@ public class LevyExclBean extends AbstractComponent {
} }
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에 부과제외 이력삭제 및 부과제외삭제 이력을 등록 한다. // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에 부과제외 이력삭제 및 부과제외삭제 이력을 등록 한다.
String deleteCrdnSttsCd = ""; String deltCrdnSttsCd = "";
if (levyExclInfo.string("CRDN_STTS_CD").equals("80")) { // 임시 if (levyExclInfo.string("CRDN_STTS_CD").equals("80")) { // 임시
throw new RuntimeException("부과취소는 부과제외 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("부과취소는 부과제외 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} else if (levyExclInfo.string("CRDN_STTS_CD").equals("81")) { } else if (levyExclInfo.string("CRDN_STTS_CD").equals("81")) {
deleteCrdnSttsCd = "91"; // 비부과(서손) 삭제 deltCrdnSttsCd = "91"; // 비부과(서손) 삭제
} else if (("83,84").contains(levyExclInfo.string("CRDN_STTS_CD"))) { } else if (("83,84").contains(levyExclInfo.string("CRDN_STTS_CD"))) {
deleteCrdnSttsCd = "93"; // 계고 삭제 deltCrdnSttsCd = "93"; // 계고 삭제
} }
rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deleteCrdnSttsCd, true); rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deltCrdnSttsCd, levyExcl.getDelRsn(), true);
if (!rtnScs) { if (!rtnScs) {
throw new RuntimeException("부과제외 삭제 작업 중 단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("부과제외 삭제 작업 중 단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }

@ -56,40 +56,7 @@ public class LevyExclServiceBean extends AbstractServiceBean implements LevyExcl
@Override @Override
public String removeLevyExcl(LevyExcl levyExcl) { public String removeLevyExcl(LevyExcl levyExcl) {
// 변수 선언 return levyExclBean.removeLevyExcl(levyExcl);
String rtnMsg = "[F] "; // 처리 결과 메시지
// 부과제외 ID 및 부과제외 IDs 확인하여 null이면 종료
if (levyExcl.getLevyExclId() == null && levyExcl.getLevyExclIds() == null) {
rtnMsg = "[F] 작업 중 선택 자료가 존재하지 않습니다.";
return rtnMsg;
}
// 부과제외 삭제 처리
if (levyExcl.getLevyExclId() != null) {
rtnMsg = levyExclBean.removeLevyExcl(levyExcl);
} else {
// 부과제외 IDs 를 확인하여 건수가 1보다 작다면 종료..
if (levyExcl.getLevyExclIds().length < 1) {
rtnMsg = "[F] 작업 중 선택 자료가 존재하지 않습니다.";
return rtnMsg;
}
// 부과제외 Ids 만큼 반복..
for (int iLoop = 0; iLoop < levyExcl.getLevyExclIds().length; iLoop++) {
// 부과제외 ID 설정
levyExcl.setLevyExclId(levyExcl.getLevyExclIds()[iLoop]);
// 부과제외 삭제 호출
rtnMsg = levyExclBean.removeLevyExcl(levyExcl);
// 오류가 발생하였으면 종료..
if (rtnMsg.contains("[F]")) {
return rtnMsg;
}
}
}
return rtnMsg;
} }
} }

@ -389,27 +389,27 @@ public class OpnnSbmsnBean extends AbstractComponent {
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에 의견제출 이력삭제 및 의견제출삭제 이력을 등록 한다. // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에 의견제출 이력삭제 및 의견제출삭제 이력을 등록 한다.
boolean insertBfrSttsYN = false; boolean insertBfrSttsYN = false;
String crdnSttsCd = ""; String crdnSttsCd = "";
String deleteCrdnSttsCd = ""; String deltCrdnSttsCd = "";
if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("31")) { // 의견진술 접수 if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("31")) { // 의견진술 접수
insertBfrSttsYN = true; insertBfrSttsYN = true;
crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD"); crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD");
deleteCrdnSttsCd = "92"; deltCrdnSttsCd = "92";
} else if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("82")) { // 의견진술 수용 } else if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("82")) { // 의견진술 수용
insertBfrSttsYN = true; insertBfrSttsYN = true;
crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD"); crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD");
deleteCrdnSttsCd = "92"; deltCrdnSttsCd = "92";
} else if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("87")) { // 경찰서 이첩 } else if (opnnSbmsnInfo.string("CRDN_STTS_CD").equals("87")) { // 경찰서 이첩
insertBfrSttsYN = true; insertBfrSttsYN = true;
crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD"); crdnSttsCd = opnnSbmsnInfo.string("CRDN_STTS_CD");
deleteCrdnSttsCd = "97"; deltCrdnSttsCd = "97";
} else { } else {
insertBfrSttsYN = false; insertBfrSttsYN = false;
crdnSttsCd = ""; crdnSttsCd = "";
deleteCrdnSttsCd = "92"; deltCrdnSttsCd = "92";
} }
rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(opnnSbmsnInfo.string("CRDN_ID"), crdnSttsCd, deleteCrdnSttsCd, insertBfrSttsYN); rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(opnnSbmsnInfo.string("CRDN_ID"), crdnSttsCd, deltCrdnSttsCd, opnnSbmsn.getDelRsn(), insertBfrSttsYN);
if (!rtnScs) { if (!rtnScs) {
throw new RuntimeException("단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }

@ -49,17 +49,18 @@ public class Excl01Controller extends ApplicationController {
public static final String public static final String
levyExclusionMain = "/010/main.do" // 부과 제외 관리 메인 화면 levyExclusionMain = "/010/main.do" // 부과 제외 관리 메인 화면
, getLevyExclusionList = "/010/list.do" // 부과 제외 대장 목록 조회 , getLevyExclusionList = "/010/list.do" // 부과 제외 대장 목록 조회
, removeLevyExclusion = "/010/remove.do" // 부과 제외 대장 삭제
, getLevyExclusionInfo = "/020/info.do" // 부과 제외 대장 조회 , getLevyExclusionInfo = "/020/info.do" // 부과 제외 대장 조회
, createLevyExclusion = "/020/create.do" // 부과 제외 대장 등록 , createLevyExclusion = "/020/create.do" // 부과 제외 대장 등록
, updateLevyExclusion = "/020/update.do" // 부과 제외 대장 수정 , updateLevyExclusion = "/020/update.do" // 부과 제외 대장 수정
, removeLevyExclusion = "/010/remove.do" // 부과 제외 대장 삭제
; ;
} }
/** 부과제외 대장 서비스 */ /**부과제외 대장 서비스*/
@Resource(name="levyExclService") @Resource(name="levyExclService")
protected LevyExclService levyExclService; protected LevyExclService levyExclService;
/**설정 정보 Bean */
@Resource(name="stngBean") @Resource(name="stngBean")
private StngBean stngBean; private StngBean stngBean;
@ -89,7 +90,7 @@ public class Excl01Controller extends ApplicationController {
; ;
} }
/** .<br /> /** .<br />
* {@link LevyExclService#getLevyExclList(LevyExclQuery)} * {@link LevyExclService#getLevyExclList(LevyExclQuery)}
* @param req * @param req
* @return jsonView * @return jsonView
@ -159,10 +160,12 @@ public class Excl01Controller extends ApplicationController {
xlsx.cell(0, 0).value("부과제외").value(center).merge(0, cellDefs.size() - 1) xlsx.cell(0, 0).value("부과제외").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx))) .cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList())); .cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
List<Integer> cellWidthInfo = cellDefs.stream().map(CellDef::getWidth).toList(); List<Integer> cellWidthInfo = cellDefs.stream().map(CellDef::getWidth).toList();
for(int i=0; i<cellWidthInfo.size();i++) { for(int i=0; i<cellWidthInfo.size();i++) {
xlsx.workbook().getSheetAt(0).setColumnWidth(i, cellWidthInfo.get(i)*256); xlsx.workbook().getSheetAt(0).setColumnWidth(i, cellWidthInfo.get(i)*256);
} }
return new ModelAndView("downloadView") return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("부과제외" + "_목록_" + dateTime + ".xlsx")); .addObject("download", xlsx.getDownloadable().setFilename("부과제외" + "_목록_" + dateTime + ".xlsx"));
} }
@ -178,7 +181,6 @@ public class Excl01Controller extends ApplicationController {
@Task @Task
@RequestMapping(name="부과제외 정보 조회", value=METHOD_URL.getLevyExclusionInfo) @RequestMapping(name="부과제외 정보 조회", value=METHOD_URL.getLevyExclusionInfo)
public ModelAndView getLevyExclusionInfo(String saveCallbackFuncName, String savedCallbackFuncName, LevyExclQuery req) { public ModelAndView getLevyExclusionInfo(String saveCallbackFuncName, String savedCallbackFuncName, LevyExclQuery req) {
//
DataObject info = levyExclService.getLevyExclInfo(req); DataObject info = levyExclService.getLevyExclInfo(req);
// 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인. // 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인.
@ -197,7 +199,7 @@ public class Excl01Controller extends ApplicationController {
// View(jsp)에서 사용할 공통코드를 조회 // View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054"); Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM021", "FIM022", "FIM054");
addCodes(commonCodes, mav, "FIM021", "FIM022", "FIM054"); addCodes(commonCodes, mav, "FIM021", "FIM022");
return mav return mav
.addObject("saveCallbackFuncName", saveCallbackFuncName) // .addObject("saveCallbackFuncName", saveCallbackFuncName) //
@ -223,8 +225,9 @@ public class Excl01Controller extends ApplicationController {
@RequestMapping(name="부과제외 대장 등록", value=METHOD_URL.createLevyExclusion) @RequestMapping(name="부과제외 대장 등록", value=METHOD_URL.createLevyExclusion)
public ModelAndView createLevyExclusion(LevyExcl levyExcl) { public ModelAndView createLevyExclusion(LevyExcl levyExcl) {
boolean saved = false; boolean saved = false;
String rtnMsg = levyExclService.createLevyExcl(levyExcl); String rtnMsg = "";
rtnMsg = levyExclService.createLevyExcl(levyExcl);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
} else { } else {
@ -247,8 +250,9 @@ public class Excl01Controller extends ApplicationController {
@RequestMapping(name="부과제외 대장 수정", value=METHOD_URL.updateLevyExclusion) @RequestMapping(name="부과제외 대장 수정", value=METHOD_URL.updateLevyExclusion)
public ModelAndView updateLevyExclusion(LevyExcl levyExcl) { public ModelAndView updateLevyExclusion(LevyExcl levyExcl) {
boolean saved = false; boolean saved = false;
String rtnMsg = levyExclService.updateLevyExcl(levyExcl); String rtnMsg = "";
rtnMsg = levyExclService.updateLevyExcl(levyExcl);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
} else { } else {
@ -272,7 +276,22 @@ public class Excl01Controller extends ApplicationController {
@RequestMapping(name="부과제외 대장 삭제", value=METHOD_URL.removeLevyExclusion) @RequestMapping(name="부과제외 대장 삭제", value=METHOD_URL.removeLevyExclusion)
public ModelAndView removeLevyExclusion(LevyExcl levyExcl) { public ModelAndView removeLevyExclusion(LevyExcl levyExcl) {
boolean saved = false; boolean saved = false;
String rtnMsg = levyExclService.removeLevyExcl(levyExcl); String rtnMsg = "";
if (levyExcl.getLevyExclIds().length > 0) { // 부과제외 IDs
// 부과제외 IDs 만큼 반복..
for (int iLoop = 0; iLoop < levyExcl.getLevyExclIds().length; iLoop++) {
// 부과제외 ID 설정
levyExcl.setLevyExclId(levyExcl.getLevyExclIds()[iLoop]);
// 부과제외 삭제 호출
rtnMsg = levyExclService.removeLevyExcl(levyExcl);
if (rtnMsg.contains("[F]")) // 오류가 발생하였으면 종료..
break;
}
} else {
rtnMsg = levyExclService.removeLevyExcl(levyExcl);
}
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;

@ -375,7 +375,8 @@ public class NisIndivBean extends AbstractComponent {
// 연계 서비스 호출 후 메세지 return // 연계 서비스 호출 후 메세지 return
rtnMsg = callHttpsJson(sUrl, "POST", sJsonData); rtnMsg = callHttpsJson(sUrl, "POST", sJsonData);
/* /*
// 테스트 샘플
rtnMsg = "{ " rtnMsg = "{ "
+ " \"linkRstCd\":" + "\"000" + "\"" + " \"linkRstCd\":" + "\"000" + "\""
+ ", \"linkRstMsg\":" + "\"정상 조회되었습니다." + "\"" + ", \"linkRstMsg\":" + "\"정상 조회되었습니다." + "\""

@ -100,29 +100,36 @@ public class RdcamtBean extends AbstractComponent {
public String createRdcamt(Rdcamt rdcamt) { public String createRdcamt(Rdcamt rdcamt) {
// 변수 선언 // 변수 선언
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지 String rtnMsg = ""; // 처리 결과 메시지
// 부과 ID로 부과 정보 조회 // 부과 ID로 부과 정보 조회
DataObject levyInfo = levyMapper.selectLevyAmt(new LevyQuery().setLevyId(rdcamt.getLevyId())); DataObject levyInfo = levyMapper.selectLevyAmt(new LevyQuery().setLevyId(rdcamt.getLevyId()));
// 부과 확인
// 부과(TB_LEVY) 대장 정보를 수정한다. // 부과(TB_LEVY) 대장 정보를 수정한다.
Levy levy = new Levy(); Levy levy = new Levy();
levy.setLevyId(levyInfo.string("LEVY_ID")); // 부과 ID
// 부과 취소(전액감액) if ("02,03,04".contains(rdcamt.getRdcamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
if (rdcamt.getRdcamtSeCd().equals("02")) { // 수납금액이 있으면 오류 발생
rdcamt.setLastPcptax(levyInfo.number("LAST_PCPTAX").intValue()); if (levyInfo.number("RCVMT_PCPTAX").intValue() + levyInfo.number("RCVMT_ADAMT").intValue() > 0) {
rdcamt.setLastAdamt(levyInfo.number("LAST_ADAMT").intValue()); rtnMsg = "[F] 수납금액이 존재합니다.<br>부분 감액으로 진행하시기 바랍니다."; // 예외를 발생시켜서 DB Rollback
rdcamt.setRdcamtPcptax(levyInfo.number("LAST_PCPTAX").intValue()); return rtnMsg;
rdcamt.setRdcamtAdamt(levyInfo.number("LAST_ADAMT").intValue());
} }
levy.setLevyId(levyInfo.string("LEVY_ID")); // 부과 ID levy.setRdcamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue()); // 감액 본세
levy.setRdcamtAdamt(levyInfo.number("LEVY_ADAMT").intValue()); // 감액 가산금
levy.setSumAmt(0); // 합계 금액
levy.setDudtAftrAmt(0); // 납기 후 금액
} else {
levy.setRdcamtPcptax(levyInfo.number("RDCAMT_PCPTAX").intValue() + rdcamt.getRdcamtPcptax()); // 감액 본세 levy.setRdcamtPcptax(levyInfo.number("RDCAMT_PCPTAX").intValue() + rdcamt.getRdcamtPcptax()); // 감액 본세
levy.setRdcamtAdamt(levyInfo.number("RDCAMT_ADAMT").intValue() + rdcamt.getRdcamtAdamt()); // 감액 가산금 levy.setRdcamtAdamt(levyInfo.number("RDCAMT_ADAMT").intValue() + rdcamt.getRdcamtAdamt()); // 감액 가산금
levy.setSumAmt(levyInfo.number("SUM_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 합계 금액 levy.setSumAmt(levyInfo.number("SUM_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 합계 금액
if (levy.getSumAmt() > 0) {
levy.setDudtAftrAmt(levyInfo.number("DUDT_AFTR_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 납기 후 금액 levy.setDudtAftrAmt(levyInfo.number("DUDT_AFTR_AMT").intValue() - rdcamt.getRdcamtPcptax() - rdcamt.getRdcamtAdamt()); // 납기 후 금액
} else {
levy.setDudtAftrAmt(0);
}
}
rtnScs = levyMapper.updateRdcamt(levy); rtnScs = levyMapper.updateRdcamt(levy);
if (!rtnScs) { if (!rtnScs) {
@ -130,6 +137,18 @@ public class RdcamtBean extends AbstractComponent {
} }
// 감액(TB_RDCAMT) 대장 정보를 등록한다. // 감액(TB_RDCAMT) 대장 정보를 등록한다.
if ("02,03,04".contains(rdcamt.getRdcamtSeCd())) { // 02:부과취소, 03:이의신청수용, 04:법원이송
rdcamt.setLastPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdcamt.setLastAdamt(levyInfo.number("LEVY_ADAMT").intValue());
rdcamt.setRdcamtPcptax(levyInfo.number("LEVY_PCPTAX").intValue());
rdcamt.setRdcamtAdamt(levyInfo.number("LEVY_ADAMT").intValue());
} else {
rdcamt.setLastPcptax(levyInfo.number("LAST_PCPTAX").intValue());
rdcamt.setLastAdamt(levyInfo.number("LAST_ADAMT").intValue());
rdcamt.setRdcamtPcptax(rdcamt.getRdcamtPcptax());
rdcamt.setRdcamtAdamt(rdcamt.getRdcamtAdamt());
}
rtnScs = rdcamtMapper.insert(rdcamt); rtnScs = rdcamtMapper.insert(rdcamt);
if (!rtnScs) { if (!rtnScs) {
throw new RuntimeException("감액 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("감액 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback

@ -571,13 +571,12 @@ public class SndngBean extends AbstractComponent {
// 단속 상태 이력(TB_CRDN_STTS_HSTRY)을 등록하고, 단속(TB_CRDN) 대장의 단속상태코드를 수정한다. // 단속 상태 이력(TB_CRDN_STTS_HSTRY)을 등록하고, 단속(TB_CRDN) 대장의 단속상태코드를 수정한다.
if ("21,22,23".contains(crdnPayerInfo.string("CRDN_STTS_CD"))) { if ("21,22,23".contains(crdnPayerInfo.string("CRDN_STTS_CD"))) {
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID")); crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD")); crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(crdnPayerInfo.string("CRDN_STTS_CHG_DT")); crdnSttsHstry.setBfrSttsChgDt(crdnPayerInfo.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnSttsCd("42"); crdnSttsHstry.setCrdnSttsCd("42");
crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId()); crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId());
crdnSttsHstry.setUseYN("Y"); crdnSttsHstry.setUseYn("Y");
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다. // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry);
@ -586,13 +585,12 @@ public class SndngBean extends AbstractComponent {
} }
} else if (crdnPayerInfo.string("CRDN_STTS_CD").equals("31")) { } else if (crdnPayerInfo.string("CRDN_STTS_CD").equals("31")) {
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID")); crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD")); crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(crdnPayerInfo.string("CRDN_STTS_CHG_DT")); crdnSttsHstry.setBfrSttsChgDt(crdnPayerInfo.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnSttsCd("42"); crdnSttsHstry.setCrdnSttsCd("42");
crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId()); crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId());
crdnSttsHstry.setUseYN("Y"); crdnSttsHstry.setUseYn("Y");
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록한다. // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록한다.
rtnScs = crdnSttsHstryBean.create(crdnSttsHstry); rtnScs = crdnSttsHstryBean.create(crdnSttsHstry);

@ -194,8 +194,8 @@ public class SndngDtlBean extends AbstractComponent {
boolean rtnScs = false; // DB 처리 결과 boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지 String rtnMsg = "[F] "; // 처리 결과 메시지
// 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) 가 처리전(00)인 자료만 처리 // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) 가 세외수입부과(01)인 자료만 처리
if (sndngDtl.getSndngDtlSttsCd().equals("00")) { if (sndngDtl.getSndngDtlSttsCd().equals("01")) {
NisIndivQuery nisIndivQuery = new NisIndivQuery(); NisIndivQuery nisIndivQuery = new NisIndivQuery();
nisIndivQuery.setCrdnId(sndngDtl.getCrdnId()); nisIndivQuery.setCrdnId(sndngDtl.getCrdnId());

@ -856,14 +856,14 @@ public class Sndb01Controller extends ApplicationController {
} }
/** . /** .
* @param nisIndivA01 * @param req
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
* "saved": true, false * "saved": true, false
* }</code></pre> * }</code></pre>
*/ */
@Task({"ECA","DPV","PES","DVS"}) @Task({"ECA","DPV","PES","DVS"})
@RequestMapping(name="차세대 세외수입 과태료 대장 단속 정보 등록", value=METHOD_URL.setNonTaxReceiptIndividualA01List) @RequestMapping(name="세외수입 과태료 대장 단속 정보 등록", value=METHOD_URL.setNonTaxReceiptIndividualA01List)
public ModelAndView setNonTaxReceiptIndividualA01List(SndbQuery req) { public ModelAndView setNonTaxReceiptIndividualA01List(SndbQuery req) {
boolean saved = false; boolean saved = false;
String rtnMsg = "[F]"; String rtnMsg = "[F]";
@ -894,7 +894,44 @@ public class Sndb01Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** ().
* @param req
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@Task({"ECA","DPV","PES","DVS"})
@RequestMapping(name="세외수입 과태료 대장 등록 자료 상세 조회", value=METHOD_URL.getNonTaxReceiptIndividualA03List)
public ModelAndView getNonTaxReceiptIndividualA03List(SndbQuery req) {
boolean saved = false;
String rtnMsg = "[F]";
List<DataObject> dtlList = sndngDtlService.getSndngTrgtDtlIds(req);
// 발송상세 Ids 만큼 반복..
for (int iLoop = 0; iLoop < dtlList.size(); iLoop++) {
SndngDtl sndngDtl = new SndngDtl();
sndngDtl.setSndngDtlId(dtlList.get(iLoop).string("SNDNG_DTL_ID"));
sndngDtl.setCrdnId(dtlList.get(iLoop).string("CRDN_ID"));
sndngDtl.setLinkTrgtCd(dtlList.get(iLoop).string("LINK_TRGT_CD"));
sndngDtl.setLinkMngKey(dtlList.get(iLoop).string("LINK_MNG_KEY"));
sndngDtl.setSndngDtlSttsCd(dtlList.get(iLoop).string("SNDNG_DTL_STTS_CD"));
sndngDtl.setDelYn("N");
rtnMsg = sndngDtlService.getNxrpIndivA03List(sndngDtl);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** (sndb/sndb01/090-main) . /** (sndb/sndb01/090-main) .
* *

@ -582,7 +582,6 @@
, FFNLG_AMT <!-- 과태료 금액 --> , FFNLG_AMT <!-- 과태료 금액 -->
, LEVY_PCPTAX <!-- 부과 본세 --> , LEVY_PCPTAX <!-- 부과 본세 -->
, LEVY_ADAMT <!-- 부과 가산금 --> , LEVY_ADAMT <!-- 부과 가산금 -->
, INSPY_INT <!-- 분납 이자 -->
, RCVMT_PCPTAX <!-- 수납 본세 --> , RCVMT_PCPTAX <!-- 수납 본세 -->
, RCVMT_ADAMT <!-- 수납 가산금 --> , RCVMT_ADAMT <!-- 수납 가산금 -->
, RDCAMT_PCPTAX <!-- 감액 본세 --> , RDCAMT_PCPTAX <!-- 감액 본세 -->

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">부과제외 관리</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container-xxl flex-grow-1 px-0"> <div class="container-xxl flex-grow-1 px-0">
<c:set var="prefixName" scope="request">부과제외 관리</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<div class="wrapper-list"> <div class="wrapper-list">
@ -537,9 +537,15 @@
// 삭제 사유 callback // 삭제 사유 callback
$P.callbackRsn = (obj) => { $P.callbackRsn = (obj) => {
// 선택 자료
let selected = $P.control.dataset.getKeys("selected");
if (selected.length < 1) return;
// 서버에 전송할 data(파라미터) 생성 // 서버에 전송할 data(파라미터) 생성
let params = {}; let params = {};
params[$P.control.prefixed("IDs")] = selected.join(","); // IDs
params[$P.control.prefixed("Ids")] = selected.join(","); // Ids
params.delRsn = obj.reason; // 삭제 사유 params.delRsn = obj.reason; // 삭제 사유
$P.control.remove(params); $P.control.remove(params);
@ -632,29 +638,32 @@
// 선택 자료 // 선택 자료
let selected = $P.control.dataset.getKeys("selected"); let selected = $P.control.dataset.getKeys("selected");
if (selected.length < 1) return; if (selected.length < 1) {
dialog.alert({
content : "선택하신 부과제외 정보가 없습니다."
, onOK : () => { }
});
return;
}
// 삭제 메세지 확인 // 삭제 메세지 확인
dialog.alert({ dialog.alert({
content : "선택하신 " + selected.length + "건의 " + $P.control.prefixName + " 정보를 삭제하시겠습니까?" content : "선택하신 " + selected.length + "건의 " + $P.control.prefixName + " 정보를 삭제하시겠습니까?"
, onOK : async() => { , onOK : async() => {
// 삭제 사유 입력 // 삭제 사유 입력
var resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html")); let resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html"));
var template = await resp.text(); let template = await resp.text();
dialog.open({ dialog.open({
id : "inputDelRsnDialog", id : "inputDelRsnDialog"
title: title, , title: title
size : "lg", , size : "lg"
content: template, , content: template
init : () => { , init : () => { setDialogZindex(); }
setDialogZindex(); , onOK : () => {
},
onOK : () => {
$P.callbackRsn({ reason : $("#reason").val() }); $P.callbackRsn({ reason : $("#reason").val() });
} }
}); });
} }
}); });
} }
@ -772,8 +781,8 @@
// 업무구분에 따른 URL 설정 // 업무구분에 따른 URL 설정
$P.setURL = (taskSeCd) => { $P.setURL = (taskSeCd) => {
$P.control.urls.load = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/list.do"); // 조회 $P.control.urls.load = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/list.do"); // 조회
$P.control.urls.remove = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/remove.do"); // 삭제
$P.control.urls.getInfo = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/020/info.do"); // 수정 $P.control.urls.getInfo = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/020/info.do"); // 수정
$P.control.urls.remove = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/remove.do"); // 삭제
} }
/************************************************************************** /**************************************************************************

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">부과제외 정보</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container flex-grow-1 px-0"> <div class="container flex-grow-1 px-0">
<c:set var="prefixName" scope="request">부과제외 정보</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<!-- 입력 영역 --> <!-- 입력 영역 -->

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">의견제출 관리</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container-xxl flex-grow-1 px-0"> <div class="container-xxl flex-grow-1 px-0">
<c:set var="prefixName" scope="request">의견제출 관리</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<div class="wrapper-list"> <div class="wrapper-list">

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">의견제출 정보</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container flex-grow-1 px-0"> <div class="container flex-grow-1 px-0">
<c:set var="prefixName" scope="request">의견제출 정보</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<!-- 입력 영역 --> <!-- 입력 영역 -->

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">의견제출 심의 정보</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container flex-grow-1 px-0"> <div class="container flex-grow-1 px-0">
<c:set var="prefixName" scope="request">의견제출 심의 정보</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<!-- 입력 영역 --> <!-- 입력 영역 -->

@ -1,12 +1,12 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">단속 재등록</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- Content --> <!-- Content -->
<div class="container-xxl flex-grow-1 px-0"> <div class="container-xxl flex-grow-1 px-0">
<c:set var="prefixName" scope="request">단속 재등록</c:set>
<!-- Page Body --> <!-- Page Body -->
<div class="card"> <div class="card">
<div class="wrapper-list"> <div class="wrapper-list">

@ -29,10 +29,10 @@
<button type="button" class="btn btn-excel w-px-120" id="btnExcel--${pageName}" title="엑셀"> <button type="button" class="btn btn-excel w-px-120" id="btnExcel--${pageName}" title="엑셀">
엑셀 엑셀
</button> </button>
<button type="button" class="btn btn-primary w-px-120" id="btnLinkNxrpIndivA01--${pageName}" title="세외수입 과태료 대장 단속 정보 등록"> <button type="button" class="btn btn-primary w-px-120" id="btnLinkNxrpIndivA01--${pageName}" title="세외수입 과태료대장 등록">
과태료대장 등록 과태료대장 등록
</button> </button>
<button type="button" class="btn btn-primary w-px-120" id="btnLinkNxrpIndivA03--${pageName}" title="세외수입 과태료 대장 등록 자료 상세 조회"> <button type="button" class="btn btn-primary w-px-120" id="btnLinkNxrpIndivA03--${pageName}" title="세외수입 과태료대장 상세조회">
과태료대장 상세조회 과태료대장 상세조회
</button> </button>
<button type="button" class="btn btn-primary w-px-120" id="btnCreateSndngLink--${pageName}" title="우편통합 발송"> <button type="button" class="btn btn-primary w-px-120" id="btnCreateSndngLink--${pageName}" title="우편통합 발송">
@ -303,7 +303,7 @@
if (!params) return; if (!params) return;
ajax.post({ ajax.post({
url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/080/nxrpA01List.do"); url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/080/nxrpA01List.do")
, data : params || {} , data : params || {}
, success : resp => { , success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력 // S 또는 F 를 버튼 title 로 변경하여 메시지 출력
@ -322,7 +322,7 @@
if (!params) return; if (!params) return;
ajax.post({ ajax.post({
url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/080/nxrpA03List.do"); url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/080/nxrpA03List.do")
, data : params || {} , data : params || {}
, success : resp => { , success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력 // S 또는 F 를 버튼 title 로 변경하여 메시지 출력

@ -80,8 +80,8 @@
<button type="button" class="btn btn-primary w-px-120" id="btnCreateWrng--${pageName}" title="계고 등록"> <button type="button" class="btn btn-primary w-px-120" id="btnCreateWrng--${pageName}" title="계고 등록">
계고 등록 계고 등록
</button> </button>
<button type="button" class="btn btn-primary w-px-120" id="btnCreateLevyExcl--${pageName}" title="부과 등록"> <button type="button" class="btn btn-primary w-px-120" id="btnCreateLevyExcl--${pageName}" title="부과제외 등록">
부과 등록 부과제외 등록
</button> </button>
<button type="button" class="btn btn-primary w-px-120" id="btnUpdateLevyExcl--${pageName}" title="부과제외 수정"> <button type="button" class="btn btn-primary w-px-120" id="btnUpdateLevyExcl--${pageName}" title="부과제외 수정">
부과제외 수정 부과제외 수정

Loading…
Cancel
Save