개별총정보 - 민원상담 정보 탭 추가

main
jjh 1 year ago
parent a226884ac3
commit 5b5f05a348

@ -11,6 +11,7 @@ import lombok.Setter;
@Getter @Getter
@Setter @Setter
public class CvlcptDscsnCn extends AbstractEntity { public class CvlcptDscsnCn extends AbstractEntity {
/** /**
* ID * ID
*/ */

@ -34,7 +34,7 @@
<div class="row g-1"> <div class="row g-1">
<!-- 업무구분 --> <!-- 업무구분 -->
<div class="col-12"> <div class="col-12">
<label class="form-label fw-bold form-search-title" for="rdoTaskSeCd--${pageName}">업무구분</label> <label class="form-label fw-bold form-search-title">업무구분</label>
<span class="form-search-linebox"> <span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item"> <c:forEach items="${FIM054List}" var="item">
<label> <label>

@ -34,7 +34,7 @@
<div class="row g-1"> <div class="row g-1">
<!-- 업무구분 --> <!-- 업무구분 -->
<div class="col-12"> <div class="col-12">
<label class="form-label fw-bold form-search-title" for="rdoTaskSeCd--${pageName}">업무구분</label> <label class="form-label fw-bold form-search-title">업무구분</label>
<span class="form-search-linebox"> <span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item"> <c:forEach items="${FIM054List}" var="item">
<label> <label>

@ -34,7 +34,7 @@
<div class="row g-1"> <div class="row g-1">
<!-- 업무구분 --> <!-- 업무구분 -->
<div class="col-12"> <div class="col-12">
<label class="form-label fw-bold form-search-title" for="rdoTaskSeCd--${pageName}">업무구분</label> <label class="form-label fw-bold form-search-title">업무구분</label>
<span class="form-search-linebox"> <span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item"> <c:forEach items="${FIM054List}" var="item">
<label> <label>

@ -78,8 +78,8 @@
</button> </button>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#cvlcptDscsnCnInfo" <button type="button" class="nav-link" role="tab" data-bs-toggle="tab" data-bs-target="#cvlcptDscsnInfo"
aria-controls="cvlcptDscsnCnInfo" aria-selected="false" onClick="fnBtnCvlcptDscsnCnInfo${pageName}();"> aria-controls="cvlcptDscsnCnInfo" aria-selected="false" onClick="fnBtnCvlcptDscsnInfo${pageName}();">
민원상담 정보 민원상담 정보
</button> </button>
</li> </li>
@ -292,7 +292,7 @@
} }
// 민원상담 정보 // 민원상담 정보
fnBtnCvlcptDscsnCnInfo${pageName} = () => { fnBtnCvlcptDscsnInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
let vhrno = ${pageName}Control.dataset.getValue("VHRNO"); let vhrno = ${pageName}Control.dataset.getValue("VHRNO");
@ -313,7 +313,7 @@
url : wctx.url("/sprt/sprt02/080/info.do") url : wctx.url("/sprt/sprt02/080/info.do")
, data : params || {} , data : params || {}
, success : resp => { , success : resp => {
$("#cvlcptDscsnCnInfo").html(resp); $("#cvlcptDscsnInfo").html(resp);
} }
}); });
} }

@ -152,32 +152,47 @@
<label for="mngArtcl6--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">관리항목6</label> <label for="mngArtcl6--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">관리항목6</label>
<input type="text" class="form-control w-60" id="mngArtcl6--${pageName}" name="mngArtcl6" data-map="MNG_ARTCL6" readonly /> <input type="text" class="form-control w-60" id="mngArtcl6--${pageName}" name="mngArtcl6" data-map="MNG_ARTCL6" readonly />
</div> </div>
<!-- 체납 구분 코드 -->
<div class="col-md-4">
<label for="npmntSeNm--${pageName}${pageDataName2}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">체납구분</label>
<input type="text" class="form-control w-40" id="npmntSeNm--${pageName}${pageDataName2}" name="npmntSeNm" data-map="NPMNT_SE_NM" readonly />
</div>
<!-- 체납 사유 -->
<div class="col-md-8">
<label for="npmntRsn--${pageName}${pageDataName2}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">체납사유</label>
<input type="text" class="form-control w-80" id="npmntRsn--${pageName}${pageDataName2}" name="npmntRsn" data-map="NPMNT_RSN" readonly />
</div>
</div> <!-- <div class="row g-1"> --> </div> <!-- <div class="row g-1"> -->
</div> <!-- 부과 정보 <div class="card"> --> </div> <!-- 부과 정보 <div class="card"> -->
</div> <!-- <div class="col-xl-9 mx-1"> --> </div> <!-- <div class="col-xl-9 mx-1"> -->
<!-- 가상계좌 정보 --> <!-- 납부 정보 -->
<div class="col-xl-3 mx-0"> <div class="col-xl-3 mx-0">
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
<div class="container-page-btn"> <div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">가상계좌 정보</label> <label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">납부 안내 정보</label>
</div> <!-- <div class="container-page-btn"> --> </div> <!-- <div class="container-page-btn"> -->
<div class="row g-1"> <div class="row g-1">
<!-- 가상 계좌번호 --> <!-- 납부 번호 -->
<div class="col-md-12">
<label for="vrActno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">가상계좌번호</label>
</div>
<div class="col-md-12"> <div class="col-md-12">
<textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" data-map="VR_ACTNO" rows="12" > <label for="epayno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">납부번호</label>
</textarea> <input type="text" class="form-control w-65" id="epayno--${pageName}" name="epayno" data-map="EPAYNO" readonly />
</div> </div>
<!-- 전자납부번호 --> <!-- 전자납부번호 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="epayno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">전자납부번호</label> <label for="epayno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">전자납부번호</label>
<input type="text" class="form-control w-65" id="epayno--${pageName}" name="epayno" data-map="EPAYNO" readonly /> <input type="text" class="form-control w-65" id="epayno--${pageName}" name="epayno" data-map="EPAYNO" readonly />
</div> </div>
<!-- 가상계좌번호 -->
<div class="col-md-12">
<label for="epayno--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">가상계좌번호</label>
</div>
<div class="col-md-12">
<textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" data-map="VR_ACTNO" rows="12" >
</textarea>
</div>
</div> </div>
</div> <!-- <div class="card"> --> </div> <!-- <div class="card"> -->
</div> <!-- 가상계좌 정보 <div class="col-xl-3 mx-0"> --> </div> <!-- 가상계좌 정보 <div class="col-xl-3 mx-0"> -->
@ -187,33 +202,8 @@
</p> </p>
<div class="d-flex flex-row justify-content-evenly"> <div class="d-flex flex-row justify-content-evenly">
<!-- 체납 정보 -->
<div class="col-xl-6 mx-1">
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">체납 정보</label>
</div> <!-- <div class="container-page-btn"> -->
<form id="frmEdit--${pageName}${pageDataName2}" name="frmEdit${pageDataName2}">
<div class="row g-1">
<!-- 체납 구분 코드 -->
<div class="col-md-4">
<label for="npmntSeNm--${pageName}${pageDataName2}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">체납구분명</label>
<input type="text" class="form-control w-40" id="npmntSeNm--${pageName}${pageDataName2}" name="npmntSeNm" data-map="NPMNT_SE_NM" readonly />
</div>
<!-- 체납 사유 -->
<div class="col-md-8">
<label for="npmntRsn--${pageName}${pageDataName2}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">체납사유</label>
<input type="text" class="form-control w-70" id="npmntRsn--${pageName}${pageDataName2}" name="npmntRsn" data-map="NPMNT_RSN" readonly />
</div>
</div> <!-- <div class="row g-1"> -->
</form>
</div> <!-- <div class="card"> -->
</div> <!-- 체납 정보 <div class="col-xl-6 mx-1"> -->
<!-- 압류 정보 --> <!-- 압류 정보 -->
<div class="col-xl-6 mx-1"> <div class="col-xl-12 mx-1">
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
<div class="container-page-btn"> <div class="container-page-btn">
@ -223,29 +213,29 @@
<form id="frmEdit--${pageName}${pageDataName3}" name="frmEdit${pageDataName3}"> <form id="frmEdit--${pageName}${pageDataName3}" name="frmEdit${pageDataName3}">
<div class="row g-1"> <div class="row g-1">
<!-- 압류 일자 --> <!-- 압류 일자 -->
<div class="col-md-4"> <div class="col-md-3">
<label for="szrYmd--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류일자</label> <label for="szrYmd--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류일자</label>
<input type="text" class="form-control w-40" id="szrYmd--${pageName}${pageDataName3}" name="szrYmd" data-map="SZR_YMD" readonly /> <input type="text" class="form-control w-30" id="szrYmd--${pageName}${pageDataName3}" name="szrYmd" data-map="SZR_YMD" readonly />
</div> </div>
<!-- 압류 물건 --> <!-- 압류 물건 -->
<div class="col-md-8"> <div class="col-md-9">
<label for="szrThing--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류물건</label> <label for="szrThing--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류물건</label>
<input type="text" class="form-control w-70" id="szrThing--${pageName}${pageDataName3}" name="szrThing" data-map="SZR_THING" readonly /> <input type="text" class="form-control w-80" id="szrThing--${pageName}${pageDataName3}" name="szrThing" data-map="SZR_THING" readonly />
</div> </div>
<!-- 압류 해제 일자 --> <!-- 압류 해제 일자 -->
<div class="col-md-4"> <div class="col-md-3">
<label for="szrRmvYmd--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류해제일자</label> <label for="szrRmvYmd--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류해제일자</label>
<input type="text" class="form-control w-40" id="szrRmvYmd--${pageName}${pageDataName3}" name="szrRmvYmd" data-map="SZR_RMV_YMD" readonly /> <input type="text" class="form-control w-30" id="szrRmvYmd--${pageName}${pageDataName3}" name="szrRmvYmd" data-map="SZR_RMV_YMD" readonly />
</div> </div>
<!-- 압류 해제 사유 --> <!-- 압류 해제 사유 -->
<div class="col-md-8"> <div class="col-md-9">
<label for="szrRmvRsn--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류해제사유</label> <label for="szrRmvRsn--${pageName}${pageDataName3}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">압류해제사유</label>
<input type="text" class="form-control w-70" id="szrRmvRsn--${pageName}${pageDataName3}" name="szrRmvRsn" data-map="SZR_RMV_RSN" readonly /> <input type="text" class="form-control w-80" id="szrRmvRsn--${pageName}${pageDataName3}" name="szrRmvRsn" data-map="SZR_RMV_RSN" readonly />
</div> </div>
</div> <!-- <div class="row g-1"> --> </div> <!-- <div class="row g-1"> -->
</form> </form>
</div> <!-- <div class="card"> --> </div> <!-- <div class="card"> -->
</div> <!-- 압류 정보 <div class="col-xl-6 mx-1"> --> </div> <!-- 압류 정보 <div class="col-xl-12 mx-1"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> --> </div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div> </div>

@ -3,177 +3,81 @@
<!-- Page Body --> <!-- Page Body -->
<div class="content-wrapper"> <div class="content-wrapper">
<!-- 입력 영역 -->
<form id="frmEdit--${pageName}" name="frmEdit">
<!-- hidden -->
<input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" />
<input type="hidden" id="opnnId--${pageName}" name="opnnId" data-map="OPNN_ID" />
<div class="d-flex flex-row justify-content-evenly"> <div class="d-flex flex-row justify-content-evenly">
<!-- 화면 왼쪽 --> <!-- 민원 상담 정보 -->
<div class="col-xl-9 mx-1"> <div class="col-xl-12 mx-1">
<!-- 의견제출 정보 -->
<div class="card"> <div class="card">
<!-- 업무 버튼 --> <!-- 업무 버튼 -->
<div class="container-page-btn"> <div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">의견제출 정보</label> <label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">의견제출 정보</label>
<!-- 버튼 우측 정렬 --> <!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right"> <span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnCreate--${pageName}" title="의견제출 등록" onclick="fnBtnOpnnSbmsnCreate${pageName}();"> <button type="button" class="btn btn-primary" id="btnCvlcptDscsnCnCreate--${pageName}" title="민원 상담 등록" onclick="fnBtnCvlcptDscsnCnCreate${pageName}();">
의견제출 등록 민원 상담 등록
</button> </button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnUpdate--${pageName}" title="의견제출 수정" onclick="fnBtnOpnnSbmsnUpdate${pageName}();"> <button type="button" class="btn btn-primary" id="btnCvlcptDscsnCnUpdate--${pageName}" title="민원 상담 수정" onclick="fnBtnCvlcptDscsnCnUpdate${pageName}();">
의견제출 수정 민원 상담 수정
</button> </button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnRemove--${pageName}" title="의견제출 삭제" onclick="fnBtnOpnnSbmsnRemove${pageName}();"> <button type="button" class="btn btn-primary" id="btnCvlcptDscsnCnRemove--${pageName}" title="민원 상담 삭제" onclick="fnBtnCvlcptDscsnCnRemove${pageName}();">
의견제출 삭제 민원 상담 삭제
</button>
<button type="button" class="btn btn-primary" id="btnDlbrtLtfrPrint--${pageName}" title="심의의결서 출력" onclick="fnBtnDlbrtLtfrPrint${pageName}();">
심의의결서 출력
</button> </button>
</span> <!-- <span class="container-window-btn-right"> --> </span> <!-- <span class="container-window-btn-right"> -->
</div> <!-- <div class="container-page-btn"> --> </div> <!-- <div class="container-page-btn"> -->
<!-- 입력 영역 -->
<form id="frmEdit--${pageName}" name="frmEdit">
<!-- hidden -->
<input type="hidden" id="cvlcptDscsnId--${pageName}" name="cvlcptDscsnId" data-map="CVLCPT_DSCSN_ID" />
<div class="row g-1"> <div class="row g-1">
<!-- 접수 번호 --> <!-- DataTables(그리드) -->
<div class="col-md-4"> <div class="card-datatable text-nowrap">
<label for="rcptNo--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">접수 번호</label> <div id="DataTables_Table_0_wrapper--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<input type="text" class="form-control w-30" id="rcptNo--${pageName}" name="rcptNo" data-map="RCPT_NO" readonly /> <div id="table-responsive--${pageName}" class="table-responsive" style="overflow-x:scroll; height:336px; overflow-y:scroll;" >
</div> <table class="dataTable datatables-ajax table table-bordered no-footer" id="DataTables_Table_0--${pageName}" aria-describedby="DataTables_Table_0_info">
<!-- 접수 일자 -->
<div class="col-md-4">
<label for="rcptYmd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">접수 일자</label>
<input type="text" class="form-control w-30" id="rcptYmd--${pageName}" name="rcptYmd" data-map="RCPT_YMD" readonly />
</div>
<!-- 접수 구분 -->
<div class="col-md-4">
<label for="rcptSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">접수 구분</label>
<input type="text" class="form-control w-30" id="rcptSeNm--${pageName}" name="rcptSeNm" data-map="RCPT_SE_NM" readonly />
</div>
<!-- 진술자 이름 -->
<div class="col-md-4">
<label for="sttrNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">성명</label>
<input type="text" class="form-control w-40" id="sttrNm--${pageName}" name="sttrNm" data-map="STTR_NM" readonly />
</div>
<!-- 진술자 생년월일 -->
<div class="col-md-4">
<label for="sttrBrdt--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">생년월일</label>
<input type="text" class="form-control w-25" id="sttrBrdt--${pageName}" name="sttrBrdt" data-map="STTR_BRDT_FORMAT" placeholder="YY-MM-DD" readonly />
</div>
<!-- 소유주 관계 구분 명 -->
<div class="col-md-4">
<label for="ownrRelNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">소유주 관계 구분</label>
<input type="text" class="form-control w-40" id="ownrRelNm--${pageName}" name="ownrRelNm" data-map="OWNR_REL_NM" readonly />
</div>
<!-- 진술자 주소 --><!-- 진술자 우편번호 -->
<div class="col-md-12">
<label for="sttrAddr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">주소</label>
<input type="text" class="form-control w-80" id="sttrAddr--${pageName}" name="sttrAddr" data-map="STTR_ADDR" readonly />
<input type="text" class="form-control w-px-75" id="sttrZip--${pageName}" name="sttrZip" data-map="STTR_ZIP" readonly />
</div>
<!-- 진술자 상세주소 -->
<div class="col-md-12">
<label for="sttrDaddr--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">상세 주소</label>
<input type="text" class="form-control w-87" id="sttrDaddr--${pageName}" name="sttrDaddr" data-map="STTR_DADDR" readonly />
</div>
<!-- 진술자 연락처 -->
<div class="col-md-4">
<label for="sttrCttpc--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">연락처</label>
<input type="text" class="form-control w-35" id="sttrCttpc--${pageName}" name="sttrCttpc" data-map="STTR_CTTPC" readonly />
</div>
<!-- 진술자 이메일 -->
<div class="col-md-8">
<label for="sttrEml--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">이메일</label>
<input type="text" class="form-control w-35" id="sttrEml--${pageName}" name="sttrEml" data-map="STTR_EML" readonly />
</div>
<!-- 의견 제출 내용 -->
<div class="col-md-12">
<label for="opnnSbmsnCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 내용</label>
<textarea type="text" class="form-control w-87" id="opnnSbmsnCn--${pageName}" name="opnnSbmsnCn" data-map="OPNN_SBMSN_CN" rows="4" data-maxlengthb="4000" readonly>
</textarea>
</div>
<!-- 의견 제출 구분 명 -->
<div class="col-md-4">
<label for="opnnSbmsnSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견 제출 구분</label>
<input type="text" class="form-control w-40" id="opnnSbmsnSeNm--${pageName}" name="opnnSbmsnSeNm" data-map="OPNN_SBMSN_SE_NM" readonly />
</div>
<!-- 의견 제출 요지 -->
<div class="col-md-8">
<label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label>
<input type="text" class="form-control w-80" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" data-maxlengthb="300" readonly />
</div>
<!-- 담당자 검토 의견 -->
<div class="col-md-12">
<label for="picRvwOpnn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">검토 의견</label>
<textarea class="form-control w-87" id="picRvwOpnn--${pageName}" name="picRvwOpnn" data-map="PIC_RVW_OPNN" rows="3" data-maxlengthb="1000" readonly>
</textarea>
</div>
<!-- 첨부 파일 테이블 -->
<div class="table-responsive">
<table class="table table-bordered table-hover table-striped" id="fileList--${pageName}">
<thead> <thead>
<th class="text-center" style="width: 24px">NO.</th> <tr id="theadTr--${pageName}">
<th class="text-center" style="width: 200px">파일 번호</th> <th>등록일시</th>
<th class="text-center">파일 이름</th> <th>요일</th>
<th class="text-center" style="width: 200px">파일 크기</th> <th>등록사용자</th>
<th class="text-center" style="width: 120px">다운로드</th> <th>민원접수구분</th>
<th>상담내용</th>
<th>수정일시</th>
<th>수정사용자</th>
</tr>
</thead> </thead>
<tbody></tbody> <tbody id="tbody--${pageName}">
</tbody>
<template id="${infoPrefix}Row--${pageName}">
<tr data-key="{CVLCPT_DSCSN_ID}">
<td class="text-center" onclick="{onclick}">{REG_DT}</td>
<td class="text-center" onclick="{onclick}">{WEEK_NM}</td>
<td class="text-center" onclick="{onclick}">{RGTR_NM}</td>
<td class="text-center" onclick="{onclick}">{CVLCPT_RCPT_SE_CD}</td>
<td class="text-center" onclick="{onclick}">{DSCSN_CN}</td>
<td class="text-center" onclick="{onclick}">{MDFCN_DT}</td>
<td class="text-center" onclick="{onclick}">{MDFR_NM}</td>
</tr>
</template>
<template id="${infoPrefix}NotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="7" class="dataTables_empty text-center">민원 상담 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table> </table>
</div> <!-- 첨부 파일 테이블 <div class="table-responsive"> -->
</div> <!-- <div class="row g-1"> -->
</div> <!-- 의견제출 정보 <div class="card"> -->
</div> <!-- <div class="col-xl-9 mx-1"> -->
<!-- 화면 오른쪽 -->
<div class="col-xl-3 mx-0">
<!-- 심의 정보 -->
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">심의 정보</label>
<!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnDlbrt--${pageName}" title="의견제출 심의" onclick="fnBtnOpnnSbmsnDlbrt${pageName}();">
의견제출 심의
</button>
</span> <!-- <span class="container-window-btn-right"> -->
</div> <!-- <div class="container-page-btn"> -->
<div class="row g-1">
<!-- 문서 번호 -->
<div class="col-md-12">
<label for="docNo--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">문서 번호</label>
<input type="text" class="form-control w-45" id="docNo--${pageName}" name="docNo" data-map="DOC_NO" readonly />
</div>
<!-- 통보 구분 -->
<div class="col-md-12">
<label for="ntfctnSeNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">통보 구분</label>
<input type="text" class="form-control w-30" id="ntfctnSeNm--${pageName}" name="ntfctnSeNm" data-map="NTFCTN_SE_NM" readonly />
</div>
<!-- 의견 제출 상태 코드 -->
<div class="col-md-12">
<label for="opnnSbmsnSttsNm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 결과</label>
<input type="text" class="form-control w-30" id="opnnSbmsnSttsNm--${pageName}" name="opnnSbmsnSttsNm" data-map="OPNN_SBMSN_STTS_NM" readonly />
</div>
<!-- 답변일시 -->
<div class="col-md-12">
<label for="ansYmdTm--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 일시</label>
<input type="text" class="form-control w-45" id="ansYmdTm--${pageName}" name="ansYmdTm" data-map="ANS_YMD_TM" readonly />
</div> </div>
<!-- 답변 내용 -->
<div class="col-md-12">
<label for="ansCn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">처리 내용</label>
</div> </div>
</div> <!-- / DataTables(그리드) -->
<!-- 상담 내용 -->
<div class="col-md-12"> <div class="col-md-12">
<textarea type="text" class="form-control w-100" id="ansCn--${pageName}" name="ansCn" data-map="ANS_CN" rows="14" data-maxlengthb="4000"> <textarea class="form-control w-100" id="dscsnCn--${pageName}" name="dscsnCn" data-map="DSCSN_CN" rows="5" data-maxlengthb="4000" readonly>
</textarea> </textarea>
</div> </div>
</div> </div> <!-- <div class="row g-1"> -->
</div> <!-- 심의 정보 <div class="card"> -->
</div> <!-- <div class="col-xl-3 mx-0"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</form> </form>
</div> <!-- <div class="card"> -->
</div> <!-- 민원 상담 정보 <div class="col-xl-12 mx-1"> -->
</div> <!-- <div class="d-flex flex-row justify-content-evenly"> -->
</div> </div>
<script> <script>
@ -184,113 +88,56 @@
var ${pageName}PrefixUrl = "/sprt/sprt02"; var ${pageName}PrefixUrl = "/sprt/sprt02";
// FormFields // FormFields
var ${pageName}Fields = new FormFields("#frmEdit--${pageName}"); var ${pageName}Fields = new FormFields("#frmEdit--${pageName}");
// 파일 리스트
var $fileListArr = new Array();
/************************************************************************** /**************************************************************************
* DatasetControl * DatasetControl
**************************************************************************/ **************************************************************************/
var ${pageName}Control = new DatasetControl({ var ${pageName}Control = new DatasetControl({
prefix : "totalInfoOpnnSbmsn" prefix : "totalInfoCvlcptDscsn"
, prefixName : "의견제출 정보" , prefixName : "민원상담 정보"
, keymapper : info => info ? info.OPNN_ID : "" , keymapper : info => info ? info.CVLCPT_DSCSN_ID : ""
, dataGetter : obj => obj.opnnSbmsn , dataGetter : obj => obj.cvlcptDscsnCn
, formats : { , formats : {
RCPT_YMD : dateFormat REG_DT : datetimeFormat
, ANS_YMD_TM : datetimeFormat , MDFCN_DT : datetimeFormat
} }
}); });
${pageName}Control.onCurrentChange = item => {
// Dataset 셋팅
${pageName}Fields.set(item);
if (item.data.OPNN_ID != null) {
// 첨부파일 조회
fnSearchFileList${pageName}(item.data.OPNN_ID);
}
}
/************************************************************************** /**************************************************************************
* * DatasetControl 이벤트
**************************************************************************/ **************************************************************************/
// 의견제출 dialog // Dataset 변경 이벤트
${pageName}Control.getOpnnSbmsnInfo = (params) => { ${pageName}Control.onDatasetChange = obj => {
let dialogTitle = ""; renderList${pageName}();
if (params.callPurpose == "create") {
dialogTitle = "의견제출 등록";
} else if (params.callPurpose == "update") {
dialogTitle = "의견제출 수정";
} else {
return;
} }
ajax.get({ // 현재 선택 자료 변경 이벤트
url : wctx.url("/excl/excl02/020/info.do") ${pageName}Control.onCurrentChange = item => {
, data : params || {} if (!item) return;
, success : resp => {
dialog.open({
id : "opnnInfoDialog"
, title : dialogTitle
, content : resp
, size : "xl"
, onClose : () => { fnDataRefreshInfo(params.crdnId); } // callback 자료 조회
});
}
});
}
// 삭제 callback
${pageName}Control.onRemoveOpnnSbmsn = (resp) => {
if (resp.saved) {
fnDataRefreshInfo(); // 자료 조회
}
}
// 삭제 let key = item.data.CVLCPT_DSCSN_ID;
${pageName}Control.removeOpnnSbmsn = (params) => {
ajax.post({
url : wctx.url("/excl/excl02/010/remove.do")
, data : params || {}
, success : resp => ${pageName}Control.onRemoveOpnnSbmsn(resp)
});
}
// 심의 dialog $("#tbody--${pageName}").setCurrentRow(key);
${pageName}Control.getOpnnSbmsnDlbrtInfo = (params) => { };
ajax.get({
url : wctx.url("/excl/excl02/030/info.do")
, data : params || {}
, success : resp => {
dialog.open({ /**************************************************************************
id : "opnnSbmsnInfoDialog" *
, title : "의견제출 답변 처리" **************************************************************************/
, content : resp // DataTables에 click, dbclick 이벤트
, size : "lg" renderList${pageName} = () => {
, onClose : () => { fnDataRefreshInfo(params.crdnId); } // callback 자료 조회 let ${infoPrefix}List = ${pageName}Control.dataset;
}); let empty = ${infoPrefix}List.empty;
}
});
}
// 재조회 let trs = empty ?
fnDataRefreshInfo = (crdnId) => { [document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
// 단속 ID 확인 ${infoPrefix}List.inStrings(
if (crdnId == undefined || crdnId == null || crdnId == "") { document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
crdnId = $("#crdnId--${pageName}").val(); (str, dataItem) => str
} .replace(/{onclick}/gi, "${pageName}Control.setCurrent('" + dataItem.getValue("CVLCPT_DSCSN_ID") + "');")
);
ajax.get({ $("#tbody--${pageName}").html(trs.join());
url : wctx.url("/sprt/sprt02/030/info.do") $("th input[type='checkbox']").prop("checked", false);
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : { crdnId : crdnId }
, success : resp => {
// Dataset 셋팅
${pageName}Control.setData([resp.opnnSbmsn]);
}
});
} }
/************************************************************************** /**************************************************************************
@ -309,132 +156,19 @@
/************************************************************************** /**************************************************************************
* function * function
**************************************************************************/ **************************************************************************/
// 의견제출 등록 // 민원 상담 등록
fnBtnOpnnSbmsnCreate${pageName} = () => { fnBtnCvlcptDscsnCnCreate${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID"); alert("민원 상담 등록");
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
return;
}
let params = {
callPurpose : "create"
, crdnId : crdnId
};
${pageName}Control.getOpnnSbmsnInfo(params);
} }
// 의견제출 수정 // 민원 상담 수정
fnBtnOpnnSbmsnUpdate${pageName} = () => { fnBtnCvlcptDscsnCnUpdate${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID") alert("민원 상담 수정");
// 의견 ID 가 없다면.. return
if (opnnId == null || opnnId == "") {
return;
}
let params = {
callPurpose : "update"
, opnnId : opnnId
};
${pageName}Control.getOpnnSbmsnInfo(params);
}
// 의견제출 삭제
fnBtnOpnnSbmsnRemove${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
// 의견 ID 가 없다면.. return
if (opnnId == null || opnnId == "") {
return;
}
let params = {
callPurpose : "remove"
, opnnId : opnnId
};
dialog.alert({
content : "선택한 의견제출 정보를 삭제하시겠습니까?"
, onOK : () => {
${pageName}Control.removeOpnnSbmsn(params);
}
});
}
// 의견제출 심의
fnBtnOpnnSbmsnDlbrt${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
// 의견제출 ID 가 없다면.. return
if (opnnId == null || opnnId == "") {
return;
}
let params = {
callPurpose : "update"
, opnnId : opnnId
};
${pageName}Control.getOpnnSbmsnDlbrtInfo(params);
}
// 심의의결서 출력
fnBtnDlbrtLtfrPrint${pageName} = () => {
}
// 첨부파일 조회
fnSearchFileList${pageName} = (opnnId) => {
// 의견제출 등록일 경우에는 첨부파일을 조회하지 안는다..
if (opnnId == null || opnnId == "") {
return;
}
// 기존 table에 자료가 존재하면 table 삭제
let fileListTable = document.getElementById("fileList--${pageName}"); // table element 찾기
for (iLoop = 2; iLoop <= fileListTable.rows.length; iLoop++) {
let newRow = fileListTable.deleteRow(fileListTable.rows.length-1); // table 행(Row) 삭제
}
// 첨부파일 리스트
ajax.get({
url : "file/list.do"
, data : {
infoType : "110"
, infoKeys : opnnId
, fetchSize : 0
}
, success : resp => {
let fileNo = 0;
let fileList = resp.fileList;
fileList.forEach(function (item, index, array) {
fileNo = index + 1;
let innerHtml = "";
innerHtml += "<tr>";
innerHtml += "<td class='text-center'>" + fileNo + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_ID + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_NM + "</td>";
innerHtml += "<td class='text-center'>" + item.FILE_SIZE + " byte</td>";
innerHtml += "<td class='text-center'>" + "<button class='btn' onclick='fnBtnFileDownload${pageName}(" + item.FILE_ID + ");'><i class='bx bx-download me-1'></i></button>" + "</td>";
innerHtml += "</tr>";
$("#fileList--${pageName} > tbody:last").append(innerHtml);
});
}
});
} }
// 첨부파일 다운로드 // 민원 상담 삭제
fnBtnFileDownload${pageName} = (fileID) => { fnBtnCvlcptDscsnCnRemove${pageName} = () => {
top.location.href = "/file/download.do?fileID=" + fileID; alert("민원 상담 삭제");
} }
/************************************************************************** /**************************************************************************
@ -448,7 +182,7 @@
initForm${pageName}(); initForm${pageName}();
// Dataset 셋팅 // Dataset 셋팅
${pageName}Control.setData([${opnnSbmsn}]); ${pageName}Control.setData(${cvlcptDscsnCn});
}); });
// #sourceURL=sprt02080-info.jsp // #sourceURL=sprt02080-info.jsp

Loading…
Cancel
Save