개별총정보 발송반송정보 탭 수정.

main
jjh 11 months ago
parent 413e9df74e
commit 289c3cc801

@ -308,9 +308,9 @@ public class Sprt02Controller extends ApplicationController {
mav.addObject("pageName", "sprt02040")
.addObject("pageNameMain", "sprt02010")
.addObject("infoPrefix", "sndng") // prefix
.addObject("sndngDtlList", json ? sndngDtl : toJson(sndngDtl)) // 발송 정보
.addObject("sndngDtl", json ? sndngDtl : toJson(sndngDtl)) // 발송 정보
.addObject("pageDataName2", "Svbtc") // dataset2
.addObject("svbtcList", json ? svbtc : toJson(svbtc)) // 공시송달 정보
.addObject("svbtc", json ? svbtc : toJson(svbtc)) // 공시송달 정보
;
// 재조회로 호출되었다면..

@ -200,7 +200,7 @@
/**************************************************************************
* DatasetControl
**************************************************************************/
var ${pageName}Dataset = new Dataset({
var ${pageName}Control = new DatasetControl({
prefix : "sndng"
, prefixName : "발송 정보"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
@ -215,12 +215,43 @@
, REG_DT : datetimeFormat
, MDFCN_DT : datetimeFormat
}
});
// 공시송달 정보 Dataset
var ${pageName}${pageDataName2}Dataset = new Dataset({
prefix : "svbtc"
, prefixName : "공시송달 정보"
, keymapper : info => info ? info.SVBTC_ID : ""
, dataGetter : obj => obj.svbtcList
, appendData : true
, formats : {
SVBTC_YMD : dateFormat
, REG_DT : datetimeFormat
}
, onDatasetChange : obj => {
renderList${pageName}();
renderList${pageName}${pageDataName2}();
}
, onCurrentChange : item => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbody--${pageName}${pageDataName2}").setCurrentRow(key);
}
});
/**************************************************************************
* DatasetControl 이벤트
**************************************************************************/
// Dataset 변경
${pageName}Control.onDatasetChange = obj => {
renderList${pageName}();
};
// 현재 선택 자료 변경 이벤트
${pageName}Control.onCurrentChange = item => {
if (!item) return;
let key = item.data.SNDNG_DTL_ID;
$("#tbody--${pageName}").setCurrentRow(key);
@ -254,88 +285,20 @@
$("#vrActno--${pageName}").val(vrActno); // 가상 계좌번호
$("#epayno--${pageName}").val(item.data.EPAYNO_MASK); // 전자납부번호
}
});
// 공시송달 정보 Dataset
var ${pageName}${pageDataName2}Dataset = new Dataset({
prefix : "svbtc"
, prefixName : "공시송달 정보"
, keymapper : info => info ? info.SVBTC_ID : ""
, dataGetter : obj => obj.svbtcList
, appendData : true
, formats : {
SVBTC_YMD : dateFormat
, REG_DT : datetimeFormat
}
, onDatasetChange : obj => {
renderList${pageName}${pageDataName2}();
}
, onCurrentChange : item => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbody--${pageName}${pageDataName2}").setCurrentRow(key);
}
});
/**************************************************************************
*
**************************************************************************/
// DataTables에 click, dbclick 이벤트
renderList${pageName} = () => {
let ${infoPrefix}List = ${pageName}Dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}Dataset.setCurrent('" + dataItem.getValue("SNDNG_DTL_ID") + "');")
);
$("#tbody--${pageName}").html(trs.join());
}
// 공시송달 정보 DataTables에 click 이벤트
renderList${pageName}${pageDataName2} = () => {
let ${infoPrefix}List = ${pageName}${pageDataName2}Dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}${pageDataName2}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}${pageDataName2}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}${pageDataName2}Dataset.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
);
$("#tbody--${pageName}${pageDataName2}").html(trs.join());
}
// 개별 반송 등록
createSndbk${pageName} = (params) => {
// 개별 반송 Info
${pageName}Control.getInfo = (params) => {
if (!params) return;
ajax.get({
url : wctx.url(params.taskSeCd + "/sndb/sndb01/220/info.do")
, data : params || {}
, success : resp => {
dialog.open({
id : "sndbkInfoDialog"
, title : "개별반송 등록"
, content : resp
, size : "md"
, onClose : () => { refreshDataInfo${pageName}(); } // callback 자료 조회
});
}
});
}
let dialogTitle = "";
// 개별 반송 수정
updateSndbk${pageName} = (params) => {
if (!params) return;
if (params.callPurpose == "create") {
dialogTitle = $("#btnCreateSndbk--${pageName}").attr("title");
} else if (params.callPurpose == "update") {
dialogTitle = $("#btnUpdateSndbk--${pageName}").attr("title");
} else {
dialogTitle = ${pageName}Control.prefixName + " 정보";
}
ajax.get({
url : wctx.url(params.taskSeCd + "/sndb/sndb01/220/info.do")
@ -343,7 +306,7 @@
, success : resp => {
dialog.open({
id : "sndbkInfoDialog"
, title : "개별반송 수정"
, title : dialogTitle
, content : resp
, size : "md"
, onClose : () => { refreshDataInfo${pageName}(); } // callback 자료 조회
@ -352,8 +315,8 @@
});
}
// 삭제 callback
${pageName}CallbackRemoveSndbk = (resp) => {
// 개별 반송 삭제 callback
${pageName}Control.onRemove = (resp) => {
let btnTitle = $("#btnRemoveSndbk--${pageName}").attr("title");
let showMessage = resp.retMessage.replace(/[S]|[F]/g, btnTitle);
@ -365,7 +328,7 @@
}
// 개별 반송 삭제
${pageName}RemoveSndbk = (params) => {
${pageName}Control.remove = (params) => {
if (!params) return;
params.sndngDtlSttsCd = "03"; // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) FIM050 - 03 발송
@ -373,10 +336,45 @@
ajax.post({
url : wctx.url(params.taskSeCd + "/sndb/sndb01/210/delete.do")
, data : params
, success : resp => ${pageName}CallbackRemoveSndbk(resp)
, success : resp => ${pageName}Control.onRemove(resp)
});
}
/**************************************************************************
* DataTables 이벤트
**************************************************************************/
// DataTables에 click, dbclick 이벤트
renderList${pageName} = () => {
let ${infoPrefix}List = ${pageName}Control.dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}Control.setCurrent('" + dataItem.getValue("SNDNG_DTL_ID") + "');")
);
$("#tbody--${pageName}").html(trs.join());
}
// 공시송달 정보 DataTables에 click 이벤트
renderList${pageName}${pageDataName2} = () => {
let ${infoPrefix}List = ${pageName}${pageDataName2}Dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}${pageDataName2}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}${pageDataName2}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}${pageDataName2}Dataset.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
);
$("#tbody--${pageName}${pageDataName2}").html(trs.join());
}
/**************************************************************************
* 사용자 함수(function)
**************************************************************************/
@ -400,10 +398,14 @@
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, success : resp => {
// 발송 이력 정보
${pageName}Dataset.setData(resp.sndngDtlList);
// 공시송달 이력 정보
${pageName}${pageDataName2}Dataset.setData(resp.svbtcList);
// Dataset 초기화
${pageName}Control.dataset.clear();
${pageName}${pageDataName2}Dataset.clear();
// Dataset 셋팅
${pageName}Control.setData(resp.cvlcptDscsn); // 발송 이력 정보
${pageName}${pageDataName2}Dataset.setData(resp.svbtcList); // 공시송달 이력 정보
// 최상단 단속 Data 셋팅
if (resp.totalInfo) {
${pageNameMain}Control.setData([resp.totalInfo]);
@ -417,9 +419,10 @@
**************************************************************************/
// 개별 반송 등록
fnCreateSndbk${pageName} = () => {
let sndngDtlId = ${pageName}Dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = ${pageName}Dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlSttsCd = ${pageName}Dataset.getValue("SNDNG_DTL_STTS_CD"); // 발송 상세 상태 코드
let btnTitle = $("#btnCreateSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlSttsNm = ${pageName}Control.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 코드
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
@ -427,16 +430,16 @@
// 미배달 사유 확인
if (undlvrRsnNm != "" ) {
dialog.alert({
content : "미배달 사유가 " + ${pageName}Dataset.getValue("UNDLVR_RSN_NM") + " 로 이미 반송 등록이 되어 있습니다."
content : "미배달 사유가 " + undlvrRsnNm + " (으)로 이미 반송 등록이 되어 있습니다."
, onOK : () => { }
});
return;
}
// 발송상세 상태코드 확인
if (sndngDtlSttsCd == "06") {
// 발송상세 상태코드 확인 (FIM050 - 05:반송 06:공시송달)
if (sndngDtlSttsNm == "반송" || sndngDtlSttsNm == "공시송달") {
dialog.alert({
content : "발송상세 상태가 " + ${pageName}Dataset.getValue("SNDNG_DTL_STTS_NM") + " 로 개별 반송을 등록할 수 없습니다."
content : "발송 상세 상태가 " + sndngDtlSttsNm + " (으)로 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => { }
});
@ -445,18 +448,19 @@
let params = {
callPurpose : "create"
, sggCd : ${pageName}Dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
};
createSndbk${pageName}(params);
${pageName}Control.getInfo(params);
}
// 개별 반송 수정
fnUpdateSndbk${pageName} = () => {
let sndngDtlId = ${pageName}Dataset.getValue("SNDNG_DTL_ID");
let undlvrRsnNm = ${pageName}Dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let btnTitle = $("#btnUpdateSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID");
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
@ -464,7 +468,7 @@
// 미배달 사유 확인
if (undlvrRsnNm == "" ) {
dialog.alert({
content : "미배달 사유가 없어 반송 내용을 수정할 수 없습니다."
content : "미배달 사유가 없어 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => { }
});
@ -473,28 +477,37 @@
let params = {
callPurpose : "update"
, sggCd : ${pageName}Dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : ${pageName}Dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm : ${pageName}Dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
, sndngDtlSttsCd : ${pageName}Control.dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm : ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
};
updateSndbk${pageName}(params);
${pageName}Control.getInfo(params);
}
// 개별 반송 삭제
fnRemoveSndbk${pageName} = () => {
let sndngDtlId = ${pageName}Dataset.getValue("SNDNG_DTL_ID");
let undlvrRsnNm = ${pageName}Dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let btnTitle = $("#btnRemoveSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
// 미배달 사유 확인
if (undlvrRsnNm == "" ) {
dialog.alert({
content : "미배달 사유가 없어 반송 내용을 삭제할 수 없습니다."
content : "미배달 사유가 없어 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => {}
});
return;
}
// 발송상세 상태코드 확인 (FIM050 - 05:반송)
if (sndngDtlSttsNm != "반송") {
dialog.alert({
content : "발송 상세 상태가 " + sndngDtlSttsNm + " (으)로 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => { }
});
@ -503,22 +516,22 @@
let params = {
callPurpose : "delete"
, sggCd : ${pageName}Dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
};
dialog.alert({
content : "선택한 반송 정보(을)를 삭제하시겠습니까?"
content : "선택한 반송 정보 을(를) 삭제하시겠습니까?"
, onOK : () => {
${pageName}RemoveSndbk(params);
${pageName}Control.remove(params);
}
});
}
// 우편 종적 보기 참고 https://www.data.go.kr/dataset/15000390/openapi.do
fnViewPostTrace${pageName} = () => {
let rgNo = ${pageName}Dataset.getValue("RG_NO");
let rgNo = ${pageName}Control.dataset.getValue("RG_NO");
alert("우편 종적 보기");
}
@ -565,10 +578,10 @@
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅
${pageName}Dataset.setData(${sndngDtlList}); // 발송 이력
// Dataset 설정
${pageName}Control.setData(${sndngDtl}); // 발송 이력
${pageName}${pageDataName2}Dataset.setData(${svbtcList}); // 공시송달 이력
${pageName}${pageDataName2}Dataset.setData(${svbtc}); // 공시송달 이력
// 화면 데이터 셋팅
setFormData${pageName}();

@ -728,7 +728,9 @@
// 화면 초기 설정
initForm${pageName} = () => {
$("#frmEdit--${pageName}")[0].reset(); // 화면 초기화
// 화면 초기화
$("#frmEdit--${pageName}${pageDataName1}")[0].reset();
$("#frmEdit--${pageName}${pageDataName2}")[0].reset();
}
// 화면 초기값 설정

@ -38,7 +38,7 @@
</div>
<!-- 회계 연도 -->
<div class="col-md-4">
<label for="acntgYr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">회계연도</label>
<label for="fyr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">회계연도</label>
<input type="text" class="form-control w-15" id="fyr--${pageName}" name="fyr" data-map="FYR" readonly />
</div>
<!-- 부과 번호 -->
@ -355,7 +355,6 @@
});
}
/**************************************************************************
* 버튼 clickEvent
**************************************************************************/
@ -376,7 +375,7 @@
}
// 화면 데이터 셋팅
setForm${pageName} = () => {
setFormData${pageName} = () => {
// 화면 호출(callPurpose)이 view 라면 버튼 비활성화
if (${pageNameMain}CallPurpose == "view") {
// button 요소들을 disabled = true

Loading…
Cancel
Save