+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Mapper("hirerMapper")
+public interface HirerMapper extends AbstractMapper {
+
+ /**지정한 조건에 따라 임차인 정보 목록을 조회하여 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 목록
+ */
+ List selectHirerList(RentQuery req);
+
+ /**지정한 조건에 따라 임차인 정보 객체들을 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 객체 목록
+ */
+ List selectHirers(RentQuery req);
+
+ /**임차인 정보 정보를 등록한다.
+ * @param params 파라미터
+ *
"hirer" - 임차인 정보
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int insertHirer(Map params);
+
+ /**임차인 정보 정보를 등록한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Mapper("lsctMapper")
+public interface LsctMapper extends AbstractMapper {
+
+ /**
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 목록
+ */
+ List selectMainList(RentQuery req);
+
+ /**
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 목록
+ */
+ DataObject selectCrdnInfo(String crndId);
+
+ /**원본 단속 뷰 정보를 단속 대장 정보에 복사 등록한다.
+ * @param params 파라미터
+ *
"lsct" - 임대차계약 대장
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int copyMainToCrdn(Crdn crdn);
+
+ int copyMainToCrdnAdi(Crdn crdn);
+
+ /**지정한 조건에 따라 임대차계약 대장 목록을 조회하여 반환한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 목록
+ */
+ List selectLsctList(RentQuery req);
+
+ /**지정한 조건에 따라 임대차계약 대장 객체들을 반환한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 객체 목록
+ */
+ List selectLscts(RentQuery req);
+
+ /**임대차계약 대장 정보를 등록한다.
+ * @param params 파라미터
+ *
"lsct" - 임대차계약 대장
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int insertLsct(Map params);
+
+ /**임대차계약 대장 정보를 등록한다.
+ * @param lsct 임대차계약 대장
+ * @return 저장 여부
+ *
+ * @return 저장된 정보수
+ */
+ int deleteLsct(Map params);
+
+ /**임대차계약 대장 정보를 삭제한다.
+ * @param lsct 임대차계약 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ default boolean delete(Lsct lsct) {
+ return lsct != null && deleteLsct(params().set("lsct", lsct)) == 1;
+ }
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/dao/RentEntMapper.java b/src/main/java/cokr/xit/fims/rent/dao/RentEntMapper.java
new file mode 100644
index 00000000..aa7c8385
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/dao/RentEntMapper.java
@@ -0,0 +1,78 @@
+package cokr.xit.fims.rent.dao;
+
+import java.util.List;
+
+import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
+
+import cokr.xit.fims.rent.RentEnt;
+import cokr.xit.fims.rent.RentQuery;
+import cokr.xit.foundation.component.AbstractMapper;
+import cokr.xit.foundation.data.DataObject;
+
+/** 임대 기업 대장 정보 DAO
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Mapper("rentEntMapper")
+public interface RentEntMapper extends AbstractMapper {
+ /**지정한 조건에 따라 임대 기업 대장 목록을 조회하여 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 목록
+ */
+ List selectRentEntList(RentQuery req);
+
+ /**지정한 조건에 따라 임대 기업 대장 객체들을 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 객체 목록
+ */
+ List selectRentEnts(RentQuery req);
+
+ default DataObject selectRentEntInfo(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 기본 정렬
+ if (req.getOrderBy() == null) {
+ req.setOrderBy("RE.ENT_ID DESC");
+ }
+
+ List rentEnts = selectRentEnts(req);
+
+ return !rentEnts.isEmpty() ? rentEnts.get(0) : null;
+ }
+
+ /**임대 기업 대장 정보를 등록한다.
+ * @param params 파라미터
+ *
"rentEnt" - 임대 기업 대장
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int insertRentEnt(RentEnt rentEnt);
+
+ /**임대 기업 대장 정보를 수정한다.
+ * @param params 파라미터
+ *
"rentEnt" - 임대 기업 대장
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int updateRentEnt(RentEnt rentEnt);
+
+ /**지정한 임대 기업 대장을 삭제한다.
+ * @param params 파라미터
+ *
"rentEnt" - 임대 기업 대장
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int deleteRentEnt(RentEnt rentEnt);
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/dao/UserRentEntMpngMapper.java b/src/main/java/cokr/xit/fims/rent/dao/UserRentEntMpngMapper.java
new file mode 100644
index 00000000..856ef428
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/dao/UserRentEntMpngMapper.java
@@ -0,0 +1,83 @@
+package cokr.xit.fims.rent.dao;
+
+import java.util.List;
+
+import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
+
+import cokr.xit.fims.rent.RentQuery;
+import cokr.xit.fims.rent.UserRentEntMpng;
+import cokr.xit.foundation.component.AbstractMapper;
+import cokr.xit.foundation.data.DataObject;
+
+
+/** 사용자 임대 기업 매핑 정보 DAO
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Mapper("userRentEntMpngMapper")
+public interface UserRentEntMpngMapper extends AbstractMapper {
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 목록을 조회하여 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 목록
+ */
+ List selectUserRentEntMpngList(RentQuery req);
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 객체들을 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 객체 목록
+ */
+ List selectUserRentEntMpngs(RentQuery req);
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 정보를 조회하여 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 객체 목록
+ */
+ default DataObject selectUserRentEntMpngInfo(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 기본 정렬
+ if (req.getOrderBy() == null) {
+ req.setOrderBy("UREM.MPNG_ID DESC");
+ }
+
+ List userRentEntMpngs = selectUserRentEntMpngs(req);
+
+ return !userRentEntMpngs.isEmpty() ? userRentEntMpngs.get(0) : null;
+ }
+
+ /**사용자 임대 기업 매핑 정보를 등록한다.
+ * @param params 파라미터
+ *
"userRentEntMpng" - 사용자 임대 기업 매핑
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int insertUserRentEntMpng(UserRentEntMpng userRentEntMpng);
+
+ /**사용자 임대 기업 매핑 정보를 수정한다.
+ * @param params 파라미터
+ *
"userRentEntMpng" - 사용자 임대 기업 매핑
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int updateUserRentEntMpng(UserRentEntMpng userRentEntMpng);
+
+ /**지정한 사용자 임대 기업 매핑을 삭제한다.
+ * @param params 파라미터
+ *
"userRentEntMpng" - 사용자 임대 기업 매핑
+ *
"currentUser" - 현재 접속한 사용자
+ *
+ * @return 저장된 정보수
+ */
+ int deleteUserRentEntMpng(UserRentEntMpng userRentEntMpng);
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/service/HirerService.java b/src/main/java/cokr/xit/fims/rent/service/HirerService.java
new file mode 100644
index 00000000..abc64fcd
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/service/HirerService.java
@@ -0,0 +1,61 @@
+package cokr.xit.fims.rent.service;
+
+import java.util.List;
+
+import cokr.xit.foundation.data.DataObject;
+
+import cokr.xit.fims.rent.Hirer;
+import cokr.xit.fims.rent.RentQuery;
+
+/**임차인 정보 관리 서비스 인터페이스.
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+public interface HirerService {
+
+ /**지정한 조건에 따라 임차인 정보 목록을 조회하여 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 목록
+ */
+ List getHirerList(RentQuery req);
+
+ /**지정한 조건에 따라 임차인 정보 객체들을 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 객체 목록
+ */
+ List getHirers(RentQuery req);
+
+ /**임차인 정보 정보를 등록한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean create(Hirer hirer);
+
+ /**임차인 정보 정보를 수정한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean update(Hirer hirer);
+
+ /**임차인 정보 정보를 삭제한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean remove(Hirer hirer);
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/service/LsctService.java b/src/main/java/cokr/xit/fims/rent/service/LsctService.java
new file mode 100644
index 00000000..b1239e3b
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/service/LsctService.java
@@ -0,0 +1,61 @@
+package cokr.xit.fims.rent.service;
+
+import java.util.List;
+
+import cokr.xit.foundation.data.DataObject;
+
+import cokr.xit.fims.rent.Lsct;
+import cokr.xit.fims.rent.RentQuery;
+
+/**임대차계약 대장 관리 서비스 인터페이스.
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+public interface LsctService {
+
+ /**지정한 조건에 따라 임대차계약 대장 목록을 조회하여 반환한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 목록
+ */
+ List getLsctList(RentQuery req);
+
+ /**지정한 조건에 따라 임대차계약 대장 객체들을 반환한다.
+ * @param req 임대차계약 대장 조회 조건
+ * @return 임대차계약 대장 객체 목록
+ */
+ List getLscts(RentQuery req);
+
+ /**임대차계약 대장 정보를 등록한다.
+ * @param lsct 임대차계약 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean create(Lsct lsct);
+
+ /**임대차계약 대장 정보를 수정한다.
+ * @param lsct 임대차계약 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean update(Lsct lsct);
+
+ /**임대차계약 대장 정보를 삭제한다.
+ * @param lsct 임대차계약 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ boolean remove(Lsct lsct);
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/service/RentEntService.java b/src/main/java/cokr/xit/fims/rent/service/RentEntService.java
new file mode 100644
index 00000000..4ef4d6de
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/service/RentEntService.java
@@ -0,0 +1,97 @@
+package cokr.xit.fims.rent.service;
+
+import java.util.List;
+
+import cokr.xit.fims.rent.RentEnt;
+import cokr.xit.fims.rent.RentQuery;
+import cokr.xit.fims.rent.UserRentEntMpng;
+import cokr.xit.foundation.data.DataObject;
+
+/**임대 기업 대장 관리 서비스 인터페이스.
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ */
+public interface RentEntService {
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 목록을 조회하여 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 목록
+ */
+ List getUserRentEntMpngList(RentQuery req);
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 객체들을 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 객체 목록
+ */
+ List getUserRentEntMpngs(RentQuery req);
+
+ /**사용자 임대 기업 매핑 정보를 등록한다.
+ * @param userRentEntMpng 사용자 임대 기업 매핑
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ String createUserRentEntMpng(UserRentEntMpng userRentEntMpng);
+
+ /**사용자 임대 기업 매핑 정보를 삭제한다.
+ * @param userRentEntMpng 사용자 임대 기업 매핑
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ String removeUserRentEntMpng(UserRentEntMpng userRentEntMpng);
+
+ /**지정한 조건에 따라 임대 기업 대장 목록을 조회하여 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 목록
+ */
+ List getRentEntList(RentQuery req);
+
+ /**지정한 조건에 따라 임대 기업 대장 객체들을 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 객체 목록
+ */
+ List getRentEnts(RentQuery req);
+
+ /**지정한 조건에 따라 임대 기업 상세 정보를 조회하여 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 상세 정보
+ */
+ DataObject getRentEntInfo(RentQuery req);
+
+ /**임대 기업 대장 정보를 등록한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ String createRentEnt(RentEnt rentEnt);
+
+ /**임대 기업 대장 정보를 수정한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ String updateRentEnt(RentEnt rentEnt);
+
+ /**임대 기업 대장 정보를 삭제한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Component("hirerBean")
+public class HirerBean extends AbstractBean {
+
+ /** 임차인 정보 정보 DAO */
+ @Resource(name = "hirerMapper")
+ private HirerMapper hirerMapper;
+
+ /**지정한 조건에 따라 임차인 정보 목록을 조회하여 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 목록
+ */
+ public List getHirerList(RentQuery req) {
+ return hirerMapper.selectHirerList(req);
+ }
+
+ /**지정한 조건에 따라 임차인 정보 객체들을 반환한다.
+ * @param req 임차인 정보 조회 조건
+ * @return 임차인 정보 객체 목록
+ */
+ public List getHirers(RentQuery req) {
+ return hirerMapper.selectHirers(req);
+ }
+
+ /**임차인 정보 정보를 등록한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public boolean create(Hirer hirer) {
+ return hirerMapper.insert(hirer);
+ }
+
+ /**임차인 정보 정보를 수정한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public boolean update(Hirer hirer) {
+ return hirerMapper.update(hirer);
+ }
+
+ /**임차인 정보 정보를 삭제한다.
+ * @param hirer 임차인 정보
+ * @return 저장 여부
+ *
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Service("lsctService")
+public class LsctServiceBean extends AbstractServiceBean implements LsctService {
+
+ /** 임대차계약 대장 정보 Bean */
+ @Resource(name = "lsctBean")
+ private LsctBean lsctBean;
+
+ @Override
+ public List getLsctList(RentQuery req) {
+ return lsctBean.getLsctList(req);
+ }
+
+ @Override
+ public List getLscts(RentQuery req) {
+ return lsctBean.getLscts(req);
+ }
+
+ @Override
+ public boolean create(Lsct lsct) {
+ return lsctBean.create(lsct);
+ }
+
+ @Override
+ public boolean update(Lsct lsct) {
+ return lsctBean.update(lsct);
+ }
+
+ @Override
+ public boolean remove(Lsct lsct) {
+ return lsctBean.remove(lsct);
+ }
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/RentEntBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/RentEntBean.java
new file mode 100644
index 00000000..1bb64a2a
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/service/bean/RentEntBean.java
@@ -0,0 +1,240 @@
+package cokr.xit.fims.rent.service.bean;
+
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Component;
+
+import cokr.xit.fims.cmmn.CmmnUtil;
+import cokr.xit.fims.rent.RentEnt;
+import cokr.xit.fims.rent.RentQuery;
+import cokr.xit.fims.rent.UserRentEntMpng;
+import cokr.xit.fims.rent.dao.RentEntMapper;
+import cokr.xit.fims.rent.dao.UserRentEntMpngMapper;
+import cokr.xit.foundation.component.AbstractBean;
+import cokr.xit.foundation.data.DataObject;
+
+/**임대 기업 대장 정보 관리 Bean
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Component("rentEntBean")
+public class RentEntBean extends AbstractBean {
+
+ /** 사용자 임대 기업 매핑 정보 DAO */
+ @Resource(name = "userRentEntMpngMapper")
+ private UserRentEntMpngMapper userRentEntMpngMapper;
+
+ /** 임대 기업 대장 정보 DAO */
+ @Resource(name = "rentEntMapper")
+ private RentEntMapper rentEntMapper;
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 목록을 조회하여 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 목록
+ */
+ public List getUserRentEntMpngList(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 정렬 확인
+ if (req.getOrderBy() == null) {
+ if (req.getBy() == null) {
+ req.setOrderBy("REG_DT");
+ } else {
+ req.setOrderBy(CmmnUtil.convertCamelCaseToSnakeCase(req.getBy()));
+ }
+ }
+
+ return userRentEntMpngMapper.selectUserRentEntMpngList(req);
+ }
+
+ /**지정한 조건에 따라 사용자 임대 기업 매핑 객체들을 반환한다.
+ * @param req 사용자 임대 기업 매핑 조회 조건
+ * @return 사용자 임대 기업 매핑 객체 목록
+ */
+ public List getUserRentEntMpngs(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 정렬 확인
+ if (req.getOrderBy() == null) {
+ req.setOrderBy("UREM.MPNG_ID DESC");
+ }
+
+ return userRentEntMpngMapper.selectUserRentEntMpngs(req);
+ }
+
+ /**사용자 임대 기업 매핑 정보를 등록한다.
+ * @param userRentEntMpng 사용자 임대 기업 매핑
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public String createUserRentEntMpng(UserRentEntMpng userRentEntMpng) {
+ // 변수 선언
+ String rtnMsg = ""; // 처리 결과 메시지
+
+ RentQuery req = new RentQuery();
+ req.setUserId(userRentEntMpng.getUserId());
+ req.setEntId(userRentEntMpng.getEntId());
+ req.setDelYn("N");
+
+ // 사용자 임대 기업 매핑(TB_USER_RENT_ENT_MPNG) 정보를 조회한다.
+ DataObject userRentEntMpngInfo = userRentEntMpngMapper.selectUserRentEntMpngInfo(req);
+
+ if (userRentEntMpngInfo != null) {
+ rtnMsg = "[F] 등록 작업 중 오류가 발생하였습니다. 이미 등록된 매핑 정보가 존재합니다."
+ + "
";;
+ return rtnMsg;
+ }
+
+ // 사용자 임대 기업 매핑(TB_USER_RENT_ENT_MPNG) 대장을 등록한다.
+ int rtnNocs = userRentEntMpngMapper.insertUserRentEntMpng(userRentEntMpng);
+ if (rtnNocs != 1) {
+ throw new RuntimeException("[F] 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+
+ return "[S] 등록 작업이 정상 처리 되었습니다.";
+ }
+
+ /**사용자 임대 기업 매핑 정보를 삭제한다.
+ * @param userRentEntMpng 사용자 임대 기업 매핑
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public String removeUserRentEntMpng(UserRentEntMpng userRentEntMpng) {
+ // 사용자 임대 기업 매핑(TB_USER_RENT_ENT_MPNG) 대장을 삭제한다.
+ int rtnNocs = userRentEntMpngMapper.deleteUserRentEntMpng(userRentEntMpng);
+ if (rtnNocs < 1) {
+ throw new RuntimeException("[F] 삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+
+ return "[S] 삭제 작업이 정상 처리 되었습니다.";
+ }
+
+ /**지정한 조건에 따라 임대 기업 대장 목록을 조회하여 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 목록
+ */
+ public List getRentEntList(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 정렬 확인
+ if (req.getOrderBy() == null) {
+ if (req.getBy() == null) {
+ req.setOrderBy("REG_DT");
+ } else {
+ req.setOrderBy(CmmnUtil.convertCamelCaseToSnakeCase(req.getBy()));
+ }
+ }
+
+ return rentEntMapper.selectRentEntList(req);
+ }
+
+ /**지정한 조건에 따라 임대 기업 대장 객체들을 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 객체 목록
+ */
+ public List getRentEnts(RentQuery req) {
+ // 삭제 여부 확인
+ if (req.getDelYn() == null) {
+ req.setDelYn("N");
+ }
+ // 정렬 확인
+ if (req.getOrderBy() == null) {
+ req.setOrderBy("RE.ENT_ID DESC");
+ }
+
+ return rentEntMapper.selectRentEnts(req);
+ }
+
+ /**지정한 조건에 따라 임대 기업 대장 목록을 조회하여 반환한다.
+ * @param req 임대 기업 대장 조회 조건
+ * @return 임대 기업 대장 목록
+ */
+ public DataObject getRentEntInfo(RentQuery req) {
+ return rentEntMapper.selectRentEntInfo(req);
+ }
+
+ /**임대 기업 대장 정보를 등록한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public String createRentEnt(RentEnt rentEnt) {
+ // 변수 선언
+ String rtnMsg = ""; // 처리 결과 메시지
+
+ RentQuery req = new RentQuery();
+ req.setSchEntNo(rentEnt.getEntNo());
+ req.setDelYn("N");
+
+ // 임대 기업(TB_RENT_ENT) 정보를 조회한다.
+ DataObject rentEntInfo = rentEntMapper.selectRentEntInfo(req);
+
+ if (rentEntInfo != null) {
+ rtnMsg = "[F] 등록 중 오류가 발생하였습니다. 이미 등록된 [F] 정보가 존재합니다.";
+ return rtnMsg;
+ }
+
+ // 임대기업(TB_RENT_ENT) 대장을 등록한다.
+ int rtnNocs = rentEntMapper.insertRentEnt(rentEnt);
+ if (rtnNocs != 1) {
+ throw new RuntimeException("[F] 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+
+ return "[S] 등록 작업이 정상 처리 되었습니다.";
+ }
+
+ /**임대 기업 대장 정보를 수정한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public String updateRentEnt(RentEnt rentEnt) {
+ // 임대기업(TB_RENT_ENT) 대장을 수정한다.
+ int rtnNocs = rentEntMapper.updateRentEnt(rentEnt);
+ if (rtnNocs != 1) {
+ throw new RuntimeException("[F] 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+
+ return "[S] 수정 작업이 정상 처리 되었습니다.";
+ }
+
+ /**임대 기업 대장 정보를 삭제한다.
+ * @param rentEnt 임대 기업 대장
+ * @return 저장 여부
+ *
저장됐으면 true
+ *
그렇지 않으면 false
+ *
+ */
+ public String removeRentEnt(RentEnt rentEnt) {
+ // 임대기업(TB_RENT_ENT) 대장을 등록한다.
+ int rtnNocs = rentEntMapper.deleteRentEnt(rentEnt);
+ if (rtnNocs != 1) {
+ throw new RuntimeException("[F] 삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
+ }
+
+ return "[S] 삭제 작업이 정상 처리 되었습니다.";
+ }
+
+}
diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/RentEntServiceBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/RentEntServiceBean.java
new file mode 100644
index 00000000..0e2d9271
--- /dev/null
+++ b/src/main/java/cokr/xit/fims/rent/service/bean/RentEntServiceBean.java
@@ -0,0 +1,83 @@
+package cokr.xit.fims.rent.service.bean;
+
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Service;
+
+import cokr.xit.fims.rent.RentEnt;
+import cokr.xit.fims.rent.RentQuery;
+import cokr.xit.fims.rent.UserRentEntMpng;
+import cokr.xit.fims.rent.service.RentEntService;
+import cokr.xit.foundation.component.AbstractServiceBean;
+import cokr.xit.foundation.data.DataObject;
+
+/**임대 기업 대장 서비스 구현체.
+ *
+ *
상세 설명:
+ *
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ * ============ 변경 이력 ============
+ * 2024-07-24 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Controller
+@RequestMapping(name="임대 기업 관리", value=Rent01Controller.CLASS_URL)
+public class Rent01Controller extends ApplicationController {
+
+ public static final String CLASS_URL = "/rent/rent01";
+
+ public class METHOD_URL {
+ public static final String
+ userRentEnterpriseMappingMain = "/010/main.do" // 사용자 임대 기업 매핑 관리 메인 화면
+ , getUserRentEnterpriseMappingList = "/010/list.do" // 사용자 임대 기업 매핑 대장 목록 조회
+ , removeUserRentEnterpriseMapping = "/010/removeMpng.do" // 사용자 임대 기업 매핑 대장 삭제
+ , getUserRentEnterpriseMappingInfo = "/020/info.do" // 사용자 임대 기업 매핑 대장 상세 조회
+ , createUserRentEnterpriseMapping = "/020/createMpng.do" // 사용자 임대 기업 매핑 대장 등록
+ , getRentEnterpriseList = "/020/list.do" // 임대 기업 대장 목록 조회
+ , removeRentEnterprise = "/020/remove.do" // 임대 기업 대장 삭제
+ , getRentEnterpriseInfo = "/030/info.do" // 임대 기업 대장 상세 조회
+ , createRentEnterprise = "/030/create.do" // 임대 기업 대장 등록
+ , updateRentEnterprise = "/030/update.do" // 임대 기업 대장 수정
+ ;
+ }
+
+ /**임대 기업 대장 서비스*/
+ @Resource(name = "rentEntService")
+ private RentEntService rentEntService;
+
+ /**설정 정보 Bean */
+ @Resource(name = "stngBean")
+ private StngBean stngBean;
+
+ /**임대 기업 대장 관리 메인화면(fims/rent/rent01010-main)을 연다.
+ * 조건없는 {@link #getRentEntList(RentEntQuery) 임대 기업 대장 조회 결과}를 포함시킨다.
+ * @return /rent/rent01010-main
+ */
+ @RequestMapping(name = "사용자 임대기업 대장 메인", value=METHOD_URL.userRentEnterpriseMappingMain)
+ public ModelAndView userRentEnterpriseMappingMain() {
+ ModelAndView mav = new ModelAndView("fims/rent/rent01010-main");
+
+ // 사용자 정보
+ FimsUser fimsUser = (FimsUser)currentUser().getUser();
+
+ return mav
+ .addObject("pageName", "rent01010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
+ .addObject("prefixUrl", CLASS_URL) // prefixUrl
+ .addObject("userId", fimsUser.getId()) // 사용자 ID(USER_ID)
+ .addObject("userAcnt", fimsUser.getAccount()) // 사용자 계정(USER_ACNT)
+ ;
+ }
+
+ /**임대 기업 대장 목록을 조회하여 반환한다.
+ * {@link RentEntService#getRentEntList(RentEntQuery)} 참고
+ * @param req 임대 기업 대장 조회 조건
+ * @return jsonView
+ *
{
+ * "rentEntList": [임대 기업 대장 목록]
+ * "rentEntStart": 임대 기업 대장 목록 시작 인덱스
+ * "rentEntFetch": 한 번에 가져오는 임대 기업 대장 목록 수
+ * "rentEntTotal": 조회 결과 찾은 전체 임대 기업 대장 수
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "사용자 임대기업 대장 조회", value=METHOD_URL.getUserRentEnterpriseMappingList)
+ public ModelAndView getUserRentEnterpriseMappingList(RentQuery req) {
+ if (!"xls".equals(req.getDownload())) {
+ List> result = rentEntService.getUserRentEntMpngList(setFetchSize(req));
+ return setCollectionInfo(new ModelAndView("jsonView"), result, "");
+ } else {
+ // 현재 날짜 구하기
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
+ String dateTime = dateFormat.format(System.currentTimeMillis());
+
+ List cellDefs = fromJson(req.getCellDefs(), CellDef.listType());
+
+ XLSWriter xlsx = new XLSWriter().worksheet(0);
+ Format format = new Format(xlsx);
+ CellStyle center = format.cellStyle(Style.CENTER);
+ CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
+
+ List list = rentEntService.getUserRentEntMpngList(req.setFetchSize(0));
+
+ Map valueMap = new HashMap();
+
+ valueMap.put("사용자계정", format.of("USER_ACNT"));
+ valueMap.put("사용자명", format.of("USER_NM").style(center));
+ valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
+ valueMap.put("기업명", format.of("ENT_NM"));
+ valueMap.put("법인(사업자)번호", format.of("ENT_NO").style(center));
+ valueMap.put("대표자명", format.of("RPRSV_NM").style(center));
+ valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
+ valueMap.put("팩스번호", format.of("ENT_FXNO").style(center));
+ valueMap.put("이메일주소", format.of("ENT_EML_ADDR"));
+ valueMap.put("우편번호", format.of("ENT_ZIP").style(center));
+ valueMap.put("주소", format.of("ENT_ADDR"));
+ valueMap.put("상세주소", format.of("ENT_DTL_ADDR"));
+ valueMap.put("등록일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "REG_DT").style(dateDT));
+ valueMap.put("등록사용자", format.of("RGTR_NM").style(center));
+
+ CellDef.setValues(cellDefs, valueMap);
+
+ xlsx.cell(0, 0).value("임대기업매핑").value(center).merge(0, cellDefs.size() - 1)
+ .cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
+ .cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
+
+ return new ModelAndView("downloadView")
+ .addObject("download", xlsx.getDownloadable().setFilename("임대기업매핑" + "_목록_" + dateTime + ".xlsx"));
+ }
+ }
+
+ /**사용자 임대 기업 대장 상세 정보 화면(fims/rent/rent01020-info)을 연다.
+ * 조건없는 {@link #getRentEntList(RentEntQuery) 사용자 임대 기업 대장 조회 결과}를 포함시킨다.
+ * @return /rentEnt/rentEnt-main
+ */
+ @Task("CMN")
+ @RequestMapping(name = "사용자 임대기업 상세 정보", value=METHOD_URL.getUserRentEnterpriseMappingInfo)
+ public ModelAndView getUserRentEnterpriseMappingInfo(HttpServletRequest hReq, RentQuery req) {
+ ModelAndView mav = new ModelAndView("fims/rent/rent01020-info");
+
+ return mav
+ .addObject("callPurpose", req.getCallPurpose()) // 호출 용도
+ .addObject("pageName", "rent01020") // jsp pageName
+ .addObject("prefixUrl", CLASS_URL) // prefixUrl
+ .addObject("userId", req.getUserId()) // 사용자 ID
+ .addObject("schEntNo", req.getSchEntNo()) // 기업 (법인/사업자)번호
+ ;
+ }
+
+ /**임대 기업 대장 목록을 조회하여 반환한다.
+ * {@link RentEntService#getRentEntList(RentEntQuery)} 참고
+ * @param req 임대 기업 대장 조회 조건
+ * @return jsonView
+ *
{
+ * "rentEntList": [임대 기업 대장 목록]
+ * "rentEntStart": 임대 기업 대장 목록 시작 인덱스
+ * "rentEntFetch": 한 번에 가져오는 임대 기업 대장 목록 수
+ * "rentEntTotal": 조회 결과 찾은 전체 임대 기업 대장 수
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "임대 기업 대장 조회", value=METHOD_URL.getRentEnterpriseList)
+ public ModelAndView getRentEnterpriseList(RentQuery req) {
+ if (!"xls".equals(req.getDownload())) {
+ List> result = rentEntService.getRentEntList(setFetchSize(req));
+ return setCollectionInfo(new ModelAndView("jsonView"), result, "");
+ } else {
+ // 현재 날짜 구하기
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
+ String dateTime = dateFormat.format(System.currentTimeMillis());
+
+ List cellDefs = fromJson(req.getCellDefs(), CellDef.listType());
+
+ XLSWriter xlsx = new XLSWriter().worksheet(0);
+ Format format = new Format(xlsx);
+ CellStyle center = format.cellStyle(Style.CENTER);
+ CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
+
+ List list = rentEntService.getUserRentEntMpngList(req.setFetchSize(0));
+
+ Map valueMap = new HashMap();
+ valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
+ valueMap.put("기업명", format.of("ENT_NM"));
+ valueMap.put("법인(사업자)번호", format.of("ENT_NO").style(center));
+ valueMap.put("대표자명", format.of("RPRSV_NM").style(center));
+ valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
+ valueMap.put("팩스번호", format.of("ENT_FXNO").style(center));
+ valueMap.put("이메일주소", format.of("ENT_EML_ADDR"));
+ valueMap.put("우편번호", format.of("ENT_ZIP").style(center));
+ valueMap.put("주소", format.of("ENT_ADDR"));
+ valueMap.put("상세주소", format.of("ENT_DTL_ADDR"));
+ valueMap.put("등록일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "REG_DT").style(dateDT));
+ valueMap.put("등록사용자", format.of("RGTR_NM").style(center));
+
+ CellDef.setValues(cellDefs, valueMap);
+
+ xlsx.cell(0, 0).value("임대기업").value(center).merge(0, cellDefs.size() - 1)
+ .cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
+ .cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
+
+ return new ModelAndView("downloadView")
+ .addObject("download", xlsx.getDownloadable().setFilename("임대기업" + "_목록_" + dateTime + ".xlsx"));
+ }
+ }
+
+ /**사용자 임대 기업 매핑를 등록한다.
+ * @param userRentEntMpng 사용자 임대 기업 매핑 정보
+ * @return jsonView
+ *
{
+ * "saved": 등록되었으면 true, 그렇지 않으면 false
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "사용자 임대 기업 매핑 등록", value = METHOD_URL.createUserRentEnterpriseMapping)
+ public ModelAndView createUserRentEnterpriseMapping(UserRentEntMpng userRentEntMpng) {
+ boolean saved = false;
+ String rtnMsg = "";
+
+ // 단건 등록
+ if (userRentEntMpng.getEntIds() == null || userRentEntMpng.getEntIds().length < 1) {
+ rtnMsg = rentEntService.createUserRentEntMpng(userRentEntMpng);
+ } else {
+ // Ids 만큼 반복 등록
+ for (String entId : userRentEntMpng.getEntIds()) {
+ UserRentEntMpng createMpng = new UserRentEntMpng();
+ createMpng.setUserId(userRentEntMpng.getUserId());
+ createMpng.setEntId(entId);
+
+ // 등록 호출
+ rtnMsg = rentEntService.createUserRentEntMpng(createMpng);
+ if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료..
+ saved = false;
+ break;
+ }
+ }
+ }
+
+ if (rtnMsg.contains("[S]")) {
+ saved = true;
+ } else {
+ saved = false;
+ }
+
+ return new ModelAndView("jsonView")
+ .addObject("saved", saved)
+ .addObject("rtnMsg", rtnMsg);
+ }
+
+ /**지정한 사용자 임대 기업 매핑를 제거한다.
+ * @param userRentEntMpngIDs 사용자 임대 기업 매핑 아이디
+ * @return jsonView
+ *
{
+ * "affected": 저장된 정보수
+ * "saved": 저장되었으면 true, 그렇지 않으면 false
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "사용자 임대 기업 매핑 제거", value = METHOD_URL.removeUserRentEnterpriseMapping)
+ public ModelAndView removeUserRentEnterpriseMapping(UserRentEntMpng userRentEntMpng) {
+ boolean saved = false;
+ String rtnMsg = rentEntService.removeUserRentEntMpng(userRentEntMpng);
+
+ if (rtnMsg.contains("[S]")) {
+ saved = true;
+ } else {
+ saved = false;
+ }
+
+ return new ModelAndView("jsonView")
+ .addObject("saved", saved)
+ .addObject("rtnMsg", rtnMsg);
+ }
+
+ /**임대 기업 대장 상세 정보 화면(fims/rent/rent01030-info)을 연다.
+ * 조건없는 {@link #getRentEntList(RentEntQuery) 임대 기업 대장 조회 결과}를 포함시킨다.
+ * @return /rentEnt/rentEnt-main
+ */
+ @Task("CMN")
+ @RequestMapping(name = "임대기업 상세 정보", value=METHOD_URL.getRentEnterpriseInfo)
+ public ModelAndView getRentEnterpriseInfo(HttpServletRequest hReq, RentQuery req) {
+ boolean json = jsonResponse();
+ ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent01030-info");
+
+ // View(jsp)에서 사용할 공통코드를 조회
+ Map> commonCodes = getCodesOf("FIM088");
+
+ // 수정(update)으로 호출
+ if (req.getCallPurpose().equals("update")) {
+ DataObject info = rentEntService.getRentEntInfo(req); // 상세 정보 조회
+ mav.addObject("Info", json ? info : toJson(info)); // 정보
+ }
+
+ return mav
+ .addObject("callPurpose", req.getCallPurpose()) // 호출 용도
+ .addObject("pageName", "rent01030") // jsp pageName
+ .addObject("prefixUrl", CLASS_URL) // prefixUrl
+ .addObject("FIM088List", commonCodes.get("FIM088")) // 기업 구분 코드(ENT_SE_CD)
+ ;
+ }
+
+ /**임대 기업 대장를 등록한다.
+ * @param rentEnt 임대 기업 대장 정보
+ * @return jsonView
+ *
{
+ * "saved": 등록되었으면 true, 그렇지 않으면 false
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "임대기업 대장 등록", value=METHOD_URL.createRentEnterprise)
+ public ModelAndView createRentEnterprise(RentEnt rentEnt) {
+ boolean saved = false;
+ String rtnMsg = rentEntService.createRentEnt(rentEnt);
+
+ if (rtnMsg.contains("[S]")) {
+ saved = true;
+ } else {
+ saved = false;
+ }
+
+ return new ModelAndView("jsonView")
+ .addObject("saved", saved)
+ .addObject("rtnMsg", rtnMsg);
+ }
+
+ /**임대 기업 대장 정보를 수정한다.
+ * @param rentEnt 임대 기업 대장 정보
+ * @return jsonView
+ *
{
+ * "saved": 수정되었으면 true, 그렇지 않으면 false
+ * }
+ */
+ @Task("CMN")
+ @RequestMapping(name = "임대기업 대장 수정", value=METHOD_URL.updateRentEnterprise)
+ public ModelAndView updateRentEnterprise(RentEnt rentEnt) {
+ boolean saved = false;
+ String rtnMsg = rentEntService.updateRentEnt(rentEnt);
+
+ if (rtnMsg.contains("[S]")) {
+ saved = true;
+ } else {
+ saved = false;
+ }
+
+ return new ModelAndView("jsonView")
+ .addObject("saved", saved)
+ .addObject("rtnMsg", rtnMsg);
+ }
+
+ /**지정한 임대 기업 대장를 제거한다.
+ * @param rentEntIDs 임대 기업 대장 아이디
+ * @return jsonView
+ *
{
+ * "affected": 저장된 정보수
+ * "saved": 저장되었으면 true, 그렇지 않으면 false
+ * }
+ * ============ 변경 이력 ============
+ * 2024-08-27 JoJH 최초 작성
+ * ================================
+ *
+ */
+@Controller
+@RequestMapping(name = "임대차계약 운전자 정보", value=Rent02Controller.CLASS_URL)
+public class Rent02Controller extends ApplicationController {
+
+ public static final String CLASS_URL = "/rent/rent02";
+
+ public class METHOD_URL {
+ public static final String
+ leaseContractMain = "/010/main.do" // 임대차계약 메인 화면
+ , getLeaseContractList = "/010/list.do" // 임대차계약 대장 목록 조회
+ ;
+ }
+
+ /**임대차계약 대장 서비스*/
+ @Resource(name = "lsctService")
+ private LsctService lsctService;
+
+ /**임차인 정보 서비스*/
+ @Resource(name = "hirerService")
+ private HirerService hirerService;
+
+ /**임대 기업 대장 서비스*/
+ @Resource(name = "rentEntService")
+ private RentEntService rentEntService;
+
+ /**설정 정보 Bean */
+ @Resource(name = "stngBean")
+ private StngBean stngBean;
+
+ /**임대차계약 대장 관리 메인화면(lsct/lsct-main)을 연다.
+ * 조건없는 {@link #getLsctList(LsctQuery) 임대차계약 대장 조회 결과}를 포함시킨다.
+ * @return /lsct/lsct-main
+ */
+ @RequestMapping(name = "임대차계약 대장 메인", value=METHOD_URL.leaseContractMain)
+ public ModelAndView leaseContractMain() {
+ ModelAndView mav = new ModelAndView("fims/rent/rent02010-main");
+
+ // 사용자 정보
+ FimsUser fimsUser = (FimsUser)currentUser().getUser();
+
+ // 사용자와 매핑되어있는 임대업체 정보 조회
+ RentQuery req = new RentQuery();
+ req.setUserId(fimsUser.getId());
+
+ List entNolist = rentEntService.getUserRentEntMpngs(req);
+
+ return mav
+ .addObject("pageName", "rent02010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
+ .addObject("prefixUrl", CLASS_URL) // prefixUrl
+ .addObject("userId", fimsUser.getId()) // 사용자 ID(USER_ID)
+ .addObject("entNoList", entNolist) // 임대업체 목록
+ ;
+ }
+
+ /**임대차계약 대장 목록을 조회하여 반환한다.
+ * {@link LsctService#getLsctList(LsctQuery)} 참고
+ * @param req 임대차계약 대장 조회 조건
+ * @return jsonView
+ *
{
+ * "lsctList": [임대차계약 대장 목록]
+ * "lsctStart": 임대차계약 대장 목록 시작 인덱스
+ * "lsctFetch": 한 번에 가져오는 임대차계약 대장 목록 수
+ * "lsctTotal": 조회 결과 찾은 전체 임대차계약 대장 수
+ * }