From b2b12d070fd736c5d4ffa614649442df1c7bbfbf Mon Sep 17 00:00:00 2001 From: jjh Date: Thu, 9 Nov 2023 18:10:09 +0900 Subject: [PATCH] =?UTF-8?q?1.=20=EA=B3=B5=EC=8B=9C=EC=86=A1=EB=8B=AC=20?= =?UTF-8?q?=ED=98=84=ED=99=A9=20=EC=88=98=EC=A0=95.=202.=20=EA=B3=B5?= =?UTF-8?q?=EC=8B=9C=EC=86=A1=EB=8B=AC=20=EC=83=81=EC=84=B8=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cokr/xit/fims/sndb/SndbQuery.java | 22 ++ .../cokr/xit/fims/sndb/dao/SvbtcMapper.java | 8 + .../xit/fims/sndb/service/SndngService.java | 27 +- .../xit/fims/sndb/service/bean/SndngBean.java | 10 + .../sndb/service/bean/SndngServiceBean.java | 5 + .../xit/fims/sndb/web/Sndb01Controller.java | 45 ++- .../cokr/xit/fims/task/web/DpvController.java | 16 +- .../sql/mapper/fims/sndb/svbtc-mapper.xml | 252 ++++++++++------ .../WEB-INF/jsp/fims/sndb/sndb01030-main.jsp | 5 +- .../WEB-INF/jsp/fims/sndb/sndb01040-info.jsp | 2 +- .../WEB-INF/jsp/fims/sndb/sndb01070-main.jsp | 1 - .../WEB-INF/jsp/fims/sndb/sndb01080-info.jsp | 2 +- .../WEB-INF/jsp/fims/sndb/sndb01230-main.jsp | 9 +- .../WEB-INF/jsp/fims/sndb/sndb01240-main.jsp | 279 ++++-------------- .../WEB-INF/jsp/fims/sndb/sndb01250-info.jsp | 272 +++++++++++++++++ 15 files changed, 619 insertions(+), 336 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/fims/sndb/sndb01250-info.jsp diff --git a/src/main/java/cokr/xit/fims/sndb/SndbQuery.java b/src/main/java/cokr/xit/fims/sndb/SndbQuery.java index 00e1b1e0..3cf64525 100644 --- a/src/main/java/cokr/xit/fims/sndb/SndbQuery.java +++ b/src/main/java/cokr/xit/fims/sndb/SndbQuery.java @@ -38,6 +38,8 @@ public class SndbQuery extends CmmnQuery { private String schSndngYmdTo; // 발송(TB_SNDNG)_발송 일자 종료 private String schDlvrYmdFrom; // 발송상세(TB_SNDNG_DTL)_배달 일자 시작 private String schDlvrYmdTo; // 발송상세(TB_SNDNG_DTL)_배달 일자 종료 + private String schSvbtcYmdFrom; // 공시송달(TB_SVBTC)_공시송달 일자 시작 + private String schSvbtcYmdTo; // 공시송달(TB_SVBTC)_공시송달 일자 종료 private String schSndngSeCd; // 발송, 발송상세(TB_SNDNG_DTL)_발송 구분 코드 // 상세 검색 조건 private String schDetailRegDtOpt; // 상세 검색 등록 일자 구분 @@ -267,6 +269,26 @@ public class SndbQuery extends CmmnQuery { return self(); } + public String getSchSvbtcYmdFrom() { + return ifEmpty(schSvbtcYmdFrom, () -> null); + } + + public T setSchSvbtcYmdFrom(String schSvbtcYmdFrom) { + this.schSvbtcYmdFrom = schSvbtcYmdFrom; + + return self(); + } + + public String getSchSvbtcYmdTo() { + return ifEmpty(schSvbtcYmdTo, () -> null); + } + + public T setSchSvbtcYmdTo(String schSvbtcYmdTo) { + this.schSvbtcYmdTo = schSvbtcYmdTo; + + return self(); + } + public String getSchSndngSeCd() { return ifEmpty(schSndngSeCd, () -> null); } diff --git a/src/main/java/cokr/xit/fims/sndb/dao/SvbtcMapper.java b/src/main/java/cokr/xit/fims/sndb/dao/SvbtcMapper.java index 9a98269c..ce9fc264 100644 --- a/src/main/java/cokr/xit/fims/sndb/dao/SvbtcMapper.java +++ b/src/main/java/cokr/xit/fims/sndb/dao/SvbtcMapper.java @@ -35,6 +35,14 @@ public interface SvbtcMapper extends AbstractMapper { */ List selectSvbtcs(SndbQuery req); + /**지정한 조건에 따라 공시송달 상세 객체들을 반환한다. + * @param req 공시송달 대장 조회 조건 + * @return 공시송달 대장 객체 목록 + */ + List selectSvbtcDtls(SndbQuery req); + + + /**공시송달 대장 정보를 등록한다. * @param params 파라미터 *
  • "svbtc" - 공시송달 대장
  • diff --git a/src/main/java/cokr/xit/fims/sndb/service/SndngService.java b/src/main/java/cokr/xit/fims/sndb/service/SndngService.java index 67fb8852..1d295309 100644 --- a/src/main/java/cokr/xit/fims/sndb/service/SndngService.java +++ b/src/main/java/cokr/xit/fims/sndb/service/SndngService.java @@ -50,9 +50,23 @@ public interface SndngService { */ List getSndbkList(SndbQuery req); + /**지정한 조건에 따라 공시송달 대장 목록을 조회하여 반환한다. + * @param req 공시송달 대장 조회 조건 + * @return 공시송달 대장 목록 + */ + List getSvbtcList(SndbQuery req); + /**지정한 조건에 따라 공시송달 대장 객체들을 반환한다. + * @param req 공시송달 대장 조회 조건 + * @return 공시송달 대장 객체 목록 + */ + List getSvbtcs(SndbQuery req); - + /**지정한 조건에 따라 공시송달 상세 객체들을 반환한다. + * @param req 공시송달 대장 조회 조건 + * @return 공시송달 대장 객체 목록 + */ + List getSvbtcDtls(SndbQuery req); /**지정한 조건에 따라 발송 대장 목록을 조회하여 반환한다. * @param req 발송 대장 조회 조건 @@ -190,17 +204,6 @@ public interface SndngService { */ boolean removeSndngDtl(SndngDtl sndngDtl); - /**지정한 조건에 따라 공시송달 대장 목록을 조회하여 반환한다. - * @param req 공시송달 대장 조회 조건 - * @return 공시송달 대장 목록 - */ - List getSvbtcList(SndbQuery req); - - /**지정한 조건에 따라 공시송달 대장 객체들을 반환한다. - * @param req 공시송달 대장 조회 조건 - * @return 공시송달 대장 객체 목록 - */ - List getSvbtcs(SndbQuery req); /**공시송달 대장 정보를 등록한다. * @param svbtc 공시송달 대장 diff --git a/src/main/java/cokr/xit/fims/sndb/service/bean/SndngBean.java b/src/main/java/cokr/xit/fims/sndb/service/bean/SndngBean.java index a3761b0f..5112f4cd 100644 --- a/src/main/java/cokr/xit/fims/sndb/service/bean/SndngBean.java +++ b/src/main/java/cokr/xit/fims/sndb/service/bean/SndngBean.java @@ -1133,6 +1133,16 @@ public class SndngBean extends AbstractComponent { return svbtcMapper.selectSvbtcs(req); } + /**지정한 조건에 따라 공시송달 상세 객체들을 반환한다. + * @param req 공시송달 대장 조회 조건 + * @return 공시송달 대장 객체 목록 + */ + public List getSvbtcDtls(SndbQuery req) { + return svbtcMapper.selectSvbtcDtls(req); + } + + + /**공시송달 대장 정보를 등록한다. * @param svbtc 공시송달 대장 * @return 저장 여부 diff --git a/src/main/java/cokr/xit/fims/sndb/service/bean/SndngServiceBean.java b/src/main/java/cokr/xit/fims/sndb/service/bean/SndngServiceBean.java index 85ea5ba8..f32f1df6 100644 --- a/src/main/java/cokr/xit/fims/sndb/service/bean/SndngServiceBean.java +++ b/src/main/java/cokr/xit/fims/sndb/service/bean/SndngServiceBean.java @@ -153,6 +153,11 @@ public class SndngServiceBean extends AbstractServiceBean implements SndngServic return sndngBean.getSvbtcs(req); } + @Override + public List getSvbtcDtls(SndbQuery req) { + return sndngBean.getSvbtcDtls(req); + } + @Override public boolean createSvbtc(Svbtc svbtc) { return sndngBean.createSvbtc(svbtc); diff --git a/src/main/java/cokr/xit/fims/sndb/web/Sndb01Controller.java b/src/main/java/cokr/xit/fims/sndb/web/Sndb01Controller.java index 3582f8d1..93a1e80e 100644 --- a/src/main/java/cokr/xit/fims/sndb/web/Sndb01Controller.java +++ b/src/main/java/cokr/xit/fims/sndb/web/Sndb01Controller.java @@ -65,7 +65,8 @@ public class Sndb01Controller extends ApplicationController { , sendBackMain = "/230/main.do" // 반송 현황 메인 화면 , getSendBackList = "/230/list.do" // 반송 현황 목록 조회 , serviceByPublicNoticeMain = "/240/main.do" // 공시송달 현황 메인 화면 - + , getServiceByPublicNoticeList = "/240/list.do" // 공시송달 현황 목록 조회 + , getServiceByPublicNoticeInfo = "/250/info.do" // 공시송달 상세 조회 ; } @@ -625,13 +626,53 @@ public class Sndb01Controller extends ApplicationController { ManagedUser managedUser = (ManagedUser)currentUser().getUser(); // View(jsp)에서 사용할 공통코드를 조회 - Map> commonCodes = getCodesOf("FIM054"); + Map> commonCodes = getCodesOf("FIM047", "FIM054"); return mav.addObject("pageName", "sndb01240") // View(jsp)에서 사용할 id 뒤에 붙일 suffix .addObject("infoPrefix", "svbtc") // prefix .addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD) .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) + .addObject("FIM047List", commonCodes.get("FIM047")) // 발송 구분 코드(SNDNG_SE_CD) ; } + /**공시송달 현황 목록을 조회하여 반환한다.
    + * {@link SndngService#getSndngList(SndngQuery)} 참고 + * @param req 발송 대장 조회 조건 + * @return jsonView + *
     {
    +	 *     "sndngList": [공시송달 현황 목록]
    +	 *     "sndngStart": 공시송달 현황 목록 시작 인덱스
    +	 *     "sndngFetch": 한 번에 가져오는 공시송달 현황 목록 수
    +	 *     "sndngTotal": 조회 결과 찾은 전체 공시송달 현황 수
    +	 * }
    + */ + public ModelAndView getServiceByPublicNoticeList(SndbQuery req) { + List result = sndngService.getSvbtcList(setFetchSize(req)); + + return setCollectionInfo(new ModelAndView("jsonView"), result, "svbtc"); + } + + /**공시송달 발송 현황 - 세부내용 정보 화면(sndb/sndb01/250-info)을 연다. + * @param svbtcId 공시송달 ID + * @return fims/sndb/sndb01250-info 또는 jsonView + *
    {
    +	 *     "sndngDtls": [발송 상세 목록]
    +	 * }
    + */ + public ModelAndView getServiceByPublicNoticeInfo(SndbQuery req) { + List sndngDtls = sndngService.getSvbtcDtls(req); + + boolean json = jsonResponse(); + + ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sndb/sndb01250-info"); + + return mav.addObject("pageName", "sndb01250") + .addObject("sggCd", req.getSggCd()) + .addObject("taskSeCd", req.getTaskSeCd()) + .addObject("svbtcDtl", json ? sndngDtls : toJson(sndngDtls)) // 계도장 발송 현황 세부내용 + ; + } + + } diff --git a/src/main/java/cokr/xit/fims/task/web/DpvController.java b/src/main/java/cokr/xit/fims/task/web/DpvController.java index d2e638a8..592f8a76 100644 --- a/src/main/java/cokr/xit/fims/task/web/DpvController.java +++ b/src/main/java/cokr/xit/fims/task/web/DpvController.java @@ -580,9 +580,19 @@ public class DpvController { return super.getSendBackList(req); } - /** 고지서 발송 대상 메인 화면을 연다. - * @return fims/sndb/sndb01110-main - */ + @Override + @RequestMapping(name="공시송달 목록 조회", value=METHOD_URL.getServiceByPublicNoticeList) + public ModelAndView getServiceByPublicNoticeList(SndbQuery req) { + return super.getServiceByPublicNoticeList(req); + } + + @Override + @RequestMapping(name="공시송달 상세 조회", value=METHOD_URL.getServiceByPublicNoticeInfo) + public ModelAndView getServiceByPublicNoticeInfo(SndbQuery req) { + return super.getServiceByPublicNoticeInfo(req); + } + + @Override @RequestMapping(name = "고지서 발송 대상", value = METHOD_URL.noticeSheetSendingTargetMain) public ModelAndView noticeSheetSendingTargetMain() { diff --git a/src/main/resources/sql/mapper/fims/sndb/svbtc-mapper.xml b/src/main/resources/sql/mapper/fims/sndb/svbtc-mapper.xml index abdb77ce..74f5810d 100644 --- a/src/main/resources/sql/mapper/fims/sndb/svbtc-mapper.xml +++ b/src/main/resources/sql/mapper/fims/sndb/svbtc-mapper.xml @@ -30,45 +30,54 @@ - SELECT SV.SVBTC_ID /* 공시송달 ID */ - , SV.SGG_CD /* 시군구 코드 */ - , SV.TASK_SE_CD /* 업무 구분 코드 */ - , (SELECT GET_CODE_NM('FIM054', SV.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM /* 업무 구분 명 */ - , SV.VLTN_ID /* 위반 ID */ - , SV.SNDNG_SE_CD /* 발송 구분 코드 */ - , (SELECT GET_CODE_NM('FIM047', SV.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM /* 발송 구분 명 */ - , SV.SVBTC_YMD /* 공시송달 일자 */ - , SV.TTL_NM /* 제목 명 */ - , SV.DOC_NO /* 문서 번호 */ - , SV.ETC_CN /* 기타 내용 */ - , SV.TNOCS /* 총건수 */ - , SV.GRAMT /* 총금액 */ - , SV.DEL_YN /* 삭제 여부 */ - , SV.REG_DT /* 등록 일시 */ - , SV.RGTR /* 등록자 */ - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM /* 등록자 명 */ - , SV.MDFCN_DT /* 수정 일시 */ - , SV.MDFR /* 수정자 */ - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM /* 등록자 명 */ - , SV.DEL_DT /* 삭제 일시 */ - , SV.DLTR /* 삭제자 */ - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM /* 등록자 명 */ - , SV.DEL_RSN /* 삭제 사유 */ - , SD.SNDNG_DTL_ID /* 발송 상세 ID */ - , SD.SNDNG_ID /* 발송 ID */ - , SD.CRDN_ID /* 단속 ID */ + SELECT SV.SVBTC_ID + , SV.SGG_CD + , SV.TASK_SE_CD + , (SELECT GET_CODE_NM('FIM054', SV.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM + , SV.SNDNG_SE_CD + , (SELECT GET_CODE_NM('FIM047', SV.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM + , SV.SVBTC_YMD + , SV.TTL_NM + , SV.DOC_NO + , SV.ETC_CN + , SV.TNOCS + , SV.GRAMT + , SV.DEL_YN + , SV.REG_DT + , SV.RGTR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM + , SV.MDFCN_DT + , SV.MDFR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.MDFR) AS MDFR_NM + , SV.DEL_DT + , SV.DLTR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.DLTR) AS DLTR_NM + , SV.DEL_RSN + , VI.VLTN_ID + , VI.VLTN_CD + , VI.VLTN_ARTCL FROM TB_SVBTC SV - INNER JOIN TB_SNDNG_DTL SD ON (SV.SVBTC_ID = SD.SVBTC_ID) + LEFT OUTER JOIN TB_VLTN_INFO VI ON (SV.VLTN_ID = VI.VLTN_ID AND SV.SGG_CD = VI.SGG_CD AND SV.TASK_SE_CD = VI.TASK_SE_CD) @@ -77,19 +86,94 @@ - AND SV.SVBTC_ID = #{svbtcId} /* 공시송달 ID */ + AND SV.SVBTC_ID = #{svbtcId} - AND SD.SNDNG_DTL_ID = #{sndngDtlId} /* 발송 상세 ID */ + AND SD.SNDNG_DTL_ID = #{sndngDtlId} - AND SD.SNDNG_ID = #{sndngId} /* 발송 ID */ + AND SD.SNDNG_ID = #{sndngId} - AND SD.CRDN_ID = #{crdnId} /* 단속 ID */ + AND SD.CRDN_ID = #{crdnId} - AND SV.DEL_YN = #{delYn} /* 삭제 여부 */ + AND SV.DEL_YN = #{delYn} + + + + + + + SELECT SV.SVBTC_ID + , SV.SGG_CD + , SV.TASK_SE_CD + , (SELECT GET_CODE_NM('FIM054', SV.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM + , SV.SNDNG_SE_CD + , (SELECT GET_CODE_NM('FIM047', SV.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM + , SV.SVBTC_YMD + , SV.TTL_NM + , SV.DOC_NO + , SV.ETC_CN + , SV.TNOCS + , SV.GRAMT + , SV.DEL_YN + , SV.REG_DT + , SV.RGTR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.RGTR) AS RGTR_NM + , SV.MDFCN_DT + , SV.MDFR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.MDFR) AS MDFR_NM + , SV.DEL_DT + , SV.DLTR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SV.DLTR) AS DLTR_NM + , SV.DEL_RSN + , SD.SNDNG_DTL_ID + , SD.SNDNG_ID + , SD.CRDN_ID + , SD.LEVY_ID + , SD.SNDNG_SE_CD + , (SELECT GET_CODE_NM('FIM047', SD.SNDNG_SE_CD) FROM DUAL) AS SNDNG_SE_NM + , SD.LEV_KEY + , CONCAT(SD.FYR, '-', SD.LEVY_NO) AS GOJI_NO + , SD.SNDNG_YMD + , SD.DUDT_YMD + , GET_MASK_DATE(SD.DUDT_YMD, 'K') AS DUDT_YMD_MASK_KOR + , GET_MASK_DATE(SD.DUDT_YMD, '.') AS DUDT_YMD_MASK + , SD.DUDT_AFTR_YMD + , GET_MASK_DATE(SD.DUDT_AFTR_YMD, '.') AS DUDT_AFTR_YMD_MASK + , SD.FFNLG_AMT + , SD.RTPYR_NM + , SD.RTPYR_NO + , SD.RTPYR_ADDR + , SD.RTPYR_DTL_ADDR + , SD.RTPYR_ZIP + , SD.CON_KEY + , SD.RG_NO + , SD.DLVR_YMD + , SD.DLVR_TM + , GET_CODE('EGP010', SD.UNDLVR_RSN_NM) AS UNDLVR_RSN_CD + , SD.UNDLVR_RSN_NM + , SD.RCPN_NM + , SD.RCPN_REL_NM + , SD.SNDNG_DTL_STTS_CD + , (SELECT GET_CODE_NM('FIM050', SD.SNDNG_DTL_STTS_CD) FROM DUAL) AS SNDNG_DTL_STTS_NM + , SD.SNDNG_RCVMT_CD + , (SELECT GET_CODE_NM('FIM051', SD.SNDNG_RCVMT_CD) FROM DUAL) AS SNDNG_RCVMT_NM + , SD.ADDR_CHG_CD + , VI.VLTN_ID + , VI.VLTN_CD + , VI.VLTN_ARTCL + FROM TB_SVBTC SV + INNER JOIN TB_SNDNG_DTL SD ON (SV.SVBTC_ID = SD.SVBTC_ID) + LEFT OUTER JOIN TB_VLTN_INFO VI ON (SV.VLTN_ID = VI.VLTN_ID AND SV.SGG_CD = VI.SGG_CD AND SV.TASK_SE_CD = VI.TASK_SE_CD) + + + - - - -
    @@ -249,7 +242,7 @@ {DLVR_TM} {UNDLVR_RSN_NM} {RCPN_NM} - {SNDNG_SE_NM} + {SNDNG_SE_NM} {SNDNG_YMD} {FFNLG_AMT} {RTPYR_NM} diff --git a/src/main/webapp/WEB-INF/jsp/fims/sndb/sndb01240-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/sndb/sndb01240-main.jsp index 042f8040..2c1c61ba 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sndb/sndb01240-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sndb/sndb01240-main.jsp @@ -48,59 +48,31 @@
    - +
    - + - ~ -
    - +
    - - - - - ~ - - - -
    - -
    - - - +
    - -
    - - -
    - +
    - - - - - ~ - - -
    @@ -124,16 +96,6 @@