@@ -142,17 +148,20 @@
$P.ctrl = newRent02020Control("${pageName}", "[data-doctx=${pageName}]");
// 파일 리스트
$P.fileListArr = new Array();
+ // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정)
+ $P.callPurpose = "${callPurpose}";
/**************************************************************************
* 사용자 함수(function)
**************************************************************************/
// URL 설정
$P.setUrl = (prefixUrl) => {
- $P.ctrl.urls.load = wctx.url(prefixUrl + "/020/list.do") // 검색
+ $P.ctrl.urls.load = wctx.url(prefixUrl + "/020/info.do") // 검색
+ $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/040/info.do"); // 임대차계약 상세 정보 조회
}
// 첨부파일 조회
- $P.fnSearchFileList = (hirerId) => {
+ $P.fnSearchFileList = (lsctId) => {
let tableFileList = $P.findn("fileList"); // table element 찾기
let fileLength = tableFileList.rows.length;
@@ -161,15 +170,15 @@
tableFileList.deleteRow(1); // table 행(Row) 삭제
}
- // 임차인 등록일 경우에는 첨부파일을 조회하지 안는다..
- if (!hirerId) return;
+ // 임대차계약 ID가 없다면 첨부파일을 조회하지 안는다..
+ if (!lsctId) return;
// 첨부파일 리스트
ajax.get({
url: "file/list.do"
, data: {
infoType: "120"
- , infoKeys: hirerId
+ , infoKeys: lsctId
, fetchSize: 0
}
, success: (resp) => {
@@ -211,6 +220,23 @@
// URL 설정
$P.setUrl("${prefixUrl}");
+ //
+ if ($P.callPurpose == "view") {
+ $P.$findn("btnUpdateLsct").prop("disabled", true); // 임대차계약 수정 버튼
+ } else {
+ $P.$findn("btnUpdateLsct").prop("disabled", false); // 임대차계약 수정 버튼
+ }
+ }
+
+ // 임대차계약 수정
+ $P.fnUpdateLsct = () => {
+ let params = {
+ callPurpose: "update"
+ , lsctId: $P.ctrl.getValue("LSCT_ID")
+ , crdnId: $P.$findn("crdnId").val()
+ };
+
+ $P.ctrl.getInfo(params);
}
/**************************************************************************
@@ -218,7 +244,8 @@
**************************************************************************/
// 이벤트
$P.setEvent = () => {
- //
+ // 버튼 이벤트
+ $P.$findn("btnUpdateLsct").on("click", () => { $P.fnUpdateLsct(); }); // 임대차계약 수정
}
/**************************************************************************
diff --git a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02030-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02030-main.jsp
index 668842ed..45a432c8 100644
--- a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02030-main.jsp
+++ b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02030-main.jsp
@@ -35,8 +35,8 @@
-
-
+
+
@@ -285,6 +285,9 @@
// 검색 버튼 클릭 이벤트
$P.fnSearchList = () => {
+ // validate 확인
+ if (!AppSupport.customValidate($P.$findn("frmSearch").find("input,select,textarea"))) return;
+
// 검색조건
$P.ctrl.query = new FimsFormFields($P.selectorn("frmSearch")).get(); // 검색 조건
$P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수
diff --git a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02040-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02040-info.jsp
index 397fe14f..8b28c1d3 100644
--- a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02040-info.jsp
+++ b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02040-info.jsp
@@ -205,6 +205,8 @@
$P.ctrl = newRent02040Control("${pageName}", "[data-doctx=${pageName}]");
// 파일 리스트
$P.fileListArr = new Array();
+ // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정)
+ $P.callPurpose = "${callPurpose}";
/**************************************************************************
* 사용자 함수(function)
diff --git a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02050-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02050-main.jsp
index fc24cde8..42381520 100644
--- a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02050-main.jsp
+++ b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02050-main.jsp
@@ -342,7 +342,7 @@
// 기본 데이터 설정
$P.$findn("schCrdnYmdFrom").datepicker("setDate", DateSupport.getAddDay(-365)); // 단속 일자 시작
$P.$findn("schCrdnYmdTo").datepicker("setDate", TODAY()); // 단속 일자 종료
- $P.$findn("schVhrno").val("167하9750"); // 자동차등록번호
+ $P.$findn("schVhrno").val("12보3663"); // 자동차등록번호
$P.$findn("byOutput").val("동적 검색"); // 동적 검색
// 그리드 th
diff --git a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02060-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02060-info.jsp
index d04ac5c9..910b527c 100644
--- a/src/main/webapp/WEB-INF/jsp/fims/rent/rent02060-info.jsp
+++ b/src/main/webapp/WEB-INF/jsp/fims/rent/rent02060-info.jsp
@@ -169,6 +169,8 @@
$P.ctrl = newRent02020Control("${pageName}", "[data-doctx=${pageName}]");
// 파일 리스트
$P.fileListArr = new Array();
+ // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정)
+ $P.callPurpose = "${callPurpose}";
/**************************************************************************
* 사용자 함수(function)
diff --git a/src/main/webapp/resources/js/fims/rent/rent02010.js b/src/main/webapp/resources/js/fims/rent/rent02010.js
index 83f73387..7bc62874 100644
--- a/src/main/webapp/resources/js/fims/rent/rent02010.js
+++ b/src/main/webapp/resources/js/fims/rent/rent02010.js
@@ -2,7 +2,7 @@ function newRent02010Control(pageName, doctx="[data-doctx='rent02010']") {
let ctrl = new DatasetControl({
doctx: doctx
, prefix: "crdnLsct"
- , prefixName: "임대차계약 등록"
+ , prefixName: "임대차계약 매핑"
, dataGetter: obj => obj["List"]
, keys: ["CRDN_ID"]
, appendData: true
diff --git a/src/main/webapp/resources/js/fims/rent/rent02020.js b/src/main/webapp/resources/js/fims/rent/rent02020.js
index ef840fe0..57948043 100644
--- a/src/main/webapp/resources/js/fims/rent/rent02020.js
+++ b/src/main/webapp/resources/js/fims/rent/rent02020.js
@@ -2,11 +2,13 @@ function newRent02020Control(pageName, doctx="[data-doctx='rent02020']") {
let ctrl = new DatasetControl({
doctx: doctx
, prefix: "crdnLsct"
- , prefixName: "임대차계약 등록"
+ , prefixName: "임대차계약 매핑"
, dataGetter: obj => obj["Info"]
, keys: ["CRDN_ID"]
+ , infoSize: "lg"
, urls: {
load: "/list.do"
+ , getInfo: "/info.do"
}
});
@@ -21,11 +23,56 @@ function newRent02020Control(pageName, doctx="[data-doctx='rent02020']") {
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
formFields.set(ctrl, item);
- let key = item.data.CRDN_ID;
- if (key != null) {
- pageObject[pageName].fnSearchFileList(key);
+ let fileKey = item.data.LSCT_ID;
+ if (fileKey != null) {
+ pageObject[pageName].fnSearchFileList(fileKey);
}
};
+ // 상세 정보 dialog
+ ctrl.getInfo = (params) => {
+ if (!params) return;
+
+ ajax.get({
+ url: ctrl.urls.getInfo
+ , data: params || {}
+ , success: (resp) => {
+ let dialogName = ctrl.prefixed("Dialog");
+ let dialogId = dialogName + "-" + uuid();
+
+ dialog.open({
+ id: dialogId
+ , title: ctrl.prefixName + " 정보"
+ , size: ctrl.infoSize
+ , content: resp
+ , init: () => {
+ $("#" + dialogId).attr("name", dialogName);
+ $("#" + dialogId).attr("data-ref-doctx", pageName);
+
+ AppSupport.setDialogZindex();
+ }
+ , onClose: () => { }
+ });
+ }
+ });
+ }
+
+ // 재 조회 -> 1건일때 reload 사용시 오류 발생. 배열이 아니여서 발생.. 한실장님에게 수정 요청
+ ctrl.refresh = () => {
+ ajax.get({
+ url: ctrl.urls.load
+ , headers: { Accept: "application/json; charset=utf-8" } // json
+ , data: ctrl.query
+ , success: (resp) => {
+ // 초기화
+ ctrl.find("[name='frmEdit']").reset(); // 화면 초기화
+ ctrl.dataset.clear(); // Dataset 초기화
+
+ // Dataset 셋팅
+ ctrl.setData([resp.Info]); // 정보
+ }
+ });
+ }
+
return ctrl;
}