1. 개별총정보 - 단속자료 재등록 수정.

2. 개별총정보 - 의견제출 등록, 수정, 삭제 수정.
3. 개별총정보 - 부과제외  등록, 수정, 삭제 수정.
4. 소스정리
main
jjh 1 year ago
parent 7180d3f767
commit 1b7a1f31a4

@ -43,9 +43,9 @@ public interface LevyExclMapper extends AbstractMapper {
* @return
*/
default DataObject selectLevyExclInfo(ExclQuery req) {
List<DataObject> levyExcl = selectLevyExcls(req);
List<DataObject> levyExcls = selectLevyExcls(req);
return !levyExcl.isEmpty() ? levyExcl.get(0) : null;
return !levyExcls.isEmpty() ? levyExcls.get(0) : null;
}
/** .

@ -40,10 +40,10 @@ public interface OpnnSbmsnMapper extends AbstractMapper {
* @param opnnId ID
* @return
*/
default DataObject selectOpnnSbmsnInfo(String opnnId) {
List<DataObject> opnnSbmsn = selectOpnnSbmsns(new ExclQuery().setOpnnId(opnnId));
default DataObject selectOpnnSbmsnInfo(ExclQuery req) {
List<DataObject> opnnSbmsns = selectOpnnSbmsns(req);
return !opnnSbmsn.isEmpty() ? opnnSbmsn.get(0) : null;
return !opnnSbmsns.isEmpty() ? opnnSbmsns.get(0) : null;
}
/** ID , .

@ -278,12 +278,12 @@ public class Excl01Bean extends AbstractComponent {
String newCvlcptPrcsCd = ""; // 신규 민원 처리 코드(CVLCPT_PRCS_CD)
String newCvlcptTrsmCd = ""; // 민원 전송 코드(CVLCPT_TRSM_CD)
// 부과제외(TB_LEVY_EXCL) 자료 조회
ExclQuery req = new ExclQuery();
req.setLevyExclId(levyExcl.getLevyExclId());
req.setDelYn("N");
// 부과제외(TB_LEVY_EXCL) 자료 조회
DataObject infoLevyExcl = levyExclMapper.selectLevyExclInfo(req);
// 부과제외(TB_LEVY_EXCL) 대장을 수정 한다.
@ -369,12 +369,12 @@ public class Excl01Bean extends AbstractComponent {
boolean retSuccess = false; // DB 처리 결과
String newHstrySttsCd = ""; // 신규 상태 코드
// 부과제외(TB_LEVY_EXCL) 자료 조회
ExclQuery req = new ExclQuery();
req.setLevyExclId(levyExcl.getLevyExclId());
req.setDelYn("N");
// 부과제외(TB_LEVY_EXCL) 자료 조회
DataObject infoLevyExcl = levyExclMapper.selectLevyExclInfo(req);
// 단속 상태 코드(CRDN_STTS_CD) 확인..

@ -73,10 +73,10 @@ public class Excl02Bean extends AbstractComponent {
*/
public DataObject getOpnnSbmsnInfo(ExclQuery req) {
if (req.getOrderBy() == null) {
req.setOrderBy("OPNN_ID DESC");
req.setOrderBy("REG_DT DESC, OPNN_ID DESC");
}
return opnnSbmsnMapper.selectOpnnSbmsnInfo(req.getOpnnId());
return opnnSbmsnMapper.selectOpnnSbmsnInfo(req);
}
/** ID .<br />
@ -221,7 +221,12 @@ public class Excl02Bean extends AbstractComponent {
String newCrdnSttsCd = ""; // 신규 단속 상태 코드(CRDN_STTS_CD)
// 의견제출(TB_OPNN_SBMSN) 자료 조회
DataObject infoCrdnOpnnSbmsn = opnnSbmsnMapper.selectOpnnSbmsnInfo(opnnSbmsn.getOpnnId());
ExclQuery exclQuery = new ExclQuery();
exclQuery.setOpnnId(opnnSbmsn.getOpnnId());
exclQuery.setDelYn("N");
DataObject infoCrdnOpnnSbmsn = opnnSbmsnMapper.selectOpnnSbmsnInfo(exclQuery);
// 수납 또는 취소된 자료를 의견제출 수용할 수 없다
if (infoCrdnOpnnSbmsn.number("CRDN_STTS_CD").intValue() >= 71) {
@ -285,7 +290,12 @@ public class Excl02Bean extends AbstractComponent {
boolean retSuccess = false; // DB 처리 결과
// 의견제출(TB_OPNN_SBMSN) 자료 조회
DataObject infoCrdnOpnnSbmsn = opnnSbmsnMapper.selectOpnnSbmsnInfo(opnnSbmsn.getOpnnId());
ExclQuery exclQuery = new ExclQuery();
exclQuery.setOpnnId(opnnSbmsn.getOpnnId());
exclQuery.setDelYn("N");
DataObject infoCrdnOpnnSbmsn = opnnSbmsnMapper.selectOpnnSbmsnInfo(exclQuery);
// 단속 상태 코드가 의견제출 접수(31) 또는 의견제출 수용(82) 이라면... 이전 단속 상태 코드로 복원 한다.
if (infoCrdnOpnnSbmsn.string("CRDN_STTS_CD").equals("31") || infoCrdnOpnnSbmsn.string("CRDN_STTS_CD").equals("82")) {

@ -70,10 +70,10 @@ public class Excl01Controller extends ApplicationController {
}
/** ID (info) .
* @param ExclQuery req
* @param req
* @return fims/excl/excl01020-info jsonView
* <pre>{
* "levyExclusionInfo":
* "levyExclInfo":
* }</pre>
*/
@RequestMapping(name = "부과제외 정보 조회", value = "/020/info.do")

@ -40,9 +40,9 @@ public interface LevyMapper extends AbstractMapper {
* @return
*/
default DataObject selectLevyInfo(LevyQuery req) {
List<DataObject> levy = selectLevys(req);
List<DataObject> levys = selectLevys(req);
return !levy.isEmpty() ? levy.get(0) : null;
return !levys.isEmpty() ? levys.get(0) : null;
}
/** .

@ -41,9 +41,9 @@ public interface RductMapper extends AbstractMapper {
* @return
*/
default DataObject selectRductInfo(LevyQuery req) {
List<DataObject> rduct = selectRducts(req);
List<DataObject> rducts = selectRducts(req);
return !rduct.isEmpty() ? rduct.get(0) : null;
return !rducts.isEmpty() ? rducts.get(0) : null;
}
/** .

@ -14,6 +14,7 @@ import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.levy.LevyQuery;
import cokr.xit.fims.levy.Rduct;
import cokr.xit.fims.levy.service.Levy02Service;
import cokr.xit.foundation.data.DataObject;
/**
*
@ -67,6 +68,40 @@ public class Levy02Controller extends ApplicationController {
return setCollectionInfo(new ModelAndView("jsonView"), result, "");
}
/** ID (info) .
* @param req
* @return fims/levy/levy02020-info jsonView
* <pre>{
* "rductInfo":
* }</pre>
*/
@RequestMapping(name = "과태료 감경 정보 조회", value = "/020/info.do")
public ModelAndView getRductInfo(LevyQuery req) {
DataObject rductInfo = levy02Service.getRductInfo(req);
// 등록을 호출하였지만 등록된 부과제외 ID가 있는지 확인.
if (req.getCallPurpose() == "create" && !rductInfo.string("RDUCT_ID").equals("")) {
ModelAndView mav = new ModelAndView("jsonView");
return mav
.addObject("errorMessage", "이미 등록된 과태료 감경 정보가 있습니다.")
;
} else {
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/levy/levy02020-info");
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM019");
return mav
.addObject("pageName", "levy02020")
.addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD)
.addObject("rductInfo", json ? rductInfo : toJson(rductInfo))
;
}
}
/** .
* @param rduct
* @return jsonView

@ -17,7 +17,7 @@ import cokr.xit.fims.rcvm.RcvmQuery;
*
* <pre>
* ============ ============
* 2023-08-31 mjkhan
* 2023-08-31 JoJH
* ================================
* </pre>
*/
@ -36,6 +36,16 @@ public interface RcvmtMapper extends AbstractMapper {
*/
List<DataObject> selectRcvmts(RcvmQuery req);
/** ID .
* @param rcvmtId ID
* @return
*/
default DataObject selectRcvmtInfo(RcvmQuery req) {
List<DataObject> rcvmts = selectRcvmts(req);
return !rcvmts.isEmpty() ? rcvmts.get(0) : null;
}
/** .
* @param params
* <ul><li>"rcvmt" - </li>

@ -13,7 +13,7 @@ import cokr.xit.fims.rcvm.RcvmQuery;
*
* <pre>
* ============ ============
* 2023-08-31 mjkhan
* 2023-08-31 JoJH
* ================================
* </pre>
*/

@ -20,7 +20,7 @@ import cokr.xit.fims.rcvm.service.Rcvm01Service;
*
* <pre>
* ============ ============
* 2023-08-31 mjkhan
* 2023-08-31 JoJH
* ================================
* </pre>
*/

@ -35,14 +35,14 @@ public interface CvlcptDscsnCnMapper extends AbstractMapper {
*/
List<DataObject> selectCvlcptDscsnCns(SprtQuery req);
/** ID .
* @param levyExclId ID
* @return
/** ID .
* @param cvlcptDscsnId ID
* @return
*/
default DataObject selectCvlcptDscsnCn(SprtQuery req) {
List<DataObject> CvlcptDscsnCn = selectCvlcptDscsnCns(req);
default DataObject selectCvlcptDscsnCnInfo(SprtQuery req) {
List<DataObject> cvlcptDscsnCns = selectCvlcptDscsnCns(req);
return !CvlcptDscsnCn.isEmpty() ? CvlcptDscsnCn.get(0) : null;
return !cvlcptDscsnCns.isEmpty() ? cvlcptDscsnCns.get(0) : null;
}
/** ID .

@ -54,7 +54,7 @@ public class Sprt04Bean extends AbstractComponent {
* @return
*/
public DataObject getCvlcptDscsnCnInfo(SprtQuery req) {
return cvlcptDscsnCnMapper.selectCvlcptDscsnCn(req);
return cvlcptDscsnCnMapper.selectCvlcptDscsnCnInfo(req);
}
/** ID .<br />

@ -13,14 +13,14 @@
<div>
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnBtnReset${pageName}();">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnReset${pageName}();">
초기화
</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnBtnSearchList${pageName}();">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnSearchList${pageName}();">
검색
</button>
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnBtnExcel${pageName}();">
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnExcel${pageName}();">
엑셀
</button>
</span>
@ -171,10 +171,10 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button type="button" class="btn btn-primary" id="btnUpdate--${pageName}" title="수정" onclick="fnBtnUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdate--${pageName}" title="수정" onclick="fnUpdate${pageName}();">
수정
</button>
<button type="button" class="btn btn-primary" id="btnRemove--${pageName}" title="삭제" onclick="fnBtnRemove${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemove--${pageName}" title="삭제" onclick="fnRemove${pageName}();">
삭제
</button>
</span>
@ -424,6 +424,9 @@
let formFields = new FimsFormFields("#frmSearch--${pageName}");
let formData = formFields.get();
formData.fetchSize = FETCH_XS; // 한번에 조회되는 자료 건수
// 나중에 삭제
formData.sggCd = "41480"; // 시군구 코드 임시
return formData;
@ -503,29 +506,28 @@
* function
**************************************************************************/
// 초기화
fnBtnReset${pageName} = () => {
fnReset${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
fnResetAndChangeBiz${pageName}(taskSeCd);
}
// 검색
fnBtnSearchList${pageName} = () => {
fnSearchList${pageName} = () => {
// 검색조건
${pageName}Control.query = fnGetParams${pageName}();
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.query.delYn = "N"; // 삭제 여부
${pageName}Control.load();
}
// 엑셀
fnBtnExcel${pageName} = () => {
fnExcel${pageName} = () => {
}
// 수정
fnBtnUpdate${pageName} = () => {
fnUpdate${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
let levyExclId = ${pageName}Control.dataset.getValue("LEVY_EXCL_ID");
@ -552,7 +554,7 @@
}
// 삭제
fnBtnRemove${pageName} = () => {
fnRemove${pageName} = () => {
dialog.alert({
content : "선택한 부과제외 정보를 삭제하시겠습니까?"
, onOK : () => {

@ -185,7 +185,7 @@
let data = formFields.get();
dialog.alert({
content : "현재 부과제외 정보를 저장하시겠습니까?"
content : "현재 " + ${pageName}Control.prefixName + " 정보를 저장하시겠습니까?"
, onOK : () => {
${pageName}Control.save(formFields.get());
}

@ -13,14 +13,14 @@
<div>
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnBtnReset${pageName}();">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnReset${pageName}();">
초기화
</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnBtnSearchList${pageName}();">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnSearchList${pageName}();">
검색
</button>
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnBtnExcel${pageName}();">
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnExcel${pageName}();">
엑셀
</button>
</span>
@ -172,13 +172,13 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button type="button" class="btn btn-primary" id="btnUpdate--${pageName}" title="수정" onclick="fnBtnUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdate--${pageName}" title="수정" onclick="fnUpdate${pageName}();">
수정
</button>
<button type="button" class="btn btn-primary" id="btnRemove--${pageName}" title="삭제" onclick="fnBtnRemove${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemove--${pageName}" title="삭제" onclick="fnRemove${pageName}();">
삭제
</button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnDlbrt--${pageName}" title="심의" onclick="fnBtnOpnnSbmsnDlbrt${pageName}();">
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnDlbrt--${pageName}" title="심의" onclick="fnOpnnSbmsnDlbrt${pageName}();">
심의
</button>
</span>
@ -401,6 +401,9 @@
let formFields = new FimsFormFields("#frmSearch--${pageName}");
let formData = formFields.get();
formData.fetchSize = FETCH_XS; // 한번에 조회되는 자료 건수
// 나중에 삭제
formData.sggCd = "41480"; // 시군구 코드 임시
return formData;
@ -500,29 +503,28 @@
* function
**************************************************************************/
// 초기화
fnBtnReset${pageName} = () => {
fnReset${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
fnResetAndChangeBiz${pageName}(taskSeCd);
}
// 검색
fnBtnSearchList${pageName} = () => {
fnSearchList${pageName} = () => {
// 검색조건
${pageName}Control.query = fnGetParams${pageName}();
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.query.delYn = "N"; // 삭제 여부
${pageName}Control.load();
}
// 엑셀
fnBtnExcel${pageName} = () => {
fnExcel${pageName} = () => {
}
// 수정
fnBtnUpdate${pageName} = () => {
fnUpdate${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
@ -541,7 +543,7 @@
}
// 심의
fnBtnOpnnSbmsnDlbrt${pageName} = () => {
fnOpnnSbmsnDlbrt${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
@ -560,7 +562,7 @@
}
// 삭제
fnBtnRemove${pageName} = () => {
fnRemove${pageName} = () => {
dialog.alert({
content : "선택한 의견제출 정보를 삭제하시겠습니까?"
, onOK : () => {

@ -13,14 +13,14 @@
<div>
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnBtnReset${pageName}();">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnReset${pageName}();">
초기화
</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnBtnSearchList${pageName}();">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnSearchList${pageName}();">
검색
</button>
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnBtnExcel${pageName}();">
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnExcel${pageName}();">
엑셀
</button>
</span>
@ -139,10 +139,7 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button type="button" class="btn btn-primary" id="btnCreate--${pageName}" title="등록" onclick="fnBtnCreate${pageName}();">
등록
</button>
<button type="button" class="btn btn-primary" id="btnBfrCrdnTotalInfo--${pageName}" title="이전 단속정보 보기" onclick="fnBtnBfrCrdnTotalInfo${pageName}();">
<button type="button" class="btn btn-primary" id="btnBfrCrdnTotalInfo--${pageName}" title="이전 단속정보 보기" onclick="fnBfrCrdnTotalInfo${pageName}();">
이전 단속정보 보기
</button>
</span>
@ -311,24 +308,6 @@
});
}
// 저장 callback
${pageName}Control.onSave = (resp) => {
if (resp.saved) {
${pageName}Control.load();
}
}
// 저장
${pageName}Control.save = (info) => {
if (!info) return;
ajax.post({
url : ${pageName}Control.urls.create
, data : info
, success : resp => ${pageName}Control.onSave(resp)
});
}
/**************************************************************************
*
**************************************************************************/
@ -364,6 +343,9 @@
let formFields = new FimsFormFields("#frmSearch--${pageName}");
let formData = formFields.get();
formData.fetchSize = FETCH_XS; // 한번에 조회되는 자료 건수
// 나중에 삭제
formData.sggCd = "41480"; // 시군구 코드 임시
return formData;
@ -423,52 +405,28 @@
* function
**************************************************************************/
// 초기화
fnBtnReset${pageName} = () => {
fnReset${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
fnResetAndChangeBiz${pageName}(taskSeCd);
}
// 검색
fnBtnSearchList${pageName} = () => {
fnSearchList${pageName} = () => {
// 검색조건
${pageName}Control.query = fnGetParams${pageName}();
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.query.delYn = "N"; // 삭제 여부
${pageName}Control.load(1);
${pageName}Control.load();
}
// 엑셀
fnBtnExcel${pageName} = () => {
fnExcel${pageName} = () => {
}
// 등록 - 샘플
fnBtnCreate${pageName} = () => {
let taskSeCd = $("#layout-navbar input[name='taskSeCd']:checked").val();
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 부과제외ID 가 없다면.. return
if (crdnId == undefined || crdnId == "") {
return;
}
let params = {
taskSeCd : taskSeCd
, bfrCrdnId : crdnId
};
dialog.alert({
content : "현재 정보를 단속자료 재 등록 하겠습니까?"
, onOK : () => {
${pageName}Control.save(params);
}
});
}
// 이전 단속정보 보기
fnBtnBfrCrdnTotalInfo${pageName} = () => {
fnBfrCrdnTotalInfo${pageName} = () => {
let bfrCrdnId = ${pageName}Control.dataset.getValue("BFR_CRDN_ID");
// 개별총정보 dialog

@ -327,6 +327,7 @@ $(document).ready(function(){
var formFields = new FimsFormFields("#frmSearch--${pageName}");
var data = formFields.get();
data.fetchSize = $P.rductControl.defaultFetchSize;
data.sggCd = "41480";
return data;
}

@ -150,6 +150,8 @@
// 단속 정보
fnBtnCrdnPayerInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
let sggCd = ${pageName}Control.dataset.getValue("SGG_CD");
let taskSeCd = ${pageName}Control.dataset.getValue("TASK_SE_CD");
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
@ -159,6 +161,8 @@
let params = {
callPurpose : "view"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, delYn : "N"
};
@ -174,6 +178,8 @@
// 의견제출 정보
fnBtnOpnnSbmsnInfo${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
let sggCd = ${pageName}Control.dataset.getValue("SGG_CD");
let taskSeCd = ${pageName}Control.dataset.getValue("TASK_SE_CD");
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
@ -183,6 +189,8 @@
let params = {
callPurpose : "view"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, delYn : "N"
};

@ -16,25 +16,25 @@
<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="btnOpenCvlcptOrgnl--${pageName}" title="민원 원본 보기" onclick="fnBtnOpenCvlcptOrgnl${pageName}();">
<button type="button" class="btn btn-primary" id="btnOpenCvlcptOrgnl--${pageName}" title="민원 원본 보기" onclick="fnOpenCvlcptOrgnl${pageName}();">
민원 원본 보기
</button>
<button type="button" class="btn btn-primary" id="btnOpenAnswerPreview--${pageName}" title="민원 답변 보기" onclick="fnBtnOpenAnswerPreview${pageName}();">
<button type="button" class="btn btn-primary" id="btnOpenAnswerPreview--${pageName}" title="민원 답변 보기" onclick="fnOpenAnswerPreview${pageName}();">
민원 답변 보기
</button>
<button type="button" class="btn btn-primary" id="btnCrdnUpdate--${pageName}" title="단속정보 수정" onclick="fnBtnCrdnUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdateCrdn--${pageName}" title="단속정보 수정" onclick="fnUpdateCrdn${pageName}();">
단속 정보 수정
</button>
<button type="button" class="btn btn-primary" id="btnCrdnReReg--${pageName}" title="단속 재등록" onclick="btnCrdnReReg${pageName}();">
<button type="button" class="btn btn-primary" id="btnCreateCrdnReReg--${pageName}" title="단속 재등록" onclick="fnCreateCrdnReReg${pageName}();">
단속 재등록
</button>
<button type="button" class="btn btn-primary" id="btnCrdnRemove--${pageName}" title="자료 삭제" onclick="fnBtnCrdnRemove${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemoveCrdn--${pageName}" title="자료 삭제" onclick="fnRemoveCrdn${pageName}();">
자료 삭제
</button>
<button type="button" class="btn btn-primary" id="btnNoticeOtpt--${pageName}" title="고지서 출력" onclick="fnBtnNoticeOtpt${pageName}();">
<button type="button" class="btn btn-primary" id="btnPrintNotice--${pageName}" title="고지서 출력" onclick="fnPrintNotice${pageName}();">
고지서 출력
</button>
<button type="button" class="btn btn-primary" id="btnCrdnSttsUpdate--${pageName}" title="단속 상태 변경" onclick="fnBtnCrdnSttsUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdateCrdnSttsCd--${pageName}" title="단속 상태 변경" onclick="fnUpdateCrdnSttsCd${pageName}();">
단속 상태 변경
</button>
</span>
@ -342,12 +342,12 @@
/**************************************************************************
*
**************************************************************************/
// 민원 원본 보기
openCvlcptOrgnl${pageName} = (params) => {
let taskSeCd = ${pageName}Control.dataset.getValue("TASK_SE_CD");
let dialogId = "cvlcptOrgnlDialog--${pageName}";
ajax.get({
url : wctx.url("/" + taskSeCd + "/cvlc/cvlc01/050/info.do")
url : wctx.url("/" + params.taskSeCd + "/cvlc/cvlc01/050/info.do")
, data : params || {}
, success : resp => {
dialog.open({
@ -360,6 +360,22 @@
})
}
// 단속 재등록
createCrdnReReg = (params) => {
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/excl/excl03/010/create.do")
, data : params || {}
, success : resp => {
if (resp.saved) {
dialog.alert("저장됐습니다.");
dialog.close(${pageName}Control.prefix + "Dialog");
}
}
});
}
/**************************************************************************
* 초기 셋팅
**************************************************************************/
@ -418,8 +434,10 @@
* function
**************************************************************************/
// 민원 원본 보기
fnBtnOpenCvlcptOrgnl${pageName} = () => {
fnOpenCvlcptOrgnl${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
@ -427,57 +445,67 @@
}
let params = {
crdnId : crdnId
callPurpose : "create"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
};
openCvlcptOrgnl${pageName}(params);
}
// 민원 답변 보기
fnBtnOpenAnswerPreview${pageName} = () => {
fnOpenAnswerPreview${pageName} = () => {
console.log("민원 답변 보기");
}
// 단속정보 수정
fnBtnCrdnUpdate${pageName} = () => {
fnUpdateCrdn${pageName} = () => {
console.log("단속정보 수정");
}
// 부과취소 재등록
btnCrdnReReg${pageName} = () => {
console.log("부과취소 재등록");
}
// 단속 재등록
fnCreateCrdnReReg${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
// 자료 삭제
fnBtnCrdnRemove${pageName} = () => {
console.log("자료 삭제");
// 단속 ID 가 없다면.. return
if (crdnId == undefined || crdnId == "") {
return;
}
// 수기 수납 등록
fnBtnRcvmtCreate${pageName} = () => {
console.log("수기 수납 등록");
let params = {
callPurpose : "create"
, bfrCrdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
};
dialog.alert({
content : "현재 정보를 단속 재등록 하겠습니까?"
, onOK : () => {
createCrdnReReg(params);
}
});
}
// 수기 수납 삭제
fnBtnRcvmtRemove${pageName} = () => {
console.log("수기 수납 삭제");
// 자료 삭제
fnRemoveCrdn${pageName} = () => {
console.log("자료 삭제");
}
// 고지서 출력
fnBtnNoticeOtpt${pageName} = () => {
fnPrintNotice${pageName} = () => {
console.log("고지서 출력");
}
// 단속 상태 변경
fnBtnCrdnSttsUpdate${pageName} = () => {
fnUpdateCrdnSttsCd${pageName} = () => {
console.log("단속 상태 변경");
}
// 우편번호 검색
fnBtnZip${pageName} = () => {
}
/**************************************************************************
* script 진입
**************************************************************************/

@ -18,16 +18,16 @@
<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="btnOpnnSbmsnCreate--${pageName}" title="의견제출 등록" onclick="fnBtnOpnnSbmsnCreate${pageName}();">
<button type="button" class="btn btn-primary" id="btnCreateOpnnSbmsn--${pageName}" title="의견제출 등록" onclick="fnCreateOpnnSbmsn${pageName}();">
의견제출 등록
</button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnUpdate--${pageName}" title="의견제출 수정" onclick="fnBtnOpnnSbmsnUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdateOpnnSbmsn--${pageName}" title="의견제출 수정" onclick="fnUpdateOpnnSbmsn${pageName}();">
의견제출 수정
</button>
<button type="button" class="btn btn-primary" id="btnOpnnSbmsnRemove--${pageName}" title="의견제출 삭제" onclick="fnBtnOpnnSbmsnRemove${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemoveOpnnSbmsn--${pageName}" title="의견제출 삭제" onclick="fnRemoveOpnnSbmsn${pageName}();">
의견제출 삭제
</button>
<button type="button" class="btn btn-primary" id="btnDlbrtLtfrPrint--${pageName}" title="심의의결서 출력" onclick="fnBtnDlbrtLtfrPrint${pageName}();">
<button type="button" class="btn btn-primary" id="btnPrintDlbrtLtfr--${pageName}" title="심의의결서 출력" onclick="fnPrintDlbrtLtfr${pageName}();">
심의의결서 출력
</button>
</span>
@ -133,7 +133,7 @@
<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 type="button" class="btn btn-primary" id="btnUpdateOpnnSbmsnDlbrt--${pageName}" title="의견제출 심의" onclick="fnUpdateOpnnSbmsnDlbrt${pageName}();">
의견제출 심의
</button>
</span>
@ -180,7 +180,7 @@
* Global Variable
**************************************************************************/
// URL
var ${pageName}PrefixUrl = "/sprt/sprt02";
var ${pageName}PrefixUrl = "/excl/excl02";
// FormFields
var ${pageName}Fields = new FormFields("#frmEdit--${pageName}");
// 파일 리스트
@ -190,7 +190,7 @@
* DatasetControl
**************************************************************************/
var ${pageName}Control = new DatasetControl({
prefix : "totalInfoOpnnSbmsn"
prefix : "opnnInfo"
, prefixName : "의견제출"
, keymapper : info => info ? info.OPNN_ID : ""
, dataGetter : obj => obj.opnnSbmsn
@ -211,10 +211,10 @@
}
/**************************************************************************
*
* DatasetControl 이벤트
**************************************************************************/
// 의견제출 dialog
${pageName}Control.getOpnnSbmsnInfo = (params) => {
${pageName}Control.getInfo = (params) => {
let dialogTitle = "";
if (params.callPurpose == "create") {
@ -226,24 +226,24 @@
}
ajax.get({
url : wctx.url("/excl/excl02/020/info.do")
url : wctx.url("/" + params.taskSeCd + ${pageName}PrefixUrl + "/020/info.do")
, data : params || {}
, success : resp => {
dialog.open({
id : "opnnInfoDialog"
id : ${pageName}Control.prefixed("Dialog")
, title : dialogTitle
, content : resp
, size : "xl"
, onClose : () => { fnDataRefreshInfo(params.crdnId); } // callback 자료 조회
, onClose : () => { fnDataRefreshInfo(); } // callback 자료 조회
});
}
});
}
// 삭제 callback
${pageName}Control.onRemoveOpnnSbmsn = (resp) => {
${pageName}Control.onRemove = (resp) => {
if (resp.saved) {
fnDataRefreshInfo(); // 자료 조회
fnDataRefreshInfo(); // 자료 조회
}
}
@ -252,12 +252,15 @@
ajax.post({
url : wctx.url("/excl/excl02/010/remove.do")
, data : params || {}
, success : resp => ${pageName}Control.onRemoveOpnnSbmsn(resp)
, success : resp => ${pageName}Control.onRemove(resp)
});
}
/**************************************************************************
*
**************************************************************************/
// 심의 dialog
${pageName}Control.getOpnnSbmsnDlbrtInfo = (params) => {
${pageName}Control.getInfoOpnnSbmsnDlbrt = (params) => {
ajax.get({
url : wctx.url("/excl/excl02/030/info.do")
, data : params || {}
@ -274,7 +277,7 @@
});
}
// 재조회
// 자료 재조회
fnDataRefreshInfo = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
@ -294,8 +297,11 @@
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, success : resp => {
${pageName}Control.dataset.clear();
${pageName}Control.setData([resp.opnnSbmsn]); // Dataset 셋팅
if (resp.opnnSbmsn) {
${pageName}Control.setData([resp.opnnSbmsn]);
} else {
$("#frmEdit--${pageName}")[0].reset();
}
}
});
}
@ -317,8 +323,10 @@
* function
**************************************************************************/
// 의견제출 등록
fnBtnOpnnSbmsnCreate${pageName} = () => {
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
fnCreateOpnnSbmsn${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
@ -328,15 +336,19 @@
let params = {
callPurpose : "create"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
};
${pageName}Control.getOpnnSbmsnInfo(params);
${pageName}Control.getInfo(params);
}
// 의견제출 수정
fnBtnOpnnSbmsnUpdate${pageName} = () => {
fnUpdateOpnnSbmsn${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 의견 ID 가 없다면.. return
if (opnnId == null || opnnId == "") {
@ -345,17 +357,21 @@
let params = {
callPurpose : "update"
, opnnId : opnnId
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, opnnId : opnnId
};
${pageName}Control.getOpnnSbmsnInfo(params);
${pageName}Control.getInfo(params);
}
// 의견제출 삭제
fnBtnOpnnSbmsnRemove${pageName} = () => {
fnRemoveOpnnSbmsn${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
// 의견 ID 가 없다면.. return
if (opnnId == null || opnnId == "") {
@ -363,9 +379,11 @@
}
let params = {
callPurpose : "remove"
, opnnId : opnnId
callPurpose : "update"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, opnnId : opnnId
};
dialog.alert({
@ -377,7 +395,7 @@
}
// 의견제출 심의
fnBtnOpnnSbmsnDlbrt${pageName} = () => {
fnUpdateOpnnSbmsnDlbrt${pageName} = () => {
let opnnId = ${pageName}Control.dataset.getValue("OPNN_ID");
let crdnId = ${pageName}Control.dataset.getValue("CRDN_ID");
@ -392,11 +410,11 @@
, crdnId : crdnId
};
${pageName}Control.getOpnnSbmsnDlbrtInfo(params);
${pageName}Control.getInfoOpnnSbmsnDlbrt(params);
}
// 심의의결서 출력
fnBtnDlbrtLtfrPrint${pageName} = () => {
fnPrintDlbrtLtfr${pageName} = () => {
alert("심의의결서 출력");
}
@ -460,8 +478,11 @@
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅
${pageName}Control.setData([${opnnSbmsn}]);
// 의견제출 정보 Data 셋팅
let opnnSbmsn = ${opnnSbmsn};
if (opnnSbmsn) {
${pageName}Control.setData([opnnSbmsn]);
}
});
// #sourceURL=sprt02030-info.jsp

@ -320,7 +320,7 @@
**************************************************************************/
// 감경 선택 자료 변경 이벤트
${pageName}${pageDataName1}Control.onCurrentChange = item => {
${pageName}Fields.set(item);
${pageName}${pageDataName1}Fields.set(item);
}
// 감경 dialog
@ -348,7 +348,7 @@
}
dialog.open({
id : ${pageName}${pageDataName2}Control.prefixed("Dialog")
id : ${pageName}${pageDataName1}Control.prefixed("Dialog")
, title : dialogTitle
, content : resp
, size : "lg"
@ -452,17 +452,15 @@
${pageName}${pageDataName4}Dataset.clear();
// 감경 정보 Data 셋팅
let rduct = resp.rduct;
if (rduct) {
${pageName}${pageDataName1}Control.setData([rduct]);
if (resp.rduct) {
${pageName}${pageDataName1}Control.setData([resp.rduct]);
} else {
$("#frmEdit--${pageName}${pageDataName1}")[0].reset();
}
// 부과제외 정보 Data 셋팅
let levyExcl = resp.levyExcl;
if (levyExcl) {
${pageName}${pageDataName2}Control.setData([levyExcl]);
if (resp.levyExcl) {
${pageName}${pageDataName2}Control.setData([resp.levyExcl]);
} else {
$("#frmEdit--${pageName}${pageDataName2}")[0].reset();
}
@ -526,7 +524,24 @@
**************************************************************************/
// 감경 등록
fnCreateRduct${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
if (crdnId == undefined || crdnId == "") {
return;
}
let params = {
callPurpose : "create"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, levyExclSeCd : "1"
};
${pageName}${pageDataName1}Control.getInfo(params);
}
// 감경 수정
@ -622,22 +637,22 @@
// 화면 초기 설정
initForm${pageName}();
// 감경 정보 Control 셋팅
// 감경 정보 Data 셋팅
let rduct = ${rduct};
if (rduct) {
${pageName}${pageDataName1}Control.setData([rduct]);
}
// 부과제외 정보 Control 셋팅
// 부과제외 정보 Data 셋팅
let levyExcl = ${levyExcl};
if (levyExcl) {
${pageName}${pageDataName2}Control.setData([levyExcl]);
}
// 처리 상태 이력 Dataset 셋팅
// 처리 상태 이력 Data 셋팅
${pageName}${pageDataName3}Dataset.setData(${crdnSttsHstryList});
// 주소 변동 이력 Dataset 셋팅
// 주소 변동 이력 Data 셋팅
${pageName}${pageDataName4}Dataset.setData(${crdnPayerHstryList});
});

@ -175,11 +175,6 @@
</div> <!-- <div class="container-page-btn"> -->
<div class="row g-1">
<!-- 납부 번호 -->
<div class="col-md-12">
<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 />
</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>
@ -187,10 +182,10 @@
</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>
<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">
<textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" data-map="VR_ACTNO" rows="12" >
<textarea type="text" class="form-control w-100" id="vrActno--${pageName}" name="vrActno" data-map="VR_ACTNO" rows="13" >
</textarea>
</div>
</div>
@ -331,10 +326,10 @@
// 화면 초기 설정
initForm${pageName}();
// 부과 정보 Control 셋팅
// 부과 정보 Data 셋팅
let levy = ${levy};
if (levy) {
${pageName}${pageDataName1}Control.setData([levy]); // Dataset 셋팅
${pageName}${pageDataName1}Control.setData([levy]);
}
});

@ -10,6 +10,15 @@
<!-- 업무 버튼 -->
<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="btnCreateRcvmt--${pageName}" title="수기 수납 등록" onclick="fnCreateRcvmt${pageName}();">
수기 수납 등록
</button>
<button type="button" class="btn btn-primary" id="btnRemoveRcvmt--${pageName}" title="수기 수납 삭제" onclick="fnRemoveRcvmt${pageName}();">
수기 수납 삭제
</button>
</span>
</div> <!-- <div class="container-page-btn"> -->
<!-- 입력 영역 -->
@ -274,7 +283,15 @@
/**************************************************************************
* function
**************************************************************************/
// 수기 수납 등록
fnCreateRcvmt${pageName} = () => {
alert("수기 수납 등록");
}
// 수기 수납 삭제
fnRemoveRcvmt${pageName} = () => {
alert("수기 수납 삭제");
}
/**************************************************************************
* script 진입
@ -286,7 +303,7 @@
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅
// Data 셋팅
${pageName}Control.setData(${rcvmt});
});

@ -171,7 +171,7 @@
/**************************************************************************
*
**************************************************************************/
// DataTables에 click, dbclick 이벤트
// DataTables에 click 이벤트
renderList${pageName} = () => {
let ${infoPrefix}List = ${pageName}Control.dataset;
let empty = ${infoPrefix}List.empty;
@ -297,7 +297,7 @@
};
dialog.alert({
content : "선택한 민원상담 내용을 삭제하시겠습니까?"
content : "선택한 " + ${pageName}Control.prefixName + " 내용을 삭제하시겠습니까?"
, onOK : () => {
${pageName}Control.remove(params);
}
@ -314,7 +314,7 @@
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅
// Data 셋팅
${pageName}Control.setData(${cvlcptDscsnCn});
});

@ -13,14 +13,14 @@
<div>
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnBtnReset${pageName}();">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화" onclick="fnReset${pageName}();">
초기화
</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnBtnSearchList${pageName}();">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색" onclick="fnSearchList${pageName}();">
검색
</button>
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnBtnExcel${pageName}();">
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀" onclick="fnExcel${pageName}();">
엑셀
</button>
</span>
@ -576,9 +576,6 @@
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked", true);
fnResetAndChangeBiz${pageName}(defaultBizValue);
// Dataset 셋팅 - 화면이 열리면서 조회하는 경우 addData 하여 자료를 추가
// ${pageName}Control.addData(${levyExcl});
});
// #sourceURL=excl01010-main.jsp

@ -146,7 +146,7 @@
// 화면 초기 설정
initForm${pageName}();
// Dataset 셋팅 - 단건일 경우 setData
// Data 셋팅
${pageName}Control.setData([${cvlcptDscsnCn}]);
});

Loading…
Cancel
Save