1. 임대차계약 등록 수정.

2. 임대기업 관리 수정.
main
jjh 2 months ago
parent 8e5d0a5945
commit c597bd2a2b

@ -149,8 +149,6 @@
// pageObject // pageObject
let $P = pageObject["${pageName}"]; let $P = pageObject["${pageName}"];
// formFields
$P.formFields = new FimsFormFields($P.selectorn("frmSearch"));
// datasetControl // datasetControl
$P.ctrl = newRent01010Control("${pageName}", "[data-doctx=${pageName}]"); $P.ctrl = newRent01010Control("${pageName}", "[data-doctx=${pageName}]");
// paging // paging
@ -189,8 +187,6 @@
let params = { let params = {
callPurpose: "view" callPurpose: "view"
, mpngId: $P.ctrl.getValue("MPNG_ID") , mpngId: $P.ctrl.getValue("MPNG_ID")
, userId: $P.ctrl.getValue("USER_ID")
, schEntNo: $P.ctrl.getValue("ENT_NO")
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
@ -205,7 +201,7 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색 $P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색
$P.ctrl.urls.remove = wctx.url(prefixUrl + "/010/removeMpng.do") // 삭제 $P.ctrl.urls.remove = wctx.url(prefixUrl + "/010/removeMpng.do") // 삭제
$P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보
@ -250,7 +246,7 @@
$P.ctrl.dataset.clear(); $P.ctrl.dataset.clear();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
// input, select 초기화 // input, select 초기화
let searchForm = $P.$findn("frmSearch"); let searchForm = $P.$findn("frmSearch");
@ -281,9 +277,9 @@
// 검색 버튼 이벤트 // 검색 버튼 이벤트
$P.fnSearchList = () => { $P.fnSearchList = () => {
// 검색조건 // 검색조건
$P.ctrl.query = $P.formFields.get(); // 검색 조건 $P.ctrl.query = new FimsFormFields($P.selectorn("frmSearch")).get(); // 검색 조건
$P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수 $P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수
$P.ctrl.query.delYn = "N"; // 삭제 여부 $P.ctrl.query.delYn = "N"; // 삭제 여부
$P.ctrl.load(1); $P.ctrl.load(1);
} }

@ -147,7 +147,7 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 조회 $P.ctrl.urls.load = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 조회
$P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/040/info.do"); // 상세 정보 조회 $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/040/info.do"); // 상세 정보 조회
} }
@ -156,15 +156,15 @@
* 버튼 clickEvent * 버튼 clickEvent
**************************************************************************/ **************************************************************************/
// 초기화 이벤트 // 초기화 이벤트
$P.fnReset = (initSearchYN) => { $P.fnReset = () => {
// 화면 초기화 // 화면 초기화
$P.findn("frmEdit").reset(); $P.findn("frmEdit").reset();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
} }
// 임대기업 수정 이벤트 // 임대기업 수정
$P.fnUpdateRentEnt = () => { $P.fnUpdateRentEnt = () => {
let params = { let params = {
callPurpose: "update" callPurpose: "update"

@ -145,8 +145,6 @@
// pageObject // pageObject
let $P = pageObject["${pageName}"]; let $P = pageObject["${pageName}"];
// formFields
$P.formFields = new FimsFormFields($P.selectorn("frmSearch"));
// datasetControl // datasetControl
$P.ctrl = newRent01030Control("${pageName}", "[data-doctx=${pageName}]"); $P.ctrl = newRent01030Control("${pageName}", "[data-doctx=${pageName}]");
// paging // paging
@ -183,7 +181,7 @@
$P.dataTableDblClick = (dataIndex, dataKey) => { $P.dataTableDblClick = (dataIndex, dataKey) => {
let params = { let params = {
callPurpose: "update" callPurpose: "update"
, entId: $P.ctrl.getValue("ENT_ID") , entId: $P.ctrl.getValue("ENT_ID") // 기업 ID
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
@ -198,7 +196,7 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/030/list.do"); // 검색 $P.ctrl.urls.load = wctx.url(prefixUrl + "/030/list.do"); // 검색
$P.ctrl.urls.create = wctx.url(prefixUrl + "/030/createMpng.do") // 등록 $P.ctrl.urls.create = wctx.url(prefixUrl + "/030/createMpng.do") // 등록
$P.ctrl.urls.remove = wctx.url(prefixUrl + "/030/removeEnt.do") // 삭제 $P.ctrl.urls.remove = wctx.url(prefixUrl + "/030/removeEnt.do") // 삭제
@ -216,7 +214,7 @@
$P.ctrl.dataset.clear(); $P.ctrl.dataset.clear();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
// 기본 데이터 설정 // 기본 데이터 설정
$P.$findn("userId").val("${userId}"); // 사용자 ID $P.$findn("userId").val("${userId}"); // 사용자 ID
@ -236,9 +234,9 @@
// 검색 버튼 클릭 이벤트 // 검색 버튼 클릭 이벤트
$P.fnSearchList = () => { $P.fnSearchList = () => {
// 검색조건 // 검색조건
$P.ctrl.query = $P.formFields.get(); // 검색 조건 $P.ctrl.query = new FimsFormFields($P.selectorn("frmSearch")).get(); // 검색 조건
$P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수 $P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수
$P.ctrl.query.delYn = "N"; // 삭제 여부 $P.ctrl.query.delYn = "N"; // 삭제 여부
$P.ctrl.load(1); $P.ctrl.load(1);
} }
@ -287,7 +285,7 @@
}); });
} }
// 임대기업 등록 버튼 클릭 이벤트 // 임대기업 등록
$P.fnCreate = () => { $P.fnCreate = () => {
let params = { let params = {
callPurpose: "create" callPurpose: "create"
@ -297,12 +295,12 @@
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
} }
// 임대기업 수정 버튼 클릭 이벤트 // 임대기업 수정
$P.fnUpdate = () => { $P.fnUpdate = () => {
// 임대기업 ID // 임대기업 ID
let entId = $P.ctrl.getValue("ENT_ID"); let entId = $P.ctrl.getValue("ENT_ID");
// 임대기업 ID 가 없다면.. return // 임대기업 ID 가 없다면.. return
if (typeof entId == "undefined" || entId == null || entId == "") return; if (!entId) return;
let params = { let params = {
callPurpose: "update" callPurpose: "update"

@ -112,7 +112,7 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.create = wctx.url(prefixUrl + "/040/createEnt.do") // 등록 $P.ctrl.urls.create = wctx.url(prefixUrl + "/040/createEnt.do") // 등록
$P.ctrl.urls.update = wctx.url(prefixUrl + "/040/updateEnt.do") // 수정 $P.ctrl.urls.update = wctx.url(prefixUrl + "/040/updateEnt.do") // 수정
} }
@ -133,7 +133,7 @@
$P.findn("frmEdit").reset(); $P.findn("frmEdit").reset();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
} }
// 우편번호 검색 // 우편번호 검색

@ -26,9 +26,6 @@
<!-- 검색 조건 영역 --> <!-- 검색 조건 영역 -->
<form name="frmSearch"> <form name="frmSearch">
<!-- hidden -->
<input type="hidden" name="userId" />
<!-- 메인 조건 --> <!-- 메인 조건 -->
<div class="container-search"> <div class="container-search">
<div class="row g-1"> <div class="row g-1">
@ -204,8 +201,6 @@
// pageObject // pageObject
let $P = pageObject["${pageName}"]; let $P = pageObject["${pageName}"];
// formFields
$P.formFields = new FimsFormFields($P.selectorn("frmSearch"));
// datasetControl // datasetControl
$P.ctrl = newRent02010Control("${pageName}", "[data-doctx=${pageName}]"); $P.ctrl = newRent02010Control("${pageName}", "[data-doctx=${pageName}]");
// paging // paging
@ -223,7 +218,6 @@
GRID.checkbox.sync(element, bool); GRID.checkbox.sync(element, bool);
let atLeastOne = GRID.checkbox.countChecked(element) > 0; let atLeastOne = GRID.checkbox.countChecked(element) > 0;
let tabName = $P.$findn("tabMain").find("button.active").text().trim(); let tabName = $P.$findn("tabMain").find("button.active").text().trim();
if (tabName == "등록") { if (tabName == "등록") {
@ -245,8 +239,9 @@
// dataTable 더블 클릭 이벤트 // dataTable 더블 클릭 이벤트
$P.dataTableDblClick = (dataIndex) => { $P.dataTableDblClick = (dataIndex) => {
let params = { let params = {
crdnId: $P.ctrl.getValue("CRDN_ID") callPurpose: "view"
, lsctId: $P.ctrl.getValue("LSCT_ID") , lsctId: $P.ctrl.getValue("LSCT_ID")
, crdnId: $P.ctrl.getValue("CRDN_ID")
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
@ -261,11 +256,38 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색 $P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색
$P.ctrl.urls.remove = wctx.url(prefixUrl + "/010/remove.do") // 삭제 $P.ctrl.urls.remove = wctx.url(prefixUrl + "/010/remove.do") // 삭제
$P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보
$P.ctrl.urls.create = wctx.url(prefixUrl + "/030/main.do"); // 등록 }
// 임대계약서 등록
$P.createInfo = (params) => {
if (!params) return;
ajax.get({
url: wctx.url("${prefixUrl}" + "/030/main.do")
, data: params || {}
, success: (resp) => {
let dialogName = "hirerDialog";
let dialogId = dialogName + "-" + uuid();
dialog.open({
id: dialogId
, title: $P.ctrl.prefixName + " 정보"
, size: $P.ctrl.infoSize
, content: resp
, init: () => {
$("#" + dialogId).attr("name", dialogName);
$("#" + dialogId).attr("data-ref-doctx", "${pageName}");
AppSupport.setDialogZindex();
}
, onClose: () => { }
});
}
});
} }
/************************************************************************** /**************************************************************************
@ -279,11 +301,10 @@
$P.ctrl.dataset.clear(); $P.ctrl.dataset.clear();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
// input, select 초기화 // input, select 초기화
let searchForm = $P.$findn("frmSearch"); let searchForm = $P.$findn("frmSearch");
searchForm.find("input[type='radio']").not("[name='taskSeCd']").prop("checked", false);
searchForm.find("input[type='checkbox']").prop("checked", false); searchForm.find("input[type='checkbox']").prop("checked", false);
searchForm.find("input[type='text']").val(""); searchForm.find("input[type='text']").val("");
searchForm.find("input[type='hidden']").val(""); searchForm.find("input[type='hidden']").val("");
@ -293,7 +314,6 @@
AppSupport.initDetailSearchButton($P.findn("frmSearch")); // 상세검색 버튼 화살표 AppSupport.initDetailSearchButton($P.findn("frmSearch")); // 상세검색 버튼 화살표
// 기본 데이터 설정 // 기본 데이터 설정
$P.$findn("userId").val("${userId}"); // 사용자 ID
$P.$findn("schCrdnYmdFrom").datepicker("setDate", DateSupport.getAddDay(-365)); // 단속 일자 시작 $P.$findn("schCrdnYmdFrom").datepicker("setDate", DateSupport.getAddDay(-365)); // 단속 일자 시작
$P.$findn("schCrdnYmdTo").datepicker("setDate", TODAY()); // 단속 일자 종료 $P.$findn("schCrdnYmdTo").datepicker("setDate", TODAY()); // 단속 일자 종료
$P.$findn("schVhrno").val("167하9750"); // 차량번호 $P.$findn("schVhrno").val("167하9750"); // 차량번호
@ -308,7 +328,7 @@
}); });
$P.findn("tableRspns").changeColumn(colsOuterHTML); $P.findn("tableRspns").changeColumn(colsOuterHTML);
// // 버튼 disabled
$P.$findn("btnCreate").prop("disabled", true); $P.$findn("btnCreate").prop("disabled", true);
$P.$findn("btnRemove").prop("disabled", true); $P.$findn("btnRemove").prop("disabled", true);
} }
@ -316,9 +336,9 @@
// 검색 버튼 이벤트 // 검색 버튼 이벤트
$P.fnSearchList = (tabName) => { $P.fnSearchList = (tabName) => {
// 검색 조건 // 검색 조건
$P.ctrl.query = $P.formFields.get(); // 검색 조건 $P.ctrl.query = new FimsFormFields($P.selectorn("frmSearch")).get(); // 검색 조건
$P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수 $P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수
$P.ctrl.query.delYn = "N"; // 삭제 여부 $P.ctrl.query.delYn = "N"; // 삭제 여부
// 임대기업번호가 전체라면.. // 임대기업번호가 전체라면..
if ($P.ctrl.query.schEntNo == "" ) { if ($P.ctrl.query.schEntNo == "" ) {
@ -339,7 +359,7 @@
$P.ctrl.query.schEntNos = arrEntNo.filter((element) => element !== "").join(','); $P.ctrl.query.schEntNos = arrEntNo.filter((element) => element !== "").join(',');
} }
// // 버튼 disabled
$P.$findn("btnCreate").prop("disabled", true); $P.$findn("btnCreate").prop("disabled", true);
$P.$findn("btnRemove").prop("disabled", true); $P.$findn("btnRemove").prop("disabled", true);
@ -376,17 +396,18 @@
$P.ctrl.download(); $P.ctrl.download();
} }
// 임대기업 매핑 등록 버튼 이벤트 // 임대계약서 등록 버튼 이벤트
$P.fnCreate = () => { $P.fnCreate = () => {
let params = { let params = {
schVhrno: $P.ctrl.getValue("VHRNO") callPurpose: "create"
, schVhrno: $P.ctrl.getValue("VHRNO")
, schCtrtYmd: $P.ctrl.getValue("CRDN_YMD") , schCtrtYmd: $P.ctrl.getValue("CRDN_YMD")
}; };
$P.ctrl.create(params); $P.createInfo(params);
} }
// 임대기업 매핑 삭제 버튼 이벤트 // 임대계약서 삭제 버튼 이벤트
$P.fnRemove = () => { $P.fnRemove = () => {
let selected = $P.ctrl.getDataset("selected"); // 선택 자료 let selected = $P.ctrl.getDataset("selected"); // 선택 자료
@ -403,7 +424,8 @@
content: "선택한 " + selected.length + "건의 " + $P.ctrl.prefixName + " 정보를 삭제하시겠습니까?" content: "선택한 " + selected.length + "건의 " + $P.ctrl.prefixName + " 정보를 삭제하시겠습니까?"
, onOK: () => { , onOK: () => {
let params = { let params = {
mpngIds: selected.map(info => info.LSCT_ID).join(",") callPurpose: "remove"
, lsctIds: selected.map(info => info.LSCT_ID).join(",")
} }
$P.ctrl.remove(params); $P.ctrl.remove(params);
@ -417,13 +439,13 @@
// 이벤트 설정 // 이벤트 설정
$P.setEvent = () => { $P.setEvent = () => {
// 기본 버튼 이벤트 // 기본 버튼 이벤트
$P.$findn("btnReset").on("click", () => { $P.fnReset() }); // 초기화 $P.$findn("btnReset").on("click", () => { $P.fnReset() }); // 초기화
$P.$findn("btnSearch").on("click", () => { $P.fnSearchList() }); // 검색 $P.$findn("btnSearch").on("click", () => { $P.fnSearchList() }); // 검색
$P.$findn("btnExcel").on("click", () => { $P.fnExcel() }); // 엑셀 $P.$findn("btnExcel").on("click", () => { $P.fnExcel() }); // 엑셀
// 업무 버튼 이벤트 // 업무 버튼 이벤트
$P.$findn("btnCreate").on("click", () => { $P.fnCreate(); }); // 등록 $P.$findn("btnCreate").on("click", () => { $P.fnCreate(); }); // 등록
$P.$findn("btnRemove").on("click", () => { $P.fnRemove(); }); // 삭제 $P.$findn("btnRemove").on("click", () => { $P.fnRemove(); }); // 삭제
// DataTables width 변경 조정 // DataTables width 변경 조정
Componentization.fnMakeResizableTable($P.findn("tableRspns")); Componentization.fnMakeResizableTable($P.findn("tableRspns"));

@ -1,7 +1,7 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<c:set var="prefixName" scope="request">임대차계약 정보</c:set> <c:set var="prefixName" scope="request">임대차계약</c:set>
<!-- inner page html --> <!-- inner page html -->
<div class="content-wrapper" data-doctx="${pageName}"> <div class="content-wrapper" data-doctx="${pageName}">
@ -29,15 +29,17 @@
<!-- 메인 조건 --> <!-- 메인 조건 -->
<div class="container-search"> <div class="container-search">
<div class="row g-1"> <div class="row g-1">
<!-- 기업 번호 --> <!-- 계약일자 -->
<div class="col-6">
<label is="name-label" class="form-label fw-bold form-search-title w-px-120 text-end required" for="schCtrtYmd">계약일자</label>
<input is="id-input" type="text" class="form-control form-date" name="schCtrtYmd"
data-fmt-type="day" autocomplete="off" title="날짜 선택" maxlength="10" required />
<button type="button" class="bx bx-lg bx-calendar bg-white" name="btnCtrtYmd"></button>
</div>
<!-- 차량번호 -->
<div class="col-6"> <div class="col-6">
<label is="name-label" class="form-label fw-bold form-search-title w-px-120 text-end" for="schCtrtYmd">계약일자</label> <label is="name-label" class="form-label fw-bold form-search-title w-px-120 text-end required" for="schVhrno">차량번호</label>
<input is="id-input" type="text" class="form-control w-px-160" name="schCtrtYmd" autocomplete="off" /> <input is="id-input" type="text" class="form-control w-px-160" name="schVhrno" required autocomplete="off" />
</div>
<!-- 기업 명 -->
<div class="col-6">
<label is="name-label" class="form-label fw-bold form-search-title w-px-120 text-end" for="schVhrno">차량번호</label>
<input is="id-input" type="text" class="form-control w-px-200" name="schVhrno" autocomplete="off" />
</div> </div>
</div> </div>
</div> <!-- 메인 조건 --> </div> <!-- 메인 조건 -->
@ -140,8 +142,6 @@
// pageObject // pageObject
let $P = pageObject["${pageName}"]; let $P = pageObject["${pageName}"];
// formFields
$P.formFields = new FimsFormFields($P.selectorn("frmSearch"));
// datasetControl // datasetControl
$P.ctrl = newRent02030Control("${pageName}", "[data-doctx=${pageName}]"); $P.ctrl = newRent02030Control("${pageName}", "[data-doctx=${pageName}]");
// paging // paging
@ -177,7 +177,8 @@
// dataTable 더블 클릭 이벤트 // dataTable 더블 클릭 이벤트
$P.dataTableDblClick = (dataIndex, dataKey) => { $P.dataTableDblClick = (dataIndex, dataKey) => {
let params = { let params = {
entId: $P.ctrl.getValue("ENT_ID") callPurpose: "update"
, entId: $P.ctrl.getValue("LSCT_ID") // 임대차계약 ID
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
@ -192,11 +193,11 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/020/list.do"); // 검색 $P.ctrl.urls.load = wctx.url(prefixUrl + "/030/list.do"); // 검색
$P.ctrl.urls.create = wctx.url(prefixUrl + "/020/createMpng.do") // 등록 $P.ctrl.urls.create = wctx.url(prefixUrl + "/030/createReg.do") // 등록
$P.ctrl.urls.remove = wctx.url(prefixUrl + "/020/removeEnt.do") // 삭제 $P.ctrl.urls.remove = wctx.url(prefixUrl + "/030/removeHirer.do") // 삭제
$P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/030/info.do"); // 상세 정보 $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/040/info.do"); // 상세 정보
} }
/************************************************************************** /**************************************************************************
@ -210,11 +211,27 @@
$P.ctrl.dataset.clear(); $P.ctrl.dataset.clear();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
// input, select 초기화
let searchForm = $P.$findn("frmSearch");
searchForm.find("input[type='checkbox']").prop("checked", false);
searchForm.find("input[type='text']").val("");
searchForm.find("input[type='hidden']").val("");
searchForm.find("select").each(function(){ $(this).find("option:eq(0)").prop("selected", true); });
AppSupport.initDatepicker($P.findn("frmSearch")); // 달력 초기화
// 기본 데이터 설정 // 기본 데이터 설정
$P.$findn("userId").val("${userId}"); // 사용자 ID let ctrtYmd = "${schCtrtYmd}";
$P.$findn("schEntNo").val("${schEntNo}"); // 기업 번호 ctrtYmd = ctrtYmd.replace(/[^0-9]/g, ""); // 정규식으로 숫자만 남긴다.
if (ctrtYmd.length == 8) {
ctrtYmd = ctrtYmd.substring(0, 4) + "-" + ctrtYmd.substring(4, 6) + "-" + ctrtYmd.substring(6);
}
$P.$findn("schCtrtYmd").datepicker("setDate", ctrtYmd); // 계약일자
$P.$findn("schVhrno").val("${schVhrno}"); // 자동차등록번호
// 그리드 th // 그리드 th
let colContent = $P.findn("tmpltCols").content; let colContent = $P.findn("tmpltCols").content;
@ -230,9 +247,9 @@
// 검색 버튼 클릭 이벤트 // 검색 버튼 클릭 이벤트
$P.fnSearchList = () => { $P.fnSearchList = () => {
// 검색조건 // 검색조건
$P.ctrl.query = $P.formFields.get(); // 검색 조건 $P.ctrl.query = new FimsFormFields($P.selectorn("frmSearch")).get(); // 검색 조건
$P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수 $P.ctrl.query.fetchSize = DEFAULT_FETCH_SIZE; // 한번에 조회되는 자료 건수
$P.ctrl.query.delYn = "N"; // 삭제 여부 $P.ctrl.query.delYn = "N"; // 삭제 여부
$P.ctrl.load(1); $P.ctrl.load(1);
} }
@ -268,12 +285,14 @@
} }
dialog.alert({ dialog.alert({
content: "현재 " + $P.ctrl.prefixName + " 정보를 저장하시겠습니까?" content: "현재 임대계약서 정보를 저장하시겠습니까?"
, onOK: () => { , onOK: () => {
let params = { let params = {
callPurpose: "create" callPurpose: "create"
, userId: $P.$findn("userId").val() , crdnId: $P.ctrl.getValue("CRDN_ID")
, entIds: selected.map(info => info.ENT_ID).join(",") , levyId: $P.ctrl.getValue("LEVY_ID")
, entId: $P.ctrl.getValue("ENT_ID")
, hirerId: $P.ctrl.getValue("HIRER_ID")
} }
$P.ctrl.save(params); $P.ctrl.save(params);
@ -281,30 +300,32 @@
}); });
} }
// 임대기업 등록 버튼 클릭 이벤트 // 임차인 등록
$P.fnCreate = () => { $P.fnCreate = () => {
let params = { let params = {
entId: null callPurpose: "create"
, hirerId: null
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
} }
// 임대기업 수정 버튼 클릭 이벤트 // 임차인 수정
$P.fnUpdate = () => { $P.fnUpdate = () => {
// 임대기업 ID // 임차인 ID
let entId = $P.ctrl.getValue("ENT_ID"); let hirerId = $P.ctrl.getValue("HIRER_ID");
// 임대기업 ID 가 없다면.. return // 임차인 ID 가 없다면.. return
if (typeof entId == "undefined" || entId == null || entId == "") return; if (!hirerId) return;
let params = { let params = {
entId: entId callPurpose: "update"
, hirerId: $P.ctrl.getValue("HIRER_ID")
}; };
$P.ctrl.getInfo(params); $P.ctrl.getInfo(params);
} }
// 임대기업 삭제 버튼 클릭 이벤트 // 임차인 삭제
$P.fnRemove = () => { $P.fnRemove = () => {
let selected = $P.ctrl.getDataset("selected"); // 선택 자료 let selected = $P.ctrl.getDataset("selected"); // 선택 자료
@ -318,7 +339,8 @@
} }
let params = { let params = {
entIds: selected.map(info => info.ENT_ID).join(",") callPurpose: "remove"
, hirerIds: selected.map(info => info.HIRER_ID).join(",")
}; };
dialog.alert({ dialog.alert({

@ -11,7 +11,7 @@
<!-- 입력 영역 --> <!-- 입력 영역 -->
<form name="frmEdit"> <form name="frmEdit">
<!-- hidden --> <!-- hidden -->
<input type="hidden" name="entId" data-map="ENT_ID" /> <input type="hidden" name="hirerId" data-map="HIRER_ID" />
<div class="row g-1"> <div class="row g-1">
<!-- 기업 구분 코드 --> <!-- 기업 구분 코드 -->
@ -91,7 +91,7 @@
<!-- / inner page html <div class="content-pop"> --> <!-- / inner page html <div class="content-pop"> -->
<script> <script>
LoadScript("rent01030Script", wctx.url("/webjars/js/fims/rent/rent01030.js?ver=${ver}")); LoadScript("rent02040Script", wctx.url("/webjars/js/fims/rent/rent02040.js?ver=${ver}"));
/************************************************************************** /**************************************************************************
* Global Variable * Global Variable
@ -105,18 +105,16 @@
// pageObject // pageObject
let $P = pageObject["${pageName}"]; let $P = pageObject["${pageName}"];
// formFields
$P.formFields = new FimsFormFields($P.selectorn("frmEdit"));
// datasetControl // datasetControl
$P.ctrl = newRent01030Control("${pageName}", "[data-doctx=${pageName}]"); $P.ctrl = newRent02040Control("${pageName}", "[data-doctx=${pageName}]");
/************************************************************************** /**************************************************************************
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.create = wctx.url(prefixUrl + "/030/createEnt.do") // 등록 $P.ctrl.urls.create = wctx.url(prefixUrl + "/040/createEnt.do") // 등록
$P.ctrl.urls.update = wctx.url(prefixUrl + "/030/updateEnt.do") // 수정 $P.ctrl.urls.update = wctx.url(prefixUrl + "/040/updateEnt.do") // 수정
} }
// 우편번호 검색 결과 // 우편번호 검색 결과
@ -135,7 +133,7 @@
$P.findn("frmEdit").reset(); $P.findn("frmEdit").reset();
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
} }
// 우편번호 검색 // 우편번호 검색
@ -165,9 +163,9 @@
content: "현재 " + $P.ctrl.prefixName + " 정보를 저장하시겠습니까?" content: "현재 " + $P.ctrl.prefixName + " 정보를 저장하시겠습니까?"
, init: () => { AppSupport.setDialogZindex(); } , init: () => { AppSupport.setDialogZindex(); }
, onOK: () => { , onOK: () => {
let params = $P.formFields.get(); let params = new FimsFormFields($P.selectorn("frmEdit")).get();
if (params.entId) { if (params.hirerId) {
params.callPurpose = "update"; params.callPurpose = "update";
} else { } else {
params.callPurpose = "create"; params.callPurpose = "create";

@ -297,7 +297,7 @@
* 사용자 함수(function) * 사용자 함수(function)
**************************************************************************/ **************************************************************************/
// URL 설정 // URL 설정
$P.fnSetUrl = (prefixUrl) => { $P.setUrl = (prefixUrl) => {
$P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색 url $P.ctrl.urls.load = wctx.url(prefixUrl + "/010/list.do"); // 검색 url
$P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 url $P.ctrl.urls.getInfo = wctx.url(prefixUrl + "/020/info.do"); // 상세 정보 url
} }
@ -328,7 +328,7 @@
$P.$findn("schVhrno").val("167하9750"); // 차량번호 $P.$findn("schVhrno").val("167하9750"); // 차량번호
// URL 설정 // URL 설정
$P.fnSetUrl("${prefixUrl}"); $P.setUrl("${prefixUrl}");
// dataset 초기화 // dataset 초기화
$P.ctrl.dataset.clear(); $P.ctrl.dataset.clear();

@ -18,9 +18,8 @@ function newRent01020Control(pageName, doctx="[data-doctx='rent01020']") {
ctrl.onCurrentChange = (item) => { ctrl.onCurrentChange = (item) => {
if (!item) return; if (!item) return;
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
// 화면에 Dataset 셋팅 // 화면에 Dataset 셋팅
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
formFields.set(ctrl, item); formFields.set(ctrl, item);
}; };
@ -46,28 +45,18 @@ function newRent01020Control(pageName, doctx="[data-doctx='rent01020']") {
AppSupport.setDialogZindex(); AppSupport.setDialogZindex();
} }
, onClose: () => { , onClose: () => { }
// 자료 재조회
ctrl.query.callPurpose = "reload";
ctrl.refreshInfo(ctrl.query); // roload() 가 된다면 삭제..
// 오류 발생됨. 한실장님 다시 확인.
// ctrl.reload();
// ctrl.load(1);
}
}); });
} }
}); });
} }
// 재 조회 // 재 조회 -> 1건일때 reload 사용시 오류 발생. 배열이 아니여서 발생.. 한실장님에게 수정 요청
ctrl.refreshInfo = (params) => { ctrl.refresh = () => {
if (!params) return;
ajax.get({ ajax.get({
url: ctrl.urls.load url: ctrl.urls.load
, headers: { Accept: "application/json; charset=utf-8" } // json , headers: { Accept: "application/json; charset=utf-8" } // json
, data: params || {} , data: ctrl.query
, success: (resp) => { , success: (resp) => {
// 초기화 // 초기화
ctrl.find("[name='frmEdit']").reset(); // 화면 초기화 ctrl.find("[name='frmEdit']").reset(); // 화면 초기화

@ -101,7 +101,7 @@ function newRent01030Control(pageName, doctx="[data-doctx='rent01030']") {
AppSupport.setDialogZindex(); AppSupport.setDialogZindex();
} }
, onClose: () => { ctrl.reload({ all: true }); } , onClose: () => { }
}); });
} }
}); });
@ -159,5 +159,14 @@ function newRent01030Control(pageName, doctx="[data-doctx='rent01030']") {
}); });
} }
// 자료 재 조회
ctrl.refresh = () => {
if (ctrl.dataset.empty)
ctrl.load(1);
else {
ctrl.reload({ all: true }); // 추가했을때 추가 자료가 조회되지 않음 -> 기존 건수만큼만 조회를 함.. 한실장님에게 수정 요청
}
}
return ctrl; return ctrl;
} }

@ -18,9 +18,8 @@ function newRent01040Control(pageName, doctx="[data-doctx='rent01040']") {
ctrl.onCurrentChange = (item) => { ctrl.onCurrentChange = (item) => {
if (!item) return; if (!item) return;
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
// 화면에 Dataset 셋팅 // 화면에 Dataset 셋팅
let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
formFields.set(ctrl, item); formFields.set(ctrl, item);
}; };
@ -35,7 +34,13 @@ function newRent01040Control(pageName, doctx="[data-doctx='rent01040']") {
, init: () => { AppSupport.setDialogZindex(); } , init: () => { AppSupport.setDialogZindex(); }
, onOK: () => { } , onOK: () => { }
, onClose: () => { , onClose: () => {
if (resp.saved) { dialog.close(modalId); } if (resp.saved) {
// 다이얼로그를 호출했던 부모 control 자료 재조회
let dataRefDoctx = $("#" + modalId).attr("data-ref-doctx");
pageObject[dataRefDoctx].ctrl.refresh();
dialog.close(modalId);
}
} }
}); });
} }

@ -51,7 +51,7 @@ function newRent02010Control(pageName, doctx="[data-doctx='rent02010']") {
[ctrl.find("[name='tmpltNotFound']").content.querySelector(".cmn").outerHTML] [ctrl.find("[name='tmpltNotFound']").content.querySelector(".cmn").outerHTML]
: dataList.inStrings(foundTr.outerHTML, replacer); : dataList.inStrings(foundTr.outerHTML, replacer);
let noMore = (dataList.length >= obj["Total"]); // 전체 건수 let noMore = (dataList.length >= obj["Paging"]?.totalSize); // 전체 건수
let initScroll = (ctrl.query.pageNum < 2); let initScroll = (ctrl.query.pageNum < 2);
if (option != null && option.reloaded) { if (option != null && option.reloaded) {
@ -103,7 +103,7 @@ function newRent02010Control(pageName, doctx="[data-doctx='rent02010']") {
AppSupport.setDialogZindex(); AppSupport.setDialogZindex();
} }
, onClose: () => { } , onClose: () => { ctrl.reload({ all: true }); }
}); });
} }
}); });
@ -135,34 +135,5 @@ function newRent02010Control(pageName, doctx="[data-doctx='rent02010']") {
}); });
} }
// 등록
ctrl.create = (params) => {
if (!params) return;
ajax.get({
url: ctrl.urls.create
, 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: () => { }
});
}
});
}
return ctrl; return ctrl;
} }

@ -48,7 +48,7 @@ function newRent02030Control(pageName, doctx="[data-doctx='rent02030']") {
[ctrl.find("[name='tmpltNotFound']").content.querySelector(".cmn").outerHTML] [ctrl.find("[name='tmpltNotFound']").content.querySelector(".cmn").outerHTML]
: dataList.inStrings(foundTr.outerHTML, replacer); : dataList.inStrings(foundTr.outerHTML, replacer);
let noMore = (dataList.length >= obj["Total"]); // 전체 건수 let noMore = (dataList.length >= obj["Paging"]?.totalSize); // 전체 건수
let initScroll = (ctrl.query.pageNum < 2); let initScroll = (ctrl.query.pageNum < 2);
if (option != null && option.reloaded) { if (option != null && option.reloaded) {
@ -101,7 +101,7 @@ function newRent02030Control(pageName, doctx="[data-doctx='rent02030']") {
AppSupport.setDialogZindex(); AppSupport.setDialogZindex();
} }
, onClose: () => { } // ctrl.reload(); , onClose: () => { }
}); });
} }
}); });
@ -159,5 +159,14 @@ function newRent02030Control(pageName, doctx="[data-doctx='rent02030']") {
}); });
} }
// 자료 재 조회
ctrl.refresh = () => {
if (ctrl.dataset.empty)
ctrl.load(1);
else {
ctrl.reload({ all: true });
}
}
return ctrl; return ctrl;
} }

@ -1,11 +1,10 @@
function newRent01030Control(pageName, doctx="[data-doctx='rent01030']") { function newRent02040Control(pageName, doctx="[data-doctx='rent02040']") {
let ctrl = new DatasetControl({ let ctrl = new DatasetControl({
doctx: doctx doctx: doctx
, prefix: "rentEnt" , prefix: "hirer"
, prefixName: "임대기업" , prefixName: "임차인"
, dataGetter: obj => obj["Info"] , dataGetter: obj => obj["Info"]
, keys: ["ENT_ID"] , keys: ["HIRER_ID"]
, appendData: true
, urls: { , urls: {
create: "/create.do" create: "/create.do"
, update: "/update.do" , update: "/update.do"
@ -20,7 +19,8 @@ function newRent01030Control(pageName, doctx="[data-doctx='rent01030']") {
if (!item) return; if (!item) return;
// 화면에 Dataset 셋팅 // 화면에 Dataset 셋팅
pageObject[pageName].formFields.set(ctrl, item); let formFields = new FimsFormFields(ctrl.selector("[name='frmEdit']"));
formFields.set(ctrl, item);
}; };
// 저장 callback // 저장 callback
@ -34,7 +34,13 @@ function newRent01030Control(pageName, doctx="[data-doctx='rent01030']") {
, init: () => { AppSupport.setDialogZindex(); } , init: () => { AppSupport.setDialogZindex(); }
, onOK: () => { } , onOK: () => { }
, onClose: () => { , onClose: () => {
if (resp.saved) { dialog.close(modalId); } if (resp.saved) {
// 다이얼로그를 호출했던 부모 control 자료 재조회
let dataRefDoctx = $("#" + modalId).attr("data-ref-doctx");
pageObject[dataRefDoctx].ctrl.refresh();
dialog.close(modalId);
}
} }
}); });
} }

Loading…
Cancel
Save