feat: 단속현황 관리 진행
parent
f9d53afb82
commit
43ab8d0edf
@ -0,0 +1,330 @@
|
|||||||
|
<%--
|
||||||
|
================================================================================
|
||||||
|
File : /fims/biz/cmm/cmmCrackdownRcvFilePopup.jsp
|
||||||
|
Name : 외부연계파일 처리 - 단속관리>단속현황관리>외부자료연계탭>연계파일처리
|
||||||
|
Auth : lim.jong.uk
|
||||||
|
Date : 2022-01-20
|
||||||
|
Desc : 외부연계파일 처리
|
||||||
|
================================================================================
|
||||||
|
Date Author Description
|
||||||
|
================================================================================
|
||||||
|
================================================================================
|
||||||
|
--%>
|
||||||
|
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||||
|
<%@ include file="/WEB-INF/jsp/framework/taglibs.jsp" %>
|
||||||
|
|
||||||
|
<div class="popup" style="min-width: 100%;">
|
||||||
|
<div class="popup_inner" style="max-width: 800px;">
|
||||||
|
<p class="pop_title">CCTV 단속 자료 선택</p>
|
||||||
|
<form name="frmSearch" id="frmSearch">
|
||||||
|
<div class="search r2">
|
||||||
|
<table>
|
||||||
|
<caption>검색조건</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 30%"/>
|
||||||
|
<col/>
|
||||||
|
<col/>
|
||||||
|
<col/>
|
||||||
|
<col/>
|
||||||
|
<col/>
|
||||||
|
<col/>
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<code:select type="CMM_ETC2" id="regltSeCode" name="regltSeCode" codeId="FIM002" defaultSelect="01" onchange="fnBiz.onComboChange()" title="단속구분코드" cls="selectBoxTotal" alt="단속구분코드" />
|
||||||
|
</td>
|
||||||
|
<td colspan="6">
|
||||||
|
<input id="folder" type="file" webkitdirectory multiple="false"/>
|
||||||
|
<input id="busOnlyDirPath" name="dirPath" type="text" size="400" value="<c:out value='${busOnlyDirPath}'/>" title="버스전용차로데이타경로" style="display: none; width: 100%" readonly/>
|
||||||
|
<input id="ctznDirPath" name="dirPath" type="text" size="400" value="<c:out value='${ctznDirPath}'/>" title="시민신고" style="display: none; width: 100%" readonly/>
|
||||||
|
<span id="warnMsg" style="color: red; font-weight: bold; display: inline-block">동일한 데이타 선택시 중복 처리될수 있습니다.</span>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
<div class="popup_btn">
|
||||||
|
<span class="fll">
|
||||||
|
<div class="list clearfix" id="totCnt">전체 ㅣ <span>0</span></div>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div id="grid"></div>
|
||||||
|
<div class="popup_btn">
|
||||||
|
<span class="flr p_flr">
|
||||||
|
<a href="#" class="btn blue" id="btnRegist">파일 처리</a>
|
||||||
|
<a href="#" id="btnClose" class="btn lightgray">닫기</a>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<!-- //등록버튼 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- //popup -->
|
||||||
|
|
||||||
|
<script type="text/javaScript">
|
||||||
|
/**************************************************************************
|
||||||
|
* Global Variable
|
||||||
|
**************************************************************************/
|
||||||
|
let GRID = null;
|
||||||
|
let arrFiles = [];
|
||||||
|
|
||||||
|
/* *******************************
|
||||||
|
* Biz function
|
||||||
|
******************************* */
|
||||||
|
const fnBiz = {
|
||||||
|
fileSelect: (e) => {
|
||||||
|
//const output = document.querySelector("ul");
|
||||||
|
arrFiles = [];
|
||||||
|
const files = e.target.files;
|
||||||
|
const arrFile = [];
|
||||||
|
|
||||||
|
for (let i=0; i<files.length; i++) {
|
||||||
|
// const item = document.createElement("li");
|
||||||
|
// item.innerHTML = files[i].webkitRelativePath;
|
||||||
|
// output.appendChild(item);
|
||||||
|
arrFile.push({
|
||||||
|
filePath: '',
|
||||||
|
fileNm: files[i].name,
|
||||||
|
fileType: files[i].type,
|
||||||
|
fileSize: files[i].size,
|
||||||
|
//lastModified: files[i].lastModified
|
||||||
|
lastModified: files[i].lastModifiedDate
|
||||||
|
})
|
||||||
|
arrFiles.push(files[i]);
|
||||||
|
}
|
||||||
|
GRID.resetData(arrFile);
|
||||||
|
$('#totCnt span').text(arrFile.length);
|
||||||
|
}
|
||||||
|
,search: () => {
|
||||||
|
GRID.reloadData();
|
||||||
|
//FIXME : onGridUpdated
|
||||||
|
GRID.on('onGridUpdated', (ev) => {
|
||||||
|
//console.log('%%%%%%%%%%%%%>>>>>>>',ev)
|
||||||
|
}) // 그리드 레이아웃 새로고침 (로드가 다 되지 않는 경우 그리드가 흰색 화면으로 출력될 때가 있다.))
|
||||||
|
}
|
||||||
|
,add: () => {
|
||||||
|
const arrChecks = GRID.getData();
|
||||||
|
|
||||||
|
if(arrChecks.length===0) {
|
||||||
|
alert("등록[변경]할 데이타가 없습니다.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(confirm("등록 하시겠습니까?")) {
|
||||||
|
const regltSeCode = $('#regltSeCode').val();
|
||||||
|
if(regltSeCode !== '07' && regltSeCode !== '09') {
|
||||||
|
|
||||||
|
const formData = new FormData();
|
||||||
|
arrFiles.forEach((f)=> {
|
||||||
|
formData.append("files", f)
|
||||||
|
})
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: 'post'
|
||||||
|
, enctype: "multipart/form-data"
|
||||||
|
<%--, url: '<c:url value="/fims/biz/ec/saveCctvCrackdownDatas.do"/>'--%>
|
||||||
|
, url: fimsApiUrl.SAVE_CCTV_EC_EXTRL_REGLT_CNTCS
|
||||||
|
, data: formData
|
||||||
|
, processData: false
|
||||||
|
, contentType: false
|
||||||
|
, success: (res) => {
|
||||||
|
if (res) {
|
||||||
|
alert(res.message);
|
||||||
|
fnBiz.search();
|
||||||
|
}
|
||||||
|
//fnBiz.search();
|
||||||
|
}
|
||||||
|
, error: (xhr, status, err) => {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
}else {
|
||||||
|
const data = {
|
||||||
|
filePath: regltSeCode === '07' ? $('#busOnlyDirPath').val() : $('#ctznDirPath').val()
|
||||||
|
,fileInfoList: arrChecks.map((row) => {
|
||||||
|
return {fileNm: row.fileNm, fileType: row.fileType, fileSize: row.fileSize}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
cmmAjax({
|
||||||
|
<%--url: '<c:url value="/fims/biz/ec/saveBusCctvCrackdownDatas.do"/>'--%>
|
||||||
|
url: regltSeCode === '07' ? fimsApiUrl.SAVE_BUS_ONLY_EC_EXTRL_REGLT_CNTC : fimsApiUrl.SAVE_EC_NATL_NEWS_PAPER
|
||||||
|
,data: JSON.stringify(data)
|
||||||
|
,contentType: 'application/json; charset=utf-8'
|
||||||
|
,success: () => {
|
||||||
|
fnBiz.search();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,onComboChange: () => {
|
||||||
|
$('#totCnt span').text(0);
|
||||||
|
|
||||||
|
if($('#regltSeCode').val() === '07') {
|
||||||
|
$('#folder')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#busOnlyDirPath')
|
||||||
|
.css('display', 'inline-block')
|
||||||
|
.attr('disabled', false);
|
||||||
|
$('#ctznDirPath')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#warnMsg').css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
GRID.reloadData();
|
||||||
|
|
||||||
|
}else if($('#regltSeCode').val() === '09'){
|
||||||
|
$('#folder')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#busOnlyDirPath')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#ctznDirPath')
|
||||||
|
.css('display', 'inline-block')
|
||||||
|
.attr('disabled', false);
|
||||||
|
$('#warnMsg').css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
GRID.reloadData();
|
||||||
|
|
||||||
|
}else{
|
||||||
|
$('#folder')
|
||||||
|
.css('display', 'inline-block')
|
||||||
|
.attr('disabled', false);
|
||||||
|
$('#busOnlyDirPath')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#ctznDirPath')
|
||||||
|
.css('display', 'none')
|
||||||
|
.attr('disabled', true);
|
||||||
|
$('#warnMsg').css('display', 'inline-block')
|
||||||
|
.attr('disabled', false);
|
||||||
|
GRID.resetData([]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* event
|
||||||
|
**************************************************************************/
|
||||||
|
$(() => {
|
||||||
|
$(window).on("unload", function (e) {
|
||||||
|
window.opener?.unblockUI();
|
||||||
|
window.opener?.callbackSearch();
|
||||||
|
return null;
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#btnClose").on('click', () => {
|
||||||
|
window.close()
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#folder').on('change', function(e) {
|
||||||
|
//document.getElementById("folder").select();
|
||||||
|
//document.selection.clear();
|
||||||
|
fnBiz.fileSelect(e)
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnSearch').on('click', () => fnBiz.search());
|
||||||
|
|
||||||
|
$('#btnRegist').on('click', () => {
|
||||||
|
fnBiz.add();
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
/* *******************************
|
||||||
|
* Grid
|
||||||
|
******************************* */
|
||||||
|
const initGrid = () => {
|
||||||
|
const gridColumns = [
|
||||||
|
{
|
||||||
|
header: '경로',
|
||||||
|
name: 'filePath',
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '이름',
|
||||||
|
name: 'fileNm',
|
||||||
|
width: 420,
|
||||||
|
//minWidth: 250,
|
||||||
|
sortingType: 'desc',
|
||||||
|
sortable: true,
|
||||||
|
filter: 'select' //fiter 옵션(select/text/number/date/.. 등이 있으며 설정방법은 상이하므로 사이트 참조)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '타입',
|
||||||
|
name: 'fileType',
|
||||||
|
width: 30,
|
||||||
|
align: 'center',
|
||||||
|
sortable: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '크기',
|
||||||
|
name: 'fileSize',
|
||||||
|
width: 80,
|
||||||
|
sortable: true,
|
||||||
|
align: 'right',
|
||||||
|
formatter({value}){
|
||||||
|
return new Intl.NumberFormat('ko').format(value);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '생성일시',
|
||||||
|
name: 'lastModified',
|
||||||
|
width: 120,
|
||||||
|
sortable: true,
|
||||||
|
align: 'center',
|
||||||
|
formatter({value}){
|
||||||
|
//return setDateTimeFmt(value);
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
const gridOptions = {
|
||||||
|
el: 'grid',
|
||||||
|
rowHeaders: ['rowNum'],
|
||||||
|
columns: gridColumns,
|
||||||
|
//FIXME : 페이징 미사용시
|
||||||
|
//페이지처리 hide
|
||||||
|
pagination: false,
|
||||||
|
pageOptions: {
|
||||||
|
useClient: true,
|
||||||
|
perPage: 1000
|
||||||
|
},
|
||||||
|
columnOptions: {
|
||||||
|
frozenCount: 1
|
||||||
|
},
|
||||||
|
bodyHeight: 400
|
||||||
|
};
|
||||||
|
|
||||||
|
const gridDatasource = { //DataSource
|
||||||
|
initialRequest: false,
|
||||||
|
api: {
|
||||||
|
readData: {
|
||||||
|
url: fimsApiUrl.FIND_RCV_PATH_FILES
|
||||||
|
,serializer: (params) => {
|
||||||
|
if($('#regltSeCode').val() === '07') {
|
||||||
|
return getPageParam({dirPath: $('#busOnlyDirPath').val()}, params);
|
||||||
|
}else if($('#regltSeCode').val() === '09') {
|
||||||
|
return getPageParam({dirPath: $('#ctznDirPath').val()}, params);
|
||||||
|
}
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
GRID = TuiGrid.of(gridOptions, gridDatasource, (ev) => {
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* initialize
|
||||||
|
**************************************************************************/
|
||||||
|
$(document).ready(function(){
|
||||||
|
initGrid();
|
||||||
|
});
|
||||||
|
</script>
|
@ -0,0 +1,667 @@
|
|||||||
|
<%--
|
||||||
|
================================================================================
|
||||||
|
File : /fims/biz/cmm/cmmCrackdownMgtPopup.jsp
|
||||||
|
Name : 단속 처리 메인 팝업 - 단속관리>단속현황관리
|
||||||
|
Auth : lim.jong.uk
|
||||||
|
Date : 2022-01-20
|
||||||
|
Desc : 단속자료 처리를 위한 메인 팝업
|
||||||
|
================================================================================
|
||||||
|
Date Author Description
|
||||||
|
================================================================================
|
||||||
|
================================================================================
|
||||||
|
--%>
|
||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
||||||
|
<%@ include file="/WEB-INF/jsp/framework/taglibs.jsp"%>
|
||||||
|
|
||||||
|
<c:set var="isUpdate" value="${!empty regltDTO.regltId}"/>
|
||||||
|
|
||||||
|
<%--2022.10.05 박소영 웹폰트 링크 추가--%>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<form id="frmSearch" name="frmSearch">
|
||||||
|
<input type="hidden" id="payerId" name="payerId" value="<c:out value="${regltDTO.payerId }"/>">
|
||||||
|
|
||||||
|
<div class="conttitle">
|
||||||
|
<img src="${ctx }/resources/biz/content/images/common/main/titleLogo_01.png"/>
|
||||||
|
<p class="title">개별총정보</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div id="popupTabs">
|
||||||
|
<ul>
|
||||||
|
<li><a href="#tabs_0" id="0">위반정보<span id="t0"></span></a></li>
|
||||||
|
<li><a href="#tabs_1" id="1">의견진술<span id="t1"></span></a></li>
|
||||||
|
<li><a href="#tabs_2" id="2">세부내역<span id="t2"></span></a></li>
|
||||||
|
<li><a href="#tabs_3" id="3">민원내역<span id="t3"></span></a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div id="tabs_0">
|
||||||
|
<div class="w_fix01 gridGroup">
|
||||||
|
<p class="title deco_01">위반정보</p>
|
||||||
|
<table class="basics_F mTB_01">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 5%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 4%;"/>
|
||||||
|
<col style="width: 13%;"/>
|
||||||
|
<col style="width: 4%;"/>
|
||||||
|
<col style="width: 13%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td colspan="6"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>등록구분</td>
|
||||||
|
<td><input type="text" id="regltId" name="regltId" value="<c:out value="${regltDTO.regltId }"/>">
|
||||||
|
</td>
|
||||||
|
<td>자료출처</td>
|
||||||
|
<td><input type="text" name="" value=""></td>
|
||||||
|
<td colspan="0"><label><input type="checkbox" value="의견진술">의견진술</label></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>단속일</td>
|
||||||
|
<td>
|
||||||
|
<fmt:parseDate value="${regltDTO.regltDe}" var="regltDe" pattern="yyyyMMdd"/>
|
||||||
|
<input type="text" name="regltDe" value='<fmt:formatDate value="${regltDe}" pattern="yyyy-MM-dd"/>' readonly>
|
||||||
|
</td>
|
||||||
|
<td>차량번호</td>
|
||||||
|
<td colspan="2"><input type="text" id="vhcleNo" name="vhcleNo" value="${regltDTO.vhcleNo }"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>단속구분</td>
|
||||||
|
<td>
|
||||||
|
<code:select id="regltSeCode" name="regltSeCode" codeId="FIM002" defaultSelect="${regltDTO.regltSeCode}" title="단속구분코드" cls="selectBoxTotal" alt="단속구분코드" />
|
||||||
|
</td>
|
||||||
|
<td>위반내역</td>
|
||||||
|
<td colspan="2">
|
||||||
|
<code:select id="violtDtlsCode" name="violtDtlsCode" codeId="FIM004" defaultSelect="${regltDTO.violtDtlsCode}" title="위반내역코드" cls="selectBoxTotal" alt="위반내역코드"/>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>단속장소</td>
|
||||||
|
<td colspan="4"><input type="text" id="regltPlace" name="regltPlace" value="${regltDTO.regltPlace}"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>등록일시</td>
|
||||||
|
<td>
|
||||||
|
<fmt:parseDate value="${regltDTO.registDt}" var="registDt" pattern="yyyyMMddHHmmss"/>
|
||||||
|
<input type="text" name="registDt" value='<fmt:formatDate value="${registDt}" pattern="yyyy-MM-dd HH:mm:ss"/>' readonly>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<table class="basics_F mTB_01">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 5%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 4%;"/>
|
||||||
|
<col style="width: 13%;"/>
|
||||||
|
<col style="width: 3%;"/>
|
||||||
|
<col style="width: 15%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td colspan="6"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>위반횟수</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" id="violtCo" name="violtCo" value='<fmt:formatNumber type="number" value="${regltDTO.violtCo}" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
<td>시군구</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value="<%--${regltDTO.signgu_code}--%>">
|
||||||
|
</td>
|
||||||
|
<td>법정동</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value="">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>사전통지금액</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="redutionAftAmount" value='<fmt:formatNumber type="number" value="${regltDTO.redutionAftAmount}" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
<td>부과금액</td>
|
||||||
|
<td colspan="3">
|
||||||
|
<input type="text" name="" value='<fmt:formatNumber type="number" value="1111111" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>감액금액</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="redutionAmount" value='<fmt:formatNumber type="number" value="${regltDTO.redutionAmount}" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
<td>총수납액</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="rcivAmount" value='<fmt:formatNumber type="number" value="${regltDTO.rcivAmount}" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
<td>잔액</td>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value='<fmt:formatNumber type="number" value="22222222222" pattern="#,###"/>' style="text-align: right">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>특이사항</td>
|
||||||
|
<td colspan="4">
|
||||||
|
<input type="text" id="spcmntMatter" name="spcmntMatter" value="${regltDTO.spcmntMatter}">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>처리상태</td>
|
||||||
|
<td colspan="4">
|
||||||
|
<code:select id="regltProcessSttusCode" name="regltProcessSttusCode" codeId="FIM010" defaultSelect="${regltDTO.regltProcessSttusCode}" title="위반내역코드" cls="selectBoxTotal" alt="위반내역코드"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<%--<p class="title deco_01 mT_02">소유주 정보</p>
|
||||||
|
<table class="basics_F mTB_01 mT_02">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 5%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 4%;"/>
|
||||||
|
<col style="width: 13%;"/>
|
||||||
|
<col style="width: 3%;"/>
|
||||||
|
<col style="width: 15%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td>소유주</td>
|
||||||
|
<td><input type="text" id="payerNm" name="payerNm" value="${regltDTO.payerNm}"></td>
|
||||||
|
<td>aaa</td>
|
||||||
|
<td><input type="text" id="" name="" value=""></td>
|
||||||
|
<td>등록구분</td>
|
||||||
|
<td><input type="text" id="" name="" value=""></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>주민번호</td>
|
||||||
|
<td><input type="text" id=payerNo"" name="payerNo" value="${regltDTO.payerNo}"></td>
|
||||||
|
<td>aaaa</td>
|
||||||
|
<td><input type="text" id="" name="" value=""></td>
|
||||||
|
<td>우편번호</td>
|
||||||
|
<td><input type="text" id="zip" name="zip" value="${regltDTO.zip}"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>주소</td>
|
||||||
|
<td colspan="4"><input type="text" id="adres" name="adres" value="${regltDTO.adres}"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>상세주소</td>
|
||||||
|
<td colspan="4"><input type="text" id="detailAdres" name="detailAdres" value="${regltDTO.detailAdres}"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>차대번호</td>
|
||||||
|
<td colspan="3"><input type="text" id="" name="" value=""></td>
|
||||||
|
<td>도로코드</td>
|
||||||
|
<td><input type="text" id="" name="" value=""></td>
|
||||||
|
</tr>
|
||||||
|
</table>--%>
|
||||||
|
</div>
|
||||||
|
<div class="topBtnArea-a" style="/*width: 900px;*/ min-width: 420px; width:75%;">
|
||||||
|
<ul class="btnList" <%--style="margin-top: -24px;"--%>>
|
||||||
|
<li>
|
||||||
|
<%@include file="/WEB-INF/jsp/framework/biz-popup-btn.jsp" %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="tabs_1" style="display: flex;">
|
||||||
|
<div class="w_fix02 gridGroup mR_01">
|
||||||
|
<p class="title deco_01">진술내역</p>
|
||||||
|
<table class="basics_F mTB_01">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 10%;"/>
|
||||||
|
<col style="width: 0%;"/>
|
||||||
|
<col style="width: 0%;"/>
|
||||||
|
<col style="width: 13%;"/>
|
||||||
|
<col style="width: 10%;"/>
|
||||||
|
<col style="width: 27%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td colspan="6"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>등록구분</td>
|
||||||
|
<td colspan="3"><input type="text"></td>
|
||||||
|
<td>진술일</td>
|
||||||
|
<td><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>성명</td>
|
||||||
|
<td colspan="3"><input type="text">
|
||||||
|
</td>
|
||||||
|
<td>주민등록번호</td>
|
||||||
|
<td><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>주소</td>
|
||||||
|
<td colspan="5"><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>번지</td>
|
||||||
|
<td colspan="5"><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>우편번호</td>
|
||||||
|
<td colspan="3"><input type="text"></td>
|
||||||
|
<td>연락처</td>
|
||||||
|
<td><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>차주와의 관계</td>
|
||||||
|
<td colspan="3"><input type="text"></td>
|
||||||
|
<td>이메일 주소</td>
|
||||||
|
<td><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>회신방법</td>
|
||||||
|
<td colspan="3"><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>진술요지</td>
|
||||||
|
<td colspan="6"><input type="text" style=" width:88%;"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="position: absolute;">진술 내용</td>
|
||||||
|
<td colspan="6"><textarea cols="0" rows="15"
|
||||||
|
style="overflow-y: scroll; width:90%;"></textarea></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="w_fix02 gridGroup">
|
||||||
|
<p class="title deco_01">판정</p>
|
||||||
|
<table class="basics_F mTB_01">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 10%;"/>
|
||||||
|
<col style="width: 20%;"/>
|
||||||
|
<col style="width: 10%;"/>
|
||||||
|
<col style="width: 20%;"/>
|
||||||
|
</colgroup>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td colspan="4"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>처리일시</td>
|
||||||
|
<td colspan="3"><input type="text"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>처리결과</td>
|
||||||
|
<td colspan="3"><input type="text">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td style="position: absolute;">담당자 의견</td>
|
||||||
|
<td colspan="4"><textarea cols="50" rows="15"
|
||||||
|
style="overflow-y: scroll; width:90%;"></textarea></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="tabs_2">
|
||||||
|
<div class="w_fix05">
|
||||||
|
<%-- <div class="w_fix03 gridGroup">
|
||||||
|
<div style="width: 100%; border:0px solid black">
|
||||||
|
<p class="title deco_01">처리상태 변동이력</p>
|
||||||
|
<div id="grid_t0"></div>
|
||||||
|
<%–삭제조심–%>
|
||||||
|
</div>
|
||||||
|
</div>--%>
|
||||||
|
<div class="w_fix04 gridGroup">
|
||||||
|
<p class="title deco_01">감경처리</p>
|
||||||
|
<table class="basics_F mTB_02">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
<col style="width: 8%;"/>
|
||||||
|
<col style="width: 11%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td>처리일</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value="">
|
||||||
|
</td>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>감경사유</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value="">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>감경금액</td>
|
||||||
|
<td colspan="4"><input type="text" id="redutionAmount" name="redutionAmount" value="${regltDTO.redutionAmount}"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>처리자</td>
|
||||||
|
<td colspan="4"><input type="text" name="" value="">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>특이사항</td>
|
||||||
|
<td colspan="4"><input type="textarea" name="" value=""></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="w_fix04 gridGroup">
|
||||||
|
<p class="title deco_01">서손처리</p>
|
||||||
|
<table class="basics_F mTB_02">
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
<col style="width: 8%;"/>
|
||||||
|
<col style="width: 11%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<td>처리일</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value="">
|
||||||
|
</td>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>감경사유</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value="">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>감경금액</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value=""></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>처리자</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value="">
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>특이사항</td>
|
||||||
|
<td colspan="4"><input type="text" id="" name="" value=""></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<%--box_01--%>
|
||||||
|
<div class="w_fix06 gridGroup">
|
||||||
|
<p class="title deco_02">처리상태 변동이력</p>
|
||||||
|
<div style="display: flex; width: 100%; border:0px solid chocolate; margin-bottom: 5px;">
|
||||||
|
<div id="grid_t0" style="width:100%;"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="w_fix06 gridGroup">
|
||||||
|
<p class="title deco_02">주소 변동이력</p>
|
||||||
|
<div style="display: flex; width: 100%; border:0px solid chocolate; margin-bottom: 5px;">
|
||||||
|
<div id="grid_d1" style="width:100%;"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="w_fix06 gridGroup" style="margin-top:17px;">
|
||||||
|
<p class="title deco_02">발송 이력</p>
|
||||||
|
<div style="display: flex; width: 100%; height:150px; border:0px solid black; margin-bottom: 20px;">
|
||||||
|
<div id="grid_d2" style="width:100%;"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="topBtnArea-a" style="/*width: 990px;*/ width:75%; min-width: 430px;">
|
||||||
|
<ul class="btnList">
|
||||||
|
<li>
|
||||||
|
<%@include file="/WEB-INF/jsp/framework/biz-popup-btn.jsp" %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div id="tabs_3">
|
||||||
|
<div class="w_fix05-a gridGroup">
|
||||||
|
<div style="width: 100%; border:0px solid black">
|
||||||
|
<p class="title deco_01">민원내역</p>
|
||||||
|
<div id="grid_m1"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="box mT_02">
|
||||||
|
<div class="w_fix06 gridGroup">
|
||||||
|
<p class="title deco_01">민원내용</p>
|
||||||
|
<div style="height: 200px; border:1px solid #a1a1a1; margin:11px; border-radius: 4px;">
|
||||||
|
<%--<div id="grid"></div>--%>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div><%--box--%>
|
||||||
|
<div class="topBtnArea-a" style="min-width: 440px; width:75%;">
|
||||||
|
<ul class="btnList" style="padding-left:10px;">
|
||||||
|
<li>
|
||||||
|
<%@include file="/WEB-INF/jsp/framework/biz-popup-btn.jsp" %>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div><!--popupTabs -->
|
||||||
|
</div><!--row -->
|
||||||
|
|
||||||
|
</form>
|
||||||
|
<script type="text/javaScript" language="javascript" defer="defer">
|
||||||
|
|
||||||
|
//전역변수선언
|
||||||
|
let orgData;
|
||||||
|
const ARR_INSTANCE = [null,null,null];
|
||||||
|
let CUR_TAB_SEQ = 0;
|
||||||
|
var callbackSearch = () => fnBiz.search();
|
||||||
|
|
||||||
|
|
||||||
|
/* *******************************
|
||||||
|
* Biz function
|
||||||
|
******************************* */
|
||||||
|
const fnBiz = {
|
||||||
|
add: () => {
|
||||||
|
if (!fnBiz.validate()) return;
|
||||||
|
|
||||||
|
cmmBizAjax('add', {
|
||||||
|
url: '<c:url value="/cmm/fimsPopup/add.do"/>'
|
||||||
|
, data: $("#frmSearch").serialize()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
,modify: () => {
|
||||||
|
/*if (!fnBiz.validate()) return;*/
|
||||||
|
|
||||||
|
cmmBizAjax('modify', {
|
||||||
|
url: '<c:url value="/cmm/fimsPopup/update.do"/>'
|
||||||
|
,data: $("#frmSearch").serialize()
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,remove: () => {
|
||||||
|
$("input[name=useAt]").val('N');
|
||||||
|
cmmBizAjax('remove', {
|
||||||
|
url: '<c:url value="/cmm/fimsPopup/remove.do"/>'
|
||||||
|
,data: $("#frmSearch").serialize()
|
||||||
|
});
|
||||||
|
}
|
||||||
|
,validate: () => {
|
||||||
|
if(orgData === $('form').serialize()){
|
||||||
|
alert('변경된 내용이 없습니다.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
/*if(!validateTemplateInf(document.getElementById("templateInf"))) return false;*/
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
,preview: () => {
|
||||||
|
|
||||||
|
if ($("#tmplatSeCode").val() === 'TMPT01') {
|
||||||
|
const url = "<c:url value='/framework/biz/mng/bbs/mngBoardTmplPreviewPopup.do'/>";
|
||||||
|
CmmPopup.open(url, {tmplateCours: $("#tmplatCours").val()}, {width: 1024, height: 500}, "템플릿 미리보기");
|
||||||
|
} else {
|
||||||
|
alert('템플릿경로 지정 후 선택해 주세요.');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* event
|
||||||
|
**************************************************************************/
|
||||||
|
$(() => {
|
||||||
|
$('#btnRegist').on('click', () => {
|
||||||
|
fnBiz.add();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnModify').on('click', () => {
|
||||||
|
fnBiz.modify();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnPreview').on('click', () => {
|
||||||
|
fnBiz.preview();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnRemove').on('click', () => {
|
||||||
|
fnBiz.remove();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ******************************
|
||||||
|
* Grid
|
||||||
|
****************************** */
|
||||||
|
const initGrid = () => {
|
||||||
|
const tab0Columns = [ //Grid 컬럼 정보(명칭,매핑 field, 기타옵션 등)
|
||||||
|
{
|
||||||
|
header: '발송결과',
|
||||||
|
name: 'sndng_result_code',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center',
|
||||||
|
filter: {
|
||||||
|
type: 'text',
|
||||||
|
showClearBtn: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '오류내용',
|
||||||
|
name: 'error_cn',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '미납자',
|
||||||
|
name: 'om_name',
|
||||||
|
minWidth: 120,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '주민등록번호',
|
||||||
|
name: 'ihidnum',
|
||||||
|
width: 120,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '차량번호',
|
||||||
|
name: 'mm_carno',
|
||||||
|
minWidth: 120,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '요청일시',
|
||||||
|
name: 'requst_dt',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '조회일시',
|
||||||
|
name: 'inqire_dt',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '열람일시',
|
||||||
|
name: 'readng_dt',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
header: '등록일시',
|
||||||
|
name: 'regist_dt',
|
||||||
|
width: 150,
|
||||||
|
//editor: 'text',
|
||||||
|
sortable: true,
|
||||||
|
align: 'center'
|
||||||
|
}
|
||||||
|
];
|
||||||
|
//DataSource
|
||||||
|
let tab0Datasource = {
|
||||||
|
//initialRequest: false, // 화면 load시 조회 안함 - default
|
||||||
|
api: {
|
||||||
|
readData: {
|
||||||
|
url: '<c:url value="/adm/send/rqst/mng/find.do"/>'
|
||||||
|
, serializer: (params) => fnAddPageInfo(document.frmSearch, params)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const tab0Options = {
|
||||||
|
el: 'grid_t0',
|
||||||
|
minBodyHeight: 100,
|
||||||
|
bodyHeight: 100, //[선택]Grid 높이 (number(단위: px)|'auto'|'fitToParent')
|
||||||
|
rowHeaders: ['rowNum'],
|
||||||
|
pageOptions: {
|
||||||
|
perPage: 100,
|
||||||
|
type: 'scroll'
|
||||||
|
},
|
||||||
|
columns: tab0Columns,
|
||||||
|
columnOptions: {
|
||||||
|
frozenCount: 0 //고정컬럼 갯수
|
||||||
|
, minWidth: 80 //최소 사이즈
|
||||||
|
},
|
||||||
|
};
|
||||||
|
const tab1Options = $.extend(true, {}, tab0Options, {
|
||||||
|
el: 'grid_d1',
|
||||||
|
minBodyHeight: 100,
|
||||||
|
bodyHeight: 100,
|
||||||
|
});
|
||||||
|
const tab2Options = $.extend(true, {}, tab0Options, {
|
||||||
|
el: 'grid_d2',
|
||||||
|
minBodyHeight: 100,
|
||||||
|
bodyHeight: 100,
|
||||||
|
});
|
||||||
|
const tab3Options = $.extend(true, {}, tab0Options, {
|
||||||
|
el: 'grid_m1',
|
||||||
|
minBodyHeight: 250,
|
||||||
|
bodyHeight: 250,
|
||||||
|
});
|
||||||
|
|
||||||
|
ARR_INSTANCE[0] = TuiGrid.of(tab0Options, tab0Datasource, (res) => {
|
||||||
|
ARR_TOTCNT[0] = res.data.pagination.totalCount;
|
||||||
|
});
|
||||||
|
ARR_INSTANCE[1] = TuiGrid.of(tab1Options, tab0Datasource, (res) => {
|
||||||
|
ARR_TOTCNT[1] = res.data.pagination.totalCount;
|
||||||
|
});
|
||||||
|
ARR_INSTANCE[2] = TuiGrid.of(tab2Options, tab0Datasource, (res) => {
|
||||||
|
ARR_TOTCNT[2] = res.data.pagination.totalCount;
|
||||||
|
});
|
||||||
|
ARR_INSTANCE[3] = TuiGrid.of(tab3Options, tab0Datasource, (res) => {
|
||||||
|
ARR_TOTCNT[3] = res.data.pagination.totalCount;
|
||||||
|
});
|
||||||
|
//tab 클릭 이벤트
|
||||||
|
/*$("#popupTabs").on("click", "li", function(){
|
||||||
|
var tab = parseInt($("#popupTabs .ui-tabs-active a").attr("id"));
|
||||||
|
var tabbb = $('#popupTabs').children('div').not($('#tabs_'+tab));
|
||||||
|
$('#tabs_'+tab).show(500);
|
||||||
|
$('#sch_tab_id').val(tab);
|
||||||
|
//ARR_INSTANCE[tab].refreshLayout();
|
||||||
|
});*/
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
initGrid();
|
||||||
|
$("#popupTabs").tabs({active : 0});
|
||||||
|
orgData = $('form').serialize();
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
Loading…
Reference in New Issue