diff --git a/src/main/java/cokr/xit/fims/rent/LsctAprv.java b/src/main/java/cokr/xit/fims/rent/LsctAprv.java
index 83f90fb3..97e5ff6e 100644
--- a/src/main/java/cokr/xit/fims/rent/LsctAprv.java
+++ b/src/main/java/cokr/xit/fims/rent/LsctAprv.java
@@ -218,9 +218,9 @@ public class LsctAprv extends AbstractEntity {
private Integer atchFileSz4;
/**
- * 변경 승인 여부
+ * 변경 승인 상태
*/
- private String chgAprvYn;
+ private String chgAprvStts;
/**
* 변경 승인 일시
@@ -228,9 +228,9 @@ public class LsctAprv extends AbstractEntity {
private String chgAprvDt;
/**
- * 변경 승인자
+ * 변경 승인자 명
*/
- private String chgAutzr;
+ private String chgAutzrNm;
/**
* 변경 승인 사유
@@ -263,9 +263,9 @@ public class LsctAprv extends AbstractEntity {
private String[] lsctMpngIds;
/**
- * DB링크 테이블 명
+ * 임대차계약 연계 테이블 명
*/
- private String linkTableName;
+ private String lsctLinkTblNm;
/**
* 변경 요청 IP
diff --git a/src/main/java/cokr/xit/fims/rent/LsctMpng.java b/src/main/java/cokr/xit/fims/rent/LsctMpng.java
index 8de9596b..37c69a39 100644
--- a/src/main/java/cokr/xit/fims/rent/LsctMpng.java
+++ b/src/main/java/cokr/xit/fims/rent/LsctMpng.java
@@ -153,9 +153,9 @@ public class LsctMpng extends AbstractEntity {
private String chgDmndRtrcnIp;
/**
- * 변경 승인 여부
+ * 변경 승인 상태
*/
- private String chgAprvYn;
+ private String chgAprvStts;
/**
* 변경 승인 일시
@@ -163,9 +163,9 @@ public class LsctMpng extends AbstractEntity {
private String chgAprvDt;
/**
- * 변경 승인자
+ * 변경 승인자 명
*/
- private String chgAutzr;
+ private String chgAutzrNm;
/**
* 변경 승인 사유
@@ -177,6 +177,16 @@ public class LsctMpng extends AbstractEntity {
*/
private String chgAprvIp;
+ /**
+ * 임대차계약 연계 테이블 명
+ */
+ private String lsctLinkTblNm;
+
+ /**
+ * 임대차계약 승인 ID
+ */
+ private String lsctAprvId;
+
/**
* 삭제 여부
*/
diff --git a/src/main/java/cokr/xit/fims/rent/RentQuery.java b/src/main/java/cokr/xit/fims/rent/RentQuery.java
index 592636b7..c56e7b9c 100644
--- a/src/main/java/cokr/xit/fims/rent/RentQuery.java
+++ b/src/main/java/cokr/xit/fims/rent/RentQuery.java
@@ -50,7 +50,7 @@ public class RentQuery extends CmmnQuery {
private String trgtSttsNm; // 등록 대상 여부
private String nxrpCrdnLinkYn; // 세외수입 단속 연계 여부
- private String linkTableName; // DB링크 테이블 명
+ private String lsctLinkTblNm; // 임대차계약 연계 테이블 명
// ETC
private String callPurpose; // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정, refresh 재조회).
@@ -298,12 +298,12 @@ public class RentQuery extends CmmnQuery {
this.nxrpCrdnLinkYn = nxrpCrdnLinkYn;
}
- public String getLinkTableName() {
- return ifEmpty(linkTableName, () -> null);
+ public String getLsctLinkTblNm() {
+ return ifEmpty(lsctLinkTblNm, () -> null);
}
- public void setLinkTableName(String linkTableName) {
- this.linkTableName = linkTableName;
+ public void setLsctLinkTblNm(String lsctLinkTblNm) {
+ this.lsctLinkTblNm = lsctLinkTblNm;
}
// ETC /////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/cokr/xit/fims/rent/dao/LsctMpngMapper.java b/src/main/java/cokr/xit/fims/rent/dao/LsctMpngMapper.java
index b0ef90c3..5268f4ee 100644
--- a/src/main/java/cokr/xit/fims/rent/dao/LsctMpngMapper.java
+++ b/src/main/java/cokr/xit/fims/rent/dao/LsctMpngMapper.java
@@ -135,6 +135,15 @@ public interface LsctMpngMapper extends AbstractMapper {
*/
int updateLsctMpngChgDmnd(LsctMpng lsct);
+ /**임대차계약 대장 변경 요청 정보를 수정한다.
+ * @param params 파라미터
+ *
- "lsct" - 임대차계약 대장
+ * - "currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int updateLsctMpngChgAprv(LsctMpng lsct);
+
/**지정한 임대차계약 대장을 삭제한다.
* @param params 파라미터
* - "lsct" - 임대차계약 대장
diff --git a/src/main/java/cokr/xit/fims/rent/service/LsctMpngService.java b/src/main/java/cokr/xit/fims/rent/service/LsctMpngService.java
index 14012c82..62d598df 100644
--- a/src/main/java/cokr/xit/fims/rent/service/LsctMpngService.java
+++ b/src/main/java/cokr/xit/fims/rent/service/LsctMpngService.java
@@ -56,6 +56,12 @@ public interface LsctMpngService {
*/
DataObject getLsctMpngInfo(RentQuery req);
+ /**지정한 조건에 따라 임대차계약 매핑 대장 목록을 조회하여 반환한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 매핑 대장 목록
+ */
+ List getLsctAprvToMpngList(RentQuery req);
+
/**임대차계약 매핑 대장 정보를 등록한다.
* @param lsctMpng 임대차계약 매핑 대장
* @return 저장 여부
diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java
index eb0bcda7..8e7d557e 100644
--- a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java
+++ b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java
@@ -173,8 +173,8 @@ public class LsctMpngBean extends AbstractBean {
crdn.setCrdnInptSeCd(String.format("%02d", mainList.get(iLoop).number("MM_INGB").intValue())); // 단속 입력 구분 코드
// 민원 정보는 원본 시스템에서 확인하게끔 null로 입력한다.
crdn.setCvlcptLinkYn("N"); // 민원 연계 여부
- crdn.setLinkId(null); // 연계 ID
- crdn.setLinkTblNm(null); // 민원 연계 테이블 명
+ crdn.setCvlcptLinkTblNm(null); // 민원 연계 테이블 명
+ crdn.setCvlcptLinkId(null); // 민원 연계 ID
crdn.setRtpyrId(result.getRtpyrId()); // 납부자 ID
crdn.setAddrSn(result.getAddrSn()); // 주소 일련번호
crdn.setCrdnYmd(mainList.get(iLoop).string("MM_DATE")); // 단속 일자
@@ -391,6 +391,53 @@ public class LsctMpngBean extends AbstractBean {
return lsctMpngMapper.selectLsctMpngInfo(req);
}
+ /**지정한 조건에 따라 임대차계약 대장 목록을 조회하여 반환한다.
+ * 통합플랫폼으로 사용하지 안을 경우 렌트 소스만 사용하기 위해서 TB_CRDN, TB_PAYER에 직접 등록한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 목록
+ * @throws JSchException
+ * @throws NumberFormatException
+ */
+ public List getLsctAprvToMpngList(RentQuery req) {
+ // 변수 선언
+ int rtnNocs = -1; // 처리 결과 건수
+
+ // 임대차계약 매핑 대장 조회
+ List lsctMpngList = lsctMpngMapper.selectLsctMpngList(req);
+
+ // 변경 승인 여부를 확인 한다.
+ for (DataObject lsctMpng: lsctMpngList) {
+ if (lsctMpng.string("CHG_DMND_YN").equals("Y") && lsctMpng.string("CHG_APRV_STTS").equals("RQ")) {
+ RentQuery lsctAprvReq = new RentQuery();
+ lsctAprvReq.setLsctLinkTblNm(lsctMpng.string("LSCT_LINK_TBL_NM"));
+ lsctAprvReq.setAprvId(lsctMpng.string("LSCT_APRV_ID"));
+ lsctAprvReq.setLsctMpngId(lsctMpng.string("LSCT_MPNG_ID"));
+ lsctAprvReq.setDelYn("N");
+
+ DataObject lsctAprv = lsctAprvMapper.selectLsctAprvInfo(lsctAprvReq);
+
+ if (!lsctAprv.string("CHG_APRV_STTS").equals("")) {
+ LsctMpng updtLsctMpng = new LsctMpng();
+
+ updtLsctMpng.setLsctMpngId(lsctAprv.string("LSCT_MPNG_ID")); // 임대차계약 매핑 ID
+ updtLsctMpng.setChgAprvStts(lsctAprv.string("CHG_APRV_STTS")); // 변경 승인 상태
+ updtLsctMpng.setChgAprvDt(lsctAprv.string("CHG_APRV_DT")); // 변경 승인 일시
+ updtLsctMpng.setChgAutzrNm(lsctAprv.string("CHG_AUTZR_NM")); // 변경 승인자 명
+ updtLsctMpng.setChgAprvRsn(lsctAprv.string("CHG_APRV_RSN")); // 변경 승인 사유
+ updtLsctMpng.setChgAprvIp(lsctAprv.string("CHG_APRV_IP")); // 변경 승인 IP
+
+ rtnNocs = lsctMpngMapper.updateLsctMpngChgAprv(updtLsctMpng);
+ if (rtnNocs < 1) {
+ throw new RuntimeException("[F] 임대차계약 승인 여부 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+ }
+ }
+ }
+
+ // 임대차계약 매핑 대장 조회
+ return lsctMpngMapper.selectLsctMpngList(req);
+ }
+
/**임대차계약 대장 정보를 등록한다.
* @param lsct 임대차계약 대장
* @return 저장 여부
@@ -581,11 +628,13 @@ public class LsctMpngBean extends AbstractBean {
}
}
+ lsctAprv.setChgAprvStts("RQ"); // 변경 승인 상태
+
// 연계 테이블명
if (lsctMpngInfo.string("SGG_CD").equals("50110") && lsctMpngInfo.string("TASK_SE_CD").equals("ECA")) {
- lsctAprv.setLinkTableName("TB_LSCT_APRV_50110_ECA");
+ lsctAprv.setLsctLinkTblNm("TB_LSCT_APRV_50110_ECA");
} else if (lsctMpngInfo.string("SGG_CD").equals("50130") && lsctMpngInfo.string("TASK_SE_CD").equals("ECA")) {
- lsctAprv.setLinkTableName("TB_LSCT_APRV_50130_ECA");
+ lsctAprv.setLsctLinkTblNm("TB_LSCT_APRV_50130_ECA");
} else {
rtnMsg = "[F] 작업 중 연계시스템이 확인되지 않았습니다.";
return rtnMsg;
@@ -606,6 +655,9 @@ public class LsctMpngBean extends AbstractBean {
lsctMpng.setChgDmndYn("Y"); // 변경 요청 여부
lsctMpng.setChgDmndRgtr(fimsUser.getId()); // 변경 요청 등록자
lsctMpng.setChgDmndIp(lsctAprv.getChgDmndIp()); // 변경 요청 IP
+ lsctMpng.setChgAprvStts(lsctAprv.getChgAprvStts()); // 변경 승인 상태
+ lsctMpng.setLsctLinkTblNm(lsctAprv.getLsctLinkTblNm()); // 임대차계약 연계 테이블 명
+ lsctMpng.setLsctAprvId(lsctAprv.getAprvId()); // 임대차계약 승인 ID
rtnNocs = lsctMpngMapper.updateLsctMpngChgDmnd(lsctMpng);
if (rtnNocs < 1) {
@@ -643,11 +695,11 @@ public class LsctMpngBean extends AbstractBean {
// 연계 테이블명
if (lsctMpngInfo.string("SGG_CD").equals("50110") && lsctMpngInfo.string("TASK_SE_CD").equals("ECA")) {
- req.setLinkTableName("TB_LSCT_APRV_50110_ECA");
- lsctAprv.setLinkTableName("TB_LSCT_APRV_50110_ECA");
+ req.setLsctLinkTblNm("TB_LSCT_APRV_50110_ECA");
+ lsctAprv.setLsctLinkTblNm("TB_LSCT_APRV_50110_ECA");
} else if (lsctMpngInfo.string("SGG_CD").equals("50130") && lsctMpngInfo.string("TASK_SE_CD").equals("ECA")) {
- req.setLinkTableName("TB_LSCT_APRV_50130_ECA");
- lsctAprv.setLinkTableName("TB_LSCT_APRV_50130_ECA");
+ req.setLsctLinkTblNm("TB_LSCT_APRV_50130_ECA");
+ lsctAprv.setLsctLinkTblNm("TB_LSCT_APRV_50130_ECA");
} else {
rtnMsg = "[F] 작업 중 연계시스템이 확인되지 않았습니다.";
return rtnMsg;
@@ -677,6 +729,9 @@ public class LsctMpngBean extends AbstractBean {
lsctMpng.setChgDmndYn("N"); // 변경 요청 여부
lsctMpng.setChgDmndMdfr(fimsUser.getId()); // 변경 요청 수정자
lsctMpng.setChgDmndIp(lsctAprv.getChgDmndIp()); // 변경 요청 IP
+ lsctMpng.setChgAprvStts(null); // 변경 승인 상태
+ lsctMpng.setLsctLinkTblNm(null); // 임대차계약 연계 테이블 명
+ lsctMpng.setLsctAprvId(null); // 임대차계약 승인 ID
rtnNocs = lsctMpngMapper.updateLsctMpngChgDmnd(lsctMpng);
if (rtnNocs < 1) {
diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngServiceBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngServiceBean.java
index e303dc91..31791bfb 100644
--- a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngServiceBean.java
+++ b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngServiceBean.java
@@ -81,6 +81,11 @@ public class LsctMpngServiceBean extends AbstractServiceBean implements LsctMpng
return lsctMpngBean.getLsctMpngInfo(req);
}
+ @Override
+ public List getLsctAprvToMpngList(RentQuery req) {
+ return lsctMpngBean.getLsctAprvToMpngList(req);
+ }
+
@Override
public String createLsctMpng(LsctMpng lsct) {
return lsctMpngBean.createLsctMpng(lsct);
diff --git a/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java b/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java
index 097a4359..d19449c8 100644
--- a/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java
+++ b/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java
@@ -486,9 +486,9 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg);
}
- /**임대차계약 대장 관리 메인화면(lsct/lsct-main)을 연다.
+ /**임대차계약 대장 관리 메인화면(fims/rent/rent02050-main)을 연다.
* 조건없는 {@link #getLsctList(LsctQuery) 임대차계약 대장 조회 결과}를 포함시킨다.
- * @return /lsct/lsct-main
+ * @return fims/rent/rent02050-main
*/
@RequestMapping(name = "임대차계약 승인 대장 관리 메인", value=METHOD_URL.leaseContractMappingMain)
public ModelAndView leaseContractMappingMain() {
@@ -526,7 +526,8 @@ public class Rent02Controller extends ApplicationController {
@RequestMapping(name = "임대차계약 승인 대장 관리 조회", value=METHOD_URL.getLeaseContractMappingList)
public ModelAndView getLeaseContractMappingList(RentQuery req) {
if (!"xls".equals(req.getDownload())) {
- List> result = lsctMpngService.getLsctMpngList(setFetchSize(req));
+ List> result = lsctMpngService.getLsctAprvToMpngList(setFetchSize(req));
+// List> result = lsctMpngService.getLsctMpngList(setFetchSize(req));
return setPagingInfo(new ModelAndView("jsonView"), result, "");
} else {
// 현재 날짜 구하기
diff --git a/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml b/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml
index bfa39390..43080c58 100644
--- a/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml
+++ b/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml
@@ -37,9 +37,9 @@
-
+
-
+
@@ -82,9 +82,9 @@
, LA.RENT_ENT_ADDR
, LA.RENT_ENT_DTL_ADDR
, LA.ATCH_FILE_CNT
- , LA.CHG_APRV_YN
+ , LA.CHG_APRV_STTS
, LA.CHG_APRV_DT
- , LA.CHG_AUTZR
+ , LA.CHG_AUTZR_NM
, LA.CHG_APRV_RSN
, LA.CHG_APRV_IP
, LA.DEL_YN
@@ -95,7 +95,7 @@
, LA.DEL_DT
, LA.DLTR
, LA.DEL_RSN
- FROM ${linkTableName} LA
+ FROM ${lsctLinkTblNm} LA