개별총정보 - 처리상세 정보 탭 수정.

main
jjh 5 months ago
parent d4ff734685
commit 0f4f06f142

@ -124,7 +124,8 @@ public class Sprt02Controller extends ApplicationController {
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02010-main");
return mav.addObject("callControlName", req.getCallControlName())
return mav
.addObject("callControlName", req.getCallControlName())
.addObject("callPurpose", req.getCallPurpose())
.addObject("pageName", "sprt02010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("pageNameMain", "sprt02010") // 개별총정보 메인 화면명
@ -143,22 +144,21 @@ public class Sprt02Controller extends ApplicationController {
@RequestMapping(name="개별총정보 단속, 납부자 정보 조회", value=METHOD_URL.getCrdnPayerInfo)
public ModelAndView getCrdnPayerInfo(SprtQuery req) {
// 단속(TB_CRDN), 납부자(TB_PAYER) 정보
DataObject crdnPayer = sprt02Service.getCrdnPayerInfo(req);
DataObject crdnPayerInfo = sprt02Service.getCrdnPayerInfo(req);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02020-info");
mav.addObject("pageNameMain", "sprt02010")
.addObject("pageName", "sprt02020")
.addObject("crdnPayer", json ? crdnPayer : toJson(crdnPayer)) // 단속, 납부자 정보
mav.addObject("pageNameMain", "sprt02010") // pageNameMain
.addObject("pageName", "sprt02020") // pageName
.addObject("infoPrefix", "crdnPayer") // prefix
.addObject("crdnPayerInfo", json ? crdnPayerInfo : toJson(crdnPayerInfo)) // 단속, 납부자 정보
;
// 재조회로 호출되었다면..
// 재 조회로 호출되었다면..
if (req.getCallPurpose().equals("refresh")) {
DataObject totalInfo = sprt02Service.getCrdnInfo(req); // 단속(TB_CRDN) 대장 조회
mav.addObject("totalInfo", json ? totalInfo : toJson(totalInfo)); // 단속 정보
DataObject totalInfo = sprt02Service.getCrdnInfo(req); // 단속(TB_CRDN) 대장 조회
mav.addObject("totalInfo", json ? totalInfo : toJson(totalInfo)); // 단속 정보
}
return mav;
@ -176,31 +176,25 @@ public class Sprt02Controller extends ApplicationController {
public ModelAndView getOpnnSbmsnInfo(SprtQuery req) {
// 의견제출 정보
LevyExclQuery exclQuery = new LevyExclQuery();
if (req.getCallPurpose() == null) {
exclQuery.setCallPurpose("view");
} else {
exclQuery.setCallPurpose(req.getCallPurpose());
}
exclQuery.setCrdnId(req.getCrdnId());
exclQuery.setDelYn(req.getDelYn());
// 의견 제출(TB_OPNN_SBMSN) 대장 조회
DataObject opnnSbmsn = opnnSbmsnService.getOpnnSbmsnInfo(exclQuery);
DataObject opnnSbmsnInfo = opnnSbmsnService.getOpnnSbmsnInfo(exclQuery);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02030-info");
mav.addObject("pageNameMain", "sprt02010")
.addObject("pageName", "sprt02030")
.addObject("opnnSbmsn", json ? opnnSbmsn : toJson(opnnSbmsn)) // 의견제출 정보
mav.addObject("pageNameMain", "sprt02010") // pageNameMain
.addObject("pageName", "sprt02030") // pageName
.addObject("infoPrefix", "opnnSbmsn") // prefix
.addObject("opnnSbmsnInfo", json ? opnnSbmsnInfo : toJson(opnnSbmsnInfo)) // 의견제출 정보
;
// 재조회로 호출되었다면..
// 재 조회로 호출되었다면..
if (req.getCallPurpose().equals("refresh")) {
DataObject totalInfo = sprt02Service.getCrdnInfo(req); // 단속(TB_CRDN) 대장 조회
mav.addObject("totalInfo", json ? totalInfo : toJson(totalInfo)); // 단속 정보
DataObject totalInfo = sprt02Service.getCrdnInfo(req); // 단속(TB_CRDN) 대장 조회
mav.addObject("totalInfo", json ? totalInfo : toJson(totalInfo)); // 단속 정보
}
return mav;
@ -218,33 +212,27 @@ public class Sprt02Controller extends ApplicationController {
public ModelAndView getSndngInfo(SprtQuery req) {
// 발송상세 정보
SndbQuery sndbQuery = new SndbQuery();
if (req.getCallPurpose() == null) {
sndbQuery.setCallPurpose("view");
} else {
sndbQuery.setCallPurpose(req.getCallPurpose());
}
sndbQuery.setCrdnId(req.getCrdnId());
sndbQuery.setDelYn(req.getDelYn());
sndbQuery.setOrderBy("SD.REG_DT, SD.SNDNG_DTL_ID DESC");
List<?> sndngDtl = sndngDtlService.getSndngDtls(sndbQuery);
List<?> sndngDtls = sndngDtlService.getSndngDtls(sndbQuery);
// 공시송달 정보
sndbQuery.setCrdnId(req.getCrdnId());
sndbQuery.setDelYn(req.getDelYn());
sndbQuery.setOrderBy("SV.REG_DT DESC, SV.SVBTC_ID DESC");
List<?> svbtc = svbtcService.getSvbtcDtls(sndbQuery);
List<?> svbtcDtls = svbtcService.getSvbtcDtls(sndbQuery);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02040-info");
mav.addObject("pageNameMain", "sprt02010")
.addObject("pageName", "sprt02040")
.addObject("sndngDtl", json ? sndngDtl : toJson(sndngDtl)) // 발송 정보
.addObject("svbtc", json ? svbtc : toJson(svbtc)) // 공시송달 정보
mav.addObject("pageNameMain", "sprt02010") // pageNameMain
.addObject("pageName", "sprt02040") // pageName
.addObject("infoPrefix", "sndngDtl") // prefix
.addObject("sndngDtls", json ? sndngDtls : toJson(sndngDtls)) // 발송 상세 정보
.addObject("svbtcDtls", json ? svbtcDtls : toJson(svbtcDtls)) // 공시송달 정보
;
// 재조회로 호출되었다면..
@ -278,7 +266,7 @@ public class Sprt02Controller extends ApplicationController {
levyQuery.setDelYn(req.getDelYn());
levyQuery.setOrderBy("RDUCT_ID DESC"); // 정렬
DataObject rduct = rductService.getRductInfo(levyQuery);
DataObject rductInfo = rductService.getRductInfo(levyQuery);
// 부과 제외(TB_LEVY_EXCL) 대장 조회
LevyExclQuery exclQuery = new LevyExclQuery();
@ -292,14 +280,14 @@ public class Sprt02Controller extends ApplicationController {
exclQuery.setDelYn(req.getDelYn());
exclQuery.setOrderBy("LEVY_EXCL_ID DESC"); // 정렬
DataObject levyExcl = levyExclService.getLevyExclInfo(exclQuery);
DataObject levyExclInfo = levyExclService.getLevyExclInfo(exclQuery);
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 조회
CrdnSttsHstryQuery crdnSttsHstryQuery = new CrdnSttsHstryQuery();
crdnSttsHstryQuery.setCrdnId(req.getCrdnId()); // 단속 ID
crdnSttsHstryQuery.setOrderBy("CSH.STTS_HSTRY_ID DESC"); // 정렬
List<?> crdnSttsHstry = crdnSttsHstryService.getCrdnSttsHstrys(crdnSttsHstryQuery);
List<?> crdnSttsHstrys = crdnSttsHstryService.getCrdnSttsHstrys(crdnSttsHstryQuery);
// 납부자 변경 이력(TB_PAYER_HSTRY) 조회
PayerQuery payerQuery = new PayerQuery();
@ -307,18 +295,17 @@ public class Sprt02Controller extends ApplicationController {
payerQuery.setRtpyrId(req.getRtpyrId()); // 납부자 ID
payerQuery.setOrderBy("CPAH.REG_DT DESC"); // 정렬
List<?> payerAddrHstry = payerService.getPayerAddrHstrys(payerQuery);
List<?> payerAddrHstrys = payerService.getPayerAddrHstrys(payerQuery);
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sprt/sprt02050-info");
mav.addObject("pageNameMain", "sprt02010")
.addObject("pageName", "sprt02050")
.addObject("rduct", json ? rduct : toJson(rduct)) // 과태료 감경 정보
.addObject("levyExcl", json ? levyExcl : toJson(levyExcl)) // 부과 제외 정보
.addObject("crdnSttsHstry", json ? crdnSttsHstry : toJson(crdnSttsHstry)) // 단속 상태 이력
.addObject("payerAddrHstry", json ? payerAddrHstry : toJson(payerAddrHstry)) // 납부자 주소 변경 이력
.addObject("rductInfo", json ? rductInfo : toJson(rductInfo)) // 과태료 감경 정보
.addObject("levyExclInfo", json ? levyExclInfo : toJson(levyExclInfo)) // 부과 제외 정보
.addObject("crdnSttsHstrys", json ? crdnSttsHstrys : toJson(crdnSttsHstrys)) // 단속 상태 이력
.addObject("payerAddrHstrys", json ? payerAddrHstrys : toJson(payerAddrHstrys)) // 납부자 주소 변경 이력
;
// 재조회로 호출되었다면..

@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Page Body -->
<div class="content-wrapper">
<div class="content-pop">
<div class="d-flex flex-row justify-content-evenly">
<div class="w-px-1150">
<!-- 입력 영역 -->
@ -291,7 +291,7 @@
<!-- 단속 이미지 -->
<jsp:include page="/WEB-INF/jsp/fims/photo-main.jsp" />
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div> <!-- <div class="content-wrapper"> -->
</div> <!-- <div class="content-popr"> -->
<script>
/**************************************************************************
@ -378,10 +378,11 @@
dialog.alert({
content: showMessage
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
if (resp.saved) { fnClose${pageNameMain}(true); }
if (resp.saved) { fnClose${pageNameMain}(true); } // Dialog 닫기
}
// 삭제
@ -407,9 +408,9 @@
let params = {
callPurpose: "refresh"
, crdnId: crdnId
, sggCd: $("#sggCd--${pageNameMain}").val()
, taskSeCd: $("#taskSeCd--${pageNameMain}").val()
, crdnId: crdnId
, delYn: "N"
};
@ -426,8 +427,8 @@
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
// 단속, 납부자 정보
if (resp.crdnPayer) {
$P.control.setData([resp.crdnPayer]);
if (resp.crdnPayerInfo) {
$P.control.setData([resp.crdnPayerInfo]);
}
}
});
@ -438,14 +439,14 @@
if (!params) return;
ajax.get({
url : wctx.url("/" + params.taskSeCd + "/cvlc/cvlc01/050/info.do")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/cvlc/cvlc01/050/info.do")
, data: params || {}
, success: resp => {
dialog.open({
id : "cvlcptOrgnlDialog--${pageName}"
, title : params.title
, content : resp
, size : "xl"
id: "cvlcptOrgnlDialog--${pageName}"
, title: params.title
, content: resp
, size: "xl"
});
}
});
@ -456,14 +457,14 @@
if (!params) return;
ajax.get({
url : wctx.url("/" + params.taskSeCd + "/cvlc/cvlc02/060/info.do?openerPageName=${pageName}")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/cvlc/cvlc02/060/info.do?openerPageName=${pageName}")
, data: params || {}
, success: resp => {
dialog.open({
id : "answerPreviewDialog--${pageName}"
, title : params.title
, content : resp
, size : "xl"
id: "answerPreviewDialog--${pageName}"
, title: params.title
, content: resp
, size: "xl"
});
}
});
@ -473,10 +474,9 @@
$P.callbackRsn = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {
callPurpose: "remove"
, crdnId: $P.control.dataset.getValue("CRDN_ID") // 단속 ID
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: $P.control.dataset.getValue("CRDN_ID") // 단속 ID
, delRsn: obj.reason // 삭제 사유
};
@ -488,16 +488,16 @@
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/excl/excl03/010/create.do")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/excl/excl03/010/create.do")
, data: params || {}
, success: resp => {
if (resp.saved) {
dialog.alert({
content : "단속 재등록 작업이 정상 처리되었습니다."
, onOK : () => { }
content: "단속 재등록 작업이 처리되었습니다."
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
}
return;
}
});
}
@ -515,7 +515,7 @@
, title: params.title
, content: resp
, size: "lg"
, onClose: () => { $P.fnRefreshDataInfo(); }
, onClose: () => { $P.fnRefreshDataInfo(); } // 자료 재 조회
});
}
});
@ -526,19 +526,18 @@
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/crdn/crdn06/010/removeCrdnPayer.do")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/crdn/crdn06/010/removeCrdnPayer.do")
, data: params || {}
, success: resp => {
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
, onOK : () => { }
content: showMessage
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
if (resp.saved) {
$P.fnRefreshDataInfo();
}
if (resp.saved) { $P.fnRefreshDataInfo(); } // 자료 재 조회
}
});
}
@ -556,15 +555,15 @@
}
ajax.get({
url : wctx.url("/" + params.taskSeCd + "/payer/info.do")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/payer/info.do")
, data: params || {}
, success: resp => {
dialog.open({
id: "payerDialog"
, title: dialogTitle
, content: resp
, size: "lg"
, onClose: () => { $P.fnRefreshDataInfo(); }
, onClose: () => { $P.fnRefreshDataInfo(); } // 자료 재 조회
});
}
});
@ -585,19 +584,20 @@
// 민원 연계 ID가 없다면.. return
if (typeof cvlcptLinkId == "undefined" || cvlcptLinkId == null || cvlcptLinkId == "") {
dialog.alert({
content : "조회된 단속 민원 대장 정보가 없습니다."
content: "조회된 단속 민원 대장 정보가 없습니다."
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
let params = {
callPurpose : "view"
, title : title
, crdnId : crdnId // 단속 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
callPurpose: "view"
, title: title
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
};
$P.viewCvlcptOrgnl(params);
@ -615,19 +615,20 @@
// 민원 연계 ID가 없다면.. return
if (typeof cvlcptLinkId == "undefined" || cvlcptLinkId == null || cvlcptLinkId == "") {
dialog.alert({
content : "조회된 단속 민원 대장 정보가 없습니다."
content: "조회된 단속 민원 대장 정보가 없습니다."
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
let params = {
callPurpose : "view"
, title : title
, crdnId : crdnId // 단속 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, title: title
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
};
$P.viewAnswerPreview(params);
@ -643,9 +644,9 @@
let params = {
callPurpose: "update"
, title: title
, crdnId: crdnId // 단속 ID
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
};
$P.control.getInfo(params);
@ -664,34 +665,34 @@
// 단속 상태 코드 확인
if (Number(crdnSttsCd) > 51) {
dialog.alert({
content : "[" + title + "]" + " 작업은 단속상태가 '부과 이전' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 단속상태가 '부과 이전' 자료만 처리 가능합니다."
+ "<br>" + "단속상태 : " + crdnSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
// 삭제 메세지 확인
dialog.alert({
content : "선택한 " + $P.control.prefixName + " 정보를 삭제하시겠습니까?"
, onOK : async() => {
// 사유 입력
var resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html"));
var template = await resp.text();
dialog.open({
id : "inputDelRsnDialog",
title: title,
size : "lg",
content: template,
init : () => {
setDialogZindex();
},
onOK : () => {
$P.callbackRsn({ reason : $("#reason").val() });
}
});
content: "선택하신 " + $P.control.prefixName + " 정보를 삭제하시겠습니까?"
, onOK: () => {
// 삭제 사유 입력
fetch(wctx.url("/resources/html/inputRsnDialog.html"))
.then(function(resp) { return resp.text(); })
.then(function(template) {
dialog.open({
id: "inputDelRsnDialog"
, title: title
, size: "lg"
, content: template
, init: () => { setDialogZindex(); }
, onOK: () => {
$P.callbackRsn({ reason: $("#reason").val() });
}
});
});
}
});
}
@ -709,23 +710,25 @@
// 단속 상태 코드 확인
if (Number(crdnSttsCd) < 80 || Number(crdnSttsCd) > 88) {
dialog.alert({
content : "[" + title + "]" + " 작업은 단속상태가 '비부과', '계고', '부과취소' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 단속상태가 '비부과', '계고', '부과취소' 자료만 처리 가능합니다."
+ "<br>" + "단속상태 : " + crdnSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
dialog.alert({
content : "현재 단속 정보를 재등록 하겠습니까?"
, onOK : () => {
content: "현재 단속 정보를 재등록 하겠습니까?"
, init: () => { setDialogZindex(); }
, onOK: () => {
let params = {
callPurpose : "create"
, title : title
, bfrCrdnId : bfrCrdnId // 단속 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
callPurpose: "create"
, title: title
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, bfrCrdnId: bfrCrdnId // 단속 ID
};
$P.createCrdnReReg(params);
@ -745,8 +748,8 @@
}
let params = {
crdnIds: $P.control.dataset.getValue("CRDN_ID") // 단속 ID
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분
taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분
, crdnIds: $P.control.dataset.getValue("CRDN_ID") // 단속 ID
};
let inBrowser = false;
@ -774,7 +777,7 @@
});
new Error("");
}
let parts = header.split(';');
filenameInHeader = decodeURIComponent(parts[1].split('=')[1]);
@ -800,9 +803,9 @@
let params = {
callPurpose: "update"
, title: title
, crdnId: crdnId // 단속 ID
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
};
$P.getInfoCrdnSttsCd(params);
@ -820,24 +823,25 @@
// 납부자 ID 가 없다면.. return
if (rtpyrId == null || rtpyrId == "") {
dialog.alert({
content : "조회된 납부자 대장 정보가 없습니다."
content: "조회된 납부자 대장 정보가 없습니다."
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
dialog.alert({
content : "선택한 자료의 납부자 정보를 초기화 하시겠습니까?"
, onOK : () => {
content: "선택한 자료의 납부자 정보를 초기화 하시겠습니까?"
, init: () => { setDialogZindex(); }
, onOK: () => {
let params = {
callPurpose : "remove"
, title : title
, crdnId : crdnId // 단속 ID
, rtpyrId : rtpyrId // 납부자 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, delYn : "N"
title: title
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
, rtpyrId: rtpyrId // 납부자 ID
, delYn: "N"
};
$P.deleteCrdnPayer(params);
@ -853,14 +857,14 @@
if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return;
let params = {
callPurpose : "update"
, title : title
, crdnId : crdnId // 단속 ID
, rtpyrId : $P.control.dataset.getValue("RTPYR_ID") // 납부자 ID
, sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, vhrno : $P.control.dataset.getValue("VHRNO") // 차량번호
, rtpyrInptSeCd : "01" // 납부자 입력 구분 코드
callPurpose: "update"
, title: title
, sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, crdnId: crdnId // 단속 ID
, rtpyrId: $P.control.dataset.getValue("RTPYR_ID") // 납부자 ID
, vhrno: $P.control.dataset.getValue("VHRNO") // 차량번호
, rtpyrInptSeCd: "01" // 납부자 입력 구분 코드
};
$P.updatePayer(params);
@ -877,45 +881,36 @@
**************************************************************************/
// 이벤트 설정
$P.setEvent = () => {
// 민원 원본 보기 버튼 이벤트
// 업무 버튼 이벤트
$("#btnViewCvlcptOrgnl--${pageName}").on("click", function() {
$P.fnViewCvlcptOrgnl($(this).attr("title"));
$P.fnViewCvlcptOrgnl($(this).attr("title")); // 민원 원본 보기
});
// 민원 답변 보기 버튼 이벤트
$("#btnViewAnswerPreview--${pageName}").on("click", function() {
$P.fnViewAnswerPreview($(this).attr("title"));
$P.fnViewAnswerPreview($(this).attr("title")); // 민원 답변 보기
});
// 단속 정보 수정 버튼 이벤트
$("#btnUpdateCrdn--${pageName}").on("click", function() {
$P.fnUpdateCrdn($(this).attr("title"));
$P.fnUpdateCrdn($(this).attr("title")); // 단속 정보 수정
});
// 단속 정보 삭제 버튼 이벤트
$("#btnRemoveCrdn--${pageName}").on("click", function() {
$P.fnRemoveCrdn($(this).attr("title"));
$P.fnRemoveCrdn($(this).attr("title")); // 단속 정보 삭제
});
// 단속 재등록
$("#btnCreateCrdnReReg--${pageName}").on("click", function() {
$P.fnCreateCrdnReReg($(this).attr("title"));
$P.fnCreateCrdnReReg($(this).attr("title")); // 단속 재등록
});
// 고지서 출력
$("#btnPrintNhtPdf01--${pageName}").on("click", function() {
$P.fnMakeFileNht($(this).attr("title"), "pdf", "01");
$P.fnMakeFileNht($(this).attr("title"), "pdf", "01"); // 고지서 출력
});
// 고지서 출력
$("#btnPrintNhtPdf02--${pageName}").on("click", function() {
$P.fnMakeFileNht($(this).attr("title"), "pdf", "02");
$P.fnMakeFileNht($(this).attr("title"), "pdf", "02"); // 고지서 출력
});
// 단속 상태 변경
$("#btnUpdateCrdnSttsCd--${pageName}").on("click", function() {
$P.fnUpdateCrdnSttsCd($(this).attr("title"));
$P.fnUpdateCrdnSttsCd($(this).attr("title")); // 단속 상태 변경
});
// 납부자 초기화 버튼 이벤트
$("#btnDeleteCrdnPayer--${pageName}").on("click", function() {
$P.fnDeleteCrdnPayer($(this).attr("title"));
$P.fnDeleteCrdnPayer($(this).attr("title")); // 납부자 초기화
});
// 납부자 수정 버튼 이벤트
$("#btnUpdatePayer--${pageName}").on("click", function() {
$P.fnUpdatePayer($(this).attr("title"));
$P.fnUpdatePayer($(this).attr("title")); // 납부자 수정
});
}
@ -935,7 +930,7 @@
$("#btnDeleteExistPhoto--${pageName}").prop("disabled", true);
// 화면 호출(callPurpose)이 view가 아니라면 버튼 비활성화 disabled = false
if (${pageNameMain}CallPurpose != "view") {
if (pageObject['${pageNameMain}'].callPurpose != "view") {
$("#btnUpdateCrdn--${pageName}").prop("disabled", false);
$("#btnRemoveCrdn--${pageName}").prop("disabled", false);
$("#btnCreateCrdnReReg--${pageName}").prop("disabled", false);
@ -950,42 +945,42 @@
}
// jquery를 이용한 show/hide (style이 유지)
$("#divBlank1--${pageName}").hide(); // 빈 칸1
$("#divBlank2--${pageName}").hide(); // 빈 칸2
$("#divCrdnSn--${pageName}").hide(); // 단속 일련번호
$("#divDtlCrdnPlc--${pageName}").hide(); // 상세 단속 장소
$("#lbDstrbncYn--${pageName}").hide(); // 1면 방해
$("#divCrdnSpareaNm--${pageName}").hide(); // 단속 특별구역 코드
$("#divTowngYnNm--${pageName}").hide(); // 견인 여부
$("#divFfnlgCarmdlNm--${pageName}").hide(); // 과태료 차종
$("#divOvtimeYnNm--${pageName}").hide(); // 시간외 여부
$("#divParkngPsbltyRsltNm--${pageName}").hide(); // 주차 가능 결과 코드
$("#divUseFuelNm--${pageName}").hide(); // 사용 연료 구분
$("#divCrdnBgngTm--${pageName}").hide(); // 단속 시작 시각 ~ 단속 종료 시각
$("#divBlank1--${pageName}").hide(); // 빈 칸1
$("#divBlank2--${pageName}").hide(); // 빈 칸2
$("#divCrdnSn--${pageName}").hide(); // 단속 일련번호
$("#divDtlCrdnPlc--${pageName}").hide(); // 상세 단속 장소
$("#lbDstrbncYn--${pageName}").hide(); // 1면 방해
$("#divCrdnSpareaNm--${pageName}").hide(); // 단속 특별구역 코드
$("#divTowngYnNm--${pageName}").hide(); // 견인 여부
$("#divFfnlgCarmdlNm--${pageName}").hide(); // 과태료 차종
$("#divOvtimeYnNm--${pageName}").hide(); // 시간외 여부
$("#divParkngPsbltyRsltNm--${pageName}").hide(); // 주차 가능 결과 코드
$("#divUseFuelNm--${pageName}").hide(); // 사용 연료 구분
$("#divCrdnBgngTm--${pageName}").hide(); // 단속 시작 시각 ~ 단속 종료 시각
// 업무에 따른 요소들 visible
if (pageObject["${pageNameMain}"].mainControl.dataset.getValue("TASK_SE_CD") == "BPV") { // 전용차로위반
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divDtlCrdnPlc--${pageName}").show(); // 상세 단속 장소
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divDtlCrdnPlc--${pageName}").show(); // 상세 단속 장소
} else if (pageObject["${pageNameMain}"].mainControl.dataset.getValue("TASK_SE_CD") == "DPV") { // 장애인전용
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divBlank2--${pageName}").show(); // 빈 칸2
$("#lbDstrbncYn--${pageName}").show(); // 1면 방해
$("#divParkngPsbltyRsltNm--${pageName}").show(); // 주차 가능 결과 코드
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divBlank2--${pageName}").show(); // 빈 칸2
$("#lbDstrbncYn--${pageName}").show(); // 1면 방해
$("#divParkngPsbltyRsltNm--${pageName}").show(); // 주차 가능 결과 코드
} else if (pageObject["${pageNameMain}"].mainControl.dataset.getValue("TASK_SE_CD") == "ECA") { // 전기차주차
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divBlank2--${pageName}").show(); // 빈 칸2
$("#divUseFuelNm--${pageName}").show(); // 사용 연료 구분
$("#divBlank1--${pageName}").show(); // 빈 칸1
$("#divBlank2--${pageName}").show(); // 빈 칸2
$("#divUseFuelNm--${pageName}").show(); // 사용 연료 구분
} else if (pageObject["${pageNameMain}"].mainControl.dataset.getValue("TASK_SE_CD") == "PVS") { // 주정차위반
$("#divCrdnBgngTm--${pageName}").show(); // 단속 시작 시각 ~ 단속 종료 시각
$("#divCrdnSn--${pageName}").show(); // 단속 일련번호
$("#divCrdnSpareaNm--${pageName}").show(); // 단속 특별구역 코드
$("#divTowngYnNm--${pageName}").show(); // 견인 여부
$("#divFfnlgCarmdlNm--${pageName}").show(); // 과태료 차종
$("#divOvtimeYnNm--${pageName}").show(); // 시간외 여부
$("#divCrdnBgngTm--${pageName}").show(); // 단속 시작 시각 ~ 단속 종료 시각
$("#divCrdnSn--${pageName}").show(); // 단속 일련번호
$("#divCrdnSpareaNm--${pageName}").show(); // 단속 특별구역 코드
$("#divTowngYnNm--${pageName}").show(); // 견인 여부
$("#divFfnlgCarmdlNm--${pageName}").show(); // 과태료 차종
$("#divOvtimeYnNm--${pageName}").show(); // 시간외 여부
} else if (pageObject["${pageNameMain}"].mainControl.dataset.getValue("TASK_SE_CD") == "PES") { // 밤샘주차위반
$("#divBlank2--${pageName}").show(); // 빈칸
$("#divCrdnBgngTm--${pageName}").show(); // 단속 시작 시각 ~ 단속 종료 시각
$("#divBlank2--${pageName}").show(); // 빈칸
$("#divCrdnBgngTm--${pageName}").show(); // 단속 시작 시각 ~ 단속 종료 시각
}
}
@ -999,15 +994,15 @@
$P.initForm();
// 3. Dataset 설정
$P.control.setData([${crdnPayer}]); // 단속, 납부자 정보
$P.control.setData([${crdnPayerInfo}]); // 단속, 납부자 정보
// 4. 사진영역 설정
settingPhotoMain("${pageName}", "crdnId--${pageName}"
, function() {
return {
vhrno : $("#vhrno--${pageName}").val()
, vhclNm : $("#vhclNm--${pageName}").val()
, vhclColor : $("#vhclColor--${pageName}").val()
vhrno: $("#vhrno--${pageName}").val()
, vhclNm: $("#vhclNm--${pageName}").val()
, vhclColor: $("#vhclColor--${pageName}").val()
};
}, async function(vhrnoEl) {
// 차적조회는 "단속정보 수정" 에서 해라...

@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Page Body -->
<div class="content-wrapper">
<div class="content-pop">
<div class="d-flex flex-row justify-content-evenly">
<!-- 발송 정보 -->
<div class="col-xl-12 mx-1">
@ -100,10 +100,11 @@
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 발송 정보 <div class="col-xl-12 mx-1"> -->
</div> <!-- <div class="col-xl-12 mx-1"> -->
<!-- 발송 정보 -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
<div class="d-flex flex-row justify-content-evenly">
@ -133,7 +134,8 @@
</div>
</div> <!-- <div class="card"> -->
</form>
</div> <!-- 가상계좌 정보 <div class="col-xl-3 mx-1"> -->
</div> <!-- <div class="col-xl-3 mx-1"> -->
<!-- 가상계좌 정보 -->
<!-- 공시송달 이력 -->
<div class="col-xl-9 mx-1">
@ -181,12 +183,14 @@
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 공시송달 이력 <div class="col-xl-12 mx-1"> -->
</div> <!-- <div class="col-xl-9 mx-1"> -->
<!-- 공시송달 이력 -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div> <!-- <div class="content-wrapper"> -->
</div> <!-- <div class="content-pop"> -->
<script>
/**************************************************************************
@ -199,7 +203,7 @@
**************************************************************************/
$(document).ready(function() {
// pageObject
var $P = pageObject["${pageName}"];
let $P = pageObject["${pageName}"];
// FormFields
$P.formFields = new FimsFormFields("#frmEdit--${pageName}");
@ -209,44 +213,44 @@
**************************************************************************/
// 발송 상세 정보 DatasetControl
$P.sndngDtlControl = new DatasetControl({
prefix : "sndng"
, prefixName : "발송상세"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.sndngDtlList
, appendData : true
, formats : {
SNDNG_YMD : dateFormat
, DUDT_YMD : dateFormat
, SUM_AMT : numberFormat
, DLVR_YMD : dateFormat
, DLVR_TM : timeFormat
, REG_DT : datetimeFormat
, MDFCN_DT : datetimeFormat
prefix: "sndng"
, prefixName: "발송 반송"
, keymapper: info => info ? info.SNDNG_DTL_ID : ""
, dataGetter: obj => obj.sndngDtls
, appendData: true
, formats: {
SNDNG_YMD: dateFormat
, DUDT_YMD: dateFormat
, SUM_AMT: numberFormat
, DLVR_YMD: dateFormat
, DLVR_TM: timeFormat
, REG_DT: datetimeFormat
, MDFCN_DT: datetimeFormat
}
});
// 공시송달 정보 DatasetControl
$P.svbtcControl = new DatasetControl({
prefix : "svbtc"
, prefixName : "공시송달"
, keymapper : info => info ? info.SVBTC_ID : ""
, dataGetter : obj => obj.svbtcList
, appendData : true
, formats : {
SVBTC_YMD : dateFormat
, REG_DT : datetimeFormat
$P.svbtcDtlControl = new DatasetControl({
prefix: "svbtc"
, prefixName: "공시송달"
, keymapper: info => info ? info.SVBTC_ID : ""
, dataGetter: obj => obj.svbtcDtls
, appendData: true
, formats: {
SVBTC_YMD: dateFormat
, REG_DT: datetimeFormat
}
});
/**************************************************************************
* DatasetControl 이벤트
* 발송 상세 DatasetControl 이벤트
**************************************************************************/
// 발송 상세 Dataset 변경
// Dataset 변경
$P.sndngDtlControl.onDatasetChange = (obj) => {
$P.renderSndngList();
};
// 발송 상세 선택 자료 변경 이벤트
// 현재 선택 자료 변경 이벤트
$P.sndngDtlControl.onCurrentChange = (item) => {
if (!item) return;
@ -278,38 +282,25 @@
if (item.data.BANK_NM19 != null && item.data.BANK_NM19 != "") vrActno += item.data.BANK_NM19 + " " + item.data.VR_ACTNO19 + "\n"; // 가상 계좌번호19
if (item.data.BANK_NM20 != null && item.data.BANK_NM20 != "") vrActno += item.data.BANK_NM20 + " " + item.data.VR_ACTNO20 + "\n"; // 가상 계좌번호20
$("#vrActno--${pageName}").val(vrActno); // 가상 계좌번호
$("#epayno--${pageName}").val(item.data.EPAYNO_MASK); // 전자납부번호
$("#vrActno--${pageName}").val(vrActno); // 가상 계좌번호
$("#epayno--${pageName}").val(item.data.EPAYNO_MASK); // 전자납부번호
}
// 공시송달 Dataset 변경
$P.svbtcControl.onDatasetChange = (obj) => {
$P.renderSvbtcList();
}
// 공시송달 선택 자료 변경 이벤트
$P.svbtcControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbodySvbtc--${pageName}").setCurrentRow(key);
}
// 개별 반송 dialog
$P.sndngDtlControl.getInfo = (params) => {
if (!params) return;
ajax.get({
url : wctx.url("/" + params.taskSeCd + "/sndb/sndb01/230/info.do")
, data : params || {}
, success : resp => {
url: wctx.url("/" + params.taskSeCd + "/sndb/sndb01/230/info.do") + "?openerPageName=${pageName}"
, data: params || {}
, success: resp => {
dialog.open({
id : "sndbkDialog"
, title : params.title
, content : resp
, size : "md"
, onClose : () => { $P.refreshDataInfo(); }
id: "sndbkDialog--${pageName}"
, title: params.title
, content: resp
, size: "md"
, onClose: () => { $P.fnRefreshDataInfo(); } // 자료 재 조회
});
}
});
@ -321,13 +312,12 @@
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert({
content : showMessage
, onOK : () => { }
content: showMessage
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
if (resp.saved) {
$P.refreshDataInfo();
}
if (resp.saved) { $P.fnRefreshDataInfo(); } // 자료 재 조회
}
// 개별 반송 삭제
@ -335,12 +325,29 @@
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/sndb/sndb01/220/remove.do")
, data : params
, success : resp => $P.sndngDtlControl.onRemove(resp)
url: wctx.url("/" + params.taskSeCd + "/sndb/sndb01/220/remove.do")
, data: params || {}
, success: resp => $P.sndngDtlControl.onRemove(resp)
});
}
/**************************************************************************
* 공시송달 DatasetControl 이벤트
**************************************************************************/
// Dataset 변경
$P.svbtcDtlControl.onDatasetChange = (obj) => {
$P.renderSvbtcList();
}
// 현재 선택 자료 변경 이벤트
$P.svbtcDtlControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbodySvbtc--${pageName}").setCurrentRow(key);
}
/**************************************************************************
* DataTables 이벤트
**************************************************************************/
@ -362,15 +369,15 @@
// 공시송달 정보 DataTables에 click 이벤트
$P.renderSvbtcList = () => {
let ${infoPrefix}List = $P.svbtcControl.dataset;
let empty = ${infoPrefix}List.empty;
let svbtcDtlList = $P.svbtcDtlControl.dataset;
let empty = svbtcDtlList.empty;
let trs = empty ?
[document.getElementById("svbtcNotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
svbtcDtlList.inStrings(
document.getElementById("svbtcRow--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "pageObject['${pageName}'].svbtcControl.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
.replace(/{onclick}/gi, "pageObject['${pageName}'].svbtcDtlControl.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
);
$("#tbodySvbtc--${pageName}").html(trs.join());
@ -380,38 +387,36 @@
* 사용자 함수(function)
**************************************************************************/
// 자료 재조회
$P.refreshDataInfo = () => {
$P.fnRefreshDataInfo = () => {
// 단속 ID
let crdnId = $("#crdnId--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return;
let params = {
callPurpose : "refresh"
, crdnId : crdnId
, sggCd : $("#sggCd--${pageNameMain}").val()
, taskSeCd : $("#taskSeCd--${pageNameMain}").val()
, delYn : "N"
callPurpose: "refresh"
, sggCd: $("#sggCd--${pageNameMain}").val()
, taskSeCd: $("#taskSeCd--${pageNameMain}").val()
, crdnId: crdnId
, delYn: "N"
};
ajax.get({
url : wctx.url("/" + params.taskSeCd + "/sprt/sprt02/040/info.do")
url: wctx.url("/" + params.taskSeCd + "/sprt/sprt02/040/info.do")
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, data: params || {}
, success : resp => {
// 초기화
$("#frmEdit--${pageName}")[0].reset(); // 화면 초기화
$P.sndngDtlControl.dataset.clear(); // 발송 상세 Dataset 초기화
$P.svbtcControl.dataset.clear(); // 공시송달 Dataset 초기화
$("#frmEdit--${pageName}")[0].reset(); // 화면 초기화
$P.sndngDtlControl.dataset.clear(); // 발송 상세 Dataset 초기화
$P.svbtcDtlControl.dataset.clear(); // 공시송달 Dataset 초기화
// Dataset 셋팅
$P.sndngDtlControl.setData(resp.sndngDtl); // 발송 이력 정보
$P.svbtcControl.setData(resp.svbtcList); // 공시송달 이력 정보
// sprt02010-main 단속 정보
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
// 최상단 단속 Data 셋팅
if (resp.totalInfo) {
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
}
// Dataset 셋팅
$P.sndngDtlControl.setData(resp.sndngDtls); // 발송 이력 정보
$P.svbtcDtlControl.setData(resp.svbtcDtls); // 공시송달 이력 정보
}
});
}
@ -431,9 +436,10 @@
// 미배달 사유 확인
if (undlvrRsnNm != "" ) {
dialog.alert({
content : "미배달 사유가 " + undlvrRsnNm + " (으)로 반송 등록 되어 있습니다."
content: "미배달 사유가 " + undlvrRsnNm + " (으)로 반송 등록 되어 있습니다."
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
@ -444,21 +450,22 @@
// 발송상세 상태코드 확인 (FIM050 - 03:발송 04:발송확인)
if (sndngDtlSttsCd != "03" && sndngDtlSttsCd != "04") {
dialog.alert({
content : "[" + title + "]" + " 작업은 발송상세 상태가 '발송' 또는 '발송확인' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 발송상세 상태가 '발송' 또는 '발송확인' 자료만 처리 가능합니다."
+ "<br>" + "발송상세상태 : " + sndngDtlSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
let params = {
callPurpose : "create"
, title : title
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sggCd : $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, delYn : "N"
callPurpose: "create"
, title: title
, sggCd: $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId: sndngDtlId // 발송 상세 ID
, delYn: "N"
};
$P.sndngDtlControl.getInfo(params);
@ -474,24 +481,26 @@
// 미배달 사유 코드
let undlvrRsnCd = $P.sndngDtlControl.dataset.getValue("UNDLVR_RSN_CD");
let undlvrRsnNm = $P.sndngDtlControl.dataset.getValue("UNDLVR_RSN_NM");
// 발송상세 상태코드 확인 (FIM050 - 05:반송)
if (undlvrRsnCd == "") {
if (undlvrRsnNm == null || undlvrRsnNm == "") {
dialog.alert({
content : "조회된 반송(미배달) 사유가 없습니다."
content: "조회된 반송(미배달) 사유가 없습니다."
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
let params = {
callPurpose : "update"
, title : title
, sggCd : $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : $P.sndngDtlControl.dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm : $P.sndngDtlControl.dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
callPurpose: "update"
, title: title
, sggCd: $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId: sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd: $P.sndngDtlControl.dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm: $P.sndngDtlControl.dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
, delYn : "N"
};
@ -511,26 +520,28 @@
// 발송상세 상태코드 확인 (FIM050 - 05:반송)
if (sndngDtlSttsCd != "05") {
dialog.alert({
content : "[" + title + "]" + " 작업은 발송상세 상태가 '반송' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 발송상세 상태가 '반송' 자료만 처리 가능합니다."
+ "<br>" + "발송상세상태 : " + sndngDtlSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, init: () => { setDialogZindex(); }
, onOK: () => { }
});
return;
}
let params = {
callPurpose : "delete"
, title : title
, sggCd : $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : "03" // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) FIM050 - 03 발송
callPurpose: "delete"
, title: title
, sggCd: $P.sndngDtlControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd: $P.sndngDtlControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId: sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd: "03" // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) FIM050 - 03 발송
};
dialog.alert({
content : "선택한 반송 정보를 삭제하시겠습니까?"
, onOK : () => {
content: "선택한 반송 정보를 삭제하시겠습니까?"
, init: () => { setDialogZindex(); }
, onOK: () => {
$P.sndngDtlControl.remove(params);
}
});
@ -556,21 +567,18 @@
**************************************************************************/
// 이벤트 설정
$P.setEvent = () => {
// 개별 반송 등록 버튼 이벤트
// 업무 버튼 이벤트
$("#btnCreateSndbk--${pageName}").on("click", function() {
$P.fnCreateSndbk($(this).attr("title"));
$P.fnCreateSndbk($(this).attr("title")); // 개별 반송 등록
});
// 개별 반송 수정 버튼 이벤트
$("#btnUpdateSndbk--${pageName}").on("click", function() {
$P.fnUpdateSndbk($(this).attr("title"));
$P.fnUpdateSndbk($(this).attr("title")); // 개별 반송 수정
});
// 개별 반송 삭제 버튼 이벤트
$("#btnRemoveSndbk--${pageName}").on("click", function() {
$P.fnRemoveSndbk($(this).attr("title"));
$P.fnRemoveSndbk($(this).attr("title")); // 개별 반송 삭제
});
// 우편 종적 보기 버튼 이벤트
$("#btnViewPostTrace--${pageName}").on("click", function() {
$P.fnViewPostTrace($(this).attr("title"));
$P.fnViewPostTrace($(this).attr("title")); // 우편 종적 보기
});
// DataTables width 변경 조정
@ -586,7 +594,7 @@
$("#btnRemoveSndbk--${pageName}").prop("disabled", true);
// 화면 호출(callPurpose)이 view가 아니라면 버튼 비활성화 disabled = false
if (${pageNameMain}CallPurpose != "view") {
if (pageObject['${pageNameMain}'].callPurpose != "view") {
$("#btnCreateSndbk--${pageName}").prop("disabled", false);
$("#btnUpdateSndbk--${pageName}").prop("disabled", false);
$("#btnRemoveSndbk--${pageName}").prop("disabled", false);
@ -603,8 +611,8 @@
$P.initForm();
// 3. Dataset 설정
$P.sndngDtlControl.setData(${sndngDtl}); // 발송 이력
$P.svbtcControl.setData(${svbtc}); // 공시송달 이력
$P.sndngDtlControl.setData(${sndngDtls}); // 발송 이력
$P.svbtcDtlControl.setData(${svbtcDtls}); // 공시송달 이력
});
</script>

@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- Page Body -->
<div class="content-wrapper">
<div class="content-pop">
<!-- 화면 분할 -->
<div class="d-flex flex-row justify-content-evenly">
<!-- 감경 정보 -->
@ -66,8 +66,10 @@
</div>
</div> <!-- <div class="row g-1"> -->
</form>
<!-- 입력 영역 -->
</div> <!-- <div class="card"> -->
</div> <!-- 감경 정보 <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="col-xl-6 mx-1"> -->
<!-- 감경 정보 -->
<!-- 부과제외 정보 -->
<div class="col-xl-6 mx-1">
@ -133,9 +135,11 @@
</div>
</div> <!-- <div class="row g-1"> -->
</form>
<!-- 입력 영역 -->
</div> <!-- <div class="card"> -->
</div> <!-- 부과제외 정보 <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
<!-- 부과제외 정보 -->
<div class="d-flex flex-row justify-content-evenly">
<!-- 처리 상태 이력 -->
@ -182,10 +186,11 @@
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 처리 상태 이력 <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="col-xl-6 mx-1"> -->
<!-- 처리 상태 이력 -->
<!-- 주소 변동 이력 -->
<div class="col-xl-6 mx-1">
@ -229,13 +234,14 @@
</table>
</div>
</div>
</div> <!-- / DataTables(그리드) -->
</div> <!-- DataTables(그리드) -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- <div class="card"> -->
</div> <!-- 주소 변동 이력 <div class="col-xl-6 mx-1"> -->
</div> <!-- <div class="col-xl-6 mx-1"> -->
<!-- 주소 변동 이력 -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div>
</div> <!-- <div class="content-pop"> -->
<script>
/**************************************************************************
@ -262,7 +268,7 @@
prefix: "rduct"
, prefixName: "감경"
, keymapper: info => info ? info.RDUCT_ID : ""
, dataGetter: obj => obj.rduct
, dataGetter: obj => obj.rductInfo
, formats: {
RDUCT_YMD: dateFormat
, RDUCT_AMT: numberFormat
@ -275,7 +281,7 @@
prefix: "levyExcl"
, prefixName: "부과제외"
, keymapper: info => info ? info.LEVY_EXCL_ID : ""
, dataGetter: obj => obj.levyExcl
, dataGetter: obj => obj.levyExclInfo
, formats: {
LEVY_EXCL_YMD: dateFormat
, REG_DT: datetimeFormat
@ -287,7 +293,7 @@
prefix: "crdnSttsHstry"
, prefixName: "단속상태 이력"
, keymapper: info => info ? info.STTS_HSTRY_ID : ""
, dataGetter: obj => obj.crdnSttsHstryList
, dataGetter: obj => obj.crdnSttsHstrys
, appendData: true
, formats: {
REG_DT: datetimeFormat
@ -299,7 +305,7 @@
prefix: "payerHstry"
, prefixName: "납부자변경 이력"
, keymapper: info => info ? info.HSTRY_SN : ""
, dataGetter: obj => obj.payerHstryList
, dataGetter: obj => obj.payerHstrys
, appendData: true
, formats: {
REG_DT: datetimeFormat
@ -307,41 +313,13 @@
});
/**************************************************************************
* DatasetControl 이벤트
* 감경 DatasetControl 이벤트
**************************************************************************/
// 단속처리상태 이력 Dataset 변경
$P.crdnSttsHstryControl.onDatasetChange = (obj) => {
$P.renderCrdnSttsHstryList();
}
// 단속처리상태 이력 선택 자료 변경 이벤트
$P.crdnSttsHstryControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.STTS_HSTRY_ID;
$("#tbodyCrdnSttsHstry--${pageName}").setCurrentRow(key);
}
// 납부자변경 이력 Dataset 변경
$P.payerHstryControl.onDatasetChange = (obj) => {
$P.renderPayerHstryList();
}
// 납부자변경 이력 선택 자료 변경 이벤트
$P.payerHstryControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.HSTRY_SN;
$("#tbodyPayerHstry--${pageName}").setCurrentRow(key);
}
// 감경 선택 자료 변경 이벤트
// 현재 선택 자료 변경 이벤트
$P.rductControl.onCurrentChange = (item) => {
if (!item) return;
$P.rductFormFields.set($P.rductControl,item);
$P.rductFormFields.set($P.rductControl, item);
}
// 감경 dialog
@ -363,7 +341,7 @@
, title: params.title
, content: resp
, size: "lg"
, onClose: () => { $P.fnRefreshDataInfo(); }
, onClose: () => { $P.fnRefreshDataInfo(); } // 자료 재 조회
});
}
}
@ -381,9 +359,8 @@
, onOK: () => { }
});
// 자료 재조회
if (resp.saved) {
$P.fnRefreshDataInfo();
$P.fnRefreshDataInfo(); // 자료 재 조회
}
}
@ -398,11 +375,14 @@
});
}
// 부과제외 선택 자료 변경 이벤트
/**************************************************************************
* 부과 제외 DatasetControl 이벤트
**************************************************************************/
// 현재 선택 자료 변경 이벤트
$P.levyExclControl.onCurrentChange = (item) => {
if (!item) return;
$P.exclFormFields.set($P.levyExclControl,item);
$P.exclFormFields.set($P.levyExclControl, item);
}
// 부과제외 dialog
@ -424,7 +404,7 @@
, title: params.title
, content: resp
, size: "md"
, onClose: () => { $P.fnRefreshDataInfo(); }
, onClose: () => { $P.fnRefreshDataInfo(); } // 자료 재 조회
});
}
}
@ -442,8 +422,7 @@
, onOK: () => { }
});
// 자료 재조회
if (resp.saved) { $P.fnRefreshDataInfo(); }
if (resp.saved) { $P.fnRefreshDataInfo(); } // 자료 재 조회
}
// 부과제외 삭제
@ -457,6 +436,40 @@
});
}
/**************************************************************************
* 단속 처리 상태 이력 DatasetControl 이벤트
**************************************************************************/
// Dataset 변경
$P.crdnSttsHstryControl.onDatasetChange = (obj) => {
$P.renderCrdnSttsHstryList();
}
// 현재 선택 자료 변경 이벤트
$P.crdnSttsHstryControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.STTS_HSTRY_ID;
$("#tbodyCrdnSttsHstry--${pageName}").setCurrentRow(key);
}
/**************************************************************************
* 납부자 변경 이력 DatasetControl 이벤트
**************************************************************************/
// Dataset 변경
$P.payerHstryControl.onDatasetChange = (obj) => {
$P.renderPayerHstryList();
}
// 현재 선택 자료 변경 이벤트
$P.payerHstryControl.onCurrentChange = (item) => {
if (!item) return;
let key = item.data.HSTRY_SN;
$("#tbodyPayerHstry--${pageName}").setCurrentRow(key);
}
/**************************************************************************
* DataTables 이벤트
**************************************************************************/
@ -523,19 +536,17 @@
$P.crdnSttsHstryControl.dataset.clear(); // 단속상태 이력 Dataset 초기화
$P.payerHstryControl.dataset.clear(); // 납부자 이력 Dataset 초기화
// sprt02010-main 단속 정보
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
// 감경 정보
if (resp.rduct) { $P.rductControl.setData([resp.rduct]); }
if (resp.rductInfo) { $P.rductControl.setData([resp.rductInfo]); }
// 부과제외 정보
if (resp.levyExcl) { $P.levyExclControl.setData([resp.levyExcl]); }
if (resp.levyExclInfo) { $P.levyExclControl.setData([resp.levyExclInfo]); }
// Dataset 셋팅
$P.crdnSttsHstryControl.setData(resp.crdnSttsHstry); // 단속상태 이력
$P.payerHstryControl.setData(resp.payerHstry); // 납부자 이력
// 최상단 단속 Data 셋팅
if (resp.totalInfo) {
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
}
$P.crdnSttsHstryControl.setData(resp.crdnSttsHstrys); // 단속상태 이력
$P.payerHstryControl.setData(resp.payerHstrys); // 납부자 이력
}
});
}
@ -578,9 +589,9 @@
let params = {
callPurpose: "create"
, title: title
, crdnId: crdnId
, sggCd: $("#sggCd--${pageNameMain}").val()
, taskSeCd: $("#taskSeCd--${pageNameMain}").val()
, crdnId: crdnId
, rtpyrId: rtpyrId
, delYn: "N"
};
@ -619,9 +630,9 @@
let params = {
callPurpose : "update"
, title: title
, crdnId: $P.rductControl.dataset.getValue("CRDN_ID")
, sggCd: $P.rductControl.dataset.getValue("SGG_CD")
, taskSeCd: $P.rductControl.dataset.getValue("TASK_SE_CD")
, crdnId: $P.rductControl.dataset.getValue("CRDN_ID")
, rductId: rductId
, delYn: "N"
};
@ -674,22 +685,22 @@
// 삭제 메세지 확인
dialog.alert({
content: "선택 " + $P.rductControl.prefixName + " 정보를 삭제하시겠습니까?"
, onOK: async() => {
// 사유 입력
let resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html"));
let template = await resp.text();
dialog.open({
id: "inputDelRsnDialog"
, title: title
, size: "lg"
, content: template
, init: () => { setDialogZindex(); }
, onOK: () => {
$P.callbackRsnRduct({ reason : $("#reason").val() });
}
});
content: "선택하신 " + $P.rductControl.prefixName + " 정보를 삭제하시겠습니까?"
, onOK: () => {
// 삭제 사유 입력
fetch(wctx.url("/resources/html/inputRsnDialog.html"))
.then(function(resp) { return resp.text(); })
.then(function(template) {
dialog.open({
id: "inputDelRsnDialog"
, title: title
, size: "lg"
, content: template
, onOK: () => {
$P.callbackRsnRduct({ reason: $("#reason").val() });
}
});
});
}
});
}
@ -707,10 +718,10 @@
// 단속 상태 코드 확인
if (Number(crdnSttsCd) < 01 || Number(crdnSttsCd) > 45 || Number(crdnSttsCd) == 31) {
dialog.alert({
content : "[" + title + "]" + " 작업은 단속상태가 '본부과 이전' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 단속상태가 '본부과 이전' 자료만 처리 가능합니다."
+ "<br>" + "단속상태 : " + crdnSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, onOK: () => { }
});
return;
}
@ -718,9 +729,9 @@
let params = {
callPurpose: "create"
, title: title
, crdnId: crdnId
, sggCd: $("#sggCd--${pageNameMain}").val()
, taskSeCd: $("#taskSeCd--${pageNameMain}").val()
, crdnId: crdnId
, levyExclSeCd: "2"
, delYn: "N"
};
@ -741,10 +752,10 @@
// 단속 상태 코드 확인
if (Number(crdnSttsCd) < 01 || Number(crdnSttsCd) > 45 || Number(crdnSttsCd) == 31) {
dialog.alert({
content : "[" + title + "]" + " 작업은 단속상태가 '본부과 이전' 자료만 처리 가능합니다."
content: "[" + title + "]" + " 작업은 단속상태가 '본부과 이전' 자료만 처리 가능합니다."
+ "<br>" + "단속상태 : " + crdnSttsNm
+ "<br><br>" + "[" + title + "]" + " 실행이 취소되었습니다."
, onOK : () => { }
, onOK: () => { }
});
return;
}
@ -752,9 +763,9 @@
let params = {
callPurpose: "create"
, title: title
, crdnId: crdnId
, sggCd: $("#sggCd--${pageNameMain}").val()
, taskSeCd: $("#taskSeCd--${pageNameMain}").val()
, crdnId: crdnId
, levyExclSeCd: "1"
, delYn: "N"
};
@ -779,9 +790,9 @@
let params = {
callPurpose: "update"
, title: title
, crdnId: $P.levyExclControl.dataset.getValue("CRDN_ID")
, sggCd: $P.levyExclControl.dataset.getValue("SGG_CD")
, taskSeCd: $P.levyExclControl.dataset.getValue("TASK_SE_CD")
, crdnId: $P.levyExclControl.dataset.getValue("CRDN_ID")
, levyExclId: levyExclId
, delYn: "N"
};
@ -818,22 +829,22 @@
// 삭제 메세지 확인
dialog.alert({
content : "선택한 " + $P.levyExclControl.prefixName + " 정보를 삭제하시겠습니까?"
, onOK : async() => {
content: "선택하신 " + $P.levyExclControl.prefixName + " 정보를 삭제하시겠습니까?"
, onOK: () => {
// 삭제 사유 입력
let resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html"));
let template = await resp.text();
dialog.open({
id: "inputDelRsnDialog"
, title: title
, size: "lg"
, content: template
, init: () => { setDialogZindex(); }
, onOK: () => {
$P.callbackRsnLevyExcl({ reason: $("#reason").val() });
}
});
fetch(wctx.url("/resources/html/inputRsnDialog.html"))
.then(function(resp) { return resp.text(); })
.then(function(template) {
dialog.open({
id: "inputDelRsnDialog"
, title: title
, size: "lg"
, content: template
, onOK: () => {
$P.callbackRsnLevyExcl({ reason: $("#reason").val() });
}
});
});
}
});
}
@ -843,33 +854,27 @@
**************************************************************************/
// 이벤트 설정
$P.setEvent = () => {
// 감경 등록 버튼 이벤트
// 업무 버튼 이벤트
$("#btnCreateRduct--${pageName}").on("click", function() {
$P.fnCreateRduct($(this).attr("title"));
$P.fnCreateRduct($(this).attr("title")); // 감경 등록
});
// 감경 수정 버튼 이벤트
$("#btnUpdateRduct--${pageName}").on("click", function() {
$P.fnUpdateRduct($(this).attr("title"));
$P.fnUpdateRduct($(this).attr("title")); // 감경 수정
});
// 감경 삭제 버튼 이벤트
$("#btnRemoveRduct--${pageName}").on("click", function() {
$P.fnRemoveRduct($(this).attr("title"));
$P.fnRemoveRduct($(this).attr("title")); // 감경 삭제
});
// 계고 등록 버튼 이벤트
$("#btnCreateWrng--${pageName}").on("click", function() {
$P.fnCreateWrng($(this).attr("title"));
$P.fnCreateWrng($(this).attr("title")); // 계고 등록
});
// 비부과 등록 버튼 이벤트
$("#btnCreateLevyExcl--${pageName}").on("click", function() {
$P.fnCreateLevyExcl($(this).attr("title"));
$P.fnCreateLevyExcl($(this).attr("title")); // 비부과 등록
});
// 부과제외 수정 버튼 이벤트
$("#btnUpdateLevyExcl--${pageName}").on("click", function() {
$P.fnUpdateLevyExcl($(this).attr("title"));
$P.fnUpdateLevyExcl($(this).attr("title")); // 부과제외 수정
});
// 부과제외 삭제 버튼 이벤트
$("#btnRemoveLevyExcl--${pageName}").on("click", function() {
$P.fnRemoveLevyExcl($(this).attr("title"));
$P.fnRemoveLevyExcl($(this).attr("title")); // 부과제외 삭제
});
// DataTables width 변경 조정
@ -889,7 +894,7 @@
$("#btnRemoveLevyExcl--${pageName}").prop("disabled", true);
// 화면 호출(callPurpose)이 view가 아니라면 버튼 비활성화 disabled = false
if (${pageNameMain}CallPurpose != "view") {
if (pageObject['${pageNameMain}'].callPurpose != "view") {
$("#btnCreateRduct--${pageName}").prop("disabled", false);
$("#btnUpdateRduct--${pageName}").prop("disabled", false);
$("#btnRemoveRduct--${pageName}").prop("disabled", false);
@ -910,14 +915,14 @@
$P.initForm();
// 3. Dataset 설정
let rduct = ${rduct}; // 감경 정보
if (rduct) $P.rductControl.setData([rduct]);
let rductInfo = ${rductInfo}; // 감경 정보
if (rductInfo) { $P.rductControl.setData([rductInfo]); }
let levyExcl = ${levyExcl}; // 부과제외 정보
if (levyExcl) $P.levyExclControl.setData([levyExcl]);
let levyExclInfo = ${levyExclInfo}; // 부과제외 정보
if (levyExclInfo) { $P.levyExclControl.setData([levyExclInfo]); }
$P.crdnSttsHstryControl.setData(${crdnSttsHstry}); // 단속상태 이력
$P.payerHstryControl.setData(${payerAddrHstry}); // 납부자주소 이력
$P.crdnSttsHstryControl.setData(${crdnSttsHstrys}); // 단속상태 이력
$P.payerHstryControl.setData(${payerAddrHstrys}); // 납부자주소 이력
});
</script>

Loading…
Cancel
Save