From af8833439316e8b9c6beabb4df39c036eae21343 Mon Sep 17 00:00:00 2001 From: jjh Date: Wed, 29 May 2024 18:41:05 +0900 Subject: [PATCH] =?UTF-8?q?1.=20=EA=B0=9C=EB=B3=84=EC=B4=9D=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20-=20=EC=B2=98=EB=A6=AC=EC=83=81=EC=84=B8=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20-=20=EC=A3=BC=EC=86=8C=20=EB=B3=80=EB=8F=99=20?= =?UTF-8?q?=EC=9D=B4=EB=A0=A5=20=EC=88=98=EC=A0=95.=202.=20=EC=82=AC?= =?UTF-8?q?=EC=A0=84=EA=B0=90=EA=B2=BD=EB=B6=80=EA=B3=BC,=20=EA=B3=BC?= =?UTF-8?q?=ED=83=9C=EB=A3=8C=20=EA=B0=90=EA=B2=BD=20=EA=B4=80=EB=A6=AC,?= =?UTF-8?q?=20=EB=B6=80=EA=B3=BC=EA=B4=80=EB=A6=AC=20=EC=88=98=EC=A0=95.?= =?UTF-8?q?=203.=20=EA=B8=B0=ED=83=80=20=EC=86=8C=EC=8A=A4=20=EC=A0=95?= =?UTF-8?q?=EB=A6=AC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cmmn/service/bean/CrdnPayerHstryBean.java | 35 +- .../xit/fims/excl/dao/CrdnReRegMapper.java | 26 +- .../xit/fims/excl/dao/LevyExclMapper.java | 1 - .../xit/fims/excl/dao/OpnnDlbrMbrMapper.java | 27 +- .../xit/fims/excl/dao/OpnnSbmsnMapper.java | 60 +--- .../fims/excl/service/bean/CrdnReRegBean.java | 19 +- .../fims/excl/service/bean/LevyExclBean.java | 22 +- .../excl/service/bean/OpnnDlbrMbrBean.java | 26 +- .../fims/excl/service/bean/OpnnSbmsnBean.java | 48 ++- .../xit/fims/excl/web/Excl01Controller.java | 14 +- .../xit/fims/excl/web/Excl02Controller.java | 54 +-- src/main/java/cokr/xit/fims/levy/Rduct.java | 5 + .../xit/fims/levy/service/RductService.java | 8 - .../levy/service/bean/RductServiceBean.java | 29 -- .../xit/fims/levy/web/Levy01Controller.java | 18 +- .../xit/fims/levy/web/Levy02Controller.java | 74 ++-- src/main/java/cokr/xit/fims/payer/Payer.java | 5 - .../java/cokr/xit/fims/payer/PayerQuery.java | 67 +++- .../xit/fims/payer/dao/PayerAddrMapper.java | 19 +- .../cokr/xit/fims/payer/dao/PayerMapper.java | 12 +- .../xit/fims/payer/service/PayerService.java | 8 +- .../fims/payer/service/bean/PayerBean.java | 161 +++++---- .../payer/service/bean/PayerServiceBean.java | 5 + .../xit/fims/sprt/web/Sprt02Controller.java | 19 +- .../sql/mapper/fims/excl/crdnReReg-mapper.xml | 35 +- .../mapper/fims/excl/opnnDlbrMbr-mapper.xml | 87 ++--- .../sql/mapper/fims/excl/opnnSbmsn-mapper.xml | 142 ++++---- .../sql/mapper/fims/payer-mapper.xml | 137 +++----- .../sql/mapper/fims/payerAddr-mapper.xml | 153 +++++++-- .../WEB-INF/jsp/fims/excl/excl01010-main.jsp | 26 +- .../WEB-INF/jsp/fims/excl/excl02010-main.jsp | 23 +- .../WEB-INF/jsp/fims/excl/excl03010-main.jsp | 23 +- .../WEB-INF/jsp/fims/levy/levy01010-main.jsp | 96 +++--- .../WEB-INF/jsp/fims/levy/levy01020-info.jsp | 14 +- .../WEB-INF/jsp/fims/levy/levy01050-main.jsp | 245 ++++++------- .../WEB-INF/jsp/fims/levy/levy02010-main.jsp | 322 ++++++++---------- .../WEB-INF/jsp/fims/levy/levy02020-info.jsp | 61 ++-- .../WEB-INF/jsp/fims/sprt/sprt02020-info.jsp | 1 - .../WEB-INF/jsp/fims/sprt/sprt02050-info.jsp | 2 +- 39 files changed, 1013 insertions(+), 1116 deletions(-) diff --git a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnPayerHstryBean.java b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnPayerHstryBean.java index 69dc1e56..dcb255ca 100644 --- a/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnPayerHstryBean.java +++ b/src/main/java/cokr/xit/fims/cmmn/service/bean/CrdnPayerHstryBean.java @@ -78,7 +78,7 @@ public class CrdnPayerHstryBean extends AbstractBean { return crdnPayerHstryMapper.updateCrdnPayer(crdnPayerHstry); } - /**단속 납부자 이력 정보를 등록하고, 단속 대장의 납부자 정보를 수정한다. + /**단속 납부자 이력 및 주소 이력 정보를 등록하고, 단속 대장의 납부자 정보를 수정한다. * @param crdnPayerHstry 단속 납부자 이력 * @return 저장 여부 * * @return 저장된 정보수 */ - int insertCrdnReReg(Map params); - - /**단속 재등록 정보를 등록한다. - * @param crdnReReg 단속 재등록 - * @return 저장 여부 - * - */ - default boolean insertCrdnReReg(CrdnReReg crdnReReg) { - return crdnReReg != null && insertCrdnReReg(params().set("crdnReReg", crdnReReg)) == 1; - } + int insertCrdnReReg(CrdnReReg crdnReReg); /**단속 재등록 정보를 삭제한다. * @param params 파라미터 @@ -68,17 +57,6 @@ public interface CrdnReRegMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int deleteCrdnReReg(Map params); - - /**단속 재등록 정보를 삭제한다. - * @param crdnReReg 단속 재등록 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean deleteCrdnReReg(CrdnReReg crdnReReg) { - return crdnReReg != null && deleteCrdnReReg(params().set("crdnReReg", crdnReReg)) == 1; - } + int deleteCrdnReReg(CrdnReReg crdnReReg); } diff --git a/src/main/java/cokr/xit/fims/excl/dao/LevyExclMapper.java b/src/main/java/cokr/xit/fims/excl/dao/LevyExclMapper.java index 1d0edcc8..1b4034fe 100644 --- a/src/main/java/cokr/xit/fims/excl/dao/LevyExclMapper.java +++ b/src/main/java/cokr/xit/fims/excl/dao/LevyExclMapper.java @@ -7,7 +7,6 @@ import org.egovframe.rte.psl.dataaccess.mapper.Mapper; import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.excl.LevyExclQuery; import cokr.xit.fims.excl.LevyExcl; -import cokr.xit.fims.sndb.SndngDtl; import cokr.xit.foundation.component.AbstractMapper; import cokr.xit.foundation.data.DataObject; diff --git a/src/main/java/cokr/xit/fims/excl/dao/OpnnDlbrMbrMapper.java b/src/main/java/cokr/xit/fims/excl/dao/OpnnDlbrMbrMapper.java index 6f9f71d6..6c56e8f5 100644 --- a/src/main/java/cokr/xit/fims/excl/dao/OpnnDlbrMbrMapper.java +++ b/src/main/java/cokr/xit/fims/excl/dao/OpnnDlbrMbrMapper.java @@ -1,7 +1,6 @@ package cokr.xit.fims.excl.dao; import java.util.List; -import java.util.Map; import org.egovframe.rte.psl.dataaccess.mapper.Mapper; @@ -48,18 +47,7 @@ public interface OpnnDlbrMbrMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int insertOpnnDlbrMbr(Map params); - - /**의견제출 심의 회원 정보를 등록한다. - * @param opnnDlbrMbr 의견제출 심의 회원 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean insertOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr) { - return opnnDlbrMbr != null && insertOpnnDlbrMbr(params().set("opnnDlbrMbr", opnnDlbrMbr)) == 1; - } + int insertOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr); /**의견제출 심의 회원 정보를 수정한다. * @param params 파라미터 @@ -68,17 +56,6 @@ public interface OpnnDlbrMbrMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int updateOpnnDlbrMbr(Map params); - - /**의견제출 심의 회원 정보를 수정한다. - * @param opnnDlbrMbr 의견제출 심의 회원 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean updateOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr) { - return opnnDlbrMbr != null && updateOpnnDlbrMbr(params().set("opnnDlbrMbr", opnnDlbrMbr)) == 1; - } + int updateOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr); } diff --git a/src/main/java/cokr/xit/fims/excl/dao/OpnnSbmsnMapper.java b/src/main/java/cokr/xit/fims/excl/dao/OpnnSbmsnMapper.java index 8e0ad8b1..8959575b 100644 --- a/src/main/java/cokr/xit/fims/excl/dao/OpnnSbmsnMapper.java +++ b/src/main/java/cokr/xit/fims/excl/dao/OpnnSbmsnMapper.java @@ -47,7 +47,7 @@ public interface OpnnSbmsnMapper extends AbstractMapper { } // 기본 정렬 if (req.getOrderBy() == null) { - req.setOrderBy("C.CRDN_ID, OS.OPNN_ID DESC"); + req.setOrderBy("OS.OPNN_ID DESC"); } List opnnSbmsns = selectOpnnSbmsns(req); @@ -68,18 +68,7 @@ public interface OpnnSbmsnMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int insertOpnnSbmsn(Map params); - - /**의견제출 대장 정보를 등록한다. - * @param opnnSbmsn 의견제출 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean insertOpnnSbmsn(OpnnSbmsn opnnSbmsn) { - return opnnSbmsn != null && insertOpnnSbmsn(params().set("opnnSbmsn", opnnSbmsn)) == 1; - } + int insertOpnnSbmsn(OpnnSbmsn opnnSbmsn); /**의견제출 대장 정보를 수정한다. * @param params 파라미터 @@ -88,18 +77,7 @@ public interface OpnnSbmsnMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int updateOpnnSbmsn(Map params); - - /**의견제출 대장 정보를 수정한다. - * @param opnnSbmsn 의견제출 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean updateOpnnSbmsn(OpnnSbmsn opnnSbmsn) { - return opnnSbmsn != null && updateOpnnSbmsn(params().set("opnnSbmsn", opnnSbmsn)) == 1; - } + int updateOpnnSbmsn(OpnnSbmsn opnnSbmsn); /**의견제출 대장 심의 정보를 수정한다. * @param params 파라미터 @@ -108,18 +86,7 @@ public interface OpnnSbmsnMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int updateOpnnSbmsnAnswer(Map params); - - /**의견제출 대장 심의 정보를 수정한다. - * @param opnnSbmsn 의견제출 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean updateOpnnSbmsnAnswer(OpnnSbmsn opnnSbmsn) { - return opnnSbmsn != null && updateOpnnSbmsnAnswer(params().set("opnnSbmsn", opnnSbmsn)) == 1; - } + int updateOpnnSbmsnAnswer(OpnnSbmsn opnnSbmsn); /**지정한 의견제출 대장을 삭제한다. * @param params 파라미터 @@ -128,18 +95,7 @@ public interface OpnnSbmsnMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int deleteOpnnSbmsn(Map params); - - /**의견제출 대장 정보를 삭제한다. - * @param opnnSbmsn 의견제출 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - default boolean deleteOpnnSbmsn(OpnnSbmsn opnnSbmsn) { - return opnnSbmsn != null && deleteOpnnSbmsn(params().set("opnnSbmsn", opnnSbmsn)) == 1; - } + int deleteOpnnSbmsn(OpnnSbmsn opnnSbmsn); /**단속 대장 정보를 수정한다. * @param params 파라미터 @@ -148,10 +104,6 @@ public interface OpnnSbmsnMapper extends AbstractMapper { * * @return 저장된 정보수 */ - int updateCrdnOpnnSbmsnYn(Map params); - - default boolean updateCrdnOpnnSbmsnYn(Crdn crdn) { - return crdn != null && updateCrdnOpnnSbmsnYn(params().set("crdn", crdn)) == 1; - } + int updateCrdnOpnnSbmsnYn(Crdn crdn); } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/CrdnReRegBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/CrdnReRegBean.java index 77fb8317..3e51590f 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/CrdnReRegBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/CrdnReRegBean.java @@ -93,10 +93,6 @@ public class CrdnReRegBean extends AbstractBean { * */ public String createCrdnReReg(CrdnReReg crdnReReg) { - // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 - String rtnMsg = ""; // 처리 결과 메시지 - // 단속 ID로 단속(TB_CRDN) 정보 조회 DataObject crdnInfo = crdnReRegMapper.selectCrdnInfo(crdnReReg.getBfrCrdnId()); @@ -122,12 +118,11 @@ public class CrdnReRegBean extends AbstractBean { } } - // 재등록 단속 정보(TB_CRDN) - Crdn crdn = new Crdn(); - // 현재 날짜 구하기 SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); + // 재등록 단속 정보(TB_CRDN) + Crdn crdn = new Crdn(); crdn.setSggCd(crdnInfo.string("SGG_CD")); // 시군구 코드 crdn.setTaskSeCd(crdnInfo.string("TASK_SE_CD")); // 업무 구분 코드 crdn.setCrdnRegSeCd("03"); // 단속 등록 구분 코드(FIM026) - 재 등록 @@ -171,7 +166,7 @@ public class CrdnReRegBean extends AbstractBean { crdn.setTowngYn(crdnInfo.string("TOWNG_YN")); // 견인 여부 // 단속 대장 입력 - rtnScs = crdnBean.create(null, crdn, fileInfoList); + boolean rtnScs = crdnBean.create(null, crdn, fileInfoList); if (!rtnScs) { throw new RuntimeException("재부과 등록 중 단속대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -180,14 +175,12 @@ public class CrdnReRegBean extends AbstractBean { crdnReReg.setCrdnId(crdn.getCrdnId()); crdnReReg.setCrdnRegSeCd("03"); - rtnScs = crdnReRegMapper.insertCrdnReReg(crdnReReg); - if (!rtnScs) { + int rtnNocs = crdnReRegMapper.insertCrdnReReg(crdnReReg); + if (rtnNocs != 1) { throw new RuntimeException("재부과 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java index 704acb8c..83a8afdf 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/LevyExclBean.java @@ -110,7 +110,6 @@ public class LevyExclBean extends AbstractBean { */ public String createLevyExcl(LevyExcl levyExcl) { // 변수 선언 - boolean rtnScs = false; // 처리 결과 int rtnNocs = -1; // 처리 결과 건수 String rtnMsg = ""; // 처리 결과 메시지 @@ -195,7 +194,7 @@ public class LevyExclBean extends AbstractBean { crdnSttsHstry.setCrdnSttsCd(newCrdnSttsCd); crdnSttsHstry.setTaskDtlId(levyExcl.getLevyExclId()); - rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); + boolean rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); if (!rtnScs) { throw new RuntimeException("부과제외 등록 작업 중 단속상태 변경에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -213,19 +212,13 @@ public class LevyExclBean extends AbstractBean { * */ public String updateLevyExcl(LevyExcl levyExcl) { - // 변수 선언 - int rtnNocs = -1; // 처리 결과 건수 - String rtnMsg = ""; // 처리 결과 메시지 - // 부과제외(TB_LEVY_EXCL) 대장을 수정 한다. - rtnNocs = levyExclMapper.updateLevyExcl(levyExcl); + int rtnNocs = levyExclMapper.updateLevyExcl(levyExcl); if (rtnNocs != 1) { throw new RuntimeException("부과제외 정보 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } /**부과제외 대장 정보를 삭제한다. @@ -237,7 +230,6 @@ public class LevyExclBean extends AbstractBean { */ public String removeLevyExcl(LevyExcl levyExcl) { // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 int rtnNocs = -1; // 처리 결과 건수 String rtnMsg = ""; // 처리 결과 메시지 @@ -263,7 +255,7 @@ public class LevyExclBean extends AbstractBean { // 부과제외(TB_LEVY_EXCL) 대장을 삭제 한다. rtnNocs = levyExclMapper.deleteLevyExcl(levyExcl); if (rtnNocs != 1) { - throw new RuntimeException("부과제외 정보 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + throw new RuntimeException("부과제외 정보 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } // 단속상태이력(TB_CRDN_STTS_HSTRY) 대장에 부과제외 이력삭제 및 부과제외삭제 이력을 등록 한다. @@ -271,12 +263,12 @@ public class LevyExclBean extends AbstractBean { if (levyExclInfo.string("CRDN_STTS_CD").equals("80")) { // 임시 throw new RuntimeException("부과취소는 부과제외 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } else if (levyExclInfo.string("CRDN_STTS_CD").equals("81")) { - deltCrdnSttsCd = "91"; // 비부과(서손) 삭제 + deltCrdnSttsCd = "91"; // 비부과(서손) 삭제 } else if (("83,84").contains(levyExclInfo.string("CRDN_STTS_CD"))) { - deltCrdnSttsCd = "93"; // 계고 삭제 + deltCrdnSttsCd = "93"; // 계고 삭제 } - rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deltCrdnSttsCd, levyExcl.getDelRsn(), true); + boolean rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(levyExclInfo.string("CRDN_ID"), levyExclInfo.string("CRDN_STTS_CD"), deltCrdnSttsCd, levyExcl.getDelRsn(), true); if (!rtnScs) { throw new RuntimeException("부과제외 삭제 작업 중 단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnDlbrMbrBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnDlbrMbrBean.java index a9bf2beb..088c2951 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnDlbrMbrBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnDlbrMbrBean.java @@ -84,16 +84,13 @@ public class OpnnDlbrMbrBean extends AbstractBean { * */ public String createOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr) { - String rtnMsg = ""; // 처리 결과 메시지 - - boolean rtnScs = opnnDlbrMbrMapper.insertOpnnDlbrMbr(opnnDlbrMbr); - if (!rtnScs) { - throw new RuntimeException("의견제출 심의의원 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + // 의견제출 심의 회원 정보를 등록한다. + int rtnNocs = opnnDlbrMbrMapper.insertOpnnDlbrMbr(opnnDlbrMbr); + if (rtnNocs != 1) { + throw new RuntimeException("의견제출 심의의원 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } /**의견제출 심의 회원 정보를 수정한다. @@ -104,16 +101,13 @@ public class OpnnDlbrMbrBean extends AbstractBean { * */ public String updateOpnnDlbrMbr(OpnnDlbrMbr opnnDlbrMbr) { - String rtnMsg = ""; // 처리 결과 메시지 - - boolean rtnScs = opnnDlbrMbrMapper.updateOpnnDlbrMbr(opnnDlbrMbr); - if (!rtnScs) { - throw new RuntimeException("의견제출 심의의원 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + // 의견제출 심의 회원 정보를 수정한다. + int rtnNocs = opnnDlbrMbrMapper.updateOpnnDlbrMbr(opnnDlbrMbr); + if (rtnNocs != 1) { + throw new RuntimeException("의견제출 심의의원 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } } diff --git a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java index 1b8db15f..cd08c8d8 100644 --- a/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java +++ b/src/main/java/cokr/xit/fims/excl/service/bean/OpnnSbmsnBean.java @@ -119,7 +119,7 @@ public class OpnnSbmsnBean extends AbstractBean { */ public String createOpnnSbmsn(OpnnSbmsn opnnSbmsn, List fileInfoList) { // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 + int rtnNocs = -1; // 처리 결과 건수 String rtnMsg = ""; // 처리 결과 메시지 // 단속 ID로 단속, 의견제출 정보 조회 @@ -140,8 +140,8 @@ public class OpnnSbmsnBean extends AbstractBean { // 의견제출 대장을 등록 한다. opnnSbmsn.setOpnnSbmsnSttsCd("00"); // 의견 제출 상태 코드 00:접수 - rtnScs = opnnSbmsnMapper.insertOpnnSbmsn(opnnSbmsn); // 의견제출 등록 - if (!rtnScs) { + rtnNocs = opnnSbmsnMapper.insertOpnnSbmsn(opnnSbmsn); // 의견제출 등록 + if (rtnNocs != 1) { throw new RuntimeException("의견제출 대장 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -163,7 +163,7 @@ public class OpnnSbmsnBean extends AbstractBean { crdnSttsHstry.setTaskDtlId(opnnSbmsn.getOpnnId()); // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록 한다. - rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); + boolean rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); if (!rtnScs) { throw new RuntimeException("의견제출 등록 중 단속대장의 단속상태 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -174,8 +174,8 @@ public class OpnnSbmsnBean extends AbstractBean { crdn.setCrdnId(crdnOpnnSbmsnInfo.string("CRDN_ID")); crdn.setOpnnSbmsnYn("Y"); - rtnScs = opnnSbmsnMapper.updateCrdnOpnnSbmsnYn(crdn); // 단속 대장 수정 - if (!rtnScs) { + rtnNocs = opnnSbmsnMapper.updateCrdnOpnnSbmsnYn(crdn); // 단속 대장 수정 + if (rtnNocs != 1) { throw new RuntimeException("의견제출 등록 중 단속대장의 의견제출여부 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -192,10 +192,6 @@ public class OpnnSbmsnBean extends AbstractBean { * */ public String updateOpnnSbmsn(OpnnSbmsn opnnSbmsn, List fileInfoList) { - // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 - String rtnMsg = ""; // 처리 결과 메시지 - // 의견제출 첨부파일 등록 if (fileInfoList != null && !fileInfoList.isEmpty()) { fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(OpnnSbmsn.INF_TYPE) @@ -220,14 +216,12 @@ public class OpnnSbmsnBean extends AbstractBean { } // 의견제출 대장을 수정 한다. - rtnScs = opnnSbmsnMapper.updateOpnnSbmsn(opnnSbmsn); - if (!rtnScs) { + int rtnNocs = opnnSbmsnMapper.updateOpnnSbmsn(opnnSbmsn); + if (rtnNocs != 1) { throw new RuntimeException("의견제출 대장 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } /**의견제출 대장 심의(답변) 정보를 수정한다. @@ -239,7 +233,7 @@ public class OpnnSbmsnBean extends AbstractBean { */ public String updateOpnnSbmsnAnswer(OpnnSbmsn opnnSbmsn) { // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 + int rtnNocs = -1; // 처리 결과 건수 String rtnMsg = ""; // 처리 결과 메시지 // 의견제출(TB_OPNN_SBMSN) 자료 조회 @@ -264,8 +258,8 @@ public class OpnnSbmsnBean extends AbstractBean { } // 의견제출 답변을 수정 한다. - rtnScs = opnnSbmsnMapper.updateOpnnSbmsnAnswer(opnnSbmsn); - if (!rtnScs) { + rtnNocs = opnnSbmsnMapper.updateOpnnSbmsnAnswer(opnnSbmsn); + if (rtnNocs != 1) { throw new RuntimeException("의견제출 심의 처리에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -327,15 +321,13 @@ public class OpnnSbmsnBean extends AbstractBean { crdnSttsHstry.setTaskDtlId(opnnSbmsn.getOpnnId()); crdnSttsHstry.setEtcCn("의견제출 심의 처리로 인한 단속상태 변경"); - rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); + boolean rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); if (!rtnScs) { throw new RuntimeException("의견제출 심의(답변) 처리 중 단속대장의 단속상태 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } /**의견제출 대장 정보를 삭제한다. @@ -347,7 +339,7 @@ public class OpnnSbmsnBean extends AbstractBean { */ public String removeOpnnSbmsn(OpnnSbmsn opnnSbmsn) { // 변수 선언 - boolean rtnScs = false; // DB 처리 결과 + int rtnNocs = -1; // 처리 결과 건수 String rtnMsg = ""; // 처리 결과 메시지 // 의견제출(TB_OPNN_SBMSN) 정보를 조회한다. @@ -369,8 +361,8 @@ public class OpnnSbmsnBean extends AbstractBean { } // 의견제출(TB_OPNN_SBMSN) 대장을 삭제 한다. - rtnScs = opnnSbmsnMapper.deleteOpnnSbmsn(opnnSbmsn); - if (!rtnScs) { + rtnNocs = opnnSbmsnMapper.deleteOpnnSbmsn(opnnSbmsn); + if (rtnNocs != 1) { throw new RuntimeException("의견제출 대장 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -401,7 +393,7 @@ public class OpnnSbmsnBean extends AbstractBean { deltCrdnSttsCd = "92"; } - rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(opnnSbmsnInfo.string("CRDN_ID"), crdnSttsCd, deltCrdnSttsCd, opnnSbmsn.getDelRsn(), insertBfrSttsYN); + boolean rtnScs = crdnSttsHstryBean.removeHstryUpdateCrdnSttsCd(opnnSbmsnInfo.string("CRDN_ID"), crdnSttsCd, deltCrdnSttsCd, opnnSbmsn.getDelRsn(), insertBfrSttsYN); if (!rtnScs) { throw new RuntimeException("단속상태이력 삭제 및 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -428,8 +420,8 @@ public class OpnnSbmsnBean extends AbstractBean { crdn.setCrdnId(opnnSbmsnInfo.string("CRDN_ID")); crdn.setOpnnSbmsnYn("N"); - rtnScs = opnnSbmsnMapper.updateCrdnOpnnSbmsnYn(crdn); // 단속(TB_CRDN) 대장 수정 - if (!rtnScs) { + rtnNocs = opnnSbmsnMapper.updateCrdnOpnnSbmsnYn(crdn); // 단속(TB_CRDN) 대장 수정 + if (rtnNocs != 1) { throw new RuntimeException("의견제출 삭제 중 단속대장의 의견제출여부 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } diff --git a/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java b/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java index ede2958a..5b7678c3 100644 --- a/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java +++ b/src/main/java/cokr/xit/fims/excl/web/Excl01Controller.java @@ -47,12 +47,12 @@ public class Excl01Controller extends ApplicationController { public class METHOD_URL { public static final String - levyExclusionMain = "/010/main.do" // 부과 제외 관리 메인 화면 - , getLevyExclusionList = "/010/list.do" // 부과 제외 대장 목록 조회 - , removeLevyExclusion = "/010/remove.do" // 부과 제외 대장 삭제 - , getLevyExclusionInfo = "/020/info.do" // 부과 제외 대장 조회 - , createLevyExclusion = "/020/create.do" // 부과 제외 대장 등록 - , updateLevyExclusion = "/020/update.do" // 부과 제외 대장 수정 + levyExclusionMain = "/010/main.do" // 부과 제외 관리 메인 화면 + , getLevyExclusionList = "/010/list.do" // 부과 제외 대장 목록 조회 + , removeLevyExclusion = "/010/remove.do" // 부과 제외 대장 삭제 + , getLevyExclusionInfo = "/020/info.do" // 부과 제외 대장 조회 + , createLevyExclusion = "/020/create.do" // 부과 제외 대장 등록 + , updateLevyExclusion = "/020/update.do" // 부과 제외 대장 수정 ; } @@ -282,7 +282,7 @@ public class Excl01Controller extends ApplicationController { // 부과제외 삭제 호출 rtnMsg = levyExclService.removeLevyExcl(levyExcl); - if (rtnMsg.contains("[F]")) // 오류가 발생하였으면 종료.. + if (rtnMsg.contains("[F]")) // 오류가 발생하였으면 종료.. break; } } diff --git a/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java b/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java index 0f7f316e..e6895517 100644 --- a/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java +++ b/src/main/java/cokr/xit/fims/excl/web/Excl02Controller.java @@ -59,18 +59,18 @@ public class Excl02Controller extends ApplicationController { public class METHOD_URL { public static final String - opinionSubmissionMain = "/010/main.do" // 의견제출 관리 메인 화면 - , getOpinionSubmissionList = "/010/list.do" // 의견제출 대장 목록 조회 - , makeDlbrDecsnFileFromHwpFormat = "/010/makeHwp.do" // 의견제출 심의의결서 HWP 저장 - , removeOpinionSubmission = "/010/remove.do" // 의견제출 대장 삭제 - , getOpinionSubmissionInfo = "/020/info.do" // 의견제출 대장 조회 - , createOpinionSubmission = "/020/create.do" // 의견제출 대장 등록 - , updateOpinionSubmission = "/020/update.do" // 의견제출 대장 수정 - , getOpinionSubmissionAnswerInfo = "/030/info.do" // 의견제출 대장 심의 조회 - , updateOpinionSubmissionAnswer = "/030/update.do" // 의견제출 대장 심의 수정 - , getOpinionDeliberationMemberInfo = "/040/info.do" // 의견제출 심의 회원 조회 - , createOpinionDeliberationMember = "/040/create.do" // 의견제출 심의 회원 등록 - , updateOpinionDeliberationMember = "/040/update.do" // 의견제출 심의 회원 수정 + opinionSubmissionMain = "/010/main.do" // 의견제출 관리 메인 화면 + , getOpinionSubmissionList = "/010/list.do" // 의견제출 대장 목록 조회 + , makeDlbrDecsnFileFromHwpFormat = "/010/makeHwp.do" // 의견제출 심의의결서 HWP 저장 + , removeOpinionSubmission = "/010/remove.do" // 의견제출 대장 삭제 + , getOpinionSubmissionInfo = "/020/info.do" // 의견제출 대장 조회 + , createOpinionSubmission = "/020/create.do" // 의견제출 대장 등록 + , updateOpinionSubmission = "/020/update.do" // 의견제출 대장 수정 + , getOpinionSubmissionAnswerInfo = "/030/info.do" // 의견제출 대장 심의 조회 + , updateOpinionSubmissionAnswer = "/030/update.do" // 의견제출 대장 심의 수정 + , getOpinionDeliberationMemberInfo = "/040/info.do" // 의견제출 심의 회원 조회 + , createOpinionDeliberationMember = "/040/create.do" // 의견제출 심의 회원 등록 + , updateOpinionDeliberationMember = "/040/update.do" // 의견제출 심의 회원 수정 ; } @@ -327,16 +327,16 @@ public class Excl02Controller extends ApplicationController { Map> commonCodes = getCodesOf("FIM019", "FIM030", "FIM031", "FIM033", "FIM054"); return mav - .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName - .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 - .addObject("pageName", "excl02030") // jsp pageName - .addObject("infoPrefix", "opnnSbmsn") // prefix - .addObject("infoPrefixUrl", "/excl/excl02") // prefixUrl - .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) - .addObject("FIM030List", commonCodes.get("FIM030")) // 통보 구분 코드(NTFCTN_SE_CD) - .addObject("FIM031List", commonCodes.get("FIM031")) // 의견 제출 상태 코드(OPNN_SBMSN_STTS_CD) - .addObject("FIM033List", commonCodes.get("FIM033")) // 의견 제출 구분 코드(OPNN_SBMSN_SE_CD) - .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) + .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName + .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 + .addObject("pageName", "excl02030") // jsp pageName + .addObject("infoPrefix", "opnnSbmsn") // prefix + .addObject("infoPrefixUrl", "/excl/excl02") // prefixUrl + .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) + .addObject("FIM030List", commonCodes.get("FIM030")) // 통보 구분 코드(NTFCTN_SE_CD) + .addObject("FIM031List", commonCodes.get("FIM031")) // 의견 제출 상태 코드(OPNN_SBMSN_STTS_CD) + .addObject("FIM033List", commonCodes.get("FIM033")) // 의견 제출 구분 코드(OPNN_SBMSN_SE_CD) + .addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD) .addObject("opnnSbmsnInfo", json ? info : toJson(info)) ; } @@ -450,11 +450,11 @@ public class Excl02Controller extends ApplicationController { ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/excl/excl02040-info"); return mav - .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName - .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 - .addObject("pageName", "excl02040") // jsp pageName - .addObject("infoPrefix", "opnnDlbrMbr") // prefix - .addObject("infoPrefixUrl", "/excl/excl02") // prefixUrl + .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName + .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 + .addObject("pageName", "excl02040") // jsp pageName + .addObject("infoPrefix", "opnnDlbrMbr") // prefix + .addObject("infoPrefixUrl", "/excl/excl02") // prefixUrl .addObject("opnnDlbrMbrInfo", json ? info : toJson(info)) ; } diff --git a/src/main/java/cokr/xit/fims/levy/Rduct.java b/src/main/java/cokr/xit/fims/levy/Rduct.java index 324747a7..cffbdd2e 100644 --- a/src/main/java/cokr/xit/fims/levy/Rduct.java +++ b/src/main/java/cokr/xit/fims/levy/Rduct.java @@ -57,4 +57,9 @@ public class Rduct extends AbstractEntity { */ private String delRsn; + /** + * 감경 IDs + */ + private String[] rductIds; + } diff --git a/src/main/java/cokr/xit/fims/levy/service/RductService.java b/src/main/java/cokr/xit/fims/levy/service/RductService.java index 3ff4c73b..814cd93a 100644 --- a/src/main/java/cokr/xit/fims/levy/service/RductService.java +++ b/src/main/java/cokr/xit/fims/levy/service/RductService.java @@ -63,13 +63,5 @@ public interface RductService { */ String removeRduct(Rduct rduct); - /**과태료 감경 대장 정보를 삭제한다. - * @param rduct 과태료 감경 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - String removeRducts(LevyQuery req); } diff --git a/src/main/java/cokr/xit/fims/levy/service/bean/RductServiceBean.java b/src/main/java/cokr/xit/fims/levy/service/bean/RductServiceBean.java index 38480762..970f635a 100644 --- a/src/main/java/cokr/xit/fims/levy/service/bean/RductServiceBean.java +++ b/src/main/java/cokr/xit/fims/levy/service/bean/RductServiceBean.java @@ -68,33 +68,4 @@ public class RductServiceBean extends AbstractServiceBean implements RductServic return rductBean.removeRduct(rduct); } - @Override - public String removeRducts(LevyQuery req) { - // 변수 선언 - String rtnMsg = ""; // 처리 결과 메시지 - - // 감경 IDs 건수를 확인하여 1건이하면.. 종료 - if (req.getRductIds().length < 1 ) { - rtnMsg = "작업 중 선택 자료가 존재하지 않습니다."; - return rtnMsg; - } - - // 감경 IDs 만큼 반복.. - for (int iLoop = 0; iLoop < req.getRductIds().length; iLoop++) { - Rduct rduct = new Rduct(); - - rduct.setRductId(req.getRductIds()[iLoop]); // 감경 ID - rduct.setDelRsn(req.getDelRsn()); // 삭제 사유 - - // 과태료 감경 삭제 호출 - rtnMsg = rductBean.removeRduct(rduct); - // 오류가 발생하였으면 종료.. - if (rtnMsg.contains("[F]")) { - return rtnMsg; - } - } - - return rtnMsg; - } - } diff --git a/src/main/java/cokr/xit/fims/levy/web/Levy01Controller.java b/src/main/java/cokr/xit/fims/levy/web/Levy01Controller.java index 8118a49f..d516d040 100644 --- a/src/main/java/cokr/xit/fims/levy/web/Levy01Controller.java +++ b/src/main/java/cokr/xit/fims/levy/web/Levy01Controller.java @@ -6,6 +6,7 @@ import java.util.List; import java.util.Map; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import org.apache.poi.ss.usermodel.CellStyle; import org.springframework.stereotype.Controller; @@ -88,7 +89,7 @@ public class Levy01Controller extends ApplicationController { .addObject("infoPrefix", "rductLevyTrgt") // prefix .addObject("infoPrefixUrl", "/levy/levy01") // prefixUrl .addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD) - .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) + .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) // 업무 구분 코드(TASK_SE_CD) ; } @@ -171,7 +172,7 @@ public class Levy01Controller extends ApplicationController { */ @Task({"PVS","BPV"}) @RequestMapping(name="사전 감경부과 정보 조회", value=METHOD_URL.getReductionLevyTargetInfo) - public ModelAndView getReductionLevyTargetInfo(LevyQuery req) { + public ModelAndView getReductionLevyTargetInfo(HttpServletRequest hReq, LevyQuery req) { // 감경 부과일자 DataObject info = taskBean.getAdvntceYmdInfo(new CmmnQuery().setSggCd(req.getSggCd()) .setTaskSeCd(req.getTaskSeCd())); @@ -185,11 +186,12 @@ public class Levy01Controller extends ApplicationController { info.put("GRAMT_ADVNTCE_AMT", req.getGramtAdvntceAmt()); return mav - .addObject("pageName", "levy01020") - .addObject("infoPrefix", "rductLevyTrgt") // prefix - .addObject("infoPrefixUrl", "/levy/levy01") // prefixUrl - .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 - .addObject("mainQuery", json ? req : toJson(req)) // 검색 조건 + .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName + .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 + .addObject("pageName", "levy01020") // jsp pageName + .addObject("infoPrefix", "rductLevyTrgt") // prefix + .addObject("infoPrefixUrl", "/levy/levy01") // prefixUrl + .addObject("mainQuery", json ? req : toJson(req)) // 검색 조건 .addObject("rductLevyTrgtInfo", json ? info : toJson(info)) ; } @@ -235,7 +237,7 @@ public class Levy01Controller extends ApplicationController { .addObject("infoPrefix", "levy") // prefix .addObject("infoPrefixUrl", "/levy/levy01") // prefixUrl .addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD) - .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) + .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) // 업무 구분 코드(TASK_SE_CD) .addObject("FIM010List", commonCodes.get("FIM010")) // 단속 상태 코드(CRDN_STTS_CD) .addObject("FIM046List", commonCodes.get("FIM046")) // 감경 구분 코드(RDUCT_SE_CD) ; diff --git a/src/main/java/cokr/xit/fims/levy/web/Levy02Controller.java b/src/main/java/cokr/xit/fims/levy/web/Levy02Controller.java index c3871cbc..780c7344 100644 --- a/src/main/java/cokr/xit/fims/levy/web/Levy02Controller.java +++ b/src/main/java/cokr/xit/fims/levy/web/Levy02Controller.java @@ -6,6 +6,7 @@ import java.util.List; import java.util.Map; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import org.apache.poi.ss.usermodel.CellStyle; import org.springframework.stereotype.Controller; @@ -47,13 +48,13 @@ public class Levy02Controller extends ApplicationController { public class METHOD_URL { public static final String - reductionMain = "/010/main.do" // 과태료 감경 관리 메인 화면 - , getRductList = "/010/list.do" // 과태료 감경 대장 목록 조회 - , removeRduct = "/010/remove.do" // 과태료 감경 대장 삭제 - , removeRductList = "/010/removes.do" // 과태료 감경 대장 목록 삭제 - , getRductInfo = "/020/info.do" // 과태료 감경 정보 조회 - , createRduct = "/020/create.do" // 과태료 감경 대장 등럭 - , updateRduct = "/020/update.do" // 과태료 감경 대장 수정 + reductionMain = "/010/main.do" // 과태료 감경 관리 메인 화면 + , getRductList = "/010/list.do" // 과태료 감경 대장 목록 조회 + , removeRduct = "/010/remove.do" // 과태료 감경 대장 삭제 + , removeRductList = "/010/removes.do" // 과태료 감경 대장 목록 삭제 + , getRductInfo = "/020/info.do" // 과태료 감경 정보 조회 + , createRduct = "/020/create.do" // 과태료 감경 대장 등럭 + , updateRduct = "/020/update.do" // 과태료 감경 대장 수정 ; } @@ -81,11 +82,12 @@ public class Levy02Controller extends ApplicationController { // View(jsp)에서 사용할 공통코드를 조회 Map> commonCodes = getCodesOf("FIM010", "FIM019", "FIM054"); - return mav.addObject("pageName", "levy02010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix - .addObject("infoPrefix", "rduct") // prefix - .addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD) - .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) - .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) + return mav.addObject("pageName", "levy02010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix + .addObject("infoPrefix", "rduct") // prefix + .addObject("infoPrefixUrl", "/levy/levy02") // prefixUrl + .addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD) + .addObject("taskListForSgg", stngBean.filterTaskSectionCodeForSgg(commonCodes.get("FIM054"))) // 업무 구분 코드(TASK_SE_CD) + .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) ; } @@ -168,8 +170,7 @@ public class Levy02Controller extends ApplicationController { */ @Task @RequestMapping(name="과태료 감경 정보 조회", value=METHOD_URL.getRductInfo) - public ModelAndView getRductInfo(LevyQuery req) { - // + public ModelAndView getRductInfo(HttpServletRequest hReq, LevyQuery req) { DataObject info = rductService.getRductInfo(req); // 등록을 호출하였지만 등록된 감경 ID가 있는지 확인. @@ -183,16 +184,18 @@ public class Levy02Controller extends ApplicationController { return mav.addObject("rtnMsg", "납부자 정보가 없습니다."); } else { boolean json = jsonResponse(); - ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/levy/levy02020-info"); // View(jsp)에서 사용할 공통코드를 조회 Map> commonCodes = getCodesOf("FIM019"); return mav - .addObject("pageName", "levy02020") - .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 - .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) + .addObject("openerPageName", hReq.getParameter("openerPageName")) // 호출한 Jsp PageName + .addObject("callPurpose", req.getCallPurpose()) // 호출 용도 + .addObject("pageName", "levy02020") // jsp pageName + .addObject("infoPrefix", "rduct") // prefix + .addObject("infoPrefixUrl", "/levy/levy02") // prefixUrl + .addObject("FIM019List", commonCodes.get("FIM019")) // 감경 사유 구분 코드(RDUCT_RSN_CD) .addObject("rductInfo", json ? info : toJson(info)) ; } @@ -258,33 +261,22 @@ public class Levy02Controller extends ApplicationController { @RequestMapping(name="과태료 감경 대장 삭제", value=METHOD_URL.removeRduct) public ModelAndView removeRduct(Rduct rduct) { boolean saved = false; - String rtnMsg = rductService.removeRduct(rduct); + String rtnMsg = ""; - if (rtnMsg.contains("[S]")) { - saved = true; + if (rduct.getRductIds() == null || rduct.getRductIds().length < 1) { + rtnMsg = rductService.removeRduct(rduct); } else { - saved = false; + // 부과제외 IDs 만큼 반복.. + for (int iLoop = 0; iLoop < rduct.getRductIds().length; iLoop++) { + rduct.setRductId(rduct.getRductIds()[iLoop]); // 감경 ID 설정 + + // 부과제외 삭제 호출 + rtnMsg = rductService.removeRduct(rduct); + if (rtnMsg.contains("[F]")) // 오류가 발생하였으면 종료.. + break; + } } - return new ModelAndView("jsonView") - .addObject("saved", saved) - .addObject("rtnMsg", rtnMsg); - } - - /**여러 건의 과태료 감경 대장 목록을 제거한다. - * @param rductIDs 과태료 감경 대장 IDs - * @return jsonView - *
 {
-	 *     "affected": 저장된 정보수
-	 *     "saved": 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @Task - @RequestMapping(name="과태료 감경 대장 목록 삭제", value=METHOD_URL.removeRductList) - public ModelAndView removeRductList(LevyQuery req) { - boolean saved = false; - String rtnMsg = rductService.removeRducts(req); - if (rtnMsg.contains("[S]")) { saved = true; } else { diff --git a/src/main/java/cokr/xit/fims/payer/Payer.java b/src/main/java/cokr/xit/fims/payer/Payer.java index 983ed829..97302d2f 100644 --- a/src/main/java/cokr/xit/fims/payer/Payer.java +++ b/src/main/java/cokr/xit/fims/payer/Payer.java @@ -83,11 +83,6 @@ public class Payer extends AbstractEntity { */ private String addrInptSeCd; - /** - * 주소 조회 일자 - */ - private String addrInqYmd; - /** * 주소 구분 코드 */ diff --git a/src/main/java/cokr/xit/fims/payer/PayerQuery.java b/src/main/java/cokr/xit/fims/payer/PayerQuery.java index e6107f92..e6ec87d7 100644 --- a/src/main/java/cokr/xit/fims/payer/PayerQuery.java +++ b/src/main/java/cokr/xit/fims/payer/PayerQuery.java @@ -31,10 +31,14 @@ public class PayerQuery extends QueryRequest { private String addrSn; /** 이력 일련번호 */ private String hstrySn; + /** 도로명 코드 */ + private String roadNmCd; + /** 주소 */ + private String addr; + /** 상세 주소 */ + private String dtlAddr; /** 단속 ID */ private String crdnId; - /** 삭제 여부 */ - private String delYn; /** 호출 용도 */ private String callPurpose; // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정, refresh 재조회). @@ -147,27 +151,58 @@ public class PayerQuery extends QueryRequest { public void setRtpyrNo(String rtpyrNo) { this.rtpyrNo = rtpyrNo; } -/* - public PayerQuery setRtpyrNo(String rtpyrNo) { - this.rtpyrNo = rtpyrNo; - return this; + + /**도로명 코드를 반환한다. + * @return 도로명 코드 + */ + public String getRoadNmCd() { + return roadNmCd; } -*/ - public String getCrdnId() { - return ifEmpty(crdnId, () -> null); + + /**도로명 코드를 설정한다. + * @param roadNmCd 도로명 코드 + * @return 현재 PayerQuery + */ + public void setRoadNmCd(String roadNmCd) { + this.roadNmCd = roadNmCd; } - public T setCrdnId(String crdnId) { - this.crdnId = crdnId; - return self(); + /**주소를 반환한다. + * @return 주소 + */ + public String getAddr() { + return addr; + } + + /**주소를 설정한다. + * @param addr 주소 + * @return 현재 PayerQuery + */ + public void setAddr(String addr) { + this.addr = addr; + } + + /**상세 주소를 반환한다. + * @return 상세 주소 + */ + public String getDtlAddr() { + return dtlAddr; + } + + /**상세 주소를 설정한다. + * @param dtlAddr 상세 주소 + * @return 현재 PayerQuery + */ + public void setDtlAddr(String dtlAddr) { + this.dtlAddr = dtlAddr; } - public String getDelYn() { - return ifEmpty(delYn, () -> null); + public String getCrdnId() { + return ifEmpty(crdnId, () -> null); } - public T setDelYn(String delYn) { - this.delYn = delYn; + public T setCrdnId(String crdnId) { + this.crdnId = crdnId; return self(); } diff --git a/src/main/java/cokr/xit/fims/payer/dao/PayerAddrMapper.java b/src/main/java/cokr/xit/fims/payer/dao/PayerAddrMapper.java index 74c5cb09..c94584e3 100644 --- a/src/main/java/cokr/xit/fims/payer/dao/PayerAddrMapper.java +++ b/src/main/java/cokr/xit/fims/payer/dao/PayerAddrMapper.java @@ -33,18 +33,7 @@ public interface PayerAddrMapper extends AbstractMapper { * @param req 납부자 주소 조회 조건 * @return 납부자 주소 객체 목록 */ - List selectPayerAddrs(PayerQuery req); - - default DataObject selectPayerAddrsInfo(PayerQuery req) { - // 기본 정렬 - if (req.getOrderBy() == null) { - req.setOrderBy("PA.ADDR_SN DESC"); - } - - List payerAddrs = selectPayerAddrs(req); - - return !payerAddrs.isEmpty() ? payerAddrs.get(0) : null; - } + List selectPayerAddrs(PayerQuery req); /**납부자 주소 정보를 등록한다. * @param params 파라미터 @@ -86,4 +75,10 @@ public interface PayerAddrMapper extends AbstractMapper { return payer != null && updatePayerAddr(params().set("payerAddr", payer)) == 1; } + /**지정한 조건에 따라 납부자 주소 변경 이력 객체들을 반환한다. + * @param req 납부자 대장 조회 조건 + * @return 납부자 대장 객체 목록 + */ + List selectPayerAddrHstrys(PayerQuery req); + } diff --git a/src/main/java/cokr/xit/fims/payer/dao/PayerMapper.java b/src/main/java/cokr/xit/fims/payer/dao/PayerMapper.java index 95d661ce..ef5f113a 100644 --- a/src/main/java/cokr/xit/fims/payer/dao/PayerMapper.java +++ b/src/main/java/cokr/xit/fims/payer/dao/PayerMapper.java @@ -98,12 +98,6 @@ public interface PayerMapper extends AbstractMapper { return !crdnPayers.isEmpty() ? crdnPayers.get(0) : null; } - /**지정한 조건에 따라 납부자 대장 객체들을 반환한다. - * @param req 납부자 대장 조회 조건 - * @return 납부자 대장 객체 목록 - */ - List selectPayerHstrys(PayerQuery req); - /**지정한 조건에 따라 단속 정보를 반환한다. * @param crdnId 단속 ID * @return 단속, 부과제외 정보 @@ -114,4 +108,10 @@ public interface PayerMapper extends AbstractMapper { return selectCrdn(new PayerQuery().setCrdnId(crdnId)); } + /**지정한 조건에 따라 납부자 변경 이력 객체들을 반환한다. + * @param req 납부자 대장 조회 조건 + * @return 납부자 대장 객체 목록 + */ + List selectPayerHstrys(PayerQuery req); + } \ No newline at end of file diff --git a/src/main/java/cokr/xit/fims/payer/service/PayerService.java b/src/main/java/cokr/xit/fims/payer/service/PayerService.java index 9af065ce..9b846197 100644 --- a/src/main/java/cokr/xit/fims/payer/service/PayerService.java +++ b/src/main/java/cokr/xit/fims/payer/service/PayerService.java @@ -87,10 +87,16 @@ public interface PayerService { */ String createCrdnPayer(Payer payer); - /**지정한 조건에 따라 납부자 변경 이력 목록을 조회하여 반환한다. + /**지정한 조건에 따라 납부자 이력 목록을 조회하여 반환한다. * @param req 납부자 대장 조회 조건 * @return 납부자 변경 이력 목록 */ List getPayerHstrys(PayerQuery req); + /**지정한 조건에 따라 납부자 주소 이력 목록을 조회하여 반환한다. + * @param req 납부자 대장 조회 조건 + * @return 납부자 변경 이력 목록 + */ + List getPayerAddrHstrys(PayerQuery req); + } diff --git a/src/main/java/cokr/xit/fims/payer/service/bean/PayerBean.java b/src/main/java/cokr/xit/fims/payer/service/bean/PayerBean.java index d13245ef..e59ce46e 100644 --- a/src/main/java/cokr/xit/fims/payer/service/bean/PayerBean.java +++ b/src/main/java/cokr/xit/fims/payer/service/bean/PayerBean.java @@ -72,13 +72,63 @@ public class PayerBean extends AbstractBean { } public Payer getPayer(PayerQuery req) { - req.setOrderBy("P.RTPYR_ID DESC, PA.ADDR_SN DESC"); + if (req.getOrderBy() == null) { + req.setOrderBy("P.RTPYR_ID DESC"); + } - List payers = getPayers(req); + List payers = getPayers(req); + + return !payers.isEmpty() ? payers.get(0) : null; + } + + /**지정한 조건에 따라 납부자 주소 객체들을 반환한다. + * @param req 납부자 조회 조건 + * @return 납부자 객체 목록 + */ + public List getPayerAddrs(PayerQuery req) { + return payerAddrMapper.selectPayerAddrs(req); + } + + public Payer getPayerAddr(PayerQuery req) { + if (req.getOrderBy() == null) { + req.setOrderBy("PA.ADDR_SN DESC"); + } + + List payers = getPayerAddrs(req); return !payers.isEmpty() ? payers.get(0) : null; } + public Payer getPayerAddrInfo(Payer payer) { + // PayerQuery + PayerQuery req = new PayerQuery(); + req.setRtpyrSeCd(payer.getRtpyrSeCd()); // 납부자 구분 코드 + req.setRtpyrNo(payer.getRtpyrNo()); // 납부자 번호 + req.setRoadNmCd(payer.getRoadNmCd()); // 도로명 코드 + req.setAddr(payer.getAddr()); // 주소 + req.setDtlAddr(payer.getDtlAddr()); // 상세 주소 + + // 납부자 정보 조회 + req.setOrderBy("P.RTPYR_ID DESC"); + List payers = getPayers(req); + + // 납부자 ID 설정 + payer.setRtpyrId(payers.get(0).getRtpyrId()); + + // 납부자 정보 및 주소 정보를 조회 + req.setRtpyrId(payer.getRtpyrId()); + req.setOrderBy("PA.ADDR_SN DESC"); + payers = getPayerAddrs(req); + + if (payers.get(0).getAddrSn().equals("")) { + createPayerAddr(payer); // 주소 신규 등록 + } else { + payer.setAddrSn(payers.get(0).getAddrSn()); // 주소 일련번호 설정 + } + + return payer; + } + /**납부자 정보를 등록한다. * @param payer 납부자 * @return 저장 여부 @@ -165,7 +215,6 @@ public class PayerBean extends AbstractBean { payer.setVhrno(basicInfo.getVhrno()); payer.setRtpyrInptSeCd("02"); payer.setAddrInptSeCd("02"); - payer.setRtpyrSeCd( Map.of( "11", "01", @@ -204,24 +253,9 @@ public class PayerBean extends AbstractBean { payer.setDtlAddr(basicInfo.getUse_strnghld_adres_nm()); payer.setWholAddr(basicInfo.getRoad_nm_adres() + ", " + basicInfo.getUse_strnghld_adres_nm()); - // 납부자 조회 - PayerQuery req = new PayerQuery(); - req.setRtpyrSeCd(payer.getRtpyrSeCd()); - req.setRtpyrNo(payer.getRtpyrNo()); - req.setRtpyrId(payer.getRtpyrId()); + Payer result = create(payer) ? payer : getPayerAddrInfo(payer); - Payer result = create(payer) ? payer : getPayer(req); - - // 등록된 최종 주소를 확인하여 주소+상세주소가 다르다면 주소를 신규 등록한다. - if (result.getAddr().equals(basicInfo.getRoad_nm_adres()) && result.getDtlAddr().equals(basicInfo.getUse_strnghld_adres_nm())) { - // 납부자 주소의 최중 수정일자를 수정 - updatePayerAddr(result); - } else { - // 납부자 주소를 신규 등록 - createPayerAddr(result); - } - - if (result != null) + if (result != null) result.setVehicleInfo(basicInfo); return result; @@ -253,7 +287,6 @@ public class PayerBean extends AbstractBean { public String createCrdnPayer(Payer payer) { // 변수 선언 boolean rtnScs = false; // DB 처리 결과 - String rtnMsg = ""; // 처리 결과 메시지 String strTemp = ""; // 지하 구분 코드 @@ -267,14 +300,11 @@ public class PayerBean extends AbstractBean { payer.setWholAddr(payer.getAddr() + ", " + payer.getDtlAddr()); } - // 단속 ID로 단속 정보 조회 - DataObject crdnInfo = payerMapper.selectCrdnInfo(payer.getCrdnId()); - - // 납부자 ID로 납부자 정보 조회 - Payer payerInfo = getPayer(new PayerQuery().setRtpyrId(payer.getRtpyrId()) - .setAddrSn(payer.getAddrSn())); + // 단속 ID로 단속, 납부자, 주소 정보 조회 + DataObject crdnPayerAddrInfo = payerMapper.selectCrdnInfo(payer.getCrdnId()); - if (payer.getRtpyrNo().equals(payerInfo.getRtpyrNo())) { // 주민등록번호가 동일하다면.. + // 주민등록번호가 동일하다면.. + if (crdnPayerAddrInfo.string("RTPYR_NO").equals(payer.getRtpyrNo())) { // 납부자 대장(TB_PAYER)에 납부자 정보를 수정한다. rtnScs = update(payer); if (!rtnScs) { @@ -282,57 +312,50 @@ public class PayerBean extends AbstractBean { } // 주소가 변경되었는지 확인 - if (payerInfo.getZip().equals(payer.getZip()) - && payerInfo.getAddr().equals(payer.getAddr()) - && payerInfo.getDtlAddr().equals(payer.getDtlAddr())) { - payer.setAddrSn(payerInfo.getAddrSn()); // 주소 일련번호 - rtnScs = updatePayerAddr(payer); // 납부자 주소 수정일자만 수정 + if (crdnPayerAddrInfo.string("ZIP").equals(payer.getZip()) + && crdnPayerAddrInfo.string("ADDR").equals(payer.getAddr()) + && crdnPayerAddrInfo.string("DTL_ADDR").equals(payer.getDtlAddr()) + && crdnPayerAddrInfo.string("ROAD_NM_CD").equals(payer.getRoadNmCd())) { + // 주소 일련번호 설정 + payer.setAddrSn(crdnPayerAddrInfo.string("ADDR_SN")); } else { - rtnScs = createPayerAddr(payer); // 납부자 주소 등록 - + // 납부자 주소 등록 + rtnScs = createPayerAddr(payer); + if (!rtnScs) { + throw new RuntimeException("납부자 등록 실행중 주소 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + } CrdnPayerHstry crdnPayerAddrHstry = new CrdnPayerHstry(); crdnPayerAddrHstry.setCrdnId(payer.getCrdnId()); crdnPayerAddrHstry.setRtpyrId(payer.getRtpyrId()); crdnPayerAddrHstry.setAddrSn(payer.getAddrSn()); - crdnPayerHstryBean.createCrdnPayerAddrHstry(crdnPayerAddrHstry); + // 납부자 주소 변경 이력 생성 + rtnScs = crdnPayerHstryBean.createHstryUpdateCrdnPayerAddr(crdnPayerAddrHstry); + if (!rtnScs) { + throw new RuntimeException("납부자 등록 실행중 단속 대장에 주소 일련번호 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + } } - - // 단속 대장의 납부자 ID 및 주소 일련번호를 수정한다. - CrdnPayerHstry crdnPayerHstry = new CrdnPayerHstry(); - crdnPayerHstry.setCrdnId(payer.getCrdnId()); - crdnPayerHstry.setRtpyrId(payer.getRtpyrId()); - crdnPayerHstry.setAddrSn(payer.getAddrSn()); - - rtnScs = crdnPayerHstryBean.updateCrdnPayer(crdnPayerHstry); - if (!rtnScs) { - throw new RuntimeException("납부자 등록 실행중 단속 대장에 납부자ID 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback - } } else { - // 납부자 대장(TB_PAYER)에 납부자 정보를 신규 등록한다. - rtnScs = create(payer); - if (!rtnScs) { - throw new RuntimeException("납부자 정보 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback - } + Payer result = create(payer) ? payer : getPayerAddrInfo(payer); // 단속 대장의 납부자ID 수정 및 단속 납부자 이력(TB_CRDN_PAYER_HSTRY) 대장에 등록한다. CrdnPayerHstry crdnPayerHstry = new CrdnPayerHstry(); crdnPayerHstry.setCrdnId(payer.getCrdnId()); - crdnPayerHstry.setRtpyrId(payer.getRtpyrId()); - crdnPayerHstry.setAddrSn(payer.getAddrSn()); + crdnPayerHstry.setRtpyrId(result.getRtpyrId()); + crdnPayerHstry.setAddrSn(result.getAddrSn()); rtnScs = crdnPayerHstryBean.createHstryUpdateCrdnPayer(crdnPayerHstry); if (!rtnScs) { - throw new RuntimeException("납부자 등록 실행중 단속 대장에 납부자ID 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback + throw new RuntimeException("납부자 등록 실행중 단속 대장에 납부자 ID 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } } // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다. - if (crdnInfo.number("CRDN_STTS_CD").intValue() < 21) { // 납부자 등록 완료 + if (crdnPayerAddrInfo.number("CRDN_STTS_CD").intValue() < 21) { // 납부자 등록 완료 CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry(); - crdnSttsHstry.setCrdnId(crdnInfo.string("CRDN_ID")); - crdnSttsHstry.setBfrSttsCd(crdnInfo.string("CRDN_STTS_CD")); - crdnSttsHstry.setBfrSttsChgDt(crdnInfo.string("CRDN_STTS_CHG_DT")); + crdnSttsHstry.setCrdnId(crdnPayerAddrInfo.string("CRDN_ID")); + crdnSttsHstry.setBfrSttsCd(crdnPayerAddrInfo.string("CRDN_STTS_CD")); + crdnSttsHstry.setBfrSttsChgDt(crdnPayerAddrInfo.string("CRDN_STTS_CHG_DT")); crdnSttsHstry.setCrdnSttsCd("21"); rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry); @@ -341,21 +364,31 @@ public class PayerBean extends AbstractBean { } } - rtnMsg = "[S] 작업이 정상 처리 되었습니다."; - - return rtnMsg; + return "[S] 작업이 정상 처리 되었습니다."; } - /**지정한 조건에 따라 납부자 변경 이력 목록을 조회하여 반환한다. + /**지정한 조건에 따라 납부자 이력 목록을 조회하여 반환한다. * @param req 납부자 조회 조건 * @return 납부자 변경 이력 목록 */ public List getPayerHstrys(PayerQuery req) { if (req.getOrderBy() == null) { - req.setOrderBy("PH.REG_DT DESC"); + req.setOrderBy("CPH.REG_DT DESC"); } return payerMapper.selectPayerHstrys(req); } + /**지정한 조건에 따라 납부자 주소 이력 목록을 조회하여 반환한다. + * @param req 납부자 조회 조건 + * @return 납부자 변경 이력 목록 + */ + public List getPayerAddrHstrys(PayerQuery req) { + if (req.getOrderBy() == null) { + req.setOrderBy("CPAH.REG_DT DESC"); + } + + return payerAddrMapper.selectPayerAddrHstrys(req); + } + } diff --git a/src/main/java/cokr/xit/fims/payer/service/bean/PayerServiceBean.java b/src/main/java/cokr/xit/fims/payer/service/bean/PayerServiceBean.java index 1603da3d..f5b756b3 100644 --- a/src/main/java/cokr/xit/fims/payer/service/bean/PayerServiceBean.java +++ b/src/main/java/cokr/xit/fims/payer/service/bean/PayerServiceBean.java @@ -89,4 +89,9 @@ public class PayerServiceBean extends AbstractServiceBean implements PayerServic return payerBean.getPayerHstrys(req); } + @Override + public List getPayerAddrHstrys(PayerQuery req) { + return payerBean.getPayerAddrHstrys(req); + } + } \ No newline at end of file diff --git a/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java b/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java index 4bd63d83..1f8cdeb6 100644 --- a/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java +++ b/src/main/java/cokr/xit/fims/sprt/web/Sprt02Controller.java @@ -295,17 +295,18 @@ public class Sprt02Controller extends ApplicationController { // 단속 상태 이력(TB_CRDN_STTS_HSTRY) 조회 CrdnSttsHstryQuery crdnSttsHstryQuery = new CrdnSttsHstryQuery(); - crdnSttsHstryQuery.setCrdnId(req.getCrdnId()); - crdnSttsHstryQuery.setOrderBy("CSH.REG_DT DESC, CSH.STTS_HSTRY_ID DESC"); // 정렬 + crdnSttsHstryQuery.setCrdnId(req.getCrdnId()); // 단속 ID + crdnSttsHstryQuery.setOrderBy("CSH.STTS_HSTRY_ID DESC"); // 정렬 List crdnSttsHstry = crdnSttsHstryService.getCrdnSttsHstrys(crdnSttsHstryQuery); // 납부자 변경 이력(TB_PAYER_HSTRY) 조회 PayerQuery payerQuery = new PayerQuery(); - payerQuery.setRtpyrId(req.getRtpyrId()); - payerQuery.setOrderBy("PH.REG_DT DESC"); // 정렬 + payerQuery.setCrdnId(req.getCrdnId()); // 단속 ID + payerQuery.setRtpyrId(req.getRtpyrId()); // 납부자 ID + payerQuery.setOrderBy("CPAH.REG_DT DESC"); // 정렬 - List payerHstry = payerService.getPayerHstrys(payerQuery); + List payerAddrHstry = payerService.getPayerAddrHstrys(payerQuery); boolean json = jsonResponse(); @@ -313,10 +314,10 @@ public class Sprt02Controller extends ApplicationController { mav.addObject("pageNameMain", "sprt02010") .addObject("pageName", "sprt02050") - .addObject("rduct", json ? rduct : toJson(rduct)) // 과태료 감경 정보 - .addObject("levyExcl", json ? levyExcl : toJson(levyExcl)) // 부과 제외 정보 - .addObject("crdnSttsHstry", json ? crdnSttsHstry : toJson(crdnSttsHstry)) // 단속 상태 이력 - .addObject("payerHstry", json ? payerHstry : toJson(payerHstry)) // 납부자 변경 이력 + .addObject("rduct", json ? rduct : toJson(rduct)) // 과태료 감경 정보 + .addObject("levyExcl", json ? levyExcl : toJson(levyExcl)) // 부과 제외 정보 + .addObject("crdnSttsHstry", json ? crdnSttsHstry : toJson(crdnSttsHstry)) // 단속 상태 이력 + .addObject("payerAddrHstry", json ? payerAddrHstry : toJson(payerAddrHstry)) // 납부자 주소 변경 이력 ; // 재조회로 호출되었다면.. diff --git a/src/main/resources/sql/mapper/fims/excl/crdnReReg-mapper.xml b/src/main/resources/sql/mapper/fims/excl/crdnReReg-mapper.xml index e0e488b1..4ee3df41 100644 --- a/src/main/resources/sql/mapper/fims/excl/crdnReReg-mapper.xml +++ b/src/main/resources/sql/mapper/fims/excl/crdnReReg-mapper.xml @@ -183,11 +183,14 @@ - /* 단속 재등록 등록(crdnReRegMapper.insertCrdnReReg) */ - - SELECT CONCAT(#{crdnReReg.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(RE_REG_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID - FROM TB_CRDN_RE_REG - WHERE RE_REG_ID LIKE CONCAT(#{crdnReReg.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%') + /* 단속 재등록 등록(crdnReRegMapper.insertCrdnReReg) */ + + + + + + + INSERT INTO TB_CRDN_RE_REG ( @@ -202,25 +205,25 @@ , RGTR ) VALUES ( - #{crdnReReg.reRegId} - , #{crdnReReg.bfrCrdnId} - , #{crdnReReg.crdnId} + #{reRegId} + , #{bfrCrdnId} + , #{crdnId} , - , #{crdnReReg.crdnRegSeCd} - , #{crdnReReg.etcCn} - , 'N' + , #{crdnRegSeCd} + , #{etcCn} + , 'N' , - , #{crdnReReg.createdBy} + , #{createdBy} ) - /* 단속 재등록 삭제(crdnReRegMapper.deleteCrdnReReg) */ + /* 단속 재등록 삭제(crdnReRegMapper.deleteCrdnReReg) */ UPDATE TB_CRDN_RE_REG SET DEL_YN = 'Y' , DEL_DT = - , DLTR = #{crdnReReg.modifiedBy} - , DEL_RSN = #{crdnReReg.delRsn} - WHERE RE_REG_ID = #{crdnReReg.reRegId} + , DLTR = #{modifiedBy} + , DEL_RSN = #{delRsn} + WHERE RE_REG_ID = #{reRegId} AND DEL_YN = 'N' diff --git a/src/main/resources/sql/mapper/fims/excl/opnnDlbrMbr-mapper.xml b/src/main/resources/sql/mapper/fims/excl/opnnDlbrMbr-mapper.xml index d22b3ff9..eb1f572c 100644 --- a/src/main/resources/sql/mapper/fims/excl/opnnDlbrMbr-mapper.xml +++ b/src/main/resources/sql/mapper/fims/excl/opnnDlbrMbr-mapper.xml @@ -99,10 +99,13 @@ AND T.TASK_SE_CD = #{taskSeCd} - /* 의견제출 심의 회원 등록(opnnDlbrMbrMapper.insertOpnnDlbrMbr) */ - - SELECT LPAD(CAST(IFNULL(MAX(MNG_ID) + 1, 1) AS INT), 3, '0') AS NEW_ID - FROM TB_OPNN_DLBR_MBR + /* 의견제출 심의 회원 등록(opnnDlbrMbrMapper.insertOpnnDlbrMbr) */ + + + + + + INSERT INTO TB_OPNN_DLBR_MBR ( @@ -129,49 +132,49 @@ , MDFR ) VALUES ( - #{opnnDlbrMbr.mngId} - , #{opnnDlbrMbr.sggCd} - , #{opnnDlbrMbr.taskSeCd} - , #{opnnDlbrMbr.dlbrMbrJbgd1} - , #{opnnDlbrMbr.dlbrMbrNm1} - , #{opnnDlbrMbr.dlbrMbrJbgd2} - , #{opnnDlbrMbr.dlbrMbrNm2} - , #{opnnDlbrMbr.dlbrMbrJbgd3} - , #{opnnDlbrMbr.dlbrMbrNm3} - , #{opnnDlbrMbr.dlbrMbrJbgd4} - , #{opnnDlbrMbr.dlbrMbrNm4} - , #{opnnDlbrMbr.dlbrMbrJbgd5} - , #{opnnDlbrMbr.dlbrMbrNm5} - , #{opnnDlbrMbr.dlbrMbrJbgd6} - , #{opnnDlbrMbr.dlbrMbrNm6} - , #{opnnDlbrMbr.dlbrMbrJbgd7} - , #{opnnDlbrMbr.dlbrMbrNm7} - , - , #{opnnDlbrMbr.createdBy} - , - , #{opnnDlbrMbr.modifiedBy} + #{mngId} + , #{sggCd} + , #{taskSeCd} + , #{dlbrMbrJbgd1} + , #{dlbrMbrNm1} + , #{dlbrMbrJbgd2} + , #{dlbrMbrNm2} + , #{dlbrMbrJbgd3} + , #{dlbrMbrNm3} + , #{dlbrMbrJbgd4} + , #{dlbrMbrNm4} + , #{dlbrMbrJbgd5} + , #{dlbrMbrNm5} + , #{dlbrMbrJbgd6} + , #{dlbrMbrNm6} + , #{dlbrMbrJbgd7} + , #{dlbrMbrNm7} + , + , #{createdBy} + , + , #{modifiedBy} ) - /* 의견제출 심의 회원 수정(opnnDlbrMbrMapper.updateOpnnDlbrMbr) */ + /* 의견제출 심의 회원 수정(opnnDlbrMbrMapper.updateOpnnDlbrMbr) */ UPDATE TB_OPNN_DLBR_MBR - SET DLBR_MBR_JBGD1 = #{opnnDlbrMbr.dlbrMbrJbgd1} - , DLBR_MBR_NM1 = #{opnnDlbrMbr.dlbrMbrNm1} - , DLBR_MBR_JBGD2 = #{opnnDlbrMbr.dlbrMbrJbgd2} - , DLBR_MBR_NM2 = #{opnnDlbrMbr.dlbrMbrNm2} - , DLBR_MBR_JBGD3 = #{opnnDlbrMbr.dlbrMbrJbgd3} - , DLBR_MBR_NM3 = #{opnnDlbrMbr.dlbrMbrNm3} - , DLBR_MBR_JBGD4 = #{opnnDlbrMbr.dlbrMbrJbgd4} - , DLBR_MBR_NM4 = #{opnnDlbrMbr.dlbrMbrNm4} - , DLBR_MBR_JBGD5 = #{opnnDlbrMbr.dlbrMbrJbgd5} - , DLBR_MBR_NM5 = #{opnnDlbrMbr.dlbrMbrNm5} - , DLBR_MBR_JBGD6 = #{opnnDlbrMbr.dlbrMbrJbgd6} - , DLBR_MBR_NM6 = #{opnnDlbrMbr.dlbrMbrNm6} - , DLBR_MBR_JBGD7 = #{opnnDlbrMbr.dlbrMbrJbgd7} - , DLBR_MBR_NM7 = #{opnnDlbrMbr.dlbrMbrNm7} + SET DLBR_MBR_JBGD1 = #{dlbrMbrJbgd1} + , DLBR_MBR_NM1 = #{dlbrMbrNm1} + , DLBR_MBR_JBGD2 = #{dlbrMbrJbgd2} + , DLBR_MBR_NM2 = #{dlbrMbrNm2} + , DLBR_MBR_JBGD3 = #{dlbrMbrJbgd3} + , DLBR_MBR_NM3 = #{dlbrMbrNm3} + , DLBR_MBR_JBGD4 = #{dlbrMbrJbgd4} + , DLBR_MBR_NM4 = #{dlbrMbrNm4} + , DLBR_MBR_JBGD5 = #{dlbrMbrJbgd5} + , DLBR_MBR_NM5 = #{dlbrMbrNm5} + , DLBR_MBR_JBGD6 = #{dlbrMbrJbgd6} + , DLBR_MBR_NM6 = #{dlbrMbrNm6} + , DLBR_MBR_JBGD7 = #{dlbrMbrJbgd7} + , DLBR_MBR_NM7 = #{dlbrMbrNm7} , MDFCN_DT = - , MDFR = #{opnnDlbrMbr.modifiedBy} - WHERE MNG_ID = #{opnnDlbrMbr.mngId} + , MDFR = #{modifiedBy} + WHERE MNG_ID = #{mngId} diff --git a/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml b/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml index d3e79004..c7ff3f44 100644 --- a/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml +++ b/src/main/resources/sql/mapper/fims/excl/opnnSbmsn-mapper.xml @@ -381,15 +381,15 @@ - /* 의견제출 대장 등록(opnnSbmsnMapper.insertOpnnSbmsn) */ - - SELECT CONCAT(#{opnnSbmsn.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(OPNN_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID + /* 의견제출 대장 등록(opnnSbmsnMapper.insertOpnnSbmsn) */ + + SELECT CONCAT(#{sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(OPNN_ID, 10)) + 1, 1) AS INT), 11, '0')) AS NEW_ID , (SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(RCPT_NO, 5)) + 1, 1) AS INT), 6, '0')) FROM TB_OPNN_SBMSN WHERE OPNN_ID LIKE CONCAT(#{opnnSbmsn.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%') AND RCPT_NO LIKE CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), '%')) AS NEW_RCPT_NO FROM TB_OPNN_SBMSN - WHERE OPNN_ID LIKE CONCAT(#{opnnSbmsn.sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%') + WHERE OPNN_ID LIKE CONCAT(#{sggCd}, DATE_FORMAT(CURRENT_DATE, '%Y'), '%') INSERT INTO TB_OPNN_SBMSN ( @@ -424,93 +424,93 @@ , MDFR ) VALUES ( - #{opnnSbmsn.opnnId} - , #{opnnSbmsn.crdnId} - , #{opnnSbmsn.rcptNo} - , #{opnnSbmsn.rcptYmd} - , #{opnnSbmsn.rcptSeCd} - , #{opnnSbmsn.ownrRelCd} - , #{opnnSbmsn.sttrNm} - , #{opnnSbmsn.sttrBrdt} - , #{opnnSbmsn.sttrRrno} - , #{opnnSbmsn.sttrAddr} - , #{opnnSbmsn.sttrDaddr} - , #{opnnSbmsn.sttrZip} - , #{opnnSbmsn.sttrCttpc} - , #{opnnSbmsn.sttrEml} - , #{opnnSbmsn.opnnSbmsnCn} - , #{opnnSbmsn.opnnSbmsnSeCd} - , #{opnnSbmsn.opnnSbmsnGist} - , #{opnnSbmsn.docNo} - , #{opnnSbmsn.ntfctnSeCd} - , #{opnnSbmsn.picRvwOpnn} - , #{opnnSbmsn.ansCn} - , #{opnnSbmsn.ansYmd} - , #{opnnSbmsn.ansTm} - , #{opnnSbmsn.opnnSbmsnSttsCd} - , 'N' + #{opnnId} + , #{crdnId} + , #{rcptNo} + , #{rcptYmd} + , #{rcptSeCd} + , #{ownrRelCd} + , #{sttrNm} + , #{sttrBrdt} + , #{sttrRrno} + , #{sttrAddr} + , #{sttrDaddr} + , #{sttrZip} + , #{sttrCttpc} + , #{sttrEml} + , #{opnnSbmsnCn} + , #{opnnSbmsnSeCd} + , #{opnnSbmsnGist} + , #{docNo} + , #{ntfctnSeCd} + , #{picRvwOpnn} + , #{ansCn} + , #{ansYmd} + , #{ansTm} + , #{opnnSbmsnSttsCd} + , 'N' , - , #{opnnSbmsn.createdBy} + , #{createdBy} , - , #{opnnSbmsn.modifiedBy} + , #{modifiedBy} ) - /* 의견제출 대장 수정(opnnSbmsnMapper.updateOpnnSbmsn) */ + /* 의견제출 대장 수정(opnnSbmsnMapper.updateOpnnSbmsn) */ UPDATE TB_OPNN_SBMSN - SET RCPT_NO = #{opnnSbmsn.rcptNo} - , RCPT_YMD = #{opnnSbmsn.rcptYmd} - , RCPT_SE_CD = #{opnnSbmsn.rcptSeCd} - , OWNR_REL_CD = #{opnnSbmsn.ownrRelCd} - , STTR_NM = #{opnnSbmsn.sttrNm} - , STTR_BRDT = #{opnnSbmsn.sttrBrdt} - , STTR_RRNO = #{opnnSbmsn.sttrRrno} - , STTR_ADDR = #{opnnSbmsn.sttrAddr} - , STTR_DADDR = #{opnnSbmsn.sttrDaddr} - , STTR_ZIP = #{opnnSbmsn.sttrZip} - , STTR_CTTPC = #{opnnSbmsn.sttrCttpc} - , STTR_EML = #{opnnSbmsn.sttrEml} - , OPNN_SBMSN_CN = #{opnnSbmsn.opnnSbmsnCn} - , OPNN_SBMSN_SE_CD = #{opnnSbmsn.opnnSbmsnSeCd} - , OPNN_SBMSN_GIST = #{opnnSbmsn.opnnSbmsnGist} - , PIC_RVW_OPNN = #{opnnSbmsn.picRvwOpnn} + SET RCPT_NO = #{rcptNo} + , RCPT_YMD = #{rcptYmd} + , RCPT_SE_CD = #{rcptSeCd} + , OWNR_REL_CD = #{ownrRelCd} + , STTR_NM = #{sttrNm} + , STTR_BRDT = #{sttrBrdt} + , STTR_RRNO = #{sttrRrno} + , STTR_ADDR = #{sttrAddr} + , STTR_DADDR = #{sttrDaddr} + , STTR_ZIP = #{sttrZip} + , STTR_CTTPC = #{sttrCttpc} + , STTR_EML = #{sttrEml} + , OPNN_SBMSN_CN = #{opnnSbmsnCn} + , OPNN_SBMSN_SE_CD = #{opnnSbmsnSeCd} + , OPNN_SBMSN_GIST = #{opnnSbmsnGist} + , PIC_RVW_OPNN = #{picRvwOpnn} , MDFCN_DT = - , MDFR = #{opnnSbmsn.modifiedBy} - WHERE OPNN_ID = #{opnnSbmsn.opnnId} + , MDFR = #{modifiedBy} + WHERE OPNN_ID = #{opnnId} AND DEL_YN = 'N' - /* 의견제출 대장 답변 수정(opnnSbmsnMapper.updateOpnnSbmsnAnswer) */ + /* 의견제출 대장 답변 수정(opnnSbmsnMapper.updateOpnnSbmsnAnswer) */ UPDATE TB_OPNN_SBMSN - SET DOC_NO = #{opnnSbmsn.docNo} - , NTFCTN_SE_CD = #{opnnSbmsn.ntfctnSeCd} - , PIC_RVW_OPNN = #{opnnSbmsn.picRvwOpnn} - , OPNN_SBMSN_STTS_CD= #{opnnSbmsn.opnnSbmsnSttsCd} - , ANS_YMD = #{opnnSbmsn.ansYmd} - , ANS_TM = #{opnnSbmsn.ansTm} - , ANS_CN = #{opnnSbmsn.ansCn} - , MDFCN_DT = - , MDFR = #{opnnSbmsn.modifiedBy} - WHERE OPNN_ID = #{opnnSbmsn.opnnId} + SET DOC_NO = #{docNo} + , NTFCTN_SE_CD = #{ntfctnSeCd} + , PIC_RVW_OPNN = #{picRvwOpnn} + , OPNN_SBMSN_STTS_CD= #{opnnSbmsnSttsCd} + , ANS_YMD = #{ansYmd} + , ANS_TM = #{ansTm} + , ANS_CN = #{ansCn} + , MDFCN_DT = + , MDFR = #{modifiedBy} + WHERE OPNN_ID = #{opnnId} AND DEL_YN = 'N' - /* 의견제출 대장 삭제(opnnSbmsnMapper.deleteOpnnSbmsn) */ + /* 의견제출 대장 삭제(opnnSbmsnMapper.deleteOpnnSbmsn) */ UPDATE TB_OPNN_SBMSN SET DEL_YN = 'Y' - , DEL_DT = - , DLTR = #{opnnSbmsn.modifiedBy} - , DEL_RSN = #{opnnSbmsn.delRsn} - WHERE OPNN_ID = #{opnnSbmsn.opnnId} + , DEL_DT = + , DLTR = #{modifiedBy} + , DEL_RSN = #{delRsn} + WHERE OPNN_ID = #{opnnId} AND DEL_YN = 'N' - /* 단속 대장 의견제출여부 수정(opnnSbmsnMapper.updateCrdnOpnnSbmsnYn) */ + /* 단속 대장 의견제출여부 수정(opnnSbmsnMapper.updateCrdnOpnnSbmsnYn) */ UPDATE TB_CRDN - SET OPNN_SBMSN_YN= #{crdn.opnnSbmsnYn} - , MDFCN_DT = - , MDFR = #{crdn.modifiedBy} - WHERE CRDN_ID = #{crdn.crdnId} + SET OPNN_SBMSN_YN= #{opnnSbmsnYn} + , MDFCN_DT = + , MDFR = #{modifiedBy} + WHERE CRDN_ID = #{crdnId} AND DEL_YN = 'N' diff --git a/src/main/resources/sql/mapper/fims/payer-mapper.xml b/src/main/resources/sql/mapper/fims/payer-mapper.xml index 77d9e0b8..46ad5c48 100644 --- a/src/main/resources/sql/mapper/fims/payer-mapper.xml +++ b/src/main/resources/sql/mapper/fims/payer-mapper.xml @@ -62,29 +62,7 @@ , P.RGTR , P.MDFCN_DT , P.MDFR - , PA.ADDR_SN - , PA.ADDR_INPT_SE_CD - , PA.ADDR_INQ_YMD - , PA.ADDR_SE_CD - , PA.ZIP - , PA.ADDR - , PA.DTL_ADDR - , PA.ROAD_NM_CD - , PA.UDGD_SE_CD - , PA.BMNO - , PA.BSNO - , PA.BLDG_MNG_NO - , PA.STDG_CD - , PA.DONG_CD - , PA.MTN_SE_CD - , PA.MNO - , PA.SNO - , PA.SPCL_DONG - , PA.SPCL_HO - , PA.SPCL_ADDR - , PA.WHOL_ADDR - FROM TB_PAYER P - INNER JOIN TB_PAYER_ADDR PA ON (P.RTPYR_ID = PA.RTPYR_ID) + FROM TB_PAYER P @@ -164,8 +139,9 @@ WHERE NOT EXISTS ( SELECT * FROM TB_PAYER B - WHERE RTPYR_NO = #{payer.rtpyrNo} - AND SGG_CD = #{payer.sggCd} + WHERE RTPYR_NO = #{payer.rtpyrNo} + AND RTPYR_SE_CD = #{payer.rtpyrSeCd} + AND SGG_CD = #{payer.sggCd} ) @@ -173,12 +149,10 @@ UPDATE TB_PAYER SET RTPYR_INPT_SE_CD = #{payer.rtpyrInptSeCd} , RTPYR_SE_CD = #{payer.rtpyrSeCd} - , RTPYR_NO = #{payer.rtpyrNo} , RTPYR_NM = #{payer.rtpyrNm} , RTPYR_TELNO = #{payer.rtpyrTelno} , RTPYR_MBL_TELNO = #{payer.rtpyrMblTelno} , RTPYR_EML = #{payer.rtpyrEml} - , RTPYR_BRDT = #{payer.rtpyrBrdt} , RTPYR_STTS_CD = #{payer.rtpyrSttsCd} , MDFCN_DT = , MDFR = #{payer.modifiedBy} @@ -258,77 +232,60 @@ - AND P.RTPYR_ID = #{rtpyrId} + AND P.RTPYR_ID = #{rtpyrId} - AND C.CRDN_ID = #{crdnId} - - AND C.DEL_YN = #{delYn} - + AND C.CRDN_ID = #{crdnId} + AND C.DEL_YN = 'N' - - SELECT PH.RTPYR_ID - , PH.HSTRY_SN - , PH.SGG_CD - , PH.VHRNO - , PH.RTPYR_INPT_SE_CD - , PH.RTPYR_SE_CD - , PH.RTPYR_NO - , PH.RTPYR_NM - , PH.RTPYR_TELNO - , PH.RTPYR_MBL_TELNO - , PH.RTPYR_EML - , PH.RTPYR_BRDT - , PH.RTPYR_STTS_CD - , PH.ADDR_SE_CD - , PH.ZIP - , PH.ROAD_NM_CD - , PH.UDGD_SE_CD - , PH.BMNO - , PH.BSNO - , PH.BLDG_MNG_NO - , PH.STDG_CD - , PH.DONG_CD - , PH.MTN_SE_CD - , PH.MNO - , PH.SNO - , PH.SPCL_DONG - , PH.SPCL_HO - , PH.SPCL_ADDR - , PH.ADDR - , PH.DTL_ADDR - , PH.WHOL_ADDR - , PH.REG_DT - , PH.RGTR - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = PH.RGTR) AS RGTR_NM - FROM TB_PAYER_HSTRY PH + + SELECT CPH.CHG_HSTRY_ID + , CPH.CRDN_ID + , CPH.RTPYR_ID + , CPH.REG_DT + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CPH.RGTR) AS RGTR_NM + , (SELECT GET_CODE_NM('FIM015', P.RTPYR_INPT_SE_CD) FROM DUAL) AS RTPYR_INPT_SE_NM + , (SELECT GET_CODE_NM('FIM011', P.RTPYR_SE_CD) FROM DUAL) AS RTPYR_SE_NM + , P.RTPYR_NO + , P.RTPYR_NM + , P.RTPYR_TELNO + , P.RTPYR_MBL_TELNO + , P.RTPYR_EML + , P.RTPYR_BRDT + , P.RTPYR_STTS_CD + FROM TB_CRDN_PAYER_HSTRY CPH + INNER JOIN TB_PAYER P ON (CPH.RTPYR_ID = P.RTPYR_ID) - /* 납부자 이력 대장 객체 가져오기(payerMapper.selectPayerHstrys) */ + + WHERE CPH.CRDN_ID = #{crdnId} diff --git a/src/main/resources/sql/mapper/fims/payerAddr-mapper.xml b/src/main/resources/sql/mapper/fims/payerAddr-mapper.xml index 2c012ca3..0894cb66 100644 --- a/src/main/resources/sql/mapper/fims/payerAddr-mapper.xml +++ b/src/main/resources/sql/mapper/fims/payerAddr-mapper.xml @@ -11,7 +11,6 @@ - @@ -37,55 +36,107 @@ - SELECT PA.RTPYR_ID - , PA.ADDR_SN - , PA.ADDR_INPT_SE_CD - , PA.ADDR_INQ_YMD - , PA.ADDR_SE_CD - , PA.ZIP - , PA.ADDR - , PA.DTL_ADDR - , PA.ROAD_NM_CD - , PA.UDGD_SE_CD - , PA.BMNO - , PA.BSNO - , PA.BLDG_MNG_NO - , PA.STDG_CD - , PA.DONG_CD - , PA.MTN_SE_CD - , PA.MNO - , PA.SNO - , PA.SPCL_DONG - , PA.SPCL_HO - , PA.SPCL_ADDR - , PA.WHOL_ADDR - , PA.REG_DT - , PA.RGTR - , PA.MDFCN_DT - , PA.MDFR + SELECT PA.RTPYR_ID + , PA.ADDR_SN + , PA.ADDR_INPT_SE_CD + , PA.ADDR_SE_CD + , PA.ZIP + , PA.ADDR + , PA.DTL_ADDR + , PA.ROAD_NM_CD + , PA.UDGD_SE_CD + , PA.BMNO + , PA.BSNO + , PA.BLDG_MNG_NO + , PA.STDG_CD + , PA.DONG_CD + , PA.MTN_SE_CD + , PA.MNO + , PA.SNO + , PA.SPCL_DONG + , PA.SPCL_HO + , PA.SPCL_ADDR + , PA.WHOL_ADDR FROM TB_PAYER_ADDR PA - /* 납부자 주소 객체 가져오기(payerAddrMapper.selectPayerAddrs) */ - WHERE PA.RTPYR_ID = #{rtpyrId} + WHERE PA.RTPYR_ID = #{rtpyrId} - AND PA.ADDR_SN = #{addrSn} + AND PA.ADDR_SN = #{addrSn} + + /* 납부자 주소 등록(payerAddrMapper.insertPayerAddr) */ SELECT LPAD(CAST(IFNULL(MAX(ADDR_SN) + 1, 1) AS INT), 5, '0') AS NEW_ID @@ -97,7 +148,6 @@ RTPYR_ID , ADDR_SN , ADDR_INPT_SE_CD - , ADDR_INQ_YMD , ADDR_SE_CD , ZIP , ADDR @@ -125,7 +175,6 @@ #{payerAddr.rtpyrId} , #{payerAddr.addrSn} , #{payerAddr.addrInptSeCd} - , #{payerAddr.addrInqYmd} , #{payerAddr.addrSeCd} , #{payerAddr.zip} , #{payerAddr.addr} @@ -159,4 +208,40 @@ AND ADDR_SN = #{payerAddr.addrSn} + + SELECT CPAH.CRDN_ID + , CPAH.RTPYR_ID + , CPAH.ADDR_SN + , CPAH.REG_DT + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = CPAH.RGTR) AS RGTR_NM + , (SELECT GET_CODE_NM('FIM087', PA.ADDR_INPT_SE_CD) FROM DUAL) AS ADDR_INPT_SE_NM + , (SELECT GET_CODE_NM('FIM013', PA.ADDR_SE_CD) FROM DUAL) AS ADDR_SE_NM + , PA.ZIP + , PA.ADDR + , PA.DTL_ADDR + , PA.ROAD_NM_CD + , PA.UDGD_SE_CD + , PA.BMNO + , PA.BSNO + , PA.BLDG_MNG_NO + , PA.STDG_CD + , PA.DONG_CD + , PA.MTN_SE_CD + , PA.MNO + , PA.SNO + , PA.SPCL_DONG + , PA.SPCL_HO + , PA.SPCL_ADDR + , PA.WHOL_ADDR + FROM TB_CRDN_PAYER_ADDR_HSTRY CPAH + INNER JOIN TB_PAYER_ADDR PA ON (CPAH.RTPYR_ID = PA.RTPYR_ID AND CPAH.ADDR_SN = PA.ADDR_SN) + + + + diff --git a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp index d46199cd..0fd83add 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/excl/excl01010-main.jsp @@ -405,8 +405,7 @@ , onOK: () => { } }); - // 자료 재조회 - if (resp.saved) { $P.fnRefreshList(); } + if (resp.saved) { $P.fnRefreshList(); } // 자료 재조회 } // 삭제 @@ -564,6 +563,7 @@ , title: "사용자 검색" , content: resp , size: "lg" + , init: () => { setDialogZindex(); } }); } }); @@ -716,28 +716,26 @@ }); // 기본 데이터 설정 - $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 - initDatepicker("frmSearch--${pageName}"); // 달력 초기화 - $("#schLevyExclYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 부과 제외 일자 시작 - $("#schLevyExclYmdTo--${pageName}").datepicker("setDate", new Date()); // 부과 제외 일자 종료 - $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 - $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schLevyExclYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 부과 제외 일자 시작 + $("#schLevyExclYmdTo--${pageName}").datepicker("setDate", new Date()); // 부과 제외 일자 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } // 업무 구분별 설정 $P.setTask = (taskSeCd) => { - // 검색 url - $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); - - let clsForTask = taskSeCd.toLowerCase(); + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); // 검색 // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { diff --git a/src/main/webapp/WEB-INF/jsp/fims/excl/excl02010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/excl/excl02010-main.jsp index 637278d2..2ccdee8a 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/excl/excl02010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/excl/excl02010-main.jsp @@ -633,6 +633,7 @@ , title: "사용자 검색" , content: resp , size: "lg" + , init: () => { setDialogZindex(); } }); } }); @@ -874,28 +875,26 @@ }); // 기본 데이터 설정 - $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 - initDatepicker("frmSearch--${pageName}"); // 달력 초기화 - $("#schRcptYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 접수 일자 시작 - $("#schRcptYmdTo--${pageName}").datepicker("setDate", new Date()); // 접수 일자 종료 - $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 - $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schRcptYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 접수 일자 시작 + $("#schRcptYmdTo--${pageName}").datepicker("setDate", new Date()); // 접수 일자 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } // 업무 구분별 설정 $P.setTask = (taskSeCd) => { - // 검색 url - $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); - - let clsForTask = taskSeCd.toLowerCase(); + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); // 검색 // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { diff --git a/src/main/webapp/WEB-INF/jsp/fims/excl/excl03010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/excl/excl03010-main.jsp index 18fd2072..c6a05296 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/excl/excl03010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/excl/excl03010-main.jsp @@ -451,6 +451,7 @@ , title: "사용자 검색" , content: resp , size: "lg" + , init: () => { setDialogZindex(); } }); } }); @@ -557,28 +558,26 @@ }); // 기본 데이터 설정 - $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 - initDatepicker("frmSearch--${pageName}"); // 달력 초기화 - $("#schReRegYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 재등록 일자 시작 - $("#schReRegYmdTo--${pageName}").datepicker("setDate", new Date()); // 재등록 일자 종료 - $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 - $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schReRegYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 재등록 일자 시작 + $("#schReRegYmdTo--${pageName}").datepicker("setDate", new Date()); // 재등록 일자 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } // 업무 구분별 설정 $P.setTask = (taskSeCd) => { - // 검색 url - $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); - - let clsForTask = taskSeCd.toLowerCase(); + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); // 검색 // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { diff --git a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01010-main.jsp index 153007ff..81ba3de4 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01010-main.jsp @@ -377,7 +377,6 @@ $("#tbody--${pageName} input[type='checkbox']").each(function() { let checkbox = $(this); - checkbox.prop("checked", keys.includes(checkbox.val())); }); @@ -399,7 +398,7 @@ if (!params) return; ajax.get({ - url: wctx.url("/" + params.taskSeCd + "${infoPrefixUrl}" + "/020/info.do") + url: wctx.url("/" + params.taskSeCd + "${infoPrefixUrl}" + "/020/info.do") + "?openerPageName=${pageName}" , data: params || {} , success: resp => { dialog.open({ @@ -505,8 +504,8 @@ // 사용자검색 callback $P.callbackFindUser = (userId, userNm) => { - $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID - $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 + $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID + $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 } /************************************************************************** @@ -520,9 +519,7 @@ } // 초기 기본 설정 - $P.initForm(); - // 기본 데이터 설정 - $P.initData(taskSeCd); + $P.initForm(taskSeCd); // 업무 구분별 설정 $P.setTask(taskSeCd); @@ -546,6 +543,7 @@ , title: "사용자 검색" , content: resp , size: "lg" + , init: () => { setDialogZindex(); } }); } }); @@ -600,14 +598,16 @@ }); // 파라미터 설정 - let params = $P.control.query; // 검색 조건 - params.callPurpose = "create"; // 호출 용도 (등록) - params.title = title; // 타이틀 - params.tnocs = tnocs; // 총 건수 - params.gramtFfnlgAmt = gramtFfnlgAmt; // 총 과태료 금액 - params.gramtAdvntceAmt = gramtAdvntceAmt; // 총 사전 감경 금액 - params.delYn = "N"; // 삭제 여부 - params.crdnIds = selected.join(","); // Ids + let params = $P.control.query; // 검색 조건 + params.title = title; // 타이틀 + params.callPurpose = "create"; // 호출 용도 (등록) + params.sggCd = $("#sggCd--${pageName}").val(); // 시군구 코드 + params.taskSeCd = $("input[name=taskSeCd]:checked").val(); // 업무 구분 코드 + params.tnocs = tnocs; // 총 건수 + params.gramtFfnlgAmt = gramtFfnlgAmt; // 총 과태료 금액 + params.gramtAdvntceAmt = gramtAdvntceAmt; // 총 사전 감경 금액 + params.crdnIds = selected.join(","); // Ids + params.delYn = "N"; // 삭제 여부 $P.control.getInfo(params); } @@ -624,8 +624,10 @@ // 파라미터 설정 let params = $P.control.query; // 검색 조건 - params.callPurpose = "create"; // 호출 용도 (등록) params.title = title; // 타이틀 + params.callPurpose = "create"; // 호출 용도 (등록) + params.sggCd = $("#sggCd--${pageName}").val(); // 시군구 코드 + params.taskSeCd = $("input[name=taskSeCd]:checked").val(); // 업무 구분 코드 params.tnocs = $P.control.dataset.getValue("TNOCS"); // 총 건수 params.gramtFfnlgAmt = $P.control.dataset.getValue("GRAMT_FFNLG_AMT"); // 총 과태료 금액 params.gramtAdvntceAmt = $P.control.dataset.getValue("GRAMT_ADVNTCE_AMT"); // 총 사전 감경 금액 @@ -665,13 +667,12 @@ }); }); - // 선택 대상 등록 버튼 이벤트 + // 버튼 이벤트 $("#btnCreateSlctnTrgt--${pageName}").on("click", function() { - $P.fnCreateSlctnTrgt($(this).attr("title")); + $P.fnCreateSlctnTrgt($(this).attr("title")); // 선택 대상 감경부과 등록 }); - // 전체 대상 감경부과 등록 버튼 이벤트 $("#btnCreateWholTrgt--${pageName}").on("click", function() { - $P.fnCreateWholTrgt($(this).attr("title")); + $P.fnCreateWholTrgt($(this).attr("title")); // 전체 대상 감경부과 등록 }); // DataTables width 변경 조정 업무별 그리드가 존재 한다면.. crdn06010-main.jsp 참고 @@ -682,7 +683,7 @@ } // 초기 화면 설정 - $P.initForm = () => { + $P.initForm = (taskSeCd) => { // 화면 초기화 $("#frmSearch--${pageName}")[0].reset(); @@ -699,64 +700,49 @@ $(this).prop("disabled", "true"); }); - // 달력 초기화 - initDatepicker("frmSearch--${pageName}"); - // 동적 검색 - $("#byOutput--${pageName}").val("동적 검색"); - // 사용자 이름 - $("#schRgtrNm--${pageName}").prop("readonly", true); - - // 기본 데이터 설정(업무구분) - $P.initData($("input[name=taskSeCd]:checked").val()); + // 기본 데이터 설정 + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schCrdnYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 단속 일자 시작 + $("#schCrdnYmdTo--${pageName}").datepicker("setDate", new Date()); // 단속 일자 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } - // 기본 데이터 설정 - $P.initData = (taskSeCd) => { - // 시군구 코드 - $("#sggCd--${pageName}").val("${sggCd}"); - // 업무 구분 코드 - $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); - // 일자 - $("#schCrdnYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); - $("#schCrdnYmdTo--${pageName}").datepicker("setDate", new Date()); + // 업무 구분별 설정 + $P.setTask = (taskSeCd) => { + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); // 검색 // 업무에 따른 위반 내용 let vltnCd = []; - if (taskSeCd == "PVS") { // 주정차 위반 + if (taskSeCd == "PVS") { // 주정차 위반 vltnCd = FIM004.list(); - } else if (taskSeCd == "BPV") { // 전용차로 위반 + } else if (taskSeCd == "BPV") { // 전용차로 위반 vltnCd = FIM005.list(); - } else if (taskSeCd == "DPV") { // 장애인 전용 + } else if (taskSeCd == "DPV") { // 장애인 전용 vltnCd = FIM006.list(); - } else if (taskSeCd == "ECA") { // 전기차 주차 위반 + } else if (taskSeCd == "ECA") { // 전기차 주차 위반 vltnCd = FIM061.list(); - } else if (taskSeCd == "PES") { // 밤샘 주차 위반 + } else if (taskSeCd == "PES") { // 밤샘 주차 위반 vltnCd = FIM064.list(); } else { return; } // 위반 항목 $("#schVltnCd--${pageName}").empty(); - $("#schVltnCd--${pageName}").append(""); $(vltnCd).each(function(index, item) { $("#schVltnCd--${pageName}").append(""); }); - } - - // 업무 구분별 설정 - $P.setTask = (taskSeCd) => { - // 검색 url - $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); - - let clsForTask = taskSeCd.toLowerCase(); // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { diff --git a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01020-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01020-info.jsp index c726e71b..5fcb2649 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01020-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01020-info.jsp @@ -1,7 +1,7 @@ <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%> <%@ include file="/WEB-INF/jsp/include/taglib.jsp"%> -부과 정보 +사전 감경부과 대상 정보
@@ -123,17 +123,18 @@ // 저장 callback $P.control.onSave = (resp) => { - let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html(); + let dialogTitle = $("#" + $P.control.prefix + "Dialog--${openerPageName}").find("h5.modal-title").html(); let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle); // 메시지 출력 dialog.alert({ content: showMessage + , init: () => { setDialogZindex(); } , onOK: () => { } }); if (resp.saved) { - dialog.close($P.control.prefix + "Dialog"); + dialog.close($P.control.prefix + "Dialog--${openerPageName}"); } } @@ -169,6 +170,7 @@ dialog.alert({ content: "현재 " + $P.control.prefixName + " 정보를 저장하시겠습니까?" + , init: () => { setDialogZindex(); } , onOK: () => { $P.control.save($P.formFields.get()); // formFields } @@ -201,14 +203,14 @@ $("#dudtYmd--${pageName}").val(addDate(levyYmd, Number(advntceDayCnt))); }); - // 저장 버튼 이벤트 - $("#btnSave--${pageName}").on("click", () => $P.fnSave()); + // 버튼 이벤트 + $("#btnSave--${pageName}").on("click", () => $P.fnSave()); // 저장 } // 초기 화면 설정 $P.initForm = () => { // Dialog 마우스로 드래그 할 수 있도록 설정. - fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog")); + fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog--${openerPageName}")); // 달력 초기화 initDatepicker("frmEdit--${pageName}"); diff --git a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01050-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01050-main.jsp index e12cb636..02fbea68 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/levy/levy01050-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/levy/levy01050-main.jsp @@ -355,10 +355,8 @@ **************************************************************************/ $(document).ready(function() { // pageObject - var $P = pageObject["${pageName}"]; + let $P = pageObject["${pageName}"]; - // URL - $P.PrefixUrl = "/levy/levy01"; // FormFields $P.formFields = new FimsFormFields("#frmSearch--${pageName}"); @@ -366,39 +364,39 @@ * DatasetControl **************************************************************************/ $P.control = new DatasetControl({ - prefix : "levy" - , prefixName : "부과" - , infoSize : "xl" - , keymapper : info => info ? info.LEVY_ID : "" - , dataGetter : obj => obj.levyList - , appendData : true - , formats : { - LEVY_YMD : dateFormat - , FRST_DUDT_YMD : dateFormat - , DUDT_YMD : dateFormat - , RCVMT_YMD : dateFormat - , SZR_YMD : dateFormat - , SZR_RMV_YMD : dateFormat - , FFNLG_AMT : numberFormat - , LEVY_PCPTAX : numberFormat - , LEVY_ADAMT : numberFormat - , INSPY_INT : numberFormat - , RCVMT_PCPTAX : numberFormat - , RCVMT_ADAMT : numberFormat - , RDCAMT_PCPTAX : numberFormat - , RDCAMT_ADAMT : numberFormat - , SUM_AMT : numberFormat - , CRDN_YMD_TM : datetimeFormat - , FFNLG_CRDN_AMT : numberFormat - , REG_DT : datetimeFormat - , MDFCN_DT : datetimeFormat + prefix: "levy" + , prefixName: "부과" + , keymapper: info => info ? info.LEVY_ID : "" + , dataGetter: obj => obj.${infoPrefix}List + , appendData: true + , infoSize: "xl" + , formats: { + LEVY_YMD: dateFormat + , FRST_DUDT_YMD: dateFormat + , DUDT_YMD: dateFormat + , RCVMT_YMD: dateFormat + , SZR_YMD: dateFormat + , SZR_RMV_YMD: dateFormat + , FFNLG_AMT: numberFormat + , LEVY_PCPTAX: numberFormat + , LEVY_ADAMT: numberFormat + , INSPY_INT: numberFormat + , RCVMT_PCPTAX: numberFormat + , RCVMT_ADAMT: numberFormat + , RDCAMT_PCPTAX: numberFormat + , RDCAMT_ADAMT: numberFormat + , SUM_AMT: numberFormat + , CRDN_YMD_TM: datetimeFormat + , FFNLG_CRDN_AMT: numberFormat + , REG_DT: datetimeFormat + , MDFCN_DT: datetimeFormat } }); // $P.control 설정 - $P.control.defaultFetchSize = FETCH_XS; // 1 페이지당 조회되는 자료 건수 index.jsp에서 확인 FETCH_XS = 30 - $P.control.untilPageNum = 0; // 현재 페이지 번호 - $P.control.tableRenderComplete = false; // dataTables 에 자료 추가 완료 여부 + $P.control.defaultFetchSize = FETCH_XS; // 1 페이지당 조회되는 자료 건수 index.jsp에서 확인 FETCH_XS = 30 + $P.control.untilPageNum = 0; // 현재 페이지 번호 $P.control.beforeCurrent = null; + $P.control.tableRenderComplete = false; // dataTables 에 자료 추가 완료 여부 /************************************************************************** * DatasetControl 이벤트 @@ -408,15 +406,15 @@ $P.renderList(obj.${infoPrefix}Total); $("#paging--${pageName}").setPagingInfo({ - list : $P.control.dataset - , prefix : "paging--${pageName}" - , start : obj.${infoPrefix}Start - , totalSize : obj.${infoPrefix}Total - , fetchSize : obj.${infoPrefix}Fetch - , func : "$P.control.load({index})" + list: $P.control.dataset + , prefix: "paging--${pageName}" + , start: obj.${infoPrefix}Start + , totalSize: obj.${infoPrefix}Total + , fetchSize: obj.${infoPrefix}Fetch + , func: "$P.control.load({index})" }); - $P.control.tableRenderComplete = true; // dataTables 에 자료 추가 완료 + $P.control.tableRenderComplete = true; // dataTables 에 자료 추가 완료 }; // 현재 선택 자료 변경 이벤트 @@ -435,33 +433,22 @@ $("#tbody--${pageName} input[type='checkbox']").each(function() { let checkbox = $(this); - checkbox.prop("checked", keys.includes(checkbox.val())); }); // DataTables(그리드) 전체 선택(checkbox) if (keys.length < 1) { - $("th input[type='checkbox']").prop("checked", false); // 체크 해제 + $("th input[type='checkbox']").prop("checked", false); // 체크 해제 } else if (keys.length == ${infoPrefix}List.length) { - $("th input[type='checkbox']").prop("checked", true); // 체크 설정 + $("th input[type='checkbox']").prop("checked", true); // 체크 설정 } else { - $("th input[type='checkbox']").prop("checked", false); // 체크 해제 + $("th input[type='checkbox']").prop("checked", false); // 체크 해제 } }; - // 부과 정보 dialog + // 상세정보 dialog $P.control.getInfo = (params) => { if (!params) return; - - let dialogTitle = ""; - - if (params.callPurpose == "create") { - dialogTitle = $P.control.prefixName + " 등록"; - } else if (params.callPurpose == "update") { - dialogTitle = $P.control.prefixName + " 수정"; - } else { - dialogTitle = $P.control.prefixName + " 정보"; - } } /************************************************************************** @@ -515,63 +502,34 @@ $P.control.load($P.control.query.pageNum + 1); } - /************************************************************************** - * 사용자 함수(function) - **************************************************************************/ - // callback 사용자 검색 - $P.callbackFindUser = (userId, userNm) => { - $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID - $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 - } - - // 사용자 검색 - $P.getFindUser = () => { - let params = { - openerPageName : "${pageName}" - , callbackFuncName : "pageObject['${pageName}']['callbackFindUser']" - } - - ajax.get({ - url : wctx.url("/user/user02/010/main.do") - , data : params || {} - , success : resp => { - dialog.open({ - id : "userDialog" - , title : "사용자 검색" - , content : resp - , size : "lg" - }); - } - }); - } - - // 개별총정보 dialog + // DataTables에 더블 클릭시 개별총정보 dialog $P.getTotalInfo = (crdnId) => { if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return; let params = { - callControlName : "pageObject['${pageName}'].control" - , sggCd : $("#sggCd--${pageName}").val() - , taskSeCd : $("input[name=taskSeCd]:checked").val() - , crdnId : crdnId + callControlName: "pageObject['${pageName}'].control" + , sggCd: $P.control.dataset.getValue("SGG_CD") + , taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") + , crdnId: crdnId } ajax.get({ - url : wctx.url("/" + params.taskSeCd + "/sprt/sprt02/010/main.do") - , data : params - , success : resp => { + url: wctx.url("/" + params.taskSeCd + "/sprt/sprt02/010/main.do") + , data: params + , success: resp => { dialog.open({ - id : "totalInfoMainDialog" - , title : "개별총정보" - , content : resp - , size : "xxl" - , init : () => { } - , onClose : () => { } + id: "totalInfoMainDialog" + , title: "개별총정보" + , content: resp + , size: "xxl" }); } }); } + /************************************************************************** + * 사용자 함수(function) + **************************************************************************/ // 검색 자료 재조회 $P.refreshList = () => { $P.control.untilPageNum = $P.control.query.pageNum; @@ -580,6 +538,12 @@ $P.control.load(1); } + // callback 사용자 검색 + $P.callbackFindUser = (userId, userNm) => { + $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID + $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 + } + /************************************************************************** * 버튼 clickEvent **************************************************************************/ @@ -591,9 +555,7 @@ } // 초기 기본 설정 - $P.initForm(); - // 기본 데이터 설정 - $P.initData(taskSeCd); + $P.initForm(taskSeCd); // 업무 구분별 설정 $P.setTask(taskSeCd); @@ -601,12 +563,34 @@ $P.control.dataset.clear(); } + // 사용자검색 버튼 클릭 이벤트 + $P.fnGetFindUser = () => { + let params = { + openerPageName: "${pageName}" + , callbackFuncName: "pageObject['${pageName}']['callbackFindUser']" + } + + ajax.get({ + url: wctx.url("/user/user02/010/main.do") + , data: params || {} + , success: resp => { + dialog.open({ + id: "userDialog" + , title: "사용자 검색" + , content: resp + , size: "lg" + , init: () => { setDialogZindex(); } + }); + } + }); + } + // 검색 버튼 이벤트 $P.fnSearchList = () => { // 검색조건 - $P.control.query = $P.formFields.get(); - $P.control.query.fetchSize = $P.control.defaultFetchSize; // 한번에 조회되는 자료 건수 - $P.control.query.delYn = "N"; // 삭제 여부 + $P.control.query = $P.formFields.get(); // 검색 조건 + $P.control.query.fetchSize = $P.control.defaultFetchSize; // 한번에 조회되는 자료 건수 + $P.control.query.delYn = "N"; // 삭제 여부 $P.control.load(1); } @@ -618,7 +602,6 @@ content : "검색된 자료가 없습니다." , onOK : () => { } }); - return; } @@ -630,11 +613,6 @@ $P.control.download(); } - // 사용자 조회 버튼 이벤트 - $P.fnFindUser = () => { - $P.getFindUser(); - } - /************************************************************************** * 초기 설정 **************************************************************************/ @@ -666,8 +644,6 @@ }); }); - // 업무 버튼 이벤트 - // DataTables width 변경 조정 업무별 그리드가 존재 한다면.. crdn06010-main.jsp 참고 fnMakeResizableTable($("#table-responsive--${pageName}")[0]); @@ -676,7 +652,7 @@ } // 초기 화면 설정 - $P.initForm = () => { + $P.initForm = (taskSeCd) => { // 화면 초기화 $("#frmSearch--${pageName}")[0].reset(); @@ -693,52 +669,35 @@ $(this).prop("disabled", "true"); }); - // 달력 초기화 - initDatepicker("frmSearch--${pageName}"); - - $("#schFyr--${pageName}").val(new Date().getFullYear()); - $("#schLevyNoFrom--${pageName}").val("000000"); - $("#schLevyNoTo--${pageName}").val("999999"); - - // 동적 검색 - $("#byOutput--${pageName}").val("동적 검색"); - - // 사용자 이름 - $("#schRgtrNm--${pageName}").prop("readonly", true); - } + // 기본 데이터 설정 - // 기본 데이터 설정 - $P.initData = (taskSeCd) => { - // 시군구 코드 - $("#sggCd--${pageName}").val("${sggCd}"); - // 업무 구분 코드 - $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schFyr--${pageName}").val(new Date().getFullYear()); // 회계 연도 + $("#schLevyNoFrom--${pageName}").val("000000"); // 부과 번호 시작 + $("#schLevyNoTo--${pageName}").val("999999"); // 부과 번호 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } // 업무 구분별 설정 $P.setTask = (taskSeCd) => { - let clsForTask = taskSeCd.toLowerCase(); + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/050/list.do"); // 검색 // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { colsOuterHTML += this.outerHTML; }); $("#table-responsive--${pageName}")[0].changeColumn(colsOuterHTML); - - // URL 설정 - $P.setURL(taskSeCd); - } - - // 업무구분에 따른 URL 설정 - $P.setURL = (taskSeCd) => { - $P.control.urls.load = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/050/list.do"); // 조회 } /************************************************************************** diff --git a/src/main/webapp/WEB-INF/jsp/fims/levy/levy02010-main.jsp b/src/main/webapp/WEB-INF/jsp/fims/levy/levy02010-main.jsp index 22596d07..90ce2ed9 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/levy/levy02010-main.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/levy/levy02010-main.jsp @@ -127,10 +127,10 @@
- - @@ -251,10 +251,8 @@ * script 진입 **************************************************************************/ $(document).ready(function() { - var $P = pageObject["${pageName}"]; + let $P = pageObject["${pageName}"]; - // URL - $P.PrefixUrl = "/levy/levy02"; // FormFields $P.formFields = new FimsFormFields("#frmSearch--${pageName}"); @@ -262,25 +260,26 @@ * DatasetControl **************************************************************************/ $P.control = new DatasetControl({ - prefix : "rduct" - , prefixName : "감경" - , infoSize : "lg" - , keymapper : info => info ? info.RDUCT_ID : "" - , dataGetter : obj => obj.${infoPrefix}List - , appendData : true + prefix: "rduct" + , prefixName: "감경" + , keymapper: info => info ? info.RDUCT_ID : "" + , dataGetter: obj => obj.${infoPrefix}List + , appendData: true + , infoSize: "lg" , formats: { - RDUCT_YMD : dateFormat, - CRDN_YMD_TM : datetimeFormat, - FFNLG_CRDN_AMT : numberFormat, - RDUCT_AMT : numberFormat, - FFNLG_AMT : numberFormat, - SUM_AMT : numberFormat + RDUCT_YMD: dateFormat + , CRDN_YMD_TM: datetimeFormat + , FFNLG_CRDN_AMT: numberFormat + , RDUCT_AMT: numberFormat + , FFNLG_AMT: numberFormat + , SUM_AMT: numberFormat } }); - $P.control.defaultFetchSize = FETCH_XS; - $P.control.untilPageNum = 0; + // $P.control 설정 + $P.control.defaultFetchSize = FETCH_XS; // 1 페이지당 조회되는 자료 건수 index.jsp에서 확인 FETCH_XS = 30 + $P.control.untilPageNum = 0; // 현재 페이지 번호 $P.control.beforeCurrent = null; - $P.control.tableRenderComplete = false; + $P.control.tableRenderComplete = false; // dataTables 에 자료 추가 완료 여부 /************************************************************************** * DatasetControl.on @@ -289,17 +288,18 @@ $P.renderList(obj.${infoPrefix}Total); $("#paging--${pageName}").setPagingInfo({ - list : $P.control.dataset - , prefix : "paging--${pageName}" - , start : obj.${infoPrefix}Start - , totalSize : obj.${infoPrefix}Total - , fetchSize : obj.${infoPrefix}Fetch - , func : "pageObject['${pageName}'].control.load({index})" + list: $P.control.dataset + , prefix: "paging--${pageName}" + , start: obj.${infoPrefix}Start + , totalSize: obj.${infoPrefix}Total + , fetchSize: obj.${infoPrefix}Fetch + , func: "pageObject['${pageName}'].control.load({index})" }); - $P.control.tableRenderComplete = true; + $P.control.tableRenderComplete = true; // dataTables 에 자료 추가 완료 }; + // 현재 선택 자료 변경 이벤트 $P.control.onCurrentChange = (item) => { if (!item) return; @@ -315,37 +315,37 @@ $("#tbody--${pageName} input[type='checkbox']").each(function() { let checkbox = $(this); - checkbox.prop("checked", keys.includes(checkbox.val())); }); // 삭제 버튼 - $("#btnRemoveRduct--${pageName}").prop("disabled", keys.length < 1); + $("#btnRemove--${pageName}").prop("disabled", keys.length < 1); // DataTables(그리드) 전체 선택(checkbox) if (keys.length < 1) { - $("th input[type='checkbox']").prop("checked", false); // 체크 해제 + $("th input[type='checkbox']").prop("checked", false); // 체크 해제 } else if (keys.length == ${infoPrefix}List.length) { - $("th input[type='checkbox']").prop("checked", true); // 체크 설정 + $("th input[type='checkbox']").prop("checked", true); // 체크 설정 } else { - $("th input[type='checkbox']").prop("checked", false); // 체크 해제 + $("th input[type='checkbox']").prop("checked", false); // 체크 해제 } }; - // 과태료 감경 정보 dialog + // 상세정보 dialog $P.control.getInfo = (params) => { if (!params) return; ajax.get({ - url : $P.control.urls.getInfo - , data : params || {} - , success : resp => { + url: wctx.url("/" + params.taskSeCd + "${infoPrefixUrl}" + "/020/info.do") + "?openerPageName=${pageName}" + , data: params || {} + , success: resp => { dialog.open({ - id : $P.control.prefixed("Dialog") - , title : params.title - , content : resp - , size : $P.control.infoSize - , onClose : () => { $P.refreshList(); } + id: $P.control.prefixed("Dialog--${pageName}") + , title: params.title + , content: resp + , size: $P.control.infoSize + , init: () => { } + , onClose: () => { $P.fnRefreshList(); } // 자료 재조회 }); } }); @@ -353,7 +353,7 @@ // 삭제 callback $P.control.onRemove = (resp) => { - let btnTitle = $("#btnRemoveRduct--${pageName}").attr("title"); + let btnTitle = $("#btnRemove--${pageName}").attr("title"); let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle); // 메시지 출력 @@ -362,9 +362,7 @@ , onOK : () => { } }); - if (resp.saved) { - $P.refreshList(); - } + if (resp.saved) { $P.fnRefreshList(); } // 자료 재조회 } // 삭제 @@ -372,9 +370,9 @@ if (!params) return; ajax.post({ - url : $P.control.urls.remove - , data : params - , success : resp => $P.control.onRemove(resp) + url: wctx.url("/" + params.taskSeCd + "${infoPrefixUrl}" + "/010/remove.do") + , data: params + , success: resp => $P.control.onRemove(resp) }); } @@ -424,86 +422,71 @@ // DataTables에 스크롤이 맨 밑으로 이동했을 때 이벤트 $P.scrollDataList = () => { - $P.control.tableRenderComplete = false; // dataTables 에 자료 추가 false + $P.control.tableRenderComplete = false; // dataTables 에 자료 추가 false $P.control.load($P.control.query.pageNum + 1); } - /************************************************************************** - * pageObject.function - **************************************************************************/ - // callback 사용자 검색 - $P.callbackFindUser = (userId, userNm) => { - $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID - $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 - } + // DataTables에 더블 클릭시 개별총정보 dialog + $P.getTotalInfo = (crdnId) => { + if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return; - // 사용자 검색 - $P.getFindUser = () => { let params = { - openerPageName : "${pageName}" - , callbackFuncName : "pageObject['${pageName}']['callbackFindUser']" + callControlName: "pageObject['${pageName}'].control" + , sggCd: $P.control.dataset.getValue("SGG_CD") + , taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") + , crdnId: crdnId } ajax.get({ - url : wctx.url("/user/user02/010/main.do") - , data : params || {} - , success : resp => { + url: wctx.url("/" + params.taskSeCd + "/sprt/sprt02/010/main.do") + , data: params + , success: resp => { dialog.open({ - id : "userDialog" - , title : "사용자 검색" - , content : resp - , size : "lg" + id: "totalInfoMainDialog" + , title: "개별총정보" + , content: resp + , size: "xxl" + , init: () => { } + , onClose: () => { } }); } }); } - // 개별총정보 dialog - $P.getTotalInfo = (crdnId) => { - if (typeof crdnId == "undefined" || crdnId == null || crdnId == "") return; + /************************************************************************** + * 사용자 함수(function) + **************************************************************************/ + // 검색 자료 재조회 + $P.refreshList = () => { + $P.control.untilPageNum = $P.control.query.pageNum; + $P.control.query.fetchSize = $P.control.defaultFetchSize * $P.control.query.pageNum; - let params = { - callControlName : "pageObject['${pageName}'].control" - , sggCd : $("#sggCd--${pageName}").val() - , taskSeCd : $("input[name=taskSeCd]:checked").val() - , crdnId : crdnId - } + $P.control.load(1); + } - ajax.get({ - url : wctx.url("/" + params.taskSeCd + "/sprt/sprt02/010/main.do") - , data : params - , success : resp => { - dialog.open({ - id : "totalInfoMainDialog" - , title : "개별총정보" - , content : resp - , size : "xxl" - }); - } - }); + // callback 사용자 검색 + $P.callbackFindUser = (userId, userNm) => { + $("#schRgtrCd--${pageName}").val(userId); // 사용자 ID + $("#schRgtrNm--${pageName}").val(userNm); // 사용자 명 } - // 삭제 사유 callback + // 삭제 사유 callback $P.callbackRsn = (obj) => { // 서버에 전송할 data(파라미터) 생성 let params = {}; - params[$P.control.prefixed("Ids")] = selected.join(","); // Ids - params.delRsn = obj.reason; // 삭제 사유 + let selected = $P.control.dataset.getKeys("selected"); - $P.control.remove(params); - } + params[$P.control.prefixed("Ids")] = selected.join(","); // IDs + params.sggCd = $("#sggCd--${pageName}").val(); // 시군구 코드 + params.taskSeCd = $("input[name=taskSeCd]:checked").val(); // 업무 구분 코드 + params.delRsn = obj.reason; // 삭제 사유 - // 검색 자료 재조회 - $P.refreshList = () => { - $P.control.untilPageNum = $P.control.query.pageNum; - $P.control.query.fetchSize = $P.control.defaultFetchSize * $P.control.query.pageNum; - - $P.control.load(1); + $P.control.remove(params); } /************************************************************************** - * element.on + * 버튼 clickEvent **************************************************************************/ // 업무 구분 변경 이벤트 $P.fnResetAndChangeBiz = (taskSeCd) => { @@ -513,9 +496,7 @@ } // 초기 기본 설정 - $P.initForm(); - // 기본 데이터 설정 - $P.initData(taskSeCd); + $P.initForm(taskSeCd); // 업무 구분별 설정 $P.setTask(taskSeCd); @@ -523,12 +504,34 @@ $P.control.dataset.clear(); } + // 사용자검색 버튼 클릭 이벤트 + $P.fnGetFindUser = () => { + let params = { + openerPageName: "${pageName}" + , callbackFuncName: "pageObject['${pageName}']['callbackFindUser']" + } + + ajax.get({ + url: wctx.url("/user/user02/010/main.do") + , data: params || {} + , success: resp => { + dialog.open({ + id: "userDialog" + , title: "사용자 검색" + , content: resp + , size: "lg" + , init: () => { setDialogZindex(); } + }); + } + }); + } + // 검색 버튼 이벤트 $P.fnSearchList = () => { // 검색조건 - $P.control.query = $P.formFields.get(); - $P.control.query.fetchSize = $P.control.defaultFetchSize; // 한번에 조회되는 자료 건수 - $P.control.query.delYn = "N"; // 삭제 여부 + $P.control.query = $P.formFields.get(); // 검색 조건 + $P.control.query.fetchSize = $P.control.defaultFetchSize; // 한번에 조회되는 자료 건수 + $P.control.query.delYn = "N"; // 삭제 여부 $P.control.load(1); } @@ -540,7 +543,6 @@ content : "검색된 자료가 없습니다." , onOK : () => { } }); - return; } @@ -552,57 +554,55 @@ $P.control.download(); } - // 사용자 조회 버튼 이벤트 - $P.fnFindUser = () => { - $P.getFindUser(); - } - // 감경 수정 버튼 이벤트 - $P.fnUpdateRduct = (title) => { + $P.fnUpdate = (title) => { // 감경 ID let rductId = $P.control.dataset.getValue("RDUCT_ID"); // 감경 ID 가 없다면.. return if (typeof rductId == "undefined" || rductId == null || rductId == "") return; let params = { - callPurpose : "update" - , title : title - , sggCd : $P.control.dataset.getValue("SGG_CD") // 시군구 코드 - , taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드 - , rductId : rductId // 감경 ID + title: title + , callPurpose: "update" // 호출용도: 수정 + , sggCd: $P.control.dataset.getValue("SGG_CD") // 시군구 코드 + , taskSeCd: $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드 + , rductId: rductId // 감경 ID }; $P.control.getInfo(params); } // 감경 삭제 버튼 이벤트 - $P.fnRemoveRduct = (title) => { + $P.fnRemove = (title) => { // 선택 자료 let selected = $P.control.dataset.getKeys("selected"); - if (selected.length < 1) return; + if (selected.length < 1) { + dialog.alert({ + content: "선택하신 부과제외 정보가 없습니다." + , onOK: () => { } + }); + return; + } // 삭제 메세지 확인 dialog.alert({ content : "선택하신 " + selected.length + "건의 " + $P.control.prefixName + " 정보를 삭제하시겠습니까?" , onOK : async() => { // 삭제 사유 입력 - var resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html")); - var template = await resp.text(); + let resp = await fetch(wctx.url("/resources/html/inputRsnDialog.html")); + let template = await resp.text(); dialog.open({ - id : "inputDelRsnDialog", - title: title, - size : "lg", - content: template, - init : () => { - setDialogZindex(); - }, - onOK : () => { + id: "inputDelRsnDialog" + , title: title + , size: "lg" + , content: template + , init: () => { setDialogZindex(); } + , onOK: () => { $P.callbackRsn({ reason : $("#reason").val() }); } }); - } }); } @@ -638,13 +638,12 @@ }); }); - // 감경 수정 버튼 이벤트 - $("#btnUpdateRduct--${pageName}").on("click", function() { - $P.fnUpdateRduct($(this).attr("title")); + // 버튼 이벤트 + $("#btnUpdate--${pageName}").on("click", function() { + $P.fnUpdate($(this).attr("title")); // 감경 수정 }); - // 감경 삭제 버튼 이벤트 - $("#btnRemoveRduct--${pageName}").on("click", function() { - $P.fnRemoveRduct($(this).attr("title")); + $("#btnRemove--${pageName}").on("click", function() { + $P.fnRemove($(this).attr("title")); // 감경 삭제 }); // DataTables width 변경 조정 업무별 그리드가 존재 한다면.. crdn06010-main.jsp 참고 @@ -672,56 +671,33 @@ $(this).prop("disabled", "true"); }); - //달력 초기화 - initDatepicker("frmSearch--${pageName}"); - $("#schRductYmdFrom--${pageName}").datepicker("setDate", new Date()); - $("#schRductYmdTo--${pageName}").datepicker("setDate", new Date()); - - // 동적 검색 - $("#byOutput--${pageName}").val("동적 검색"); - - // 사용자 이름 - $("#schRgtrNm--${pageName}").prop("readonly", true); - } - - // 기본 데이터 설정 - $P.initData = (taskSeCd) => { - // 시군구 코드 - $("#sggCd--${pageName}").val("${sggCd}"); - // 업무 구분 코드 - $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); - - // 일자 - $("#schRductYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); - $("#schRductYmdTo--${pageName}").datepicker("setDate", new Date()); + // 기본 데이터 설정 + $("#sggCd--${pageName}").val("${sggCd}"); // 시군구 코드 + $("#frmSearch--${pageName} input[name='taskSeCd'][value='" + taskSeCd + "']").prop("checked", true); // 업무 구분 코드 + initDatepicker("frmSearch--${pageName}"); // 달력 초기화 + $("#schRductYmdFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-7).date); // 감경 일자 시작 + $("#schRductYmdTo--${pageName}").datepicker("setDate", new Date()); // 감경 일자 종료 + $("#byOutput--${pageName}").val("동적 검색"); // 동적 검색 + $("#schRgtrNm--${pageName}").prop("readonly", true); // 사용자 이름 } // 업무 구분별 설정 $P.setTask = (taskSeCd) => { - let clsForTask = taskSeCd.toLowerCase(); + // 업무구분에 따른 URL 설정 + $P.control.urls.load = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/010/list.do"); // 검색 // 업무별 조회조건 - renderForTask("frmSearch--${pageName}", clsForTask); + renderForTask("frmSearch--${pageName}", taskSeCd.toLowerCase()); // 업무별 그리드 th let colContent = document.getElementById("${infoPrefix}Col--${pageName}").content; - let cols = $(colContent).find("." + clsForTask + ",.cmn"); + let cols = $(colContent).find("." + taskSeCd.toLowerCase() + ",.cmn"); let colsOuterHTML = ""; cols.each(function() { colsOuterHTML += this.outerHTML; }); $("#table-responsive--${pageName}")[0].changeColumn(colsOuterHTML); - - // URL 설정 - $P.setURL(taskSeCd); - } - - // 업무구분에 따른 URL 설정 - $P.setURL = (taskSeCd) => { - $P.control.urls.load = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/list.do"); // 조회 - $P.control.urls.remove = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/010/remove.do"); // 삭제 - $P.control.urls.getInfo = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/020/info.do"); // 수정 } /************************************************************************** diff --git a/src/main/webapp/WEB-INF/jsp/fims/levy/levy02020-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/levy/levy02020-info.jsp index cd71a0df..d059fd1a 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/levy/levy02020-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/levy/levy02020-info.jsp @@ -12,9 +12,9 @@
- +
@@ -91,10 +91,8 @@ **************************************************************************/ $(document).ready(function() { // pageObject - var $P = pageObject["${pageName}"]; + let $P = pageObject["${pageName}"]; - // URL - $P.PrefixUrl = "/levy/levy02"; // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정) $P.callPurpose = "${callPurpose}"; // FormFields @@ -104,14 +102,14 @@ * DatasetControl **************************************************************************/ $P.control = new DatasetControl({ - prefix : "rduct" - , prefixName : "감경" - , keymapper : info => info ? info.RDUCT_ID : "" - , dataGetter : obj => obj.rductInfo - , formats : { - FFNLG_CRDN_AMT : numberFormat // 과태료 단속 금액 - , WKSN_RDUCT_RT : numberFormat // 감경 율 - , RDUCT_AMT : numberFormat // 감경 금액 + prefix: "rduct" + , prefixName: "감경" + , keymapper: info => info ? info.RDUCT_ID : "" + , dataGetter: obj => obj.rductInfo + , formats: { + FFNLG_CRDN_AMT: numberFormat // 과태료 단속 금액 + , WKSN_RDUCT_RT: numberFormat // 감경 율 + , RDUCT_AMT: numberFormat // 감경 금액 } }); @@ -126,17 +124,18 @@ $P.formFields.set($P.control,item); // 업무구분에 따른 URL 변경 - $P.setURL(item.data.TASK_SE_CD); + $P.fnSetURL(item.data.TASK_SE_CD); } // 저장 callback $P.control.onSave = (resp) => { - let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html(); + let dialogTitle = $("#" + $P.control.prefix + "Dialog--${openerPageName}").find("h5.modal-title").html(); let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle); // 메시지 출력 dialog.alert({ content : showMessage + , init: () => { setDialogZindex(); } , onOK : () => { } }); @@ -152,17 +151,20 @@ let create = ($P.callPurpose == "create"); ajax.post({ - url : !create ? $P.control.urls.update : $P.control.urls.create - , data : info - , success : resp => $P.control.onSave(resp) + url: !create ? $P.control.urls.update : $P.control.urls.create + , data: info || {} + , success: resp => $P.control.onSave(resp) }); } /************************************************************************** * 사용자 함수(function) **************************************************************************/ - - + // 업무구분에 따른 URL 설정 + $P.fnSetURL = (taskSeCd) => { + $P.control.urls.create = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/020/create.do"); // 등록 + $P.control.urls.update = wctx.url("/" + taskSeCd + "${infoPrefixUrl}" + "/020/update.do"); // 수정 + } /************************************************************************** * 버튼 clickEvent @@ -188,12 +190,9 @@ dialog.alert({ content : "현재 " + $P.control.prefixName + " 정보를 저장하시겠습니까?" + , init: () => { setDialogZindex(); } , onOK : () => { - // 파리미터 설정 - let params = $P.formFields.get(); // formFields - params.title = title; // 타이틀 - - $P.control.save(params); + $P.control.save($P.formFields.get()); // formFields } }); } @@ -216,28 +215,20 @@ }); }); - // 저장 버튼 이벤트 - $("#btnSave--${pageName}").on("click", function() { - $P.fnSave($(this).attr("title")); - }); + // 버튼 이벤트 + $("#btnSave--${pageName}").on("click", () => $P.fnSave()); // 저장 } // 초기 화면 설정 $P.initForm = () => { // Dialog 마우스로 드래그 할 수 있도록 설정. - fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog")); + fnMakeDraggableDialog(document.getElementById($P.control.prefix + "Dialog--${openerPageName}")); // 달력 초기화 initDatepicker("frmEdit--${pageName}"); $("#rductYmd--${pageName}").datepicker("setDate", new Date()); } - // 업무구분에 따른 URL 설정 - $P.setURL = (taskSeCd) => { - $P.control.urls.create = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/020/create.do"); // 등록 - $P.control.urls.update = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/020/update.do"); // 수정 - } - /************************************************************************** * 최초 실행 함수 **************************************************************************/ diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02020-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02020-info.jsp index 7c9571c3..599ac36b 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02020-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02020-info.jsp @@ -850,7 +850,6 @@ , taskSeCd : $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드 , vhrno : $P.control.dataset.getValue("VHRNO") // 차량번호 , rtpyrInptSeCd : "01" // 납부자 입력 구분 코드 - , delYn : "N" }; $P.updatePayer(params); diff --git a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp index 4476572d..2a148794 100644 --- a/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp +++ b/src/main/webapp/WEB-INF/jsp/fims/sprt/sprt02050-info.jsp @@ -925,7 +925,7 @@ if (levyExcl) $P.levyExclControl.setData([levyExcl]); $P.crdnSttsHstryControl.setData(${crdnSttsHstry}); // 단속상태 이력 - $P.payerHstryControl.setData(${payerHstry}); // 납부자 이력 + $P.payerHstryControl.setData(${payerAddrHstry}); // 납부자주소 이력 });