feat: 단속현황 관리 진행
parent
3434c54471
commit
d11658f949
@ -0,0 +1,452 @@
|
|||||||
|
<%--
|
||||||
|
================================================================================
|
||||||
|
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"%>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
#regltProcessSttusCode {
|
||||||
|
width: 29%;
|
||||||
|
color: red;
|
||||||
|
background-color: lightgreen;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.act_bg_color {
|
||||||
|
background-color: lightgreen;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<c:set var="isUpdate" value="${!empty infoDTO.regltId}"/>
|
||||||
|
|
||||||
|
<c:set var="bizName" value="주민 신고"/>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="popup" style="min-width: 100px;">
|
||||||
|
<div class="popup_inner" style="max-width: 900px;">
|
||||||
|
<p class="pop_title" id="txtTitle">
|
||||||
|
${txtTitle}
|
||||||
|
</p>
|
||||||
|
<%-- <div class="listBtn">--%>
|
||||||
|
<%-- <button type="button" id="prev" name="prev">prev</button>--%>
|
||||||
|
<%-- <div>--%>
|
||||||
|
<%-- <span>--%>
|
||||||
|
<%-- <div id="totCnt" style="padding: 0 10px;"><span></span></div>--%>
|
||||||
|
<%-- </span>--%>
|
||||||
|
<%-- </div>--%>
|
||||||
|
<%-- <button type="button" id="next" name="next">next</button>--%>
|
||||||
|
<%-- </div>--%>
|
||||||
|
<%@include file="/WEB-INF/jsp/framework/biz-popup-tab-btn.jsp" %>
|
||||||
|
<form id="frmReglt">
|
||||||
|
<table class="tbl03">
|
||||||
|
<caption>위반정보 상세</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 15%;"/>
|
||||||
|
<col style="width: 35%;"/>
|
||||||
|
<col style="width: 15%;"/>
|
||||||
|
<col style="width: 35%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th>등록구분</th>
|
||||||
|
<td>
|
||||||
|
<code:select id="registSeCode" name="registSeCode" codeId="FIM026" defaultSelect="${infoDTO.registSeCode}" title="단속자료등록구분" cls="selectBoxTotal" alt="단속자료등록구분" disabled="true"/>
|
||||||
|
</td>
|
||||||
|
<th>자료출처</th>
|
||||||
|
<td>
|
||||||
|
<code:select id="regltSeCode" name="regltSeCode" codeId="FIM002" defaultSelect="${infoDTO.regltSeCode}" title="단속구분코드" cls="selectBoxTotal" alt="단속구분코드" disabled="true"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>위반일시</th>
|
||||||
|
<td>
|
||||||
|
<fmt:parseDate value="${infoDTO.regltDe}" var="regltDe" pattern="yyyyMMdd"/>
|
||||||
|
<input type="text" data-fmt-type="day" name="regltDe" style="width: 50%" value='<fmt:formatDate value="${regltDe}" pattern="yyyy-MM-dd"/>' readonly/>
|
||||||
|
<fmt:parseDate value="${infoDTO.regltBeginTime}" var="regltBeginTime" pattern="HHmmss"/>
|
||||||
|
<input type="text" data-fmt-type="time" name="regltBeginTime" style="width: 45%" value='<fmt:formatDate value="${regltBeginTime}" pattern="HH:mm:ss"/>' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>차량번호</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" id="vhcleNo" name="vhcleNo" value="${infoDTO.vhcleNo}" class="act_bg_color"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="cctv1">
|
||||||
|
<th>위반장소</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="regltPlace" value="${infoDTO.regltPlace }"/>
|
||||||
|
</td>
|
||||||
|
<th>단속자</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value='' readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr id="cctv2">
|
||||||
|
<th>발행번호</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="stickrNo" value='${infoDTO.stickrNo}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>견인지시</th>
|
||||||
|
<td>
|
||||||
|
<input type="checkbox" name="towngAtCode" disabled/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="ctzn1">
|
||||||
|
<th>신고자</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="cvplApplcntNm" value="${ctznDTO.cvplApplcntNm}"/>
|
||||||
|
</td>
|
||||||
|
<th>연락처</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="cvplApplcntMoblphonNo" value='${ctznDTO.cvplApplcntMoblphonNo}' readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr id="ctzn2">
|
||||||
|
<th>위반장소</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="regltPlace" value="${ctznDTO.regltPlace }"/>
|
||||||
|
</td>
|
||||||
|
<th>공개여부</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value='' readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr id="ctzn3">
|
||||||
|
<th>신고내용</th>
|
||||||
|
<td colspan="3">
|
||||||
|
<textarea type="text" name="cvplReqstCn" col="180" rows="3"><c:out value="${ctznDTO.cvplReqstCn}"/></textarea>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr id="ctzn4">
|
||||||
|
<th>접수번호</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="cvplRceptNo" value='${ctznDTO.cvplRceptNo}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>접수일</th>
|
||||||
|
<td>
|
||||||
|
<fmt:parseDate value="${ctznDTO.cvplRceptDt}" var="cvplRceptDt" pattern="yyyyMMddHHmmss"/>
|
||||||
|
<input type="text" data-fmt-type="dt" name="cvplRceptDt" value='<fmt:formatDate value="${cvplRceptDt}" pattern="yyyy-MM-dd HH:mm:ss"/>' readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table class="tbl03">
|
||||||
|
<caption>위반정보 상세2</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 22%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th>차종</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="vhctyAsortCode" value='${infoDTO.vhctyAsortCode}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>시군구</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="violtLegaldongCode" value="${infoDTO.violtLegaldongCode}" readonly/>
|
||||||
|
</td>
|
||||||
|
<th>법정동</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="violtLegaldongCode" value="${infoDTO.violtLegaldongCode}" readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>사전통지금액</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" data-fmt-type="number" name="" value='<fmt:formatNumber type="number" value="${infoDTO.redutionAmount}" pattern="#,###"/>'/>
|
||||||
|
</td>
|
||||||
|
<th>부과금액</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" data-fmt-type="number" name="" value='<fmt:formatNumber type="number" value="${infoDTO.rcivAmount}" pattern="#,###"/>'/>
|
||||||
|
</td>
|
||||||
|
<td colspan="2"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>감경금액</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" data-fmt-type="number" name="redutionAmount" value='<fmt:formatNumber type="number" value="${infoDTO.redutionAmount}" pattern="#,###"/>'/>
|
||||||
|
</td>
|
||||||
|
<th>총수납액</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" data-fmt-type="number" name="rcivAmount" value='<fmt:formatNumber type="number" value="${infoDTO.rcivAmount}" pattern="#,###"/>'/>
|
||||||
|
</td>
|
||||||
|
<th>잔액</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" data-fmt-type="number" name="redutionAftAmount" value='<fmt:formatNumber type="number" value="${infoDTO.redutionAftAmount}" pattern="#,###"/>' class="act_bg_color"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>특기사항</th>
|
||||||
|
<td colspan="2">
|
||||||
|
<input type="text" name="spcmntMatter" value="${infoDTO.spcmntMatter}" readonly/>
|
||||||
|
</td>
|
||||||
|
<th>처리상태</th>
|
||||||
|
<td colspan="2">
|
||||||
|
<fmt:parseDate value="${infoDTO.lastProcessDt}" var="lastProcessDt" pattern="yyyyMMddHHmmss"/>
|
||||||
|
<input type="text" data-fmt-type="dt" name="lastProcessDt" style="width: 69%" value='<fmt:formatDate value="${lastProcessDt}" pattern="yyyy-MM-dd HH:mm:ss"/>' readonly/>
|
||||||
|
<code:select id="regltProcessSttusCode" name="regltProcessSttusCode" codeId="FIM010" defaultSelect="${infoDTO.regltProcessSttusCode}" title="단속처리상태" cls="selectBoxTotal" alt="단속처리상태" disabled="true"/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>특별단속구역</th>
|
||||||
|
<td colspan="2">
|
||||||
|
<code:select id="regltSpeclZoneSeCode" name="regltSpeclZoneSeCode" codeId="FIM010" defaultSelect="${infoDTO.regltSpeclZoneSeCode}" title="특별단속구역" cls="selectBoxTotal" alt="단속처리상태" disabled="true"/>
|
||||||
|
</td>
|
||||||
|
<th>위반내용</th>
|
||||||
|
<td colspan="2">
|
||||||
|
<input type="text" name="violtDtlsEtcCn" value="${infoDTO.violtDtlsEtcCn}" readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</form>
|
||||||
|
<form id="frmPayer">
|
||||||
|
<input type="hidden" id="payerId" name="payerId" />
|
||||||
|
<table class="tbl03">
|
||||||
|
<caption>소유주 정보</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 22%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
<col style="width: 12%;"/>
|
||||||
|
<col style="width: 21%;"/>
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th>소유주</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="payerNm" value='${payerDTO.payerNm}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>주민번호</th>
|
||||||
|
<td colspan="3">
|
||||||
|
<input type="text" name="payerNo" value="${payerDTO.payerNo}" readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>우편번호</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="zip" value='${payerDTO.zip}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>주소</th>
|
||||||
|
<td colspan="3">
|
||||||
|
<input type="text" name="adres" style="width: 70%" value='${payerDTO.adres}' readonly/>
|
||||||
|
<input type="text" name="detailAdres" style="width: 29%" value='${payerDTO.detailAdres}' readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th>차대번호</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="" value='' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>도로코드</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="rnCode" value='${payerDTO.rnCode}' readonly/>
|
||||||
|
</td>
|
||||||
|
<th>등록구분</th>
|
||||||
|
<td>
|
||||||
|
<input type="text" name="payerRegistSeCode" value="${payerDTO.payerRegistSeCode}" readonly/>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</form>
|
||||||
|
<div class="w_fix01 gridGroup" style="width:0px; min-width:300px!important;">
|
||||||
|
<p class="title deco_01">위반사진</p>
|
||||||
|
<div id="imgList"></div>
|
||||||
|
<div>
|
||||||
|
<img id="uploadImage"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/resources/framework/js/cmm/cmmDownloadImg.js"></script>
|
||||||
|
<script type="text/javaScript">
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* Global Variable
|
||||||
|
**************************************************************************/
|
||||||
|
var imageEditorPopup = (flag, params) => fnPopupBiz.pagePopup(flag, params);
|
||||||
|
var callbackReloadImage = () => fnPopupBiz.downloadImg();
|
||||||
|
let orgData;
|
||||||
|
|
||||||
|
/* *******************************
|
||||||
|
* Biz function
|
||||||
|
******************************* */
|
||||||
|
const fnPopupBiz = {
|
||||||
|
search: (params) => {
|
||||||
|
cmmAjax({
|
||||||
|
showSuccessMsg: false
|
||||||
|
,url: fimsApiUrl.FIND_CRACKDOWN_INFO
|
||||||
|
,data: params
|
||||||
|
,success: (res) => {
|
||||||
|
$('#txtTitle').text(
|
||||||
|
ComboCodeData.regltSeCode.filter(d => d.value === res.infoDTO.regltSeCode)[0].text
|
||||||
|
);
|
||||||
|
cmmImgDownload('#imgList', res.attchFiles, fnPopupBiz.pagePopup, true, '60px');
|
||||||
|
|
||||||
|
window.opener.pageNav.reloadNav($('#prev'), $('#next'), $('span#totCnt'))
|
||||||
|
fnPopupBiz.resetDisplay(res.ctznDTO?.cvplRceptNo);
|
||||||
|
$('#violtDtlsNm').text(res.ctznDTO?.violtDtlsNm);
|
||||||
|
|
||||||
|
setFormData(document.querySelector('#frmReglt'), {...res.infoDTO, ...res.ctznDTO});
|
||||||
|
setFormData(document.querySelector('#frmPayer'), res.payerDTO);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
,downloadImg: () => {
|
||||||
|
cmmAjax({
|
||||||
|
showSuccessMsg: false
|
||||||
|
,url: fimsApiUrl.FIND_RT_REGLT_ATTCH_FILES
|
||||||
|
,data: downloadImgParam
|
||||||
|
,success: (res) => {
|
||||||
|
cmmImgDownload('#imgList', res.data?.contents, fnPopupBiz.pagePopup, true, '60px');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
,pagePopup: function(flag, params) {
|
||||||
|
let url;
|
||||||
|
let popTitle;
|
||||||
|
let popOption;
|
||||||
|
switch (flag) {
|
||||||
|
//FIXME: 이미지에디터 팝업 width, height는 952, 800으로 fix
|
||||||
|
// paintweb config의 imageWidth, imageHeight, viewportWidth, viewPortHeight 와 같이 연관
|
||||||
|
case "imageEditor":
|
||||||
|
<%--url = '<c:url value="/framework/biz/cmm/file/cmmPaintwebImageEditorPopup.do"/>'; --%>
|
||||||
|
url = frwkApiUrl.POPUP_PAINTWEB_IMG_EDITOR;
|
||||||
|
popOption = {width: 952, height: 800, resizable:false,scrollbars:'no'};
|
||||||
|
popTitle = "이미지 에디터";
|
||||||
|
break;
|
||||||
|
case "imageView":
|
||||||
|
<%--url = '<c:url value="/framework/biz/cmm/file/cmmImageViewPopup.do"/>';--%>
|
||||||
|
url = frwkApiUrl.POPUP_IMG_VIEW;
|
||||||
|
popOption = {width: 950, height: 750, resizable:false,scrollbars:'no'};
|
||||||
|
popTitle = "이미지 보기";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
window.opener.popup = CmmPopup.open(url, params, popOption, popTitle);
|
||||||
|
//var w = window.open("/imageEditor.do", "", "width=800,height=650,top=0px,left=200px,status=,resizable=false,scrollbars=no");
|
||||||
|
}
|
||||||
|
,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;
|
||||||
|
}
|
||||||
|
,resetDisplay: (cvplRceptNo) => {
|
||||||
|
if(cvplRceptNo){
|
||||||
|
$('tr[id*=cctv]').hide();
|
||||||
|
$('tr[id*=ctzn]').show();
|
||||||
|
|
||||||
|
} else{
|
||||||
|
$('tr[id*=cctv]').show();
|
||||||
|
$('tr[id*=ctzn]').hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* event
|
||||||
|
**************************************************************************/
|
||||||
|
$(() => {
|
||||||
|
$(window).on("unload", function (e) {
|
||||||
|
window.opener?.unblockUI();
|
||||||
|
window.opener?.callbackSearch();
|
||||||
|
return null;
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#btnClose").on('click', () => {
|
||||||
|
window.close()
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnRegist').on('click', () => {
|
||||||
|
fnPopupBiz.add();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnModify').on('click', () => {
|
||||||
|
fnPopupBiz.modify();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnPreview').on('click', () => {
|
||||||
|
fnPopupBiz.preview();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#btnRemove').on('click', () => {
|
||||||
|
fnPopupBiz.remove();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#prev').on('click', () => {
|
||||||
|
window.opener.pageNav.onClickNavBtn('prev', (gridInfo) => {
|
||||||
|
fnPopupBiz.search(gridInfo.curRowData)
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
$('#next').on('click', () => {
|
||||||
|
window.opener.pageNav.onClickNavBtn('next', (gridInfo) => {
|
||||||
|
fnPopupBiz.search(gridInfo.curRowData);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
/**************************************************************************
|
||||||
|
* initialize
|
||||||
|
**************************************************************************/
|
||||||
|
$(document).ready(function(){
|
||||||
|
// orgData = $('form').serialize();
|
||||||
|
|
||||||
|
downloadImgParam = {regltId: '${infoDTO.regltId}', regltSeCode: '${infoDTO.regltSeCode}'};
|
||||||
|
//fnBiz.search(downloadImgParam);
|
||||||
|
fnPopupBiz.downloadImg();
|
||||||
|
fnPopupBiz.resetDisplay('${ctznDTO.cvplRceptNo}');
|
||||||
|
|
||||||
|
window.opener.pageNav.reloadNav($('#prev'), $('#next'), $('span#totCnt'))
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
Loading…
Reference in New Issue