From d11658f94944e50637fc786d2d3ae5a75d7d6e9b Mon Sep 17 00:00:00 2001 From: minuk926 Date: Wed, 1 Feb 2023 16:10:16 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EB=8B=A8=EC=86=8D=ED=98=84=ED=99=A9=20?= =?UTF-8?q?=EA=B4=80=EB=A6=AC=20=EC=A7=84=ED=96=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/kr/xit/fims/biz/FimsConst.java | 9 +- .../cmm/web/FimsCrackDownMgtController.java | 27 +- .../biz/cmm/cmmFimsCrackdownDtlMgtPopup.jsp | 452 ++++++++++++++++++ ...up.jsp => cmmFimsCrackdownTotMgtPopup.jsp} | 26 +- .../rt/rtCrackdownExtrInterfaceMgtForm.jsp | 66 +-- .../resources/biz/common/js/codeComboData.js | 4 +- .../resources/biz/common/js/fimsApiURL.js | 5 +- 7 files changed, 533 insertions(+), 56 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownDtlMgtPopup.jsp rename src/main/webapp/WEB-INF/jsp/fims/biz/cmm/{cmmFimsCrackdownMgtPopup.jsp => cmmFimsCrackdownTotMgtPopup.jsp} (97%) diff --git a/src/main/java/kr/xit/fims/biz/FimsConst.java b/src/main/java/kr/xit/fims/biz/FimsConst.java index a4cc88d9..d49931b7 100644 --- a/src/main/java/kr/xit/fims/biz/FimsConst.java +++ b/src/main/java/kr/xit/fims/biz/FimsConst.java @@ -89,10 +89,11 @@ public class FimsConst { @Getter @AllArgsConstructor public enum RegltSeCode { - CCTV_FIX("01", "CCTV-고정형") - ,CCTV_DRV("02", "CCTV-주행형") - ,BUS_ONLY("07", "버스전용차로-버스장착형CCTV") - ,CITIZEN("09", "민원-시민신고(국민신문고)") + CCTV_FIX("01", "고정형CCTV") + ,CCTV_DRV("02", "주행형CCTV") + ,BUS_ONLY("07", "버스장착형CCTV") + ,CITIZEN("09", "국민신문고") + ,UNKNOWN("99", "알수없슴") ; private final String code; diff --git a/src/main/java/kr/xit/fims/biz/cmm/web/FimsCrackDownMgtController.java b/src/main/java/kr/xit/fims/biz/cmm/web/FimsCrackDownMgtController.java index ebc5dcdd..4c081d3d 100644 --- a/src/main/java/kr/xit/fims/biz/cmm/web/FimsCrackDownMgtController.java +++ b/src/main/java/kr/xit/fims/biz/cmm/web/FimsCrackDownMgtController.java @@ -1,6 +1,8 @@ package kr.xit.fims.biz.cmm.web; import java.util.Map; +import java.util.Optional; +import java.util.stream.Stream; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; @@ -41,14 +43,31 @@ public class FimsCrackDownMgtController { private final IFimsCrackdownMgtService service; private final IRtCrackdownMgtService rtService; - @RequestMapping(value = "/cmmFimsCrackdownMgtPopup") - public ModelAndView cmmFimsCrackdownMgtPopup(final FimsCrackdownDTO.Request dto){ + @RequestMapping(value = "/cmmFimsCrackdownDtlMgtPopup") + public ModelAndView cmmFimsCrackdownDtlMgtPopup(final FimsCrackdownDTO.Request dto){ ModelAndView mav = new ModelAndView(); // 단속정보 mav.addAllObjects(service.findCrackdownInfo(dto)); - mav.addObject("pageTitle", "개별총정보 등록 / 변경"); - mav.setViewName(FimsConst.FIMS_JSP_BASE_PATH + "cmm/cmmFimsCrackdownMgtPopup.popup"); + mav.addObject("pageTitle", "단속 자료 "); + + Optional regltSeCodeEnum = Stream.of(FimsConst.RegltSeCode.values()) + .filter(e -> e.getCode().equals(dto.getRegltSeCode())) + .findAny(); + + mav.addObject("txtTitle", regltSeCodeEnum.get().getDesc()); + mav.setViewName(FimsConst.FIMS_JSP_BASE_PATH + "cmm/cmmFimsCrackdownDtlMgtPopup.popup"); + return mav; + } + + @RequestMapping(value = "/cmmFimsCrackdownTotMgtPopup") + public ModelAndView cmmFimsCrackdownTotMgtPopup(final FimsCrackdownDTO.Request dto){ + + ModelAndView mav = new ModelAndView(); + // 단속정보 + mav.addAllObjects(service.findCrackdownInfo(dto)); + mav.addObject("pageTitle", "개별총정보 "); + mav.setViewName(FimsConst.FIMS_JSP_BASE_PATH + "cmm/cmmFimsCrackdownTotMgtPopup.popup"); return mav; } diff --git a/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownDtlMgtPopup.jsp b/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownDtlMgtPopup.jsp new file mode 100644 index 00000000..408bf351 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownDtlMgtPopup.jsp @@ -0,0 +1,452 @@ +<%-- +================================================================================ +File : /fims/biz/cmm/cmmCrackdownMgtPopup.jsp +Name : 단속 데이타 처리 - 단속관리>단속현황관리 +Auth : lim.jong.uk +Date : 2022-01-20 +Desc : 단속 데이타 처리 팝업 +================================================================================ +Date Author Description +================================================================================ +================================================================================ +--%> +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ include file="/WEB-INF/jsp/framework/taglibs.jsp"%> + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownMgtPopup.jsp b/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownTotMgtPopup.jsp similarity index 97% rename from src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownMgtPopup.jsp rename to src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownTotMgtPopup.jsp index fcd70e74..ab78356b 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownMgtPopup.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/biz/cmm/cmmFimsCrackdownTotMgtPopup.jsp @@ -1,10 +1,10 @@ <%-- ================================================================================ -File : /fims/biz/cmm/cmmCrackdownMgtPopup.jsp -Name : 단속 처리 메인 팝업 - 단속관리>단속현황관리 +File : /fims/biz/cmm/cmmCrackdownTotMgtPopup.jsp +Name : 단속현황 개별총정보 팝업 - 단속관리>단속현황관리 Auth : lim.jong.uk Date : 2022-01-20 -Desc : 단속자료 처리를 위한 메인 팝업 +Desc : 단속현황 개별총정보 팝업 ================================================================================ Date Author Description ================================================================================ @@ -52,6 +52,7 @@ Date Author Description

위반정보

+ <%@include file="/WEB-INF/jsp/framework/biz-popup-tab-btn.jsp" %>
@@ -286,7 +287,7 @@ Date Author Description - <%@include file="/WEB-INF/jsp/framework/biz-popup-tab-btn.jsp" %> +

진술내역

@@ -559,10 +560,10 @@ Date Author Description ,success: (res) => { cmmImgDownload('#imgList', res.attchFiles, fnPopupBiz.pagePopup, true, '60px'); window.opener.pageNav.reloadNav($('#prev'), $('#next'), $('span#totCnt')) - if(res.ctznDTO?.cvplRceptNo){ - fnPopupBiz.resetDisplay(res.ctznDTO?.cvplRceptNo); - $('#violtDtlsNm').text(res.ctznDTO?.violtDtlsNm); - } + + fnPopupBiz.resetDisplay(res.ctznDTO?.cvplRceptNo); + $('#violtDtlsNm').text(res.ctznDTO?.violtDtlsNm); + setFormData(document.querySelector('#frmReglt'), {...res.infoDTO, ...res.ctznDTO}); setFormData(document.querySelector('#frmPayer'), res.payerDTO); } @@ -635,15 +636,6 @@ Date Author Description return true; } - ,preview: () => { - - if ($("#tmplatSeCode").val() === 'TMPT01') { - const url = ""; - CmmPopup.open(url, {tmplateCours: $("#tmplatCours").val()}, {width: 1024, height: 500}, "템플릿 미리보기"); - } else { - alert('템플릿경로 지정 후 선택해 주세요.'); - } - } ,resetDisplay: (cvplRceptNo) => { if(cvplRceptNo){ $('tr[id*=cctv]').hide(); diff --git a/src/main/webapp/WEB-INF/jsp/fims/biz/rt/rtCrackdownExtrInterfaceMgtForm.jsp b/src/main/webapp/WEB-INF/jsp/fims/biz/rt/rtCrackdownExtrInterfaceMgtForm.jsp index 3e2767d5..bb92d30f 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/biz/rt/rtCrackdownExtrInterfaceMgtForm.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/biz/rt/rtCrackdownExtrInterfaceMgtForm.jsp @@ -98,6 +98,7 @@ Date Author Description **************************************************************************/ popup = null; let GRID = null; + let curClickColName; //var callbackSearch = () => fnBiz.search(); var pageNav = null; @@ -114,13 +115,18 @@ Date Author Description let popTitle; let popOption; switch (flag) { - case "detail": - url = fimsApiUrl.POPUP_RT_REGLT_TOTAL; + case "total": + url = fimsApiUrl.POPUP_CRACKDOWN_TOTAL; popOption = {width: 1200, height:900}; popTitle = "개별총정보"; break; + case "detail": + url = fimsApiUrl.POPUP_CRACKDOWN_DTL; + popOption = {width: 1200, height:900}; + popTitle = "정보 변경"; + break; case "file": - url = fimsApiUrl.POPUP_RT_EXTR_INTERFACE_FILE_SEL; + url = fimsApiUrl.POPUP_EXTR_CRACKDOWN_FILE_SEL; popOption = {width: 900, height:750}; popTitle = "외부연계 데이타 선택"; break; @@ -142,17 +148,22 @@ Date Author Description console.log('>>>>>>',props.columnInfo.name) const selColumn = props.columnInfo.name; + curClickColName = selColumn; switch (selColumn){ case 'vhcleNo': const gridDatas = GRID.store.data.rawData.map(d => { return {extrlRegltCntcId: d.extrlRegltCntcId, regltSeCode: d.regltSeCode, regltId: d.regltId} }) pageNav = new PageNavigation(GRID, gridDatas, props.rowKey); - fnTab0Biz.pagePopup('detail', pageNav.gridInfo.curRowData); + fnTab0Biz.pagePopup('total', pageNav.gridInfo.curRowData); break; case 'cvplRceptNo': - alert('부과 / 서손 / 계도 처리 팝업'); + const rowDatas = GRID.store.data.rawData.map(d => { + return {extrlRegltCntcId: d.extrlRegltCntcId, regltSeCode: d.regltSeCode, regltId: d.regltId} + }) + pageNav = new PageNavigation(GRID, rowDatas, props.rowKey); + fnTab0Biz.pagePopup('detail', pageNav.gridInfo.curRowData); break; default: @@ -214,6 +225,26 @@ Date Author Description } } }, + { + header: '차량번호', + name: 'vhcleNo', + minWidth: 100, + sortable: false, + align: 'center', + renderer: { + type: CustomButtonRenderer, + options: { + formatter: (props)=>{ + return { + formatter: props.grid.getRow(props.rowKey).vhcleNo + ,element: "text" + } + } + ,eventFunction: fnTab0Biz.onClickGrid + ,eventType: "click" + } + } + }, { header: '신고자', name: 'cvplApplcntNm', @@ -235,7 +266,7 @@ Date Author Description editor: { type: "select", options: { - listItems: ComboCodeData.regltSeCode + listItems: [...ComboCodeData.regltSeCode] } }, }, @@ -312,26 +343,6 @@ Date Author Description sortable: false, align: 'center', }, - { - header: '차량번호', - name: 'vhcleNo', - minWidth: 100, - sortable: false, - align: 'center', - renderer: { - type: CustomButtonRenderer, - options: { - formatter: (props)=>{ - return { - formatter: props.grid.getRow(props.rowKey).vhcleNo - ,element: "text" - } - } - ,eventFunction: fnTab0Biz.onClickGrid - ,eventType: "click" - } - } - }, { header: '서손사유', name: 'erppResnDetail', //erppSeCode @@ -461,7 +472,8 @@ Date Author Description }); pageNav.resetGrid(res, datas, (pagiNavigation)=>{ pageNav = pagiNavigation; - fnTab0Biz.pagePopup('detail', pageNav.gridInfo.curRowData); + if(curClickColName === 'vhcleNo') fnTab0Biz.pagePopup('total', pageNav.gridInfo.curRowData); + else fnTab0Biz.pagePopup('detail', pageNav.gridInfo.curRowData); }) } }); diff --git a/src/main/webapp/resources/biz/common/js/codeComboData.js b/src/main/webapp/resources/biz/common/js/codeComboData.js index 79beb9c7..fdb83b96 100644 --- a/src/main/webapp/resources/biz/common/js/codeComboData.js +++ b/src/main/webapp/resources/biz/common/js/codeComboData.js @@ -112,9 +112,9 @@ ComboCodeData = { // 단속처리상태코드 : FIM010 ,regltProcessSttusCode: [ {value: '01', text: '초기상태'} - ,{value: '10', text: '단속'} + ,{value: '10', text: '부과대상'} ,{value: '11', text: '서손'} - ,{value: '12', text: '의견진술수용'} + ,{value: '12', text: '계도'} ,{value: '20', text: '부과'} ] diff --git a/src/main/webapp/resources/biz/common/js/fimsApiURL.js b/src/main/webapp/resources/biz/common/js/fimsApiURL.js index d1711c94..cd147fce 100644 --- a/src/main/webapp/resources/biz/common/js/fimsApiURL.js +++ b/src/main/webapp/resources/biz/common/js/fimsApiURL.js @@ -4,8 +4,9 @@ const fimsApiUrl = { * fims 공통 API URL */ FIND_RCV_PATH_FILES: '/fims/biz/cmm/findRcvPathFiles.do' //연계파일 경로 파일 목록 조회 - ,POPUP_RT_REGLT_TOTAL: '/fims/biz/cmm/cmmFimsCrackdownMgtPopup.do' //단속정보 상세 팝업 - ,POPUP_RT_EXTR_INTERFACE_FILE_SEL: '/fims/biz/cmm/cmmCrackdownRcvFilePopup.do' //CCTV 외부연계 데이타 선택 + ,POPUP_CRACKDOWN_TOTAL: '/fims/biz/cmm/cmmFimsCrackdownTotMgtPopup.do' //단속현황 개별 총정보 팝업 + ,POPUP_CRACKDOWN_DTL: '/fims/biz/cmm/cmmFimsCrackdownDtlMgtPopup.do' //단속 정보 상세 팝업 + ,POPUP_EXTR_CRACKDOWN_FILE_SEL: '/fims/biz/cmm/cmmCrackdownRcvFilePopup.do' //CCTV 외부연계 데이타 선택 ,FIND_CRACKDOWN_INFO: '/fims/biz/cmm/findCrackdownInfoAndAttchFiles.do' //단속현황-개별총정보 위반정보탭 조회 ,FIND_CRACKDOWNS: '/fims/biz/cmm/findCrackdownInfos.do' //단속현황-외부연계자료목록 /**
위반정보 상세