부과 제외 수정.

main
jjh 12 months ago
parent fa8c37392b
commit 8a59422dfc

@ -43,6 +43,10 @@ public interface LevyExclMapper extends AbstractMapper {
* @return
*/
default DataObject selectLevyExclInfo(LevyExclQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
}
// 기본 정렬
if (req.getOrderBy() == null) {
req.setOrderBy("LE.LEVY_EXCL_ID DESC");

@ -63,6 +63,10 @@ public class LevyExclBean extends AbstractComponent {
* @return
*/
public List<DataObject> getLevyExcls(LevyExclQuery req) {
// 삭제 여부 확인
if (req.getDelYn() == null) {
req.setDelYn("N");
}
if (req.getOrderBy() == null) {
req.setOrderBy("LE.LEVY_EXCL_ID DESC");
}
@ -102,8 +106,8 @@ public class LevyExclBean extends AbstractComponent {
*/
public String createLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean retSuccess = false; // DB 처리 결과
String retMessage = "[F] "; // 처리 결과 메시지
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD)
// 단속 ID로 단속, 부과제외 정보 조회
@ -111,28 +115,28 @@ public class LevyExclBean extends AbstractComponent {
// 부과제외 ID가 있다면 이미 부과제외 자료가 존재하므로 종료..
if (!infoCrdnLevyExcl.string("LEVY_EXCL_ID").equals("")) {
retMessage = "[F] 작업 중 이미 등록된 자료가 존재합니다.";
return retMessage;
rtnMsg = "[F] 작업 중 이미 등록된 자료가 존재합니다.";
return rtnMsg;
}
// 단속 상태 코드(CRDN_STTS_CD) 확인..
if (levyExcl.getLevyExclSeCd().equals("1") || levyExcl.getLevyExclSeCd().equals("2")) { // 비부과(서손), 계고
// 단속 상태 코드가 부과(51) 보다 크다면, 비부과 또는 계고 등록을 할 수 없다. 종료..
if (infoCrdnLevyExcl.number("CRDN_STTS_CD").intValue() >= 51) {
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + infoCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다.";
return retMessage;
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + infoCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg;
}
} else if (levyExcl.getLevyExclSeCd().equals("5")) {
// 단속 상태 코드가 부과(51) 보다 작다면, 전액감액 등록 할 수 없다. 종료.. 전액감액 등록은 부과이후...
if (infoCrdnLevyExcl.number("CRDN_STTS_CD").intValue() < 51) {
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + infoCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다.";
return retMessage;
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + infoCrdnLevyExcl.string("CRDN_STTS_NM") + " 상태 입니다.";
return rtnMsg;
}
}
// 단속 민원(TB_CRDN_CVLCPT) 민원 처리 확인
if (!infoCrdnLevyExcl.string("CVLCPT_LINK_ID").equals("")) {
if (infoCrdnLevyExcl.string("CVLCPT_PRCS_CD").equals("00")) {
retMessage = "[F] 작업 중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.<br>";
return retMessage;
rtnMsg = "[F] 작업 중 단속 민원 자료가 처리 되지 않았습니다.<br>단속 민원 업무를 먼저 처리 하시기 바랍니다.<br>";
return rtnMsg;
}
}
@ -146,8 +150,8 @@ public class LevyExclBean extends AbstractComponent {
}
// 부과제외(TB_LEVY_EXCL) 대장을 등록 한다.
retSuccess = levyExclMapper.insert(levyExcl);
if (!retSuccess) {
rtnScs = levyExclMapper.insert(levyExcl);
if (!rtnScs) {
throw new RuntimeException("부과제외 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -161,8 +165,8 @@ public class LevyExclBean extends AbstractComponent {
crdnSttsHstry.setTaskDtlId(levyExcl.getLevyExclId());
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
retSuccess = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry);
if (!retSuccess) {
rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry);
if (!rtnScs) {
throw new RuntimeException("부과제외 등록 중 단속 대장의 단속상태 변경에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -171,9 +175,9 @@ public class LevyExclBean extends AbstractComponent {
}
retMessage = "[S] 작업이 정상 처리 되었습니다.";
rtnMsg = "[S] 작업이 정상 처리 되었습니다.";
return retMessage;
return rtnMsg;
}
/** .
@ -185,18 +189,18 @@ public class LevyExclBean extends AbstractComponent {
*/
public String updateLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean retSuccess = false; // DB 처리 결과
String retMessage = "[F] "; // 처리 결과 메시지
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 대장을 수정 한다.
retSuccess = levyExclMapper.update(levyExcl);
if (!retSuccess) {
rtnScs = levyExclMapper.update(levyExcl);
if (!rtnScs) {
throw new RuntimeException("부과제외 대장 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
retMessage = "[S] 작업이 정상 처리 되었습니다.";
rtnMsg = "[S] 작업이 정상 처리 되었습니다.";
return retMessage;
return rtnMsg;
}
/** .
@ -208,33 +212,33 @@ public class LevyExclBean extends AbstractComponent {
*/
public String removeLevyExcl(LevyExcl levyExcl) {
// 변수 선언
boolean retSuccess = false; // DB 처리 결과
String retMessage = "[F] "; // 처리 결과 메시지
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
// 부과제외(TB_LEVY_EXCL) 정보 조회
DataObject levyExclInfo = levyExclMapper.selectLevyExclInfo(new LevyExclQuery().setLevyExclId(levyExcl.getLevyExclId())
.setDelYn("N"));
.setDelYn("N"));
// 부과제외 ID가 조회되지 않았다면 종료..
if (levyExclInfo.string("LEVY_EXCL_ID").equals("")) {
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>부과제외 자료가 존재하지 않습니다.";
return retMessage;
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>부과제외 자료가 존재하지 않습니다.";
return rtnMsg;
}
// 단속 상태 코드(CRDN_STTS_CD) 확인..
if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("1") && !levyExclInfo.string("CRDN_STTS_CD").equals("81")) { // 비부과(서손)
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return retMessage;
} else if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("2") && !levyExclInfo.string("CRDN_STTS_CD").equals("83")) { // 계고
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return retMessage;
} else if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("5") && !levyExclInfo.string("CRDN_STTS_CD").equals("80")) { // 부과취소
retMessage = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return retMessage;
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;
} else if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("2") && !("83,84").contains(levyExclInfo.string("CRDN_STTS_CD"))) { // 계고
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return rtnMsg;
} else if (levyExclInfo.string("LEVY_EXCL_SE_CD").equals("5") && !levyExclInfo.string("CRDN_STTS_CD").equals("80")) { // 부과취소
rtnMsg = "[F] 작업 중 오류가 발생하였습니다.<br>현재 자료의 단속 상태가 " + levyExclInfo.string("CRDN_STTS_NM") + " 이(가) 아닙니다.";
return rtnMsg;
}
// 부과제외(TB_LEVY_EXCL) 대장을 삭제 한다.
retSuccess = levyExclMapper.delete(levyExcl);
if (!retSuccess) {
rtnScs = levyExclMapper.delete(levyExcl);
if (!rtnScs) {
throw new RuntimeException("부과제외 대장 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -242,12 +246,12 @@ public class LevyExclBean extends AbstractComponent {
String deleteCrdnSttsCd = "";
if (levyExclInfo.string("CRDN_STTS_CD").equals("81")) {
deleteCrdnSttsCd = "91"; // 비부과(서손) 삭제
} else if (levyExclInfo.string("CRDN_STTS_CD").equals("83")) {
} else if (levyExclInfo.string("CRDN_STTS_CD").equals("83") || levyExclInfo.string("CRDN_STTS_CD").equals("84")) {
deleteCrdnSttsCd = "93"; // 계고 삭제
}
retSuccess = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deleteCrdnSttsCd, true);
if (!retSuccess) {
rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deleteCrdnSttsCd, true);
if (!rtnScs) {
throw new RuntimeException("단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
@ -261,16 +265,16 @@ public class LevyExclBean extends AbstractComponent {
crdn.setCrdnId(levyExclInfo.string("CRDN_ID"));
crdn.setParkngPsbltyRsltCd("0"); // 주차 가능 결과 코드 - 0 미확인
retSuccess = levyExclMapper.updateParkngPsbltyRsltCd(crdn);
if (!retSuccess) {
rtnScs = levyExclMapper.updateParkngPsbltyRsltCd(crdn);
if (!rtnScs) {
throw new RuntimeException("부과제외 삭제 중 단속 대장의 표지정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
}
retMessage = "[S] 작업이 정상 처리 되었습니다.";
rtnMsg = "[S] 작업이 정상 처리 되었습니다.";
return retMessage;
return rtnMsg;
}
}

@ -70,12 +70,12 @@ public class LevyExclServiceBean extends AbstractServiceBean implements LevyExcl
@Override
public String removeLevyExclList(LevyExclQuery req) {
// 변수 선언
String retMessage = ""; // 처리 결과 메시지
String rtnMsg = ""; // 처리 결과 메시지
// 부과제외 IDs 건수를 확인하여 1건이하면.. 종료
if (req.getLevyExclIDs().length < 1) {
retMessage = "작업 중 선택 자료가 존재하지 않습니다.";
return retMessage;
rtnMsg = "작업 중 선택 자료가 존재하지 않습니다.";
return rtnMsg;
}
// 부과제외 IDs 만큼 반복..
@ -86,14 +86,14 @@ public class LevyExclServiceBean extends AbstractServiceBean implements LevyExcl
levyExcl.setDelRsn(req.getDelRsn()); // 삭제 사유
// 부과제외 삭제 호출
retMessage = levyExclBean.removeLevyExcl(levyExcl);
rtnMsg = levyExclBean.removeLevyExcl(levyExcl);
// 오류가 발생하였으면 종료..
if (retMessage.contains("[F]")) {
return retMessage;
if (rtnMsg.contains("[F]")) {
return rtnMsg;
}
}
return retMessage;
return rtnMsg;
}
}

@ -94,6 +94,7 @@ public class Excl01Controller extends ApplicationController {
* }</pre>
*/
public ModelAndView getLevyExclusionInfo(String saveCallbackFuncName, String savedCallbackFuncName, LevyExclQuery req) {
//
DataObject levyExclInfo = levyExclService.getLevyExclInfo(req);
// 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인.
@ -102,7 +103,7 @@ public class Excl01Controller extends ApplicationController {
return mav
.addObject("message", "이미 등록된 부과제외 정보가 있습니다.")
.addObject("retMessage", "이미 등록된 부과제외 정보가 있습니다.")
.addObject("rtnMsg", "이미 등록된 부과제외 정보가 있습니다.")
;
} else {
boolean json = jsonResponse();
@ -136,9 +137,9 @@ public class Excl01Controller extends ApplicationController {
*/
public ModelAndView createLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String retMessage = levyExclService.createLevyExcl(levyExcl);
String rtnMsg = levyExclService.createLevyExcl(levyExcl);
if (retMessage.contains("[S]")) {
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
@ -146,7 +147,7 @@ public class Excl01Controller extends ApplicationController {
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("retMessage", retMessage);
.addObject("rtnMsg", rtnMsg);
}
/** .
@ -158,9 +159,9 @@ public class Excl01Controller extends ApplicationController {
*/
public ModelAndView updateLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String retMessage = levyExclService.updateLevyExcl(levyExcl);
String rtnMsg = levyExclService.updateLevyExcl(levyExcl);
if (retMessage.contains("[S]")) {
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
@ -168,7 +169,7 @@ public class Excl01Controller extends ApplicationController {
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("retMessage", retMessage);
.addObject("rtnMsg", rtnMsg);
}
/** ID .
@ -181,9 +182,9 @@ public class Excl01Controller extends ApplicationController {
*/
public ModelAndView removeLevyExclusion(LevyExcl levyExcl) {
boolean saved = false;
String retMessage = levyExclService.removeLevyExcl(levyExcl);
String rtnMsg = levyExclService.removeLevyExcl(levyExcl);
if (retMessage.contains("[S]")) {
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
@ -191,7 +192,7 @@ public class Excl01Controller extends ApplicationController {
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("retMessage", retMessage);
.addObject("rtnMsg", rtnMsg);
}
/** ID .
@ -204,9 +205,9 @@ public class Excl01Controller extends ApplicationController {
*/
public ModelAndView removeLevyExclusionList(LevyExclQuery req) {
boolean saved = false;
String retMessage = levyExclService.removeLevyExclList(req);
String rtnMsg = levyExclService.removeLevyExclList(req);
if (retMessage.contains("[S]")) {
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
@ -214,7 +215,7 @@ public class Excl01Controller extends ApplicationController {
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("retMessage", retMessage);
.addObject("rtnMsg", rtnMsg);
}
}

@ -273,7 +273,7 @@
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LE.DLTR) AS DLTR_NM /* 삭제자 명 */
FROM TB_CRDN C
LEFT OUTER JOIN TB_PAYER P ON (C.RTPYR_ID = P.RTPYR_ID)
LEFT OUTER JOIN TB_LEVY_EXCL LE ON (C.CRDN_ID = LE.CRDN_ID)
LEFT OUTER JOIN TB_LEVY_EXCL LE ON (C.CRDN_ID = LE.CRDN_ID AND LE.DEL_YN = 'N')
</sql>
<select id="selectLevyExcls" parameterType="map" resultType="dataobject">/* 부과제외 대장 객체 가져오기(levyExclMapper.selectLevyExcl) */
@ -285,9 +285,6 @@
<if test="levyExclId != null">
AND LE.LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */
</if>
<if test="delYn != null">
AND LE.DEL_YN = #{delYn} /* 삭제 여부 */
</if>
</where>
AND C.DEL_YN = 'N' /* 단속 삭제 여부 */
<include refid="utility.orderBy" />
@ -354,107 +351,100 @@
</update>
<select id="selectCrdn" parameterType="map" resultType="dataobject">/* 단속 대장 객체 가져오기(levyExclMapper.selectCrdn) */
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
, C.CRDN_REG_SE_CD <!-- 단속 등록 구분 코드 -->
, C.CRDN_YMD <!-- 단속 일자 -->
, C.CRDN_TM <!-- 단속 시각 -->
, C.VHRNO <!-- 차량번호 -->
, 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.CRDN_SE_CD <!-- 단속 구분 코드 -->
, CA.CRDN_SPAREA_CD <!-- 단속 특별구역 코드 -->
, CA.PARKNG_PSBLTY_RSLT_CD <!-- 주차 가능 결과 코드 -->
, CC.CVLCPT_LINK_ID <!-- 민원 연계 ID -->
, CC.CVLCPT_PRCS_RSLT_CN <!-- 민원 처리 결과 내용 -->
, CC.CVLCPT_TRSM_CD <!-- 민원 전송 코드 -->
, P.RTPYR_ID <!-- 납부자 ID -->
, P.RTPYR_NM <!-- 납부자 명 -->
, LE.LEVY_EXCL_ID <!-- 부과 제외 ID -->
, <include refid="utility.today" /> AS TODAY <!-- 오늘 일자 -->
SELECT C.CRDN_ID /* 단속 ID */
, C.SGG_CD /* 시군구 코드 */
, C.TASK_SE_CD /* 업무 구분 코드 */
, C.CRDN_REG_SE_CD /* 단속 등록 구분 코드 */
, C.CRDN_YMD /* 단속 일자 */
, C.CRDN_TM /* 단속 시각 */
, C.VHRNO /* 차량번호 */
, C.CRDN_STTS_CD /* 단속 상태 코드 */
, C.CRDN_STTS_CHG_DT /* 단속 상태 변경 일시 */
, CA.CRDN_SE_CD /* 단속 구분 코드 */
, CA.CRDN_SPAREA_CD /* 단속 특별구역 코드 */
, CA.PARKNG_PSBLTY_RSLT_CD /* 주차 가능 결과 코드 */
, CC.CVLCPT_LINK_ID /* 민원 연계 ID */
, CC.CVLCPT_PRCS_RSLT_CN /* 민원 처리 결과 내용 */
, CC.CVLCPT_TRSM_CD /* 민원 전송 코드 */
, P.RTPYR_ID /* 납부자 ID */
, P.RTPYR_NM /* 납부자 명 */
, LE.LEVY_EXCL_ID /* 부과 제외 ID */
, (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, <include refid="utility.today" /> AS TODAY /* 오늘 일자 */
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_PAYER P ON (C.RTPYR_ID = P.RTPYR_ID)
LEFT OUTER JOIN TB_LEVY_EXCL LE ON (C.CRDN_ID = LE.CRDN_ID AND LE.DEL_YN = 'N')
WHERE C.CRDN_ID = #{crdnId}
<choose>
<when test="delYn != null">
AND C.DEL_YN = #{delYn}
</when>
<otherwise>
AND C.DEL_YN = 'N'
</otherwise>
</choose>
WHERE C.CRDN_ID = #{crdnId}
AND C.DEL_YN = 'N'
</select>
<select id="selectCvlcptAnsWords" parameterType="map" resultType="dataobject">/* 민원답변문구 대장 객체 가져오기(levyExclMapper.selectCvlcptAnsWords) */
SELECT CAW.ANS_WORDS_ID <!-- 답변 문구 ID -->
, CAW.ANS_SE_CD <!-- 답변 구분 코드 -->
, (SELECT GET_CODE_NM('FIM060', CAW.ANS_SE_CD) FROM DUAL) AS ANS_SE_NM <!-- 답변 구분 명 -->
, CAW.ANS_RSN_CD <!-- 답변 사유 코드 -->
, CAW.ANS_RSN_NM <!-- 답변 사유 명 -->
, CAW.PRCS_SUMRY <!-- 처리 요약 -->
, CAW.PRCS_RSLT_CN <!-- 처리 결과 내용 -->
SELECT CAW.ANS_WORDS_ID /* 답변 문구 ID */
, CAW.ANS_SE_CD /* 답변 구분 코드 */
, CAW.ANS_RSN_CD /* 답변 사유 코드 */
, CAW.ANS_RSN_NM /* 답변 사유 명 */
, CAW.PRCS_SUMRY /* 처리 요약 */
, CAW.PRCS_RSLT_CN /* 처리 결과 내용 */
, (SELECT GET_CODE_NM('FIM060', CAW.ANS_SE_CD) FROM DUAL) AS ANS_SE_NM /* 답변 구분 명 */
FROM TB_CVLCPT_ANS_WORDS CAW
WHERE CAW.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
AND CAW.TASK_SE_CD = #{taskSeCd} <!-- 업무 구분 코드 -->
AND CAW.ANS_RSN_CD = #{ansRsnCd} <!-- 답변 사유 코드 -->
AND CAW.USE_YN = 'Y'
WHERE CAW.SGG_CD = #{sggCd} /* 시군구 코드 */
AND CAW.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
AND CAW.ANS_RSN_CD = #{ansRsnCd} /* 답변 사유 코드 */
AND CAW.USE_YN = 'Y'
</select>
<update id="updateCvlcptPrcsRsltCn" parameterType="map">/* 단속민원 대장 민원처리결과내용 초기화(levyExclMapper.updateCvlcptPrcsRsltCn) */
UPDATE TB_CRDN_CVLCPT
SET CVLCPT_PRCS_SUMRY = NULL <!-- 민원 처리 요약 -->
, CVLCPT_PRCS_RSLT_CN = NULL <!-- 민원 처리 결과 내용 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{crdnCvlcpt.modifiedBy} <!-- 수정자 -->
WHERE CVLCPT_LINK_ID = #{crdnCvlcpt.cvlcptLinkId} <!-- 민원 연계 ID -->
AND DEL_YN = 'N'
SET CVLCPT_PRCS_SUMRY = NULL /* 민원 처리 요약 */
, CVLCPT_PRCS_RSLT_CN = NULL /* 민원 처리 결과 내용 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{crdnCvlcpt.modifiedBy} /* 수정자 */
WHERE CVLCPT_LINK_ID = #{crdnCvlcpt.cvlcptLinkId} /* 민원 연계 ID */
AND DEL_YN = 'N'
</update>
<update id="updateCrdnCvlcpt" parameterType="map">/* 단속민원 대장 민원답변 수정(levyExclMapper.updateCrdnCvlcpt) */
UPDATE TB_CRDN_CVLCPT
SET CVLCPT_PRCS_CD = #{crdnCvlcpt.cvlcptPrcsCd} <!-- 민원 처리 코드 -->
, CVLCPT_PRCS_SUMRY = #{crdnCvlcpt.cvlcptPrcsSumry} <!-- 민원 처리 요약 -->
, CVLCPT_PRCS_RSLT_CN = #{crdnCvlcpt.cvlcptPrcsRsltCn} <!-- 민원 처리 결과 내용 -->
, CVLCPT_PRCS_CMPTN_DT = #{crdnCvlcpt.cvlcptPrcsCmptnDt} <!-- 민원 처리 완료 일시 -->
, CVLCPT_PRCS_PIC = #{crdnCvlcpt.cvlcptPrcsPic} <!-- 민원 처리 담당자 -->
, CVLCPT_TRSM_CD = #{crdnCvlcpt.cvlcptTrsmCd} <!-- 민원 전송 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{crdnCvlcpt.modifiedBy} <!-- 수정자 -->
WHERE CVLCPT_LINK_ID = #{crdnCvlcpt.cvlcptLinkId} <!-- 민원 연계 ID -->
AND DEL_YN = 'N'
SET CVLCPT_PRCS_CD = #{crdnCvlcpt.cvlcptPrcsCd} /* 민원 처리 코드 */
, CVLCPT_PRCS_SUMRY = #{crdnCvlcpt.cvlcptPrcsSumry} /* 민원 처리 요약 */
, CVLCPT_PRCS_RSLT_CN = #{crdnCvlcpt.cvlcptPrcsRsltCn} /* 민원 처리 결과 내용 */
, CVLCPT_PRCS_CMPTN_DT = #{crdnCvlcpt.cvlcptPrcsCmptnDt} /* 민원 처리 완료 일시 */
, CVLCPT_PRCS_PIC = #{crdnCvlcpt.cvlcptPrcsPic} /* 민원 처리 담당자 */
, CVLCPT_TRSM_CD = #{crdnCvlcpt.cvlcptTrsmCd} /* 민원 전송 코드 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{crdnCvlcpt.modifiedBy} /* 수정자 */
WHERE CVLCPT_LINK_ID = #{crdnCvlcpt.cvlcptLinkId} /* 민원 연계 ID */
AND DEL_YN = 'N'
</update>
<update id="updateParkngPsbltyRsltCd" parameterType="map">/* 단속 대장 주차가능결과코드를 수정(levyExclMapper.updateParkngPsbltyRsltCd) */
UPDATE TB_CRDN_ADI
SET PARKNG_PSBLTY_RSLT_CD = #{crdn.parkngPsbltyRsltCd} <!-- 주차 가능 결과 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{crdn.modifiedBy} <!-- 수정자 -->
WHERE CRDN_ID = #{crdn.crdnId} <!-- 단속 ID -->
AND DEL_YN = 'N'
SET PARKNG_PSBLTY_RSLT_CD= #{crdn.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 SD.SNDNG_ID <!-- 발송 ID -->
, SD.CRDN_ID <!-- 단속 ID -->
, SD.SNDNG_RCVMT_CD <!-- 발송 수납 코드 -->
SELECT SD.SNDNG_ID /* 발송 ID */
, SD.CRDN_ID /* 단속 ID */
, SD.SNDNG_RCVMT_CD /* 발송 수납 코드 */
FROM TB_SNDNG_DTL SD
WHERE SD.CRDN_ID = #{crdnId} <!-- 단속 ID -->
AND SD.SNDNG_RCVMT_CD = #{sndngRcvmtCd} <!-- 발송 수납 코드 -->
AND SD.DEL_YN = 'N'
WHERE SD.CRDN_ID = #{crdnId} /* 단속 ID */
AND SD.SNDNG_RCVMT_CD = #{sndngRcvmtCd} /* 발송 수납 코드 */
AND SD.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'
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>
</mapper>

@ -386,7 +386,7 @@
// 삭제 callback
${pageName}Control.onRemove = (resp) => {
let btnTitle = $("#btnRemove--${pageName}").attr("title");
let showMessage = resp.retMessage.replace(/[S]|[F]/g, btnTitle);
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage); // 메시지 출력
@ -458,7 +458,7 @@
}
// 삭제
remove${pageName} = (obj) => {
callbackRemove${pageName} = (obj) => {
let selected = ${pageName}Control.dataset.getKeys("selected");
if (selected.length < 1) return;
@ -632,7 +632,7 @@
content : "선택하신 " + ${pageName}Control.prefixName + " 정보를 삭제하시겠습니까?"
, onOK : () => {
// 삭제 사유 입력
let callbackFuncName = "remove${pageName}";
let callbackFuncName = "callbackRemove${pageName}";
let popupWidth = 640;
let popupHeight = 360;
let popupX = (window.screen.width / 2) - (popupWidth / 2);

@ -119,7 +119,7 @@
// 저장 callback
${pageName}Control.onSave = (resp) => {
let dialogTitle = $("#" + ${pageName}Control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.retMessage.replace(/[S]|[F]/g, dialogTitle);
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
@ -163,7 +163,7 @@
let reasons = FIM022.list().filter(reason => "1" == seCode ? reason.code < "200" : reason.code > "200");
$("#levyExclRsnCd--${pageName}").html(reasons.map(reason => "<option value='" + reason.code + "'>" + reason.value + "</option>").join());
if (rsnCode != undefined && rsnCode != "") {
if (typeof rsnCode != "undefined" && rsnCode != "") {
$("#levyExclRsnCd--${pageName}").val(rsnCode);
}
}

@ -13,13 +13,13 @@
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">감경 정보</label>
<!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnCreateRduct--${pageName}" title="감경 등록" onclick="fnCreateRduct${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnCreateRduct--${pageName}" title="감경 등록" onclick="fnCreateRduct${pageName}();">
감경 등록
</button>
<button type="button" class="btn btn-primary" id="btnUpdateRduct--${pageName}" title="감경 수정" onclick="fnUpdateRduct${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnUpdateRduct--${pageName}" title="감경 수정" onclick="fnUpdateRduct${pageName}();">
감경 수정
</button>
<button type="button" class="btn btn-primary" id="btnRemoveRduct--${pageName}" title="감경 삭제" onclick="fnRemoveRduct${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnRemoveRduct--${pageName}" title="감경 삭제" onclick="fnRemoveRduct${pageName}();">
감경 삭제
</button>
</span>
@ -77,16 +77,16 @@
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">부과제외 정보</label>
<!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnCreateWrng--${pageName}" title="계고 등록" onclick="fnCreateWrng${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnCreateWrng--${pageName}" title="계고 등록" onclick="fnCreateWrng${pageName}();">
계고 등록
</button>
<button type="button" class="btn btn-primary" id="btnCreateLevyExcl--${pageName}" title="부과제외 등록" onclick="fnCreateLevyExcl${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnCreateLevyExcl--${pageName}" title="부과제외 등록" onclick="fnCreateLevyExcl${pageName}();">
부과제외 등록
</button>
<button type="button" class="btn btn-primary" id="btnUpdateLevyExcl--${pageName}" title="부과제외 수정" onclick="fnUpdateLevyExcl${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnUpdateLevyExcl--${pageName}" title="부과제외 수정" onclick="fnUpdateLevyExcl${pageName}();">
부과제외 수정
</button>
<button type="button" class="btn btn-primary" id="btnRemoveLevyExcl--${pageName}" title="부과제외 삭제" onclick="fnRemoveLevyExcl${pageName}();">
<button type="button" class="btn btn-primary w-px-120" id="btnRemoveLevyExcl--${pageName}" title="부과제외 삭제" onclick="fnRemoveLevyExcl${pageName}();">
부과제외 삭제
</button>
</span>
@ -370,6 +370,8 @@
// 부과제외 dialog
${pageName}${pageDataName2}Control.getInfo = (params) => {
if (!params) return;
let dialogTitle = "";
if (params.callPurpose == "create") {
@ -377,7 +379,7 @@
} else if (params.callPurpose == "update") {
dialogTitle = ${pageName}${pageDataName2}Control.prefixName + " 수정";
} else {
return;
dialogTitle = ${pageName}${pageDataName2}Control.prefixName + " 정보";
}
ajax.get({
@ -385,8 +387,8 @@
, data : params || {}
, success : resp => {
if ((typeof resp) != "string") {
if (resp.retMessage != "") {
dialog.alert(resp.retMessage);
if (resp.rtnMsg != "") {
dialog.alert(resp.rtnMsg);
return;
}
}
@ -402,6 +404,29 @@
});
}
// 삭제 callback
${pageName}${pageDataName2}Control.onRemove = (resp) => {
let btnTitle = $("#btnRemoveLevyExcl--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage); // 메시지 출력
if (resp.saved) {
refreshDataInfo${pageName}(); // 자료 재조회
}
}
// 삭제
${pageName}${pageDataName2}Control.remove = (params) => {
if (!params) return;
ajax.post({
url : wctx.url(params.taskSeCd + ${pageName}${pageDataName2}PrefixUrl + "/010/remove.do")
, data : params
, success : resp => ${pageName}${pageDataName2}Control.onRemove(resp)
});
}
/**************************************************************************
* function
**************************************************************************/
@ -453,7 +478,7 @@
};
ajax.get({
url : wctx.url(taskSeCd + "/sprt/sprt02/050/info.do")
url : wctx.url(params.taskSeCd + "/sprt/sprt02/050/info.do")
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, success : resp => {
@ -510,29 +535,17 @@
}
// 부과제외 삭제
removeLevyExcl${pageName} = (obj) => {
callbackRemoveLevyExcl${pageName} = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {
callPurpose : "remove"
, levyExclId : ${pageName}${pageDataName2}Control.dataset.getValue("LEVY_EXCL_ID") // 부과제외 ID
, delYn : "Y" // 삭제 여부
, delRsn : obj.reason // 삭제 사유
callPurpose : "remove"
, sggCd : ${pageName}${pageDataName2}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}${pageDataName2}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, levyExclId : ${pageName}${pageDataName2}Control.dataset.getValue("LEVY_EXCL_ID") // 부과제외 ID
, delRsn : obj.reason // 삭제 사유
};
ajax.post({
url : wctx.url($("#taskSeCd--${pageNameMain}").val() + ${pageName}${pageDataName2}PrefixUrl + "/010/remove.do")
, data : params
, success : resp => {
let btnTitle = $("#btnRemoveLevyExcl--${pageName}").attr("title");
let showMessage = resp.retMessage.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage); // 메시지 출력
if (resp.saved) {
refreshDataInfo${pageName}(); // 자료 재조회
}
}
});
${pageName}${pageDataName2}Control.remove(params);
}
/**************************************************************************
@ -668,11 +681,11 @@
if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return;
let params = {
callPurpose : "create"
, crdnId : crdnId
, sggCd : $("#sggCd--${pageNameMain}").val()
, taskSeCd : $("#taskSeCd--${pageNameMain}").val()
, levyExclSeCd : "2"
callPurpose : "create"
, crdnId : crdnId
, sggCd : $("#sggCd--${pageNameMain}").val()
, taskSeCd : $("#taskSeCd--${pageNameMain}").val()
, levyExclSeCd : "2"
};
${pageName}${pageDataName2}Control.getInfo(params);
@ -724,7 +737,8 @@
// 부과제외 ID 가 없다면.. return
if (typeof levyExclId == "undefined" || levyExclId == null || levyExclId == "") return;
let callbackFuncName = "removeLevyExcl${pageName}";
// 삭제 사유 입력
let callbackFuncName = "callbackRemoveLevyExcl${pageName}";
let popupWidth = 640;
let popupHeight = 360;
let popupX = (window.screen.width / 2) - (popupWidth / 2);
@ -733,7 +747,7 @@
window.open(
wctx.url("/resources/html/inputRsnDialog.html"
+ "?callbackFuncName=" + callbackFuncName
+ "&CALL_PURPOSE=" + "remove"
+ "&USE_PURPOSE=" + "삭제"
)
, "inputDelRsnDialog"
, 'status=no, height=' + popupHeight + ', width=' + popupWidth + ', left='+ popupX + ', top='+ popupY

Loading…
Cancel
Save