개별총정보 수정.
parent
a1bf65c613
commit
669ed9392d
@ -0,0 +1,47 @@
|
||||
function newSprt02060Control(pageName, doctx="[data-doctx='sprt02060']", mainPageName="sprt02010") {
|
||||
let ctrlLevy = new DatasetControl({
|
||||
doctx: doctx
|
||||
, prefix: "levy"
|
||||
, prefixName: "부과"
|
||||
, dataGetter: obj => obj["levyInfo"]
|
||||
, keys: ["LEVY_ID"]
|
||||
, urls: {
|
||||
load: "/list.do"
|
||||
, getInfo: "/info.do"
|
||||
, remove: "/remove.do"
|
||||
}
|
||||
});
|
||||
|
||||
/**************************************************************************
|
||||
* DatasetControl Events
|
||||
**************************************************************************/
|
||||
// 현재 선택 자료 변경 이벤트
|
||||
ctrlLevy.onCurrentChange = (item) => {
|
||||
if (!item) return;
|
||||
|
||||
// 화면에 단속 Dataset 셋팅
|
||||
let formFields = new FimsFormFields(ctrlLevy.selector("[name='frmEditLevy']"));
|
||||
formFields.set(ctrlLevy, item);
|
||||
|
||||
// 가상계좌번호
|
||||
let vrActno = Array.from({length: 20}, (x, i) => {
|
||||
let no = i + 1
|
||||
, bank = "BANK_NM" + (no > 1 ? no : "")
|
||||
, account = "VR_ACTNO" + (no > 1 ? no : "");
|
||||
|
||||
return [bank, account]
|
||||
})
|
||||
.map(entry => {
|
||||
let bank = item.data[entry[0]]
|
||||
, account = item.data[entry[1]];
|
||||
|
||||
return bank ? bank + " " + account : null;
|
||||
})
|
||||
.filter(txt => txt != null)
|
||||
.join("\n");
|
||||
|
||||
$(ctrlLevy.find("[name='vrActno']")).val(vrActno); // 가상 계좌번호
|
||||
};
|
||||
|
||||
return ctrlLevy;
|
||||
}
|
@ -0,0 +1,143 @@
|
||||
function newSprt02070Control(pageName, doctx="[data-doctx='sprt02070']", mainPageName="sprt02010") {
|
||||
let ctrlRcvmt = new DatasetControl({
|
||||
doctx: doctx
|
||||
, prefix: "rcvmt"
|
||||
, prefixName: "수납"
|
||||
, dataGetter: obj => obj["rcvmts"]
|
||||
, keys: ["RCVMT_ID"]
|
||||
, appendData: true
|
||||
, infoSize: "lg"
|
||||
, urls: {
|
||||
load: "/list.do"
|
||||
, getInfo: "/info.do"
|
||||
, remove: "/remove.do"
|
||||
}
|
||||
, formats: {
|
||||
RCVMT_YMD: dateFormat
|
||||
, ACNTG_YMD: dateFormat
|
||||
, PSTMRK_YMD: dateFormat
|
||||
, RCVMT_AMT: numberFormat
|
||||
, RCVMT_PCPTAX: numberFormat
|
||||
, RCVMT_ADAMT: numberFormat
|
||||
, RCVMT_INT: numberFormat
|
||||
, RCVMT_RTRCN_DT: datetimeFormat
|
||||
, REG_DT: datetimeFormat
|
||||
, MDFCN_DT: datetimeFormat
|
||||
}
|
||||
});
|
||||
|
||||
/**************************************************************************
|
||||
* DatasetControl Events
|
||||
**************************************************************************/
|
||||
// Dataset 변경 이벤트
|
||||
ctrlRcvmt.onDatasetChange = (obj, option) => {
|
||||
// 데이터 셋
|
||||
let dataList = ctrlRcvmt.dataset;
|
||||
let empty = dataList.empty;
|
||||
|
||||
let replacer = (str, dataItem) => str
|
||||
.replace(/{onclick}/gi, "pageObject['" + pageName + "'].ctrlRcvmt.setCurrent('{data-index}');")
|
||||
|
||||
let trs = empty ?
|
||||
[ctrlRcvmt.find("[name='tmpltNotFoundRcvmt']").innerHTML]
|
||||
: dataList.inStrings(ctrlRcvmt.find("[name='tmpltRcvmtRows']").innerHTML, replacer);
|
||||
|
||||
// dataTables(그리드)에 자료 표시 td
|
||||
$(ctrlRcvmt.find("[name='tbodyRcvmtList']")).html(trs.join());
|
||||
};
|
||||
|
||||
// 현재 선택 자료 변경 이벤트
|
||||
ctrlRcvmt.onCurrentChange = (item) => {
|
||||
Apply.fromDataset.currentRow(ctrlRcvmt.dataset, item, ctrlRcvmt.find("[name='tbodyRcvmtList']"));
|
||||
|
||||
if (!item) return;
|
||||
|
||||
// 화면에 단속 Dataset 셋팅
|
||||
let formFields = new FimsFormFields(ctrlRcvmt.selector("[name='frmEditRcvmt']"));
|
||||
formFields.set(ctrlRcvmt, item);
|
||||
};
|
||||
|
||||
// 상세 정보 dialog
|
||||
ctrlRcvmt.getInfo = (params) => {
|
||||
if (!params) return;
|
||||
|
||||
ajax.get({
|
||||
url: wctx.url("/" + params.taskSeCd + "/rcvm/rcvm01/020/info.do")
|
||||
, data: params || {}
|
||||
, success: (resp) => {
|
||||
let dialogName = ctrlRcvmt.prefixed("Dialog");
|
||||
let dialogId = dialogName + "-" + uuid();
|
||||
|
||||
dialog.open({
|
||||
id: dialogId
|
||||
, title: params.btnTitle
|
||||
, size: ctrlRcvmt.infoSize
|
||||
, content: resp
|
||||
, init: () => {
|
||||
$("#" + dialogId).attr("name", dialogName);
|
||||
$("#" + dialogId).attr("data-ref-doctx", pageName);
|
||||
|
||||
AppSupport.setDialogZindex();
|
||||
}
|
||||
, onClose: () => { pageObject[pageName].fnRefresh(); } // 정보 새로고침
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 수기 수납 취소 callback
|
||||
ctrlRcvmt.onSave = (params, resp) => {
|
||||
let modalId = $(document.querySelector(doctx)).parents(".modal")[0].id;
|
||||
let dialogTitle = $("#" + modalId).find("h5.modal-title").html();
|
||||
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
|
||||
|
||||
// 메시지 출력
|
||||
dialog.alert({
|
||||
content: showMessage
|
||||
, init: () => { AppSupport.setDialogZindex(); }
|
||||
, onOK: () => { }
|
||||
, onClose: () => {
|
||||
if (resp.saved) { pageObject[pageName].fnRefresh(); } // 정보 새로고침
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 수기 수납 취소
|
||||
ctrlRcvmt.save = (params) => {
|
||||
if (!params) return;
|
||||
|
||||
ajax.post({
|
||||
url: wctx.url("/" + params.taskSeCd + "/rcvm/rcvm01/010/updateRcvmtRtrcn.do")
|
||||
, data: params || {}
|
||||
, success: (resp) => { ctrlRcvmt.onSave(params, resp); }
|
||||
});
|
||||
}
|
||||
|
||||
// 수기 수납 삭제 callback
|
||||
ctrlRcvmt.onRemove = (params, resp) => {
|
||||
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.btnTitle);
|
||||
|
||||
// 메시지 출력
|
||||
dialog.alert({
|
||||
content: showMessage
|
||||
, init: () => { AppSupport.setDialogZindex(); }
|
||||
, onOK: () => { }
|
||||
, onClose: () => {
|
||||
if (resp.saved) { pageObject[pageName].fnRefresh(); } // 정보 새로고침
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 수기 수납 삭제
|
||||
ctrlRcvmt.remove = (params) => {
|
||||
if (!params) return;
|
||||
|
||||
ajax.post({
|
||||
url: wctx.url("/" + params.taskSeCd + "/rcvm/rcvm01/010/remove.do")
|
||||
, data: params || {}
|
||||
, success: (resp) => { ctrlRcvmt.onRemove(params, resp); }
|
||||
});
|
||||
}
|
||||
|
||||
return ctrlRcvmt;
|
||||
}
|
@ -0,0 +1,80 @@
|
||||
function newSprt02030Control(pageName, doctx="[data-doctx='sprt02030']") {
|
||||
let ctrl = new DatasetControl({
|
||||
doctx: doctx
|
||||
, prefix: "levyExcl"
|
||||
, prefixName: "부과제외"
|
||||
, dataGetter: obj => obj["Info"]
|
||||
, keys: ["LEVY_EXCL_ID"]
|
||||
, urls: {
|
||||
load: "/list.do"
|
||||
, getInfo: "/info.do"
|
||||
, create: "/create.do"
|
||||
, update: "/update.do"
|
||||
, remove: "/remove.do"
|
||||
}
|
||||
});
|
||||
|
||||
/**************************************************************************
|
||||
* DatasetControl Events
|
||||
**************************************************************************/
|
||||
// 현재 선택 자료 변경 이벤트
|
||||
ctrl.onCurrentChange = (item) => {
|
||||
if (!item) return;
|
||||
|
||||
// 화면에 단속 Dataset 셋팅
|
||||
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
|
||||
formFields.set(ctrl, item);
|
||||
|
||||
// 업무구분에 따른 URL 변경
|
||||
pageObject[pageName].fnSetURL(item.data.TASK_SE_CD);
|
||||
|
||||
// 부과제외구분에 따른 부과제외사유 설정
|
||||
pageObject[pageName].fnSetFim021(item.data.LEVY_EXCL_SE_CD, item.data.LEVY_EXCL_RSN_CD);
|
||||
|
||||
// 부과제외일자
|
||||
if (item.data.LEVY_EXCL_YMD == "") {
|
||||
$(ctrl.find("[name='levyExclYmd']")).datepicker("setDate", TODAY());
|
||||
}
|
||||
};
|
||||
|
||||
// 저장 callback
|
||||
ctrl.onSave = (params, resp) => {
|
||||
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, ctrl.prefixName);
|
||||
let modalId = $(document.querySelector(doctx)).parents(".modal")[0].id;
|
||||
|
||||
// 메시지 출력
|
||||
dialog.alert({
|
||||
content: showMessage
|
||||
, init: () => { AppSupport.setDialogZindex(); }
|
||||
, onOK: () => { }
|
||||
, onClose: () => {
|
||||
if (pageObject[pageName].savedCallbackFuncName != "") {
|
||||
pageObject[pageName].savedCallbackFuncName(resp.saved);
|
||||
}
|
||||
|
||||
if (resp.saved) { dialog.close(modalId); }
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 저장
|
||||
ctrl.save = (params) => {
|
||||
if (!params) return;
|
||||
|
||||
let create = (params.callPurpose == "create");
|
||||
|
||||
// 민원 접수 관리에서 호출했다면..
|
||||
if (create && pageObject[pageName].saveCallbackFuncName != "") {
|
||||
pageObject[pageName].saveCallbackFuncName(info);
|
||||
} else {
|
||||
ajax.post({
|
||||
url: !create ? ctrl.urls.update : ctrl.urls.create
|
||||
, data: params || {}
|
||||
, success: (resp) => { ctrl.onSave(params, resp); }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return ctrl;
|
||||
}
|
Loading…
Reference in New Issue