You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
183 lines
6.1 KiB
Plaintext
183 lines
6.1 KiB
Plaintext
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
|
|
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
|
|
|
|
<c:set var="prefixName" scope="request">단속 상태 정보</c:set>
|
|
|
|
<!-- inner page html -->
|
|
<div class="content-pop">
|
|
<!-- Content -->
|
|
<div class="container-xxl flex-grow-1 px-0">
|
|
|
|
<!-- Page Body -->
|
|
<div class="card">
|
|
<!-- 입력 영역 -->
|
|
<form id="frmEdit--${pageName}" name="frmEdit">
|
|
<!-- hidden -->
|
|
<input type="hidden" id="sggCd--${pageName}" name="sggCd" data-map="SGG_CD" />
|
|
<input type="hidden" id="taskSeCd--${pageName}" name="taskSeCd" data-map="TASK_SE_CD" />
|
|
<input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" />
|
|
|
|
<div class="row g-1">
|
|
<!-- 단속 처리 상태 코드 -->
|
|
<div class="col-md-12">
|
|
<label for="crdnSttsCd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end required">처리상태</label>
|
|
<select id="crdnSttsCd--${pageName}" name="crdnSttsCd" class="form-select" data-map="CRDN_STTS_CD" required>
|
|
<option value="">선택하세요</option>
|
|
<c:forEach items="${FIM010List}" var="item">
|
|
<option value="${item.code}">${item.value}</option>
|
|
</c:forEach>
|
|
</select>
|
|
</div>
|
|
<!-- 기타 내용 --> <!-- DB에 등록할 때 문구가 추가로 붙기 때문에 data-maxlengthb="940" 으로 지정 -->
|
|
<div class="col-md-12">
|
|
<label for="etcCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">기타내용</label>
|
|
<input type="text" class="form-control w-85" id="etcCn--${pageName}" name="etcCn" data-maxlengthb="940" />
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<!-- 입력 영역 -->
|
|
|
|
<!-- 업무 버튼 및 건수 표시 -->
|
|
<div>
|
|
<span class="container-page-btn">
|
|
<!-- 업무 버튼 -->
|
|
<span class="container-window-btn-right">
|
|
<button type="button" id="btnSave--${pageName}" class="btn btn-primary w-px-80" title="저장">
|
|
저장
|
|
</button>
|
|
</span>
|
|
</span>
|
|
</div> <!-- 업무 버튼 및 건수 표시 -->
|
|
</div> <!-- <div class="card"> -->
|
|
<!-- Page Body -->
|
|
|
|
</div> <!-- <div class="container flex-grow-1 px-0"> -->
|
|
<!-- Content -->
|
|
</div>
|
|
<!-- / inner page html <div class="content-pop"> -->
|
|
|
|
<script>
|
|
/**************************************************************************
|
|
* Global Variable
|
|
**************************************************************************/
|
|
pageObject["${pageName}"] = {};
|
|
|
|
/**************************************************************************
|
|
* script 진입
|
|
**************************************************************************/
|
|
$(document).ready(function() {
|
|
// pageObject
|
|
let $P = pageObject["${pageName}"];
|
|
|
|
// infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정)
|
|
$P.callPurpose = "${callPurpose}";
|
|
// FormFields
|
|
$P.formFields = new FimsFormFields("#frmEdit--${pageName}");
|
|
|
|
/**************************************************************************
|
|
* DatasetControl
|
|
**************************************************************************/
|
|
$P.control = new DatasetControl({
|
|
prefix: "crdnSttsCd"
|
|
, prefixName: "단속처리상태"
|
|
, keymapper: info => info ? info.CRDN_ID : ""
|
|
, dataGetter: obj => obj.${infoPrefix}Info
|
|
});
|
|
|
|
/**************************************************************************
|
|
* DatasetControl 이벤트
|
|
**************************************************************************/
|
|
// 현재 선택 자료 변경 이벤트
|
|
$P.control.onCurrentChange = (item) => {
|
|
if (!item) return;
|
|
|
|
// Dataset 셋팅
|
|
$P.formFields.set($P.control, item);
|
|
|
|
// 업무구분에 따른 URL 변경
|
|
$P.fnSetURL(item.data.TASK_SE_CD);
|
|
}
|
|
|
|
// 저장 callback
|
|
$P.control.onSave = (resp) => {
|
|
let dialogTitle = $("#" + $P.control.prefix + "Dialog--${openerPageName}").find("h5.modal-title").html();
|
|
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
|
|
|
|
dialog.alert({
|
|
content: showMessage
|
|
, init: function() {
|
|
setDialogZindex();
|
|
focusClose();
|
|
}
|
|
});
|
|
|
|
if (resp.saved) {
|
|
dialog.close($P.control.prefix + "Dialog--${openerPageName}");
|
|
}
|
|
}
|
|
|
|
// 저장
|
|
$P.control.save = (info) => {
|
|
if (!info) return;
|
|
|
|
ajax.post({
|
|
url: $P.control.urls.update
|
|
, data: info || {}
|
|
, success: resp => $P.control.onSave(resp)
|
|
});
|
|
}
|
|
|
|
/**************************************************************************
|
|
* 사용자 함수(function)
|
|
**************************************************************************/
|
|
// 업무구분에 따른 URL 설정
|
|
$P.fnSetURL = (taskSeCd) => {
|
|
$P.control.urls.update = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/030/update.do"); // 수정
|
|
}
|
|
|
|
/**************************************************************************
|
|
* 버튼 clickEvent
|
|
**************************************************************************/
|
|
// 저장 버튼 클릭 이벤트
|
|
$P.fnSave = (title) => {
|
|
// validate 확인
|
|
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
|
|
|
|
dialog.alert({
|
|
content: "현재 " + $P.control.prefixName + " 정보를 저장하시겠습니까?"
|
|
, init: function() { focusOK(); }
|
|
, onOK: () => {
|
|
$P.control.save($P.formFields.get()); // formFields
|
|
}
|
|
});
|
|
}
|
|
|
|
/**************************************************************************
|
|
* 초기 셋팅
|
|
**************************************************************************/
|
|
// 이벤트 설정
|
|
$P.setEvent = () => {
|
|
// 버튼 이벤트
|
|
$("#btnSave--${pageName}").on("click", () => $P.fnSave()); // 저장
|
|
}
|
|
|
|
// 초기 화면 설정
|
|
$P.initForm = () => {
|
|
//
|
|
}
|
|
|
|
/**************************************************************************
|
|
* 최초 실행 함수
|
|
**************************************************************************/
|
|
// 1. 이벤트 설정
|
|
$P.setEvent();
|
|
|
|
// 2. 초기 화면 설정
|
|
$P.initForm();
|
|
|
|
// 3. Dataset 설정
|
|
$P.control.setData([${crdnSttsCdInfo}]);
|
|
});
|
|
|
|
</script>
|