|
|
|
@ -1,8 +1,8 @@
|
|
|
|
|
<%@ 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="pageKorName" scope="request">민원신고 답변 문구 관리</c:set>
|
|
|
|
|
<div class="content-wrapper" id="wrapper--${pageName}" data-doctx="${pageName}">
|
|
|
|
|
<div class="container-xxl flex-grow-1 px-0">
|
|
|
|
|
<div class="content-wrapper" data-doctx="${pageName}">
|
|
|
|
|
<div class="container-xxl flex-grow-1 px-0" name="wrapper">
|
|
|
|
|
<div class="card wrapper-list">
|
|
|
|
|
|
|
|
|
|
<form name="frmSearch">
|
|
|
|
@ -69,7 +69,7 @@
|
|
|
|
|
<span class="area-answerbasic">
|
|
|
|
|
<div class="d-flex flex-row justify-content-center h-100">
|
|
|
|
|
<div class="card p-4 justify-content-center align-items-center w-px-1300">
|
|
|
|
|
<form id="frmEditAnsBasic--${pageName}">
|
|
|
|
|
<form name="frmEditAnsBasic">
|
|
|
|
|
<div class="w-px-900">
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-12">
|
|
|
|
@ -114,8 +114,7 @@
|
|
|
|
|
<div class="dataTables_wrapper dt-bootstrap5 no-footer">
|
|
|
|
|
<!-- 부과건 그리드 -->
|
|
|
|
|
<span class="area-answerbody area-levy">
|
|
|
|
|
<div id="table-responsive-levy--${pageName}"
|
|
|
|
|
class="table-responsive oy-auto h-100"
|
|
|
|
|
<div class="table-responsive oy-auto h-100"
|
|
|
|
|
style="width:470px;">
|
|
|
|
|
<table class="datatables-ajax table table-bordered dataTable no-footer">
|
|
|
|
|
<thead class="sticky-thead">
|
|
|
|
@ -124,8 +123,8 @@
|
|
|
|
|
<th style="min-width: 300px;">위반내용</th>
|
|
|
|
|
</tr>
|
|
|
|
|
</thead>
|
|
|
|
|
<tbody id="vltnTbody--${pageName}"></tbody>
|
|
|
|
|
<template id="vltnRow--${pageName}">
|
|
|
|
|
<tbody name="vltnTbody"></tbody>
|
|
|
|
|
<template name="vltnRow">
|
|
|
|
|
<tr data-key="{VLTN_CASE_ID}">
|
|
|
|
|
<td class="text-center min-w-px-50 mw-px-50">
|
|
|
|
|
<input type="radio" name="levyRadio" value="{VLTN_CASE_ID}"
|
|
|
|
@ -134,7 +133,7 @@
|
|
|
|
|
<td onclick="{onclick}" class="text-center">{VLTN_CASE_NM}</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</template>
|
|
|
|
|
<template id="vltnNotFound--${pageName}">
|
|
|
|
|
<template name="vltnNotFound">
|
|
|
|
|
<tr>
|
|
|
|
|
<td valign="top" colspan="2"
|
|
|
|
|
class="dataTables_empty text-center">정보를 찾지 못했습니다.</td>
|
|
|
|
@ -145,8 +144,7 @@
|
|
|
|
|
</span>
|
|
|
|
|
<!-- 계도건 그리드 -->
|
|
|
|
|
<span class="area-answerbody area-warning">
|
|
|
|
|
<div id="table-responsive-warning--${pageName}"
|
|
|
|
|
class="table-responsive oy-auto h-100"
|
|
|
|
|
<div class="table-responsive oy-auto h-100"
|
|
|
|
|
style="width:470px;">
|
|
|
|
|
<table class="datatables-ajax table table-bordered dataTable no-footer">
|
|
|
|
|
<thead class="sticky-thead">
|
|
|
|
@ -155,8 +153,8 @@
|
|
|
|
|
<th style="min-width: 300px;">계도내용</th>
|
|
|
|
|
</tr>
|
|
|
|
|
</thead>
|
|
|
|
|
<tbody id="warningTbody--${pageName}"></tbody>
|
|
|
|
|
<template id="warningRow--${pageName}">
|
|
|
|
|
<tbody name="warningTbody"></tbody>
|
|
|
|
|
<template name="warningRow">
|
|
|
|
|
<tr data-key="{LEVY_EXCL_RSN_CD}">
|
|
|
|
|
<td class="text-center min-w-px-50 mw-px-50">
|
|
|
|
|
<input type="radio" name="warningRadio" value="{LEVY_EXCL_RSN_CD}"
|
|
|
|
@ -165,7 +163,7 @@
|
|
|
|
|
<td onclick="{onclick}" class="text-center">{LEVY_EXCL_RSN_NM}</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</template>
|
|
|
|
|
<template id="warningNotFound--${pageName}">
|
|
|
|
|
<template name="warningNotFound">
|
|
|
|
|
<tr>
|
|
|
|
|
<td valign="top" colspan="2"
|
|
|
|
|
class="dataTables_empty text-center">정보를 찾지 못했습니다.</td>
|
|
|
|
@ -176,8 +174,7 @@
|
|
|
|
|
</span>
|
|
|
|
|
<!-- 미부과처리건 그리드 -->
|
|
|
|
|
<span class="area-answerbody area-nonlevy">
|
|
|
|
|
<div id="table-responsive-nonlevy--${pageName}"
|
|
|
|
|
class="table-responsive oy-auto h-100"
|
|
|
|
|
<div class="table-responsive oy-auto h-100"
|
|
|
|
|
style="width:470px;">
|
|
|
|
|
<table class="datatables-ajax table table-bordered dataTable no-footer">
|
|
|
|
|
<thead class="sticky-thead">
|
|
|
|
@ -187,8 +184,8 @@
|
|
|
|
|
<th style="min-width: 100px;">답변여부</th>
|
|
|
|
|
</tr>
|
|
|
|
|
</thead>
|
|
|
|
|
<tbody id="nonlevyTbody--${pageName}"></tbody>
|
|
|
|
|
<template id="nonlevyRow--${pageName}">
|
|
|
|
|
<tbody name="nonlevyTbody"></tbody>
|
|
|
|
|
<template name="nonlevyRow">
|
|
|
|
|
<tr data-key="{LEVY_EXCL_RSN_CD}">
|
|
|
|
|
<td class="text-center min-w-px-50 mw-px-50">
|
|
|
|
|
<input type="radio" name="nonlevyRadio" value="{LEVY_EXCL_RSN_CD}"
|
|
|
|
@ -198,7 +195,7 @@
|
|
|
|
|
<td onclick="{onclick}" class="text-center">{USE_YN}</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</template>
|
|
|
|
|
<template id="nonlevyNotFound--${pageName}">
|
|
|
|
|
<template name="nonlevyNotFound">
|
|
|
|
|
<tr>
|
|
|
|
|
<td valign="top" colspan="3"
|
|
|
|
|
class="dataTables_empty text-center">정보를 찾지 못했습니다.</td>
|
|
|
|
@ -215,7 +212,7 @@
|
|
|
|
|
<div class="container-md d-flex justify-content-between flex-column">
|
|
|
|
|
<div class="row g-1 h-px-400 oy-auto border-separator-b">
|
|
|
|
|
<div class="col-12">
|
|
|
|
|
<form id="frmEditAnsBody--${pageName}">
|
|
|
|
|
<form name="frmEditAnsBody">
|
|
|
|
|
<input type="hidden" id="ansRsnCd--${pageName}" name="ansRsnCd" />
|
|
|
|
|
<input type="hidden" id="dstrbncYn--${pageName}" name="dstrbncYn" />
|
|
|
|
|
<input type="hidden" id="ansWordsId--${pageName}" name="ansWordsId" />
|
|
|
|
@ -281,23 +278,23 @@
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="content-backdrop fade"></div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<template name="previewDialogTemplate">
|
|
|
|
|
<form name="frmView">
|
|
|
|
|
<div class="card">
|
|
|
|
|
<textarea name="preview" rows="15"
|
|
|
|
|
></textarea>
|
|
|
|
|
</div>
|
|
|
|
|
<div>
|
|
|
|
|
<span class="container-page-btn">
|
|
|
|
|
<span class="container-window-btn-right">
|
|
|
|
|
<button type="button" class="btn btn-primary" name="btnClose" title="닫기">닫기</button>
|
|
|
|
|
<template name="previewDialogTemplate">
|
|
|
|
|
<form name="frmView">
|
|
|
|
|
<div class="card">
|
|
|
|
|
<textarea name="preview" rows="15"
|
|
|
|
|
></textarea>
|
|
|
|
|
</div>
|
|
|
|
|
<div>
|
|
|
|
|
<span class="container-page-btn">
|
|
|
|
|
<span class="container-window-btn-right">
|
|
|
|
|
<button type="button" class="btn btn-primary" name="btnClose" title="닫기">닫기</button>
|
|
|
|
|
</span>
|
|
|
|
|
</span>
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
|
|
|
|
</template>
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
|
|
|
|
</template>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
LoadScript("cvlc05010Script","/resources/js/fims/cvlc/cvlc05010.js?ver=${ver}");
|
|
|
|
@ -343,8 +340,8 @@ $(document).ready(function(){
|
|
|
|
|
$P.renderAnsBodyList(0,'warning');
|
|
|
|
|
$P.renderAnsBodyList(0,'nonlevy');
|
|
|
|
|
|
|
|
|
|
$("#frmEditAnsBasic--${pageName}").find("input, textarea").val("");
|
|
|
|
|
$("#frmEditAnsBody--${pageName}").find("input, textarea").val("");
|
|
|
|
|
$P.$find("frmEditAnsBasic").find("input, textarea").val("");
|
|
|
|
|
$P.$find("frmEditAnsBody").find("input, textarea").val("");
|
|
|
|
|
|
|
|
|
|
$P.searchWordsStng();
|
|
|
|
|
}
|
|
|
|
@ -392,29 +389,29 @@ $(document).ready(function(){
|
|
|
|
|
|
|
|
|
|
$P.renderAnsBodyList = (total, renderDataType) => {
|
|
|
|
|
|
|
|
|
|
var notFoundId = "";
|
|
|
|
|
var foundId = "";
|
|
|
|
|
var tbodyId = "";
|
|
|
|
|
var notFoundName = "";
|
|
|
|
|
var foundName = "";
|
|
|
|
|
var tbodyName = "";
|
|
|
|
|
if(renderDataType == "levy"){
|
|
|
|
|
notFoundId = "vltnNotFound--${pageName}";
|
|
|
|
|
foundId = "vltnRow--${pageName}";
|
|
|
|
|
tbodyId = "vltnTbody--${pageName}";
|
|
|
|
|
notFoundName = "vltnNotFound";
|
|
|
|
|
foundName = "vltnRow";
|
|
|
|
|
tbodyName = "vltnTbody";
|
|
|
|
|
} else if(renderDataType == "warning"){
|
|
|
|
|
notFoundId = "warningNotFound--${pageName}";
|
|
|
|
|
foundId = "warningRow--${pageName}";
|
|
|
|
|
tbodyId = "warningTbody--${pageName}";
|
|
|
|
|
notFoundName = "warningNotFound";
|
|
|
|
|
foundName = "warningRow";
|
|
|
|
|
tbodyName = "warningTbody";
|
|
|
|
|
} else if(renderDataType == "nonlevy"){
|
|
|
|
|
notFoundId = "nonlevyNotFound--${pageName}";
|
|
|
|
|
foundId = "nonlevyRow--${pageName}";
|
|
|
|
|
tbodyId = "nonlevyTbody--${pageName}";
|
|
|
|
|
notFoundName = "nonlevyNotFound";
|
|
|
|
|
foundName = "nonlevyRow";
|
|
|
|
|
tbodyName = "nonlevyTbody";
|
|
|
|
|
} else {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var ansBodyDS = $P.ctrl[renderDataType].dataset;
|
|
|
|
|
var empty = ansBodyDS.empty;
|
|
|
|
|
var notFound = [document.getElementById(notFoundId).innerHTML];
|
|
|
|
|
var found = document.getElementById(foundId).innerHTML;
|
|
|
|
|
var notFound = [$P.find(notFoundName).innerHTML];
|
|
|
|
|
var found = $P.find(foundName).innerHTML;
|
|
|
|
|
|
|
|
|
|
var replacer = () => {};
|
|
|
|
|
if(renderDataType == "levy"){
|
|
|
|
@ -432,24 +429,24 @@ $(document).ready(function(){
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var trs = empty ? notFound : ansBodyDS.inStrings(found, replacer);
|
|
|
|
|
$("#"+tbodyId).html(trs.join());
|
|
|
|
|
$P.$find(tbodyName).html(trs.join());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$P.radioClickAnsBodyList = (dataKey, gridType) => {
|
|
|
|
|
|
|
|
|
|
$P.ctrl[gridType].setCurrent(dataKey);
|
|
|
|
|
|
|
|
|
|
var tbodyId = "";
|
|
|
|
|
var tbodyName = "";
|
|
|
|
|
if(gridType == "levy"){
|
|
|
|
|
tbodyId = "vltnTbody--${pageName}";
|
|
|
|
|
tbodyName = "vltnTbody";
|
|
|
|
|
} else if(gridType == "warning"){
|
|
|
|
|
tbodyId = "warningTbody--${pageName}";
|
|
|
|
|
tbodyName = "warningTbody";
|
|
|
|
|
} else if(gridType == "nonlevy"){
|
|
|
|
|
tbodyId = "nonlevyTbody--${pageName}";
|
|
|
|
|
tbodyName = "nonlevyTbody";
|
|
|
|
|
} else {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
$("#"+tbodyId).setCurrentRow(dataKey);
|
|
|
|
|
$P.$find(tbodyName).setCurrentRow(dataKey);
|
|
|
|
|
|
|
|
|
|
if(gridType == "levy" && $P.currentDisplay == "levyAnsBody"){
|
|
|
|
|
$P.changeAnsBodyText();
|
|
|
|
@ -472,14 +469,14 @@ $(document).ready(function(){
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").prop("checked",true);
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").prop("checked",true);
|
|
|
|
|
|
|
|
|
|
if(gridType == "levy" && $P.currentDisplay == "levyAnsBody"){
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
} else if(gridType == "warning" && $P.currentDisplay == "warningAnsBody"){
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
} else if(gridType == "nonlevy" && $P.currentDisplay == "nonlevyAnsBody"){
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='"+radioName+"'][value='"+dataKey+"']").focus();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$P.radioClickAnsBodyList(dataKey, gridType);
|
|
|
|
@ -577,20 +574,20 @@ $(document).ready(function(){
|
|
|
|
|
//적용
|
|
|
|
|
$P.fnSave = (isBasicWords) => {
|
|
|
|
|
|
|
|
|
|
var formId = "";
|
|
|
|
|
var formName = "";
|
|
|
|
|
var confirmMessage = "";
|
|
|
|
|
|
|
|
|
|
if(isBasicWords){
|
|
|
|
|
confirmMessage = "머리말/꼬리말 내용을 저장하시겠습니까?";
|
|
|
|
|
formId = "frmEditAnsBasic--${pageName}";
|
|
|
|
|
formName = "frmEditAnsBasic";
|
|
|
|
|
} else {
|
|
|
|
|
confirmMessage = "본문내용을 저장하시겠습니까?"
|
|
|
|
|
formId = "frmEditAnsBody--${pageName}";
|
|
|
|
|
formName = "frmEditAnsBody";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(!customValidate($("#"+formId).find("input, select, textarea"))) return;
|
|
|
|
|
var info = (new FimsFormFields("#"+formId)).get();
|
|
|
|
|
if(!customValidate($P.$find(formName).find("input, select, textarea"))) return;
|
|
|
|
|
var info = (new FimsFormFields($P.selector(formName))).get();
|
|
|
|
|
if(isBasicWords){
|
|
|
|
|
info.saveData = "basic";
|
|
|
|
|
} else {
|
|
|
|
@ -620,8 +617,8 @@ $(document).ready(function(){
|
|
|
|
|
//답변대상 제외
|
|
|
|
|
$P.fnRemove = () => {
|
|
|
|
|
|
|
|
|
|
if(!customValidate($("#frmEditAnsBody--${pageName}").find("input, select, textarea"))) return;
|
|
|
|
|
var info = (new FimsFormFields("#frmEditAnsBody--${pageName}")).get();
|
|
|
|
|
if(!customValidate($P.$find("frmEditAnsBody").find("input, select, textarea"))) return;
|
|
|
|
|
var info = (new FimsFormFields($P.selector("frmEditAnsBody"))).get();
|
|
|
|
|
|
|
|
|
|
dialog.alert({
|
|
|
|
|
content : "해당 미부과사유를 답변대상에서 제외하시겠습니까?",
|
|
|
|
@ -675,8 +672,8 @@ $(document).ready(function(){
|
|
|
|
|
//탭 버튼
|
|
|
|
|
$P.$find("btnAnsBasicTab").on('click', (event) => {
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbasic").show();
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbody").hide();
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbasic").show();
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbody").hide();
|
|
|
|
|
|
|
|
|
|
$P.currentDisplay = "ansBasic";
|
|
|
|
|
|
|
|
|
@ -685,8 +682,8 @@ $(document).ready(function(){
|
|
|
|
|
|
|
|
|
|
$P.$find("btnLevyAnsBodyTab").on('click', (event) => {
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbasic").hide();
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbody").each(function(){
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbasic").hide();
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbody").each(function(){
|
|
|
|
|
if($(this).hasClass("area-answerbody-common") || $(this).hasClass("area-levy")){
|
|
|
|
|
$(this).show();
|
|
|
|
|
} else {
|
|
|
|
@ -696,7 +693,7 @@ $(document).ready(function(){
|
|
|
|
|
|
|
|
|
|
$P.currentDisplay = "levyAnsBody";
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='levyRadio']:checked").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='levyRadio']:checked").focus();
|
|
|
|
|
|
|
|
|
|
$P.changeAnsBodyText();
|
|
|
|
|
|
|
|
|
@ -704,8 +701,8 @@ $(document).ready(function(){
|
|
|
|
|
});
|
|
|
|
|
$P.$find("btnWarningAnsBodyTab").on('click', (event) => {
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbasic").hide();
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbody").each(function(){
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbasic").hide();
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbody").each(function(){
|
|
|
|
|
if($(this).hasClass("area-answerbody-common") || $(this).hasClass("area-warning")){
|
|
|
|
|
$(this).show();
|
|
|
|
|
} else {
|
|
|
|
@ -715,7 +712,7 @@ $(document).ready(function(){
|
|
|
|
|
|
|
|
|
|
$P.currentDisplay = "warningAnsBody";
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='warningRadio']:checked").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='warningRadio']:checked").focus();
|
|
|
|
|
|
|
|
|
|
$P.changeAnsBodyText();
|
|
|
|
|
|
|
|
|
@ -723,8 +720,8 @@ $(document).ready(function(){
|
|
|
|
|
});
|
|
|
|
|
$P.$find("btnNonlevyAnsBodyTab").on('click', (event) => {
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbasic").hide();
|
|
|
|
|
$("#wrapper--${pageName}").find(".area-answerbody").each(function(){
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbasic").hide();
|
|
|
|
|
$P.$find("wrapper").find(".area-answerbody").each(function(){
|
|
|
|
|
if($(this).hasClass("area-answerbody-common") || $(this).hasClass("area-nonlevy")){
|
|
|
|
|
$(this).show();
|
|
|
|
|
} else {
|
|
|
|
@ -734,7 +731,7 @@ $(document).ready(function(){
|
|
|
|
|
|
|
|
|
|
$P.currentDisplay = "nonlevyAnsBody";
|
|
|
|
|
|
|
|
|
|
$("#wrapper--${pageName}").find(":radio[name='nonlevyRadio']:checked").focus();
|
|
|
|
|
$P.$find("wrapper").find(":radio[name='nonlevyRadio']:checked").focus();
|
|
|
|
|
|
|
|
|
|
$P.changeAnsBodyText();
|
|
|
|
|
|
|
|
|
|