단속파일 세외수입전송 처리 URL 추가

main
이범준 10 months ago
parent b97c2a607f
commit be4843320e

@ -42,6 +42,7 @@ public class Crdn06Controller extends ApplicationController {
, removeCrackdown = "/010/remove.do" , removeCrackdown = "/010/remove.do"
, removeCrackdownPayer = "/010/removeCrdnPayer.do" , removeCrackdownPayer = "/010/removeCrdnPayer.do"
, countCrdn = "/010/nocs.do" , countCrdn = "/010/nocs.do"
, sendCrdn = "/010/sendCrdn.do"
, getCrackdownInfo = "/020/info.do" , getCrackdownInfo = "/020/info.do"
, updateCrackdown = "/020/update.do" , updateCrackdown = "/020/update.do"
, getCrackdownStatusInfo = "/030/info.do" , getCrackdownStatusInfo = "/030/info.do"
@ -198,6 +199,23 @@ public class Crdn06Controller extends ApplicationController {
return mav; return mav;
} }
/** .
* @param CrdnIDs ID
* @return jsonView
* <pre><code> {
* "affected":
* "saved": true, false
* }</code></pre>
*/
public ModelAndView sendCrdn(String... crdnIDs) {
ModelAndView mav = new ModelAndView("jsonView");
//TODO :
mav.addObject("saved", true);
return mav;
}
/** ID (info) . /** ID (info) .
* @param query * @param query

@ -11,7 +11,6 @@ import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.CrdnQuery; import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.ExmptnVhcl; import cokr.xit.fims.crdn.ExmptnVhcl;
import cokr.xit.fims.crdn.Team; import cokr.xit.fims.crdn.Team;
import cokr.xit.fims.crdn.web.Crdn06Controller.METHOD_URL;
import cokr.xit.fims.cvlc.CrdnCvlcpt; import cokr.xit.fims.cvlc.CrdnCvlcpt;
import cokr.xit.fims.excl.CrdnReReg; import cokr.xit.fims.excl.CrdnReReg;
import cokr.xit.fims.excl.LevyExcl; import cokr.xit.fims.excl.LevyExcl;
@ -298,6 +297,12 @@ public class BpvController {
return super.countCrdn(query); return super.countCrdn(query);
} }
@Override
@RequestMapping(name="전용차로과태료업무 단속자료압축파일 세외수입 전송", value=METHOD_URL.sendCrdn)
public ModelAndView sendCrdn(String... crdnIDs) {
return super.sendCrdn(crdnIDs);
}
@Override @Override
@RequestMapping(name="전용차로과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo) @RequestMapping(name="전용차로과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo)
public ModelAndView getCrackdownStatusInfo(CrdnQuery query) { public ModelAndView getCrackdownStatusInfo(CrdnQuery query) {

@ -337,6 +337,13 @@ public class DpvController {
return super.countCrdn(query); return super.countCrdn(query);
} }
@Override
@RequestMapping(name="장애인과태료업무 단속자료압축파일 세외수입 전송", value=METHOD_URL.sendCrdn)
public ModelAndView sendCrdn(String... crdnIDs) {
return super.sendCrdn(crdnIDs);
}
@Override @Override
@RequestMapping(name="장애인과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo) @RequestMapping(name="장애인과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo)
public ModelAndView getCrackdownStatusInfo(CrdnQuery query) { public ModelAndView getCrackdownStatusInfo(CrdnQuery query) {

@ -9,7 +9,6 @@ import org.springframework.web.servlet.ModelAndView;
import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.CrdnQuery; import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.web.Crdn06Controller.METHOD_URL;
import cokr.xit.fims.cvlc.CrdnCvlcpt; import cokr.xit.fims.cvlc.CrdnCvlcpt;
import cokr.xit.fims.excl.CrdnReReg; import cokr.xit.fims.excl.CrdnReReg;
import cokr.xit.fims.excl.LevyExcl; import cokr.xit.fims.excl.LevyExcl;
@ -297,6 +296,12 @@ public class EcaController {
return super.countCrdn(query); return super.countCrdn(query);
} }
@Override
@RequestMapping(name="전기차과태료업무 단속자료압축파일 세외수입 전송", value=METHOD_URL.sendCrdn)
public ModelAndView sendCrdn(String... crdnIDs) {
return super.sendCrdn(crdnIDs);
}
@Override @Override
@RequestMapping(name="전기차과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo) @RequestMapping(name="전기차과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo)
public ModelAndView getCrackdownStatusInfo(CrdnQuery query) { public ModelAndView getCrackdownStatusInfo(CrdnQuery query) {

@ -10,7 +10,6 @@ import org.springframework.web.servlet.ModelAndView;
import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.CrdnQuery; import cokr.xit.fims.crdn.CrdnQuery;
import cokr.xit.fims.crdn.Team; import cokr.xit.fims.crdn.Team;
import cokr.xit.fims.crdn.web.Crdn06Controller.METHOD_URL;
import cokr.xit.fims.cvlc.CrdnCvlcpt; import cokr.xit.fims.cvlc.CrdnCvlcpt;
import cokr.xit.fims.excl.CrdnReReg; import cokr.xit.fims.excl.CrdnReReg;
import cokr.xit.fims.excl.LevyExcl; import cokr.xit.fims.excl.LevyExcl;
@ -310,6 +309,12 @@ public class PvsController {
return super.countCrdn(query); return super.countCrdn(query);
} }
@Override
@RequestMapping(name="주정차과태료업무 단속자료압축파일 세외수입 전송", value=METHOD_URL.sendCrdn)
public ModelAndView sendCrdn(String... crdnIDs) {
return super.sendCrdn(crdnIDs);
}
@Override @Override
@RequestMapping(name="주정차과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo) @RequestMapping(name="주정차과태료업무 단속자료 조회", value=METHOD_URL.getCrackdownStatusInfo)
public ModelAndView getCrackdownStatusInfo(CrdnQuery query) { public ModelAndView getCrackdownStatusInfo(CrdnQuery query) {

@ -139,8 +139,11 @@
</ul> </ul>
</div> </div>
<span class="container-window-btn-right"> <span class="container-window-btn-right">
<button type="button" class="btn btn-primary w-px-120"
</span> id="btnSendCrdn--${pageName}" title="세외수입 전송">
&#x2611; 세외수입 전송
</button>
</span>
</div> </div>
</div> </div>
@ -161,6 +164,10 @@
<template id="crdnCols--${pageName}"> <template id="crdnCols--${pageName}">
<th style="width: 80px;" class="cmn">No.</th> <th style="width: 80px;" class="cmn">No.</th>
<th class="cmn" style="width: 56px;">
<input type="checkbox" class="form-check-input"
onchange="pageObject['${pageName}'].crdnControl.select(this.checked);" />
</th>
<th onclick="searchFromGridTitle('CRDN_INPT_SE_CD',this.innerText,'codeValue','FIM003');" <th onclick="searchFromGridTitle('CRDN_INPT_SE_CD',this.innerText,'codeValue','FIM003');"
style="width: 160px;" class="pvs bpv dpv eca">자료출처</th> style="width: 160px;" class="pvs bpv dpv eca">자료출처</th>
<th onclick="searchFromGridTitle('VHRNO',this.innerText,'match','part');" <th onclick="searchFromGridTitle('VHRNO',this.innerText,'match','part');"
@ -190,6 +197,10 @@
<template id="crdnRow--${pageName}"> <template id="crdnRow--${pageName}">
<tr data-key="{CRDN_ID}"> <tr data-key="{CRDN_ID}">
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-end cmn">{ROW_NUM}</td> <td onclick="{onclick}" ondblclick="{ondblclick}" class="text-end cmn">{ROW_NUM}</td>
<td class="cmn text-center">
<input type="checkbox" class="form-check-input" value="{CRDN_ID}"
onchange="pageObject['${pageName}'].crdnControl.select('{CRDN_ID}', this.checked);">
</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{CRDN_INPT_SE_CD}</td> <td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{CRDN_INPT_SE_CD}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{VHRNO}</td> <td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{VHRNO}</td>
<td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{CRDN_YMD_TM}</td> <td onclick="{onclick}" ondblclick="{ondblclick}" class="text-center cmn">{CRDN_YMD_TM}</td>
@ -207,27 +218,27 @@
</template> </template>
<template id="crdnNotFound--${pageName}"> <template id="crdnNotFound--${pageName}">
<tr class="dpv"> <tr class="dpv">
<td valign="top" colspan="14" class="dataTables_empty text-center"> <td valign="top" colspan="15" class="dataTables_empty text-center">
단속 정보를 찾지 못했습니다. 단속 정보를 찾지 못했습니다.
</td> </td>
</tr> </tr>
<tr class="eca"> <tr class="eca">
<td valign="top" colspan="13" class="dataTables_empty text-center"> <td valign="top" colspan="14" class="dataTables_empty text-center">
단속 정보를 찾지 못했습니다. 단속 정보를 찾지 못했습니다.
</td> </td>
</tr> </tr>
<tr class="pvs"> <tr class="pvs">
<td valign="top" colspan="13" class="dataTables_empty text-center"> <td valign="top" colspan="12" class="dataTables_empty text-center">
단속 정보를 찾지 못했습니다. 단속 정보를 찾지 못했습니다.
</td> </td>
</tr> </tr>
<tr class="bpv"> <tr class="bpv">
<td valign="top" colspan="12" class="dataTables_empty text-center"> <td valign="top" colspan="11" class="dataTables_empty text-center">
단속 정보를 찾지 못했습니다. 단속 정보를 찾지 못했습니다.
</td> </td>
</tr> </tr>
<tr class="tpv"> <tr class="tpv">
<td valign="top" colspan="11" class="dataTables_empty text-center"> <td valign="top" colspan="10" class="dataTables_empty text-center">
단속 정보를 찾지 못했습니다. 단속 정보를 찾지 못했습니다.
</td> </td>
</tr> </tr>
@ -331,6 +342,18 @@ $(document).ready(function(){
} }
} }
$P.crdnControl.onSelectionChange = (selected) => {
var crdnDS = $P.crdnControl.dataset;
var keys = selected.map(e => crdnDS.getKey(e));
$("#tbody--${pageName} input[type='checkbox']").each(function() {
var checkbox = $(this);
checkbox.prop("checked", keys.includes(checkbox.val()));
});
$("#btnSendCrdn--${pageName}").prop("disabled", keys.length < 1);
};
/************************************************************************** /**************************************************************************
* pageObject.function * pageObject.function
**************************************************************************/ **************************************************************************/
@ -483,6 +506,32 @@ $(document).ready(function(){
$P.crdnControl.download(); $P.crdnControl.download();
}); });
$('#btnSendCrdn--${pageName}').on('click', function(){
var datas = $P.crdnControl.dataset.getDataset("selected");
var taskSeCd = datas[0].TASK_SE_CD;
var keys = $P.crdnControl.dataset.getKeys("selected");
ajax.post({
url : wctx.url("/"+taskSeCd+"/crdn/crdn06/010/sendCrdn.do"),
data : { "crdnIDs" : keys.join(",") },
success : resp => {
if(resp.saved){
dialog.alert({
content : "처리되었습니다.",
init : function() {
setDialogZindex();
focusClose();
},
onClose : function(){
$P.refreshCrdnList();
}
});
}
}
});
});
fnMakeScrollableTable($("#table-responsive--${pageName}")[0], $P.scrollCrdnList); fnMakeScrollableTable($("#table-responsive--${pageName}")[0], $P.scrollCrdnList);
/************************************************************************** /**************************************************************************

@ -167,7 +167,8 @@
<template id="selectStngButtonsTemplate"> <template id="selectStngButtonsTemplate">
<span class="row g-3" style="display: flex;flex-direction:column"> <span class="row g-3" style="display: flex;flex-direction:column">
<button type="button" class="btn btn-xl btn-primary">장비단속파일 서식 설정</button> <button type="button" class="btn btn-xl btn-primary">수신단속파일(장비) 서식 설정</button>
<button type="button" class="btn btn-xl btn-primary">송신단속파일(차세대) 서식 설정</button>
<button type="button" class="btn btn-xl btn-primary">출력물 서식 설정</button> <button type="button" class="btn btn-xl btn-primary">출력물 서식 설정</button>
<button type="button" class="btn btn-xl btn-primary">pdf 고지서 정보 추출 설정</button> <button type="button" class="btn btn-xl btn-primary">pdf 고지서 정보 추출 설정</button>
</span> </span>
@ -187,7 +188,7 @@ function fnOpenStngDialog(){
id : "selectStngDialog", id : "selectStngDialog",
title : "설정 선택", title : "설정 선택",
content : document.getElementById("selectStngButtonsTemplate").innerHTML, content : document.getElementById("selectStngButtonsTemplate").innerHTML,
size : "sm", size : "md",
init : () => {}, init : () => {},
onClose : () => {} onClose : () => {}
}); });

Loading…
Cancel
Save