From ecee543fbebc4fe7cadbb01cb4cdd854f6ea2bf1 Mon Sep 17 00:00:00 2001 From: "xitpc\\xituser" Date: Mon, 30 Sep 2024 14:16:08 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9E=84=EB=8C=80=EC=B0=A8=EA=B3=84=EC=95=BD?= =?UTF-8?q?=20=EC=88=98=EC=A0=95.=20=20=20-=20=EC=9E=84=EC=B0=A8=EC=9D=B8?= =?UTF-8?q?=20=ED=85=8C=EC=9D=B4=EB=B8=94=20->=20=EC=9E=84=EB=8C=80?= =?UTF-8?q?=EC=B0=A8=EA=B3=84=EC=95=BD=20=ED=85=8C=EC=9D=B4=EB=B8=94?= =?UTF-8?q?=EB=A1=9C=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xit/fims/rent/{Hirer.java => Lsct.java} | 12 +- .../java/cokr/xit/fims/rent/LsctMpng.java | 20 +- .../java/cokr/xit/fims/rent/RentQuery.java | 20 +- .../cokr/xit/fims/rent/dao/HirerMapper.java | 89 -------- .../cokr/xit/fims/rent/dao/LsctMapper.java | 89 ++++++++ .../xit/fims/rent/service/HirerService.java | 76 ------- .../xit/fims/rent/service/LsctService.java | 76 +++++++ .../rent/service/bean/HirerServiceBean.java | 68 ------- .../bean/{HirerBean.java => LsctBean.java} | 111 +++++----- .../fims/rent/service/bean/LsctMpngBean.java | 20 +- .../rent/service/bean/LsctServiceBean.java | 68 +++++++ .../fims/rent/service/bean/RentEntBean.java | 17 +- .../xit/fims/rent/web/Rent01Controller.java | 5 +- .../xit/fims/rent/web/Rent02Controller.java | 192 +++++++++--------- .../{hirer-mapper.xml => lsct-mapper.xml} | 157 +++++++------- .../sql/mapper/fims/rent/lsctMpng-mapper.xml | 34 ++-- 16 files changed, 522 insertions(+), 532 deletions(-) rename src/main/java/cokr/xit/fims/rent/{Hirer.java => Lsct.java} (90%) delete mode 100644 src/main/java/cokr/xit/fims/rent/dao/HirerMapper.java create mode 100644 src/main/java/cokr/xit/fims/rent/dao/LsctMapper.java delete mode 100644 src/main/java/cokr/xit/fims/rent/service/HirerService.java create mode 100644 src/main/java/cokr/xit/fims/rent/service/LsctService.java delete mode 100644 src/main/java/cokr/xit/fims/rent/service/bean/HirerServiceBean.java rename src/main/java/cokr/xit/fims/rent/service/bean/{HirerBean.java => LsctBean.java} (59%) create mode 100644 src/main/java/cokr/xit/fims/rent/service/bean/LsctServiceBean.java rename src/main/resources/sql/mapper/fims/rent/{hirer-mapper.xml => lsct-mapper.xml} (62%) diff --git a/src/main/java/cokr/xit/fims/rent/Hirer.java b/src/main/java/cokr/xit/fims/rent/Lsct.java similarity index 90% rename from src/main/java/cokr/xit/fims/rent/Hirer.java rename to src/main/java/cokr/xit/fims/rent/Lsct.java index e85f66d6..786749c9 100644 --- a/src/main/java/cokr/xit/fims/rent/Hirer.java +++ b/src/main/java/cokr/xit/fims/rent/Lsct.java @@ -5,19 +5,19 @@ import lombok.Getter; import lombok.Setter; /** - * 임차인 정보 + * 임대차계약 정보 * @author JoJH */ @Getter @Setter -public class Hirer extends AbstractEntity { +public class Lsct extends AbstractEntity { public static String INF_TYPE = "120"; // 임대차계약 첨부파일 /** - * 임차인 ID + * 임대차계약 ID */ - private String hirerId; + private String lsctId; /** * 기업 ID @@ -110,9 +110,9 @@ public class Hirer extends AbstractEntity { private String delRsn; /** - * 임차인 IDs + * 임대차계약 IDs */ - private String[] hirerIds; + private String[] lsctIds; /** * 첨부파일 IDs diff --git a/src/main/java/cokr/xit/fims/rent/LsctMpng.java b/src/main/java/cokr/xit/fims/rent/LsctMpng.java index a868aaa1..8de9596b 100644 --- a/src/main/java/cokr/xit/fims/rent/LsctMpng.java +++ b/src/main/java/cokr/xit/fims/rent/LsctMpng.java @@ -17,6 +17,16 @@ public class LsctMpng extends AbstractEntity { */ private String lsctMpngId; + /** + * 임대차계약 ID + */ + private String lsctId; + + /** + * 기업 ID + */ + private String entId; + /** * 단속 ID */ @@ -62,16 +72,6 @@ public class LsctMpng extends AbstractEntity { */ private String rtpyrNm; - /** - * 기업 ID - */ - private String entId; - - /** - * 임차인 ID - */ - private String hirerId; - /** * 임차인 구분 코드 */ diff --git a/src/main/java/cokr/xit/fims/rent/RentQuery.java b/src/main/java/cokr/xit/fims/rent/RentQuery.java index 0d4cd219..929f5537 100644 --- a/src/main/java/cokr/xit/fims/rent/RentQuery.java +++ b/src/main/java/cokr/xit/fims/rent/RentQuery.java @@ -22,8 +22,8 @@ public class RentQuery extends CmmnQuery { private String userId; // 사용자 ID private String[] entIds; // 기업 IDs private String entId; // 기업 ID - private String[] hirerIds; // 임차인 IDs - private String hirerId; // 임차인 ID + private String[] lsctIds; // 임대차계약 IDs + private String lsctId; // 임대차계약 ID private String[] lsctMpngIds; // 임대차계약 매핑 IDs private String lsctMpngId; // 임대차계약 매핑 ID private String[] aprvIds; // 승인 IDs @@ -96,20 +96,20 @@ public class RentQuery extends CmmnQuery { this.entId = entId; } - public String[] getHirerIds() { - return ifEmpty(hirerIds, () -> null); + public String[] getLsctIds() { + return ifEmpty(lsctIds, () -> null); } - public void setHirerIds(String... hirerIds) { - this.hirerIds = hirerIds; + public void setLsctIds(String... lsctIds) { + this.lsctIds = lsctIds; } - public String getHirerId() { - return ifEmpty(hirerId, () -> null); + public String getLsctId() { + return ifEmpty(lsctId, () -> null); } - public void setHirerId(String hirerId) { - this.hirerId = hirerId; + public void setLsctId(String lsctId) { + this.lsctId = lsctId; } public String[] getLsctMpngIds() { diff --git a/src/main/java/cokr/xit/fims/rent/dao/HirerMapper.java b/src/main/java/cokr/xit/fims/rent/dao/HirerMapper.java deleted file mode 100644 index f6fc31a2..00000000 --- a/src/main/java/cokr/xit/fims/rent/dao/HirerMapper.java +++ /dev/null @@ -1,89 +0,0 @@ -package cokr.xit.fims.rent.dao; - -import java.util.List; - -import org.egovframe.rte.psl.dataaccess.mapper.Mapper; - -import cokr.xit.foundation.component.AbstractMapper; -import cokr.xit.foundation.data.DataObject; - -import cokr.xit.fims.rent.Hirer; -import cokr.xit.fims.rent.RentQuery; - -/** 임차인 정보 정보 DAO - * - *

상세 설명: - * - *

- * ============ 변경 이력 ============
- * 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); - - default DataObject selectHirerInfo(RentQuery req) { - // 삭제 여부 확인 - if (req.getDelYn() == null) { - req.setDelYn("N"); - } - // 기본 정렬 - if (req.getOrderBy() == null) { - req.setOrderBy("H.HIRER_ID DESC"); - } - - List hirers = selectHirers(req); - - return !hirers.isEmpty() ? hirers.get(0) : null; - } - - /**임차인 대장 정보를 등록한다. - * @param params 파라미터 - *
  • "hirer" - 임차인 대장
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
- * @return 저장된 정보수 - */ - int insertHirer(Hirer hirer); - - /**임차인 대장 정보를 수정한다. - * @param params 파라미터 - *
  • "hirer" - 임차인 대장
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
- * @return 저장된 정보수 - */ - int updateHirer(Hirer hirer); - - /**임차인 대장 첨부파일수 정보를 수정한다. - * @param params 파라미터 - *
  • "hirer" - 임차인 정보
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
- * @return 저장된 정보수 - */ - int updateAtchFileCnt(Hirer hirer); - - /**지정한 임차인 대장을 삭제한다. - * @param params 파라미터 - *
  • "hirer" - 임차인 대장
  • - *
  • "currentUser" - 현재 접속한 사용자
  • - *
- * @return 저장된 정보수 - */ - int deleteHirer(Hirer hirer); - -} diff --git a/src/main/java/cokr/xit/fims/rent/dao/LsctMapper.java b/src/main/java/cokr/xit/fims/rent/dao/LsctMapper.java new file mode 100644 index 00000000..6cdf6c08 --- /dev/null +++ b/src/main/java/cokr/xit/fims/rent/dao/LsctMapper.java @@ -0,0 +1,89 @@ +package cokr.xit.fims.rent.dao; + +import java.util.List; + +import org.egovframe.rte.psl.dataaccess.mapper.Mapper; + +import cokr.xit.foundation.component.AbstractMapper; +import cokr.xit.foundation.data.DataObject; + +import cokr.xit.fims.rent.Lsct; +import cokr.xit.fims.rent.RentQuery; + +/** 임대차계약 정보 정보 DAO + * + *

상세 설명: + * + *

+ * ============ 변경 이력 ============
+ * 2024-08-27   JoJH 최초 작성
+ * ================================
+ * 
+ */ +@Mapper("lsctMapper") +public interface LsctMapper extends AbstractMapper { + + /**지정한 조건에 따라 임대차계약 정보 목록을 조회하여 반환한다.
+ * @param req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 목록 + */ + List selectLsctList(RentQuery req); + + /**지정한 조건에 따라 임대차계약 정보 객체들을 반환한다. + * @param req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 객체 목록 + */ + List selectLscts(RentQuery req); + + default DataObject selectLsctInfo(RentQuery req) { + // 삭제 여부 확인 + if (req.getDelYn() == null) { + req.setDelYn("N"); + } + // 기본 정렬 + if (req.getOrderBy() == null) { + req.setOrderBy("L.LSCT_ID DESC"); + } + + List lscts = selectLscts(req); + + return !lscts.isEmpty() ? lscts.get(0) : null; + } + + /**임대차계약 대장 정보를 등록한다. + * @param params 파라미터 + *
  • "lsct" - 임대차계약 대장
  • + *
  • "currentUser" - 현재 접속한 사용자
  • + *
+ * @return 저장된 정보수 + */ + int insertLsct(Lsct lsct); + + /**임대차계약 대장 정보를 수정한다. + * @param params 파라미터 + *
  • "lsct" - 임대차계약 대장
  • + *
  • "currentUser" - 현재 접속한 사용자
  • + *
+ * @return 저장된 정보수 + */ + int updateLsct(Lsct lsct); + + /**임대차계약 대장 첨부파일수 정보를 수정한다. + * @param params 파라미터 + *
  • "lsct" - 임대차계약 정보
  • + *
  • "currentUser" - 현재 접속한 사용자
  • + *
+ * @return 저장된 정보수 + */ + int updateAtchFileCnt(Lsct lsct); + + /**지정한 임대차계약 대장을 삭제한다. + * @param params 파라미터 + *
  • "lsct" - 임대차계약 대장
  • + *
  • "currentUser" - 현재 접속한 사용자
  • + *
+ * @return 저장된 정보수 + */ + int deleteLsct(Lsct lsct); + +} diff --git a/src/main/java/cokr/xit/fims/rent/service/HirerService.java b/src/main/java/cokr/xit/fims/rent/service/HirerService.java deleted file mode 100644 index 82994d9a..00000000 --- a/src/main/java/cokr/xit/fims/rent/service/HirerService.java +++ /dev/null @@ -1,76 +0,0 @@ -package cokr.xit.fims.rent.service; - -import java.util.List; - -import cokr.xit.foundation.data.DataObject; -import cokr.xit.base.file.FileInfo; -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 req 임차인 정보 조회 조건 - * @return 임차인 정보 객체 목록 - */ - DataObject getHirerInfo(RentQuery req); - - /**임차인 대장 정보를 등록한다. - * @param hirer 임차인 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - String createHirer(Hirer hirer, List fileInfoList); - - /**임차인 대장 정보를 수정한다. - * @param hirer 임차인 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - String updateHirer(Hirer hirer, List fileInfoList); - - /**임차인 대장 첨부파일 정보를 삭제한다. - * @param hirer 임차인 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - String removeAtchFile(Hirer hirer); - - /**임차인 대장 정보를 삭제한다. - * @param hirer 임차인 대장 - * @return 저장 여부 - *
  • 저장됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - String removeHirer(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..76e74294 --- /dev/null +++ b/src/main/java/cokr/xit/fims/rent/service/LsctService.java @@ -0,0 +1,76 @@ +package cokr.xit.fims.rent.service; + +import java.util.List; + +import cokr.xit.foundation.data.DataObject; +import cokr.xit.base.file.FileInfo; +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 req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 객체 목록 + */ + DataObject getLsctInfo(RentQuery req); + + /**임대차계약 대장 정보를 등록한다. + * @param lsct 임대차계약 대장 + * @return 저장 여부 + *
  • 저장됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + String createLsct(Lsct lsct, List fileInfoList); + + /**임대차계약 대장 정보를 수정한다. + * @param lsct 임대차계약 대장 + * @return 저장 여부 + *
  • 저장됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + String updateLsct(Lsct lsct, List fileInfoList); + + /**임대차계약 대장 첨부파일 정보를 삭제한다. + * @param lsct 임대차계약 대장 + * @return 저장 여부 + *
  • 저장됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + String removeAtchFile(Lsct lsct); + + /**임대차계약 대장 정보를 삭제한다. + * @param lsct 임대차계약 대장 + * @return 저장 여부 + *
  • 저장됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + String removeLsct(Lsct lsct); + +} diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/HirerServiceBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/HirerServiceBean.java deleted file mode 100644 index 6282e665..00000000 --- a/src/main/java/cokr/xit/fims/rent/service/bean/HirerServiceBean.java +++ /dev/null @@ -1,68 +0,0 @@ -package cokr.xit.fims.rent.service.bean; - -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Service; - -import cokr.xit.foundation.component.AbstractServiceBean; -import cokr.xit.foundation.data.DataObject; -import cokr.xit.base.file.FileInfo; -import cokr.xit.fims.rent.Hirer; -import cokr.xit.fims.rent.RentQuery; -import cokr.xit.fims.rent.service.HirerService; - -/**임차인 정보 서비스 구현체. - * - *

상세 설명: - * - *

- * ============ 변경 이력 ============
- * 2024-08-27   JoJH 최초 작성
- * ================================
- * 
- */ -@Service("hirerService") -public class HirerServiceBean extends AbstractServiceBean implements HirerService { - - /** 임차인 정보 정보 Bean */ - @Resource(name = "hirerBean") - private HirerBean hirerBean; - - @Override - public List getHirerList(RentQuery req) { - return hirerBean.getHirerList(req); - } - - @Override - public List getHirers(RentQuery req) { - return hirerBean.getHirers(req); - } - - @Override - public DataObject getHirerInfo(RentQuery req) { - return hirerBean.getHirerInfo(req); - } - - @Override - public String createHirer(Hirer hirer, List fileInfoList) { - return hirerBean.createHirer(hirer, fileInfoList); - } - - @Override - public String updateHirer(Hirer hirer, List fileInfoList) { - return hirerBean.updateHirer(hirer, fileInfoList); - } - - @Override - public String removeAtchFile(Hirer hirer) { - return hirerBean.removeAtchFile(hirer); - } - - @Override - public String removeHirer(Hirer hirer) { - return hirerBean.removeHirer(hirer); - } - -} diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/HirerBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/LsctBean.java similarity index 59% rename from src/main/java/cokr/xit/fims/rent/service/bean/HirerBean.java rename to src/main/java/cokr/xit/fims/rent/service/bean/LsctBean.java index 8f3d068d..b902936f 100644 --- a/src/main/java/cokr/xit/fims/rent/service/bean/HirerBean.java +++ b/src/main/java/cokr/xit/fims/rent/service/bean/LsctBean.java @@ -11,10 +11,9 @@ import cokr.xit.foundation.data.DataObject; import cokr.xit.base.file.FileInfo; import cokr.xit.base.file.service.FileQuery; import cokr.xit.base.file.service.bean.FileBean; -import cokr.xit.fims.crdn.Crdn; -import cokr.xit.fims.rent.Hirer; +import cokr.xit.fims.rent.Lsct; import cokr.xit.fims.rent.RentQuery; -import cokr.xit.fims.rent.dao.HirerMapper; +import cokr.xit.fims.rent.dao.LsctMapper; /**임차인 정보 정보 관리 Bean * @@ -26,68 +25,68 @@ import cokr.xit.fims.rent.dao.HirerMapper; * ================================ * */ -@Component("hirerBean") -public class HirerBean extends AbstractBean { +@Component("lsctBean") +public class LsctBean extends AbstractBean { - /** 임차인 정보 정보 DAO */ - @Resource(name = "hirerMapper") - private HirerMapper hirerMapper; + /** 임대차계약 정보 정보 DAO */ + @Resource(name = "lsctMapper") + private LsctMapper lsctMapper; /** 첨부파일 Bean */ @Resource(name="fileBean") private FileBean fileBean; - /**지정한 조건에 따라 임차인 대장 목록을 조회하여 반환한다. - * @param req 임차인 정보 조회 조건 - * @return 임차인 정보 목록 + /**지정한 조건에 따라 임대차계약 대장 목록을 조회하여 반환한다. + * @param req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 목록 */ - public List getHirerList(RentQuery req) { - return hirerMapper.selectHirerList(req); + public List getLsctList(RentQuery req) { + return lsctMapper.selectLsctList(req); } - /**지정한 조건에 따라 임차인 대장 객체들을 반환한다. - * @param req 임차인 정보 조회 조건 - * @return 임차인 정보 객체 목록 + /**지정한 조건에 따라 임대차계약 대장 객체들을 반환한다. + * @param req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 객체 목록 */ - public List getHirers(RentQuery req) { - return hirerMapper.selectHirers(req); + public List getLscts(RentQuery req) { + return lsctMapper.selectLscts(req); } - /**지정한 조건에 따라 임차인 상세 정보 객체들을 반환한다. - * @param req 임차인 정보 조회 조건 - * @return 임차인 정보 객체 목록 + /**지정한 조건에 따라 임대차계약 상세 정보 객체들을 반환한다. + * @param req 임대차계약 정보 조회 조건 + * @return 임대차계약 정보 객체 목록 */ - public DataObject getHirerInfo(RentQuery req) { - return hirerMapper.selectHirerInfo(req); + public DataObject getLsctInfo(RentQuery req) { + return lsctMapper.selectLsctInfo(req); } - /**임차인 대장 정보를 등록한다. - * @param hirer 임차인 대장 + /**임대차계약 대장 정보를 등록한다. + * @param lsct 임대차계약 대장 * @return 저장 여부 *
  • 저장됐으면 true
  • *
  • 그렇지 않으면 false
  • *
*/ - public String createHirer(Hirer hirer, List fileInfoList) { + public String createLsct(Lsct lsct, List fileInfoList) { // 변수 선언 int rtnNocs = -1; // 처리 결과 건수 // 첨부파일 갯수 if (fileInfoList != null && !fileInfoList.isEmpty()) { - hirer.setAtchFileCnt(fileInfoList.size()); + lsct.setAtchFileCnt(fileInfoList.size()); } else { - hirer.setAtchFileCnt(0); + lsct.setAtchFileCnt(0); } - // 임차인(TB_HIRER) 대장을 등록한다. - rtnNocs = hirerMapper.insertHirer(hirer); + // 임대차계약(TB_LSCT) 대장을 등록한다. + rtnNocs = lsctMapper.insertLsct(lsct); if (rtnNocs != 1) { throw new RuntimeException("[F] 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } // 파일 첨부하기 if (fileInfoList != null && !fileInfoList.isEmpty()) { - fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Hirer.INF_TYPE).setInfoKey(hirer.getHirerId())); + fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Lsct.INF_TYPE).setInfoKey(lsct.getLsctId())); fileBean.create(fileInfoList); } @@ -95,24 +94,24 @@ public class HirerBean extends AbstractBean { return "[S] 작업이 정상 처리 되었습니다."; } - /**임차인 대장 정보를 수정한다. - * @param hirer 임차인 대장 + /**임대차계약 대장 정보를 수정한다. + * @param lsct 임대차계약 대장 * @return 저장 여부 *
  • 저장됐으면 true
  • *
  • 그렇지 않으면 false
  • *
*/ - public String updateHirer(Hirer hirer, List fileInfoList) { + public String updateLsct(Lsct lsct, List fileInfoList) { // 첨부파일 수정 if (fileInfoList != null && !fileInfoList.isEmpty()) { - fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Hirer.INF_TYPE) - .setInfoKey(hirer.getHirerId())); + fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Lsct.INF_TYPE) + .setInfoKey(lsct.getLsctId())); fileBean.create(fileInfoList); // 파일 등록 // 임차인 ID로 파일(TB_FILE) 정보 조회 - List fileList = fileBean.getFileList(new FileQuery().setInfoType(Hirer.INF_TYPE) - .setInfoKeys(hirer.getHirerId()) + List fileList = fileBean.getFileList(new FileQuery().setInfoType(Lsct.INF_TYPE) + .setInfoKeys(lsct.getLsctId()) .setOrderBy("FILE_ID")); if (fileList != null && fileList.size() > 0) { @@ -126,11 +125,11 @@ public class HirerBean extends AbstractBean { } // 첨부파일 갯수 - hirer.setAtchFileCnt(fileList.size()); + lsct.setAtchFileCnt(fileList.size()); } - // 임차인(TB_HIRER) 대장을 수정한다. - int rtnNocs = hirerMapper.updateHirer(hirer); + // 임대차계약(TB_LSCT) 대장을 수정한다. + int rtnNocs = lsctMapper.updateLsct(lsct); if (rtnNocs != 1) { throw new RuntimeException("[F] 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -138,27 +137,27 @@ public class HirerBean extends AbstractBean { return "[S] 작업이 정상 처리 되었습니다."; } - /**임차인 대장 첨부파일 정보를 삭제한다. - * @param hirer 임차인 대장 + /**임대차계약 대장 첨부파일 정보를 삭제한다. + * @param lsct 임대차계약 대장 * @return 저장 여부 *
  • 저장됐으면 true
  • *
  • 그렇지 않으면 false
  • *
*/ - public String removeAtchFile(Hirer hirer) { + public String removeAtchFile(Lsct lsct) { // 첨부파일 삭제 - fileBean.remove(hirer.getFileIDs()); + fileBean.remove(lsct.getFileIDs()); - // 임차인 ID로 파일(TB_FILE) 정보 조회 - List fileList = fileBean.getFileList(new FileQuery().setInfoType(Hirer.INF_TYPE) - .setInfoKeys(hirer.getHirerId()) + // 임대차계약 ID로 파일(TB_FILE) 정보 조회 + List fileList = fileBean.getFileList(new FileQuery().setInfoType(Lsct.INF_TYPE) + .setInfoKeys(lsct.getLsctIds()) .setOrderBy("FILE_ID")); // 첨부파일 갯수 - hirer.setAtchFileCnt(fileList.size()); + lsct.setAtchFileCnt(fileList.size()); - // 임차인(TB_HIRER) 대장에 첨부파일수를 수정한다. - int rtnNocs = hirerMapper.updateAtchFileCnt(hirer); + // 임대차계약(TB_LSCT) 대장에 첨부파일수를 수정한다. + int rtnNocs = lsctMapper.updateAtchFileCnt(lsct); if (rtnNocs != 1) { throw new RuntimeException("[F] 파일삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } @@ -166,16 +165,16 @@ public class HirerBean extends AbstractBean { return "[S] 작업이 정상 처리 되었습니다."; } - /**임차인 대장 정보를 삭제한다. - * @param hirer 임차인 대장 + /**임대차계약 대장 정보를 삭제한다. + * @param lsct 임대차계약 대장 * @return 저장 여부 *
  • 저장됐으면 true
  • *
  • 그렇지 않으면 false
  • *
*/ - public String removeHirer(Hirer hirer) { - // 임차인(TB_HIRER) 대장을 삭제한다. - int rtnNocs = hirerMapper.deleteHirer(hirer); + public String removeLsct(Lsct lsct) { + // 임대차계약(TB_LSCT) 대장을 삭제한다. + int rtnNocs = lsctMapper.deleteLsct(lsct); if (rtnNocs < 1) { throw new RuntimeException("[F] 삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } 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 3484e500..a2639404 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 @@ -28,7 +28,7 @@ import cokr.xit.fims.rent.LsctMpng; import cokr.xit.fims.rent.LsctAprv; import cokr.xit.fims.rent.RentQuery; import cokr.xit.fims.rent.dao.FinSysFtpMapper; -import cokr.xit.fims.rent.dao.HirerMapper; +import cokr.xit.fims.rent.dao.LsctMapper; import cokr.xit.fims.rent.dao.LsctAprvMapper; import cokr.xit.fims.rent.dao.LsctMpngMapper; import cokr.xit.fims.rent.dao.RentEntMapper; @@ -60,9 +60,9 @@ public class LsctMpngBean extends AbstractBean { @Resource(name = "rentEntMapper") private RentEntMapper rentEntMapper; - /** 임차인 정보 정보 DAO */ - @Resource(name = "hirerMapper") - private HirerMapper hirerMapper; + /** 임대차계약 정보 정보 DAO */ + @Resource(name = "lsctMapper") + private LsctMapper lsctMapper; /** 파일 정보 Bean */ @Resource(name = "fileBean") @@ -391,7 +391,7 @@ public class LsctMpngBean extends AbstractBean { RentQuery req = new RentQuery(); req.setCrdnId(lsctMpng.getCrdnId()); // 단속 ID req.setEntId(lsctMpng.getEntId()); // 기업 ID - req.setHirerId(lsctMpng.getHirerId()); // 임차인 ID + req.setLsctId(lsctMpng.getLsctId()); // 임대차계약 ID req.setDelYn("N"); // 삭제 여부 // 단속(TB_CRDN) 대장 조회 @@ -410,17 +410,17 @@ public class LsctMpngBean extends AbstractBean { // 임대 기업 자료가 없다면 종료.. if (rentEntInfo == null) { - rtnMsg = "[F] 작업 중 임대 기업 자료가 존재하지 않습니다."; + rtnMsg = "[F] 작업 중 임대기업 자료가 존재하지 않습니다."; return rtnMsg; } // 임차인(TB_HIRER) 대장 조회 - req.setOrderBy("H.HIRER_ID DESC"); - DataObject hirerInfo = hirerMapper.selectHirerInfo(req); + req.setOrderBy("L.LSCT_ID DESC"); + DataObject lsctInfo = lsctMapper.selectLsctInfo(req); // 임차인 자료가 없다면 종료.. - if (hirerInfo == null) { - rtnMsg = "[F] 작업 중 임차인 자료가 존재하지 않습니다."; + if (lsctInfo == null) { + rtnMsg = "[F] 작업 중 임대차계약 자료가 존재하지 않습니다."; return rtnMsg; } diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/LsctServiceBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/LsctServiceBean.java new file mode 100644 index 00000000..8e31b7f5 --- /dev/null +++ b/src/main/java/cokr/xit/fims/rent/service/bean/LsctServiceBean.java @@ -0,0 +1,68 @@ +package cokr.xit.fims.rent.service.bean; + +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Service; + +import cokr.xit.foundation.component.AbstractServiceBean; +import cokr.xit.foundation.data.DataObject; +import cokr.xit.base.file.FileInfo; +import cokr.xit.fims.rent.Lsct; +import cokr.xit.fims.rent.RentQuery; +import cokr.xit.fims.rent.service.LsctService; + +/**임차인 정보 서비스 구현체. + * + *

상세 설명: + * + *

+ * ============ 변경 이력 ============
+ * 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 DataObject getLsctInfo(RentQuery req) { + return lsctBean.getLsctInfo(req); + } + + @Override + public String createLsct(Lsct lsct, List fileInfoList) { + return lsctBean.createLsct(lsct, fileInfoList); + } + + @Override + public String updateLsct(Lsct lsct, List fileInfoList) { + return lsctBean.updateLsct(lsct, fileInfoList); + } + + @Override + public String removeAtchFile(Lsct lsct) { + return lsctBean.removeAtchFile(lsct); + } + + @Override + public String removeLsct(Lsct lsct) { + return lsctBean.removeLsct(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 index 8c580221..783be966 100644 --- a/src/main/java/cokr/xit/fims/rent/service/bean/RentEntBean.java +++ b/src/main/java/cokr/xit/fims/rent/service/bean/RentEntBean.java @@ -103,7 +103,7 @@ public class RentEntBean extends AbstractBean { if (userRentEntMpngInfo != null) { rtnMsg = "[F] 등록 작업 중 오류가 발생하였습니다.
이미 등록된 매핑 정보가 존재합니다." - + "

" + "법인(사업자)번호 : " + userRentEntMpngInfo.string("ENT_NO") + "

";; + + "

" + "법인(사업자)번호 : " + userRentEntMpngInfo.string("ENT_REG_NO") + "

";; return rtnMsg; } @@ -189,6 +189,12 @@ public class RentEntBean extends AbstractBean { public String createRentEnt(RentEnt rentEnt) { // 변수 선언 String rtnMsg = ""; // 처리 결과 메시지 + String regExp = "^[0-9]+$"; // 숫자 정규식 + + if (!rentEnt.getEntRegNo().matches(regExp)) { + rtnMsg = "[F] 등록 중 오류가 발생하였습니다.
법인(사업자)번호는 숫자만 입력되어야 합니다."; + return rtnMsg; + } RentQuery req = new RentQuery(); req.setSchEntRegNo(rentEnt.getEntRegNo()); @@ -219,6 +225,15 @@ public class RentEntBean extends AbstractBean { * */ public String updateRentEnt(RentEnt rentEnt) { + // 변수 선언 + String rtnMsg = ""; // 처리 결과 메시지 + String regExp = "^[0-9]+$"; // 숫자 정규식 + + if (!rentEnt.getEntRegNo().matches(regExp)) { + rtnMsg = "[F] 등록 중 오류가 발생하였습니다.
법인(사업자)번호는 숫자만 입력되어야 합니다."; + return rtnMsg; + } + // 임대기업(TB_RENT_ENT) 대장을 수정한다. int rtnNocs = rentEntMapper.updateRentEnt(rentEnt); if (rtnNocs != 1) { diff --git a/src/main/java/cokr/xit/fims/rent/web/Rent01Controller.java b/src/main/java/cokr/xit/fims/rent/web/Rent01Controller.java index e2543473..c3406c49 100644 --- a/src/main/java/cokr/xit/fims/rent/web/Rent01Controller.java +++ b/src/main/java/cokr/xit/fims/rent/web/Rent01Controller.java @@ -123,12 +123,11 @@ public class Rent01Controller extends ApplicationController { 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("ENT_REG_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)); @@ -304,7 +303,7 @@ public class Rent01Controller extends ApplicationController { 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("ENT_REG_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)); 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 de1a96ec..b833e0f4 100644 --- a/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java +++ b/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java @@ -27,11 +27,11 @@ import cokr.xit.fims.base.FimsUser; import cokr.xit.fims.cmmn.service.bean.StngBean; import cokr.xit.fims.cmmn.xls.FormatMaker; import cokr.xit.fims.cmmn.xls.StyleMaker; -import cokr.xit.fims.rent.Hirer; +import cokr.xit.fims.rent.Lsct; import cokr.xit.fims.rent.LsctMpng; import cokr.xit.fims.rent.LsctAprv; import cokr.xit.fims.rent.RentQuery; -import cokr.xit.fims.rent.service.HirerService; +import cokr.xit.fims.rent.service.LsctService; import cokr.xit.fims.rent.service.LsctMpngService; import cokr.xit.fims.rent.service.RentEntService; import cokr.xit.fims.task.Task; @@ -55,20 +55,20 @@ public class Rent02Controller extends ApplicationController { public class METHOD_URL { public static final String - leaseContractRegistrationMain = "/010/main.do" // 임대차계약 대장 등록 메인 화면 - , getLeaseContractRegistrationList = "/010/list.do" // 임대차계약 대장 등록 단속 대장 목록 조회 - , removeLeaseContract = "/010/removeCtrt.do" // 임대차계약 대장 삭제 - , getLeaseContractRegistrationInfo = "/020/info.do" // 임대차계약 대장 등록 상세 화면 - , getLeaseContractRegistration = "/020/list.do" // 임대차계약 대장 등록 상세 정보 조회 - , hirerMain = "/030/main.do" // 임대차계약 등록 단속 대장 상세 조회 - , getHirerList = "/030/list.do" // 임차인 대장 목록 조회 - , createLeaseContract = "/030/createCtrt.do" // 임대차계약 대장 등록 - , removeHirer = "/030/removeHirer.do" // 임차인 대장 삭제 - , getHirerInfo = "/040/info.do" // 임차인 대장 상세 화면 - , getHirer = "/040/list.do" // 임차인 대장 상세 정보 조회 - , createHirer = "/040/createHirer.do" // 임차인 대장 등록 - , updateHirer = "/040/updateHirer.do" // 임차인 대장 수정 - , removeAttachmentFile = "/040/removeAtchFile.do" // 임차인 첨부 파일 수정 + crackdownLeaseContractMain = "/010/main.do" // 단속 임대차계약 대장 등록 메인 화면 + , getCrackdownLeaseContractList = "/010/list.do" // 단속 임대차계약 대장 등록 목록 조회 + , removeLeaseContractMapping = "/010/removeMpng.do" // 임대차계약 매핑 대장 삭제 + , getCrackdownLeaseContractInfo = "/020/info.do" // 단속 임대차계약 대장 등록 상세 화면 + , getCrackdownLeaseContract = "/020/list.do" // 단속 임대차계약 대장 등록 상세 조회 + , leaseContractMain = "/030/main.do" // 임대차계약 대장 메인 화면 + , getLeaseContractList = "/030/list.do" // 임대차계약 대장 목록 조회 + , createLeaseContractMapping = "/030/createMpng.do" // 임대차계약 매핑 대장 등록 + , removeLeaseContract = "/030/removeLsct.do" // 임대차계약 대장 삭제 + , getLeaseContractInfo = "/040/info.do" // 임대차계약 대장 상세 화면 + , getLeaseContract = "/040/list.do" // 임대차계약 대장 상세 정보 조회 + , createLeaseContract = "/040/createLsct.do" // 임대차계약 대장 등록 + , updateLeaseContract = "/040/updateLsct.do" // 임대차계약 대장 수정 + , removeAttachmentFile = "/040/removeAtchFile.do" // 임대차계약 첨부 파일 삭제 , leaseContractMappingMain = "/050/main.do" // 임대차계약 매핑 대장 관리 메인 화면 , getLeaseContractMappingList = "/050/list.do" // 임대차계약 매핑 대장 관리 대장 목록 조회 , createLeaseContractApproval = "/050/createAprv.do" // 임대차계약 승인 대장 등록 @@ -83,8 +83,8 @@ public class Rent02Controller extends ApplicationController { private LsctMpngService lsctMpngService; /**임차인 정보 서비스*/ - @Resource(name = "hirerService") - private HirerService hirerService; + @Resource(name = "lsctService") + private LsctService lsctService; /**임대 기업 대장 서비스*/ @Resource(name = "rentEntService") @@ -94,12 +94,11 @@ public class Rent02Controller extends ApplicationController { @Resource(name = "stngBean") private StngBean stngBean; - /**임대차계약 대장 관리 메인화면(lsct/lsct-main)을 연다. - * 조건없는 {@link #getLsctList(LsctQuery) 임대차계약 대장 조회 결과}를 포함시킨다. - * @return /lsct/lsct-main + /**단속 임대차계약 대장 등록 메인 화면(fims/rent/rent02010-main)을 연다. + * @return fims/rent/rent02010-main */ - @RequestMapping(name = "임대차계약 대장 등록 메인", value=METHOD_URL.leaseContractRegistrationMain) - public ModelAndView leaseContractRegistrationMain() { + @RequestMapping(name = "단속 임대차계약 대장 등록 메인 화면", value=METHOD_URL.crackdownLeaseContractMain) + public ModelAndView crackdownLeaseContractMain() { ModelAndView mav = new ModelAndView("fims/rent/rent02010-main"); // 사용자 정보 @@ -119,21 +118,21 @@ public class Rent02Controller extends ApplicationController { ; } - /**임대차계약 대장 목록을 조회하여 반환한다.
+ /**단속 임대차계약 대장 등록 목록 조회하여 반환한다. * {@link LsctMpngService#getLsctList(LsctQuery)} 참고 * @param req 임대차계약 대장 조회 조건 * @return jsonView *
 {
-     *     "lsctList": [임대차계약 대장 목록]
-     *     "lsctStart": 임대차계약 대장 목록 시작 인덱스
-     *     "lsctFetch": 한 번에 가져오는 임대차계약 대장 목록 수
-     *     "lsctTotal": 조회 결과 찾은 전체 임대차계약 대장 수
+     *     "List": [임대차계약 대장 목록]
+     *     "Start": 임대차계약 대장 목록 시작 인덱스
+     *     "Fetch": 한 번에 가져오는 임대차계약 대장 목록 수
+     *     "Total": 조회 결과 찾은 전체 임대차계약 대장 수
      * }
*/ @Task("CMN") - @RequestMapping(name = "임대차계약 등록 단속 대장 조회", value=METHOD_URL.getLeaseContractRegistrationList) - public ModelAndView getLeaseContractRegistrationList(RentQuery req) { + @RequestMapping(name = "단속 임대차계약 대장 등록 목록 조회", value=METHOD_URL.getCrackdownLeaseContractList) + public ModelAndView getCrackdownLeaseContractList(RentQuery req) { if (!"xls".equals(req.getDownload())) { List result = lsctMpngService.getCrdnLsctMpngList(setFetchSize(req)); return setPagingInfo(new ModelAndView("jsonView"), result, ""); @@ -182,18 +181,18 @@ public class Rent02Controller extends ApplicationController { } } - /**사용자 임대 기업 대장 상세 정보 화면(fims/rent/rent02020-info)을 연다. - * 조건없는 {@link #getRentEntList(RentEntQuery) 사용자 임대 기업 대장 조회 결과}를 포함시킨다. - * @return /rentEnt/rentEnt-main + /**단속 임대차계약 대장 등록 상세 화면(fims/rent/rent02020-info)을 연다. + * 조건없는 {@link #getCrackdownLeaseContract(RentQuery) 단속 임대차계약 대장 조회 결과}를 포함시킨다. + * @return fims/rent/rent02020-info */ @Task("CMN") - @RequestMapping(name = "임대차계약 등록 단속 상세 화면", value=METHOD_URL.getLeaseContractRegistrationInfo) - public ModelAndView getLeaseContractRegistrationInfo(HttpServletRequest hReq, RentQuery req) { + @RequestMapping(name = "단속 임대차계약 대장 등록 상세 화면", value=METHOD_URL.getCrackdownLeaseContractInfo) + public ModelAndView getCrackdownLeaseContractInfo(HttpServletRequest hReq, RentQuery req) { boolean json = jsonResponse(); ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02020-info"); // 상세 정보 조회 - DataObject info = getLeaseContractRegistration(req); + DataObject info = getCrackdownLeaseContract(req); mav.addObject("Info", json ? info : toJson(info)); if (!json) { @@ -212,24 +211,24 @@ public class Rent02Controller extends ApplicationController { } @Task("CMN") - @RequestMapping(name = "임대차계약 등록 단속 상세정보 조회", value=METHOD_URL.getLeaseContractRegistration) - public DataObject getLeaseContractRegistration(RentQuery req) { + @RequestMapping(name = "단속 임대차계약 대장 등록 상세 조회", value=METHOD_URL.getCrackdownLeaseContract) + public DataObject getCrackdownLeaseContract(RentQuery req) { // 상세 정보 조회 return lsctMpngService.getCrdnLsctMpngInfo(req); } - /**임대차계약 대장를 등록한다. - * @param lsct 임대차계약 대장 정보 + /**임대차계약 매핑 대장를 등록한다. + * @param lsctMpng 임대차계약 매핑 대장 정보 * @return jsonView *
 {
      *     "saved": 등록되었으면 true, 그렇지 않으면 false
      * }
*/ @Task("CMN") - @RequestMapping(name = "임대차계약 매핑 대장 등록", value = METHOD_URL.createLeaseContract) - public ModelAndView createLeaseContractMapping(LsctMpng lsct) { + @RequestMapping(name = "임대차계약 매핑 대장 등록", value = METHOD_URL.createLeaseContractMapping) + public ModelAndView createLeaseContractMapping(LsctMpng lsctMpng) { boolean saved = false; - String rtnMsg = lsctMpngService.createLsctMpng(lsct); + String rtnMsg = lsctMpngService.createLsctMpng(lsctMpng); if (rtnMsg.contains("[S]")) { saved = true; @@ -242,8 +241,8 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**지정한 임대차계약 대장를 제거한다. - * @param lsctIDs 임대차계약 대장 아이디 + /**지정한 임대차계약 매핑 대장를 제거한다. + * @param lsctMpngIds 임대차계약 매핑 대장 아이디s * @return jsonView *
 {
      *     "affected": 저장된 정보수
@@ -251,10 +250,10 @@ public class Rent02Controller extends ApplicationController {
      * }
*/ @Task("CMN") - @RequestMapping(name = "임대차계약 매핑 대장 제거", value = METHOD_URL.removeLeaseContract) - public ModelAndView removeLeaseContractMapping(LsctMpng lsct) { + @RequestMapping(name = "임대차계약 매핑 대장 제거", value = METHOD_URL.removeLeaseContractMapping) + public ModelAndView removeLeaseContractMapping(LsctMpng lsctMpng) { boolean saved = false; - String rtnMsg = lsctMpngService.removeLsctMpng(lsct); + String rtnMsg = lsctMpngService.removeLsctMpng(lsctMpng); if (rtnMsg.contains("[S]")) { saved = true; @@ -267,12 +266,11 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**임차인 대장 관리 메인화면(fims/rent/rent02030-main)을 연다. - * 조건없는 {@link #getRentEntList(RentEntQuery) 사용자 임대 기업 대장 조회 결과}를 포함시킨다. - * @return /rentEnt/rentEnt-main + /**임대차계약(임차인) 대장 메인 화면(fims/rent/rent02030-main)을 연다. + * @return fims/rent/rent02030-main */ - @RequestMapping(name = "임차인 대장 메인", value=METHOD_URL.hirerMain) - public ModelAndView hirerMain(RentQuery req) { + @RequestMapping(name = "임대차계약 대장 메인 화면", value=METHOD_URL.leaseContractMain) + public ModelAndView leaseContractMain(RentQuery req) { ModelAndView mav = new ModelAndView("fims/rent/rent02030-main"); return mav @@ -285,22 +283,22 @@ public class Rent02Controller extends ApplicationController { ; } - /**임차인 대장 목록을 조회하여 반환한다.
- * {@link HirerService#getHirerList(HirerQuery)} 참고 - * @param req 임차인 대장 조회 조건 + /**임대차계약(임차인) 대장 목록을 조회하여 반환한다. + * {@link LsctService#getHirerList(RentQuery)} 참고 + * @param req 임대차계약 조회 조건 * @return jsonView *
 {
-     *     "hirerList": [임차인 대장 목록]
-     *     "hirerStart": 임차인 대장 목록 시작 인덱스
-     *     "hirerFetch": 한 번에 가져오는 임차인 대장 목록 수
-     *     "hirerTotal": 조회 결과 찾은 전체 임차인 대장 수
+     *     "List": [임대차계약 대장 목록]
+     *     "Start": 임대차계약 대장 목록 시작 인덱스
+     *     "Fetch": 한 번에 가져오는 임대차계약 대장 목록 수
+     *     "Total": 조회 결과 찾은 전체 임대차계약 대장 수
      * }
*/ @Task("CMN") - @RequestMapping(name = "임차인 대장 조회", value=METHOD_URL.getHirerList) - public ModelAndView getHirerList(RentQuery req) { + @RequestMapping(name = "임대차계약 대장 목록 조회", value=METHOD_URL.getLeaseContractList) + public ModelAndView getLeaseContractList(RentQuery req) { if (!"xls".equals(req.getDownload())) { - List result = hirerService.getHirerList(setFetchSize(req)); + List result = lsctService.getLsctList(setFetchSize(req)); return setPagingInfo(new ModelAndView("jsonView"), result, ""); } else { // 현재 날짜 구하기 @@ -314,12 +312,12 @@ public class Rent02Controller extends ApplicationController { CellStyle center = format.cellStyle(Style.CENTER); CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss(); - List list = hirerService.getHirerList(req.setFetchSize(0)); + List list = lsctService.getLsctList(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("ENT_REG_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)); @@ -341,19 +339,19 @@ public class Rent02Controller extends ApplicationController { } } - /**임차인 대장 상세 정보 화면(fims/rent/rent02030-info)을 연다. + /**임대차계약(임차인) 대장 상세 화면(fims/rent/rent02040-info)을 연다. * 조건없는 {@link #getRentEntList(RentEntQuery) 임대 기업 대장 조회 결과}를 포함시킨다. - * @return /rentEnt/rentEnt-main + * @return fims/rent/rent02040-info */ @Task("CMN") - @RequestMapping(name = "임차인 대장 상세 화면", value=METHOD_URL.getHirerInfo) - public ModelAndView getHirerInfo(HttpServletRequest hReq, RentQuery req) { + @RequestMapping(name = "임대차계약 대장 상세 화면", value=METHOD_URL.getLeaseContractInfo) + public ModelAndView getLeaseContractInfo(HttpServletRequest hReq, RentQuery req) { boolean json = jsonResponse(); ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02040-info"); // 수정(update)으로 호출 - if (req.getHirerId() != null) { - DataObject info = getHirer(req); // 상세 정보 조회 + if (req.getLsctId() != null) { + DataObject info = getLeaseContract(req); // 임대차계약 상세 정보 조회 mav.addObject("Info", json ? info : toJson(info)); } @@ -372,13 +370,13 @@ public class Rent02Controller extends ApplicationController { } @Task("CMN") - @RequestMapping(name = "임차인 대장 상세 정보 조회", value=METHOD_URL.getHirer) - public DataObject getHirer(RentQuery req) { + @RequestMapping(name = "임대차계약 대장 상세 정보 조회", value=METHOD_URL.getLeaseContract) + public DataObject getLeaseContract(RentQuery req) { // 상세 정보 조회 - return hirerService.getHirerInfo(req); + return lsctService.getLsctInfo(req); } - /**임차인 대장를 등록한다. + /**임대차계약 대장을 등록한다. * @param hirer 임차인 대장 정보 * @return jsonView *
 {
@@ -386,8 +384,8 @@ public class Rent02Controller extends ApplicationController {
      * }
*/ @Task("CMN") - @RequestMapping(name = "임차인 대장 등록", value=METHOD_URL.createHirer) - public ModelAndView createHirer(Hirer hirer, MultipartFile[] uploadFiles) { + @RequestMapping(name = "임대차계약 대장 등록", value=METHOD_URL.createLeaseContract) + public ModelAndView createLeaseContract(Lsct lsct, MultipartFile[] uploadFiles) { boolean saved = false; // 첨부 파일 @@ -396,7 +394,7 @@ public class Rent02Controller extends ApplicationController { fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles); } - String rtnMsg = hirerService.createHirer(hirer, fileInfoList); + String rtnMsg = lsctService.createLsct(lsct, fileInfoList); if (rtnMsg.contains("[S]")) { saved = true; @@ -409,7 +407,7 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**임차인 대장 정보를 수정한다. + /**임대차계약 대장 정보를 수정한다. * @param hirer 임차인 대장 정보 * @return jsonView *
 {
@@ -417,8 +415,8 @@ public class Rent02Controller extends ApplicationController {
      * }
*/ @Task("CMN") - @RequestMapping(name = "임차인 대장 수정", value=METHOD_URL.updateHirer) - public ModelAndView updateHirer(Hirer hirer, MultipartFile[] uploadFiles) { + @RequestMapping(name = "임대차계약 대장 수정", value=METHOD_URL.updateLeaseContract) + public ModelAndView updateLeaseContract(Lsct lsct, MultipartFile[] uploadFiles) { boolean saved = false; // 첨부 파일 @@ -427,7 +425,7 @@ public class Rent02Controller extends ApplicationController { fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles); } - String rtnMsg = hirerService.updateHirer(hirer, fileInfoList); + String rtnMsg = lsctService.updateLsct(lsct, fileInfoList); if (rtnMsg.contains("[S]")) { saved = true; @@ -440,7 +438,7 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**파일 정보를 삭제하고, 임차인 대장 첨부파일수를 수정한다. + /**임대차계약 파일 정보를 삭제하고, 임차인 대장 첨부파일수를 수정한다. * @param hirer 임차인 대장 정보 * @return jsonView *
 {
@@ -448,10 +446,10 @@ public class Rent02Controller extends ApplicationController {
      * }
*/ @Task("CMN") - @RequestMapping(name = "임차인 대장 첨부파일 삭제", value=METHOD_URL.removeAttachmentFile) - public ModelAndView removeAttachmentFile(Hirer hirer) { + @RequestMapping(name = "임대차계약 대장 첨부파일 삭제", value=METHOD_URL.removeAttachmentFile) + public ModelAndView removeAttachmentFile(Lsct lsct) { boolean saved = false; - String rtnMsg = hirerService.removeAtchFile(hirer); + String rtnMsg = lsctService.removeAtchFile(lsct); if (rtnMsg.contains("[S]")) { saved = true; @@ -464,7 +462,7 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**지정한 임차인 대장를 삭제한다. + /**지정한 임대차계약 대장를 삭제한다. * @param hirerIDs 임차인 대장 아이디 * @return jsonView *
 {
@@ -473,10 +471,10 @@ public class Rent02Controller extends ApplicationController {
      * }
*/ @Task("CMN") - @RequestMapping(name = "임차인 대장 삭제", value=METHOD_URL.removeHirer) - public ModelAndView removeHirer(Hirer hirer) { + @RequestMapping(name = "임대차계약 대장 삭제", value=METHOD_URL.removeLeaseContract) + public ModelAndView removeLeaseContract(Lsct lsct) { boolean saved = false; - String rtnMsg = hirerService.removeHirer(hirer); + String rtnMsg = lsctService.removeLsct(lsct); if (rtnMsg.contains("[S]")) { saved = true; @@ -493,7 +491,7 @@ public class Rent02Controller extends ApplicationController { * 조건없는 {@link #getLsctList(LsctQuery) 임대차계약 대장 조회 결과}를 포함시킨다. * @return /lsct/lsct-main */ - @RequestMapping(name = "임대차계약 매핑 대장 관리 메인", value=METHOD_URL.leaseContractMappingMain) + @RequestMapping(name = "임대차계약 승인 대장 관리 메인", value=METHOD_URL.leaseContractMappingMain) public ModelAndView leaseContractMappingMain() { ModelAndView mav = new ModelAndView("fims/rent/rent02050-main"); @@ -526,7 +524,7 @@ public class Rent02Controller extends ApplicationController { * } */ @Task("CMN") - @RequestMapping(name = "임대차계약 매핑 대장 관리 조회", value=METHOD_URL.getLeaseContractMappingList) + @RequestMapping(name = "임대차계약 승인 대장 관리 조회", value=METHOD_URL.getLeaseContractMappingList) public ModelAndView getLeaseContractMappingList(RentQuery req) { if (!"xls".equals(req.getDownload())) { List result = lsctMpngService.getLsctMpngList(setFetchSize(req)); @@ -601,14 +599,14 @@ public class Rent02Controller extends ApplicationController { // 단건 if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) { - rtnMsg = lsctMpngService.createLsctAprv(lsctAprv); // 등록 + rtnMsg = lsctMpngService.createLsctAprv(lsctAprv); // 등록 } else { // Ids 만큼 반복 등록 for (String lsctMpngId : lsctAprv.getLsctMpngIds()) { LsctAprv createAprv = new LsctAprv(); createAprv.setLsctMpngId(lsctMpngId); - rtnMsg = lsctMpngService.createLsctAprv(createAprv); // 등록 + rtnMsg = lsctMpngService.createLsctAprv(createAprv); // 등록 if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료.. saved = false; break; @@ -642,14 +640,14 @@ public class Rent02Controller extends ApplicationController { // 단건 if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) { - rtnMsg = lsctMpngService.removeLsctAprv(lsctAprv); // 삭제 + rtnMsg = lsctMpngService.removeLsctAprv(lsctAprv); // 삭제 } else { // Ids 만큼 반복 등록 for (String lsctMpngId : lsctAprv.getLsctMpngIds()) { LsctAprv removeAprv = new LsctAprv(); removeAprv.setLsctMpngId(lsctMpngId); - rtnMsg = lsctMpngService.removeLsctAprv(removeAprv); // 삭제 + rtnMsg = lsctMpngService.removeLsctAprv(removeAprv); // 삭제 if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료.. saved = false; break; @@ -668,7 +666,7 @@ public class Rent02Controller extends ApplicationController { .addObject("rtnMsg", rtnMsg); } - /**사용자 임대차계약 대장 상세 정보 화면(fims/rent/rent02060-info)을 연다. + /**임대차계약 매핑 대장 상세 정보 화면(fims/rent/rent02060-info)을 연다. * 조건없는 {@link #getRentEntList(RentEntQuery) 사용자 임대 기업 대장 조회 결과}를 포함시킨다. * @return /rentEnt/rentEnt-main */ diff --git a/src/main/resources/sql/mapper/fims/rent/hirer-mapper.xml b/src/main/resources/sql/mapper/fims/rent/lsct-mapper.xml similarity index 62% rename from src/main/resources/sql/mapper/fims/rent/hirer-mapper.xml rename to src/main/resources/sql/mapper/fims/rent/lsct-mapper.xml index f8e9b335..cfcbb028 100644 --- a/src/main/resources/sql/mapper/fims/rent/hirer-mapper.xml +++ b/src/main/resources/sql/mapper/fims/rent/lsct-mapper.xml @@ -1,14 +1,14 @@ - + - - + + @@ -36,75 +36,64 @@ - SELECT H.HIRER_ID - , H.ENT_ID - , H.VHRNO - , H.CTRT_BGNG_YMD - , H.CTRT_BGNG_TM - , (CONCAT(H.CTRT_BGNG_YMD, H.CTRT_BGNG_TM)) AS CTRT_BGNG_DT - , H.CTRT_END_YMD - , H.CTRT_END_TM - , (CONCAT(H.CTRT_END_YMD, H.CTRT_END_TM)) AS CTRT_END_DT - , H.HIRER_SE_CD - , (SELECT GET_CODE_NM('FIM089', H.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM - , H.HIRER_REG_NO - , H.HIRER_NM - , H.HIRER_TELNO - , H.HIRER_MBL_TELNO - , H.HIRER_EML_ADDR - , H.HIRER_ZIP - , H.HIRER_ADDR - , H.HIRER_DTL_ADDR - , H.ATCH_FILE_CNT - , H.DEL_YN - , (SELECT GET_CODE_NM('CMN007', H.DEL_YN) FROM DUAL) AS DEL_YN_NM - , H.REG_DT - , H.RGTR - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.RGTR) AS RGTR_NM - , H.MDFCN_DT - , H.MDFR - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.MDFR) AS MDFR_NM - , H.DEL_DT - , H.DLTR - , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.DLTR) AS DLTR_NM + SELECT L.LSCT_ID + , L.ENT_ID + , L.VHRNO + , L.CTRT_BGNG_YMD + , L.CTRT_BGNG_TM + , (CONCAT(L.CTRT_BGNG_YMD, L.CTRT_BGNG_TM)) AS CTRT_BGNG_DT + , L.CTRT_END_YMD + , L.CTRT_END_TM + , (CONCAT(L.CTRT_END_YMD, L.CTRT_END_TM)) AS CTRT_END_DT + , L.HIRER_SE_CD + , (SELECT GET_CODE_NM('FIM089', L.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM + , L.HIRER_REG_NO + , L.HIRER_NM + , L.HIRER_TELNO + , L.HIRER_MBL_TELNO + , L.HIRER_EML_ADDR + , L.HIRER_ZIP + , L.HIRER_ADDR + , L.HIRER_DTL_ADDR + , L.ATCH_FILE_CNT + , L.DEL_YN + , (SELECT GET_CODE_NM('CMN007', L.DEL_YN) FROM DUAL) AS DEL_YN_NM + , L.REG_DT + , L.RGTR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM + , L.MDFCN_DT + , L.MDFR + , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.MDFR) AS MDFR_NM FROM TB_HIRER H - /* 임대차계약 대장 목록 조회(lsctMapper.selectLsctList) */ - AND H.CTRT_BGNG_YMD #{schCtrtYmd} - AND H.CTRT_END_YMD =]]> #{schCtrtYmd} + AND L.CTRT_BGNG_YMD #{schCtrtYmd} + AND L.CTRT_END_YMD =]]> #{schCtrtYmd} - AND H.CTRT_BGNG_YMD = #{schCtrtBgngYmd} + AND L.CTRT_BGNG_YMD = #{schCtrtBgngYmd} - AND H.CTRT_END_YMD = #{schCtrtEndYmd} + AND L.CTRT_END_YMD = #{schCtrtEndYmd} - AND H.VHRNO = #{schVhrno} + AND L.VHRNO = #{schVhrno} - AND H.HIRER_REG_NO = #{schHirerRegNo} - - - AND RE.ENT_REG_NO IN ( - #{schEntRegNo} - ) - - - AND RE.ENT_REG_NO = #{schEntRegNo} + AND L.HIRER_REG_NO = #{schHirerRegNo} - AND H.ENT_ID IN ( + AND L.ENT_ID IN ( #{entId} ) - AND H.ENT_ID = #{entId} + AND L.ENT_ID = #{entId} AND DEL_YN = 'N' @@ -112,55 +101,47 @@ - /* 임대차계약 대장 객체 가져오기(lsctMapper.selectLscts) */ - - AND H.HIRER_ID IN ( - #{hirerId} + + AND L.LSCT_ID IN ( + #{lsctId} ) - - AND H.HIRER_ID = #{hirerId} + + AND L.LSCT_ID = #{lsctId} - AND H.ENT_ID IN ( + AND L.ENT_ID IN ( #{entId} ) - AND H.ENT_ID = #{entId} - - - AND RE.ENT_REG_NO IN ( - #{schEntRegNo} - ) - - - AND RE.ENT_REG_NO = #{schEntRegNo} + AND L.ENT_ID = #{entId} - AND H.DEL_YN = #{delYn} + AND L.DEL_YN = #{delYn} - AND H.DEL_YN = 'N' + AND L.DEL_YN = 'N' - /* 임차인 대장 등록(hirerMapper.insertHirer) */ - + /* 임대차계약 대장 등록(lsctMapper.insertLsct) */ + - - + + - INSERT INTO TB_HIRER ( - HIRER_ID + INSERT INTO TB_LSCT ( + LSCT_ID , ENT_ID , VHRNO , CTRT_BGNG_YMD @@ -184,7 +165,7 @@ , MDFR ) VALUES ( - #{hirerId} + #{lsctId} , #{entId} , #{vhrno} , #{ctrtBgngYmd} @@ -209,8 +190,8 @@ ) - /* 임차인 대장 수정(hirerMapper.updateHirer) */ - UPDATE TB_HIRER + /* 임대차계약 대장 수정(lsctMapper.updateLsct) */ + UPDATE TB_LSCT SET VHRNO = #{vhrno} , CTRT_BGNG_YMD = #{ctrtBgngYmd} , CTRT_BGNG_TM = #{ctrtBgngTm} @@ -230,33 +211,33 @@ , MDFCN_DT = , MDFR = #{modifiedBy} - WHERE HIRER_ID = #{hirerId} + WHERE LSCT_ID = #{lsctId} AND DEL_YN = 'N' - /* 임차인 대장 첨부파일수 수정(hirerMapper.updateHirer) */ - UPDATE TB_HIRER + /* 임대차계약 대장 첨부파일수 수정(lsctMapper.updateAtchFileCnt) */ + UPDATE TB_LSCT SET ATCH_FILE_CNT = #{atchFileCnt} , MDFCN_DT = , MDFR = #{modifiedBy} - WHERE HIRER_ID = #{hirerId} + WHERE LSCT_ID = #{lsctId} AND DEL_YN = 'N' - /* 임차인 대장 삭제(hirerMapper.deleteHirer) */ - UPDATE TB_HIRER + /* 임대차계약 대장 삭제(lsctMapper.deleteLsct) */ + UPDATE TB_LSCT SET DEL_YN = 'Y' , DEL_DT = , DLTR = #{modifiedBy} , DEL_RSN = #{delRsn} - - WHERE HIRER_ID IN ( - #{hirerId} + + WHERE LSCT_ID IN ( + #{lsctId} ) - WHERE HIRER_ID = #{hirerId} + WHERE LSCT_ID = #{lsctId} AND DEL_YN = 'N' diff --git a/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml b/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml index 746fdcce..85453f7d 100644 --- a/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml +++ b/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml @@ -9,6 +9,8 @@ + + @@ -18,8 +20,6 @@ - - @@ -380,10 +380,10 @@ WHEN LM.CHG_APRV_YN = 'N' AND LM.CHG_DMND_YN = 'N' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '계약서등록' ELSE '대상' END) AS TRGT_STTS_NM + , LM.LSCT_ID , (CASE WHEN LM.ENT_ID IS NULL THEN (SELECT RE.ENT_ID FROM TB_RENT_ENT RE WHERE RE.ENT_REG_NO = P.RTPYR_NO) ELSE LM.ENT_ID END) AS ENT_ID - , LM.HIRER_ID , LM.CHG_DMND_YN , LM.CHG_DMND_DT , LM.CHG_DMND_RGTR @@ -402,17 +402,17 @@ , LM.MDFCN_DT , LM.MDFR , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LM.MDFR) AS MDFR_NM - , (CONCAT(H.CTRT_BGNG_YMD, H.CTRT_BGNG_TM)) AS CTRT_BGNG_DT - , (CONCAT(H.CTRT_END_YMD, H.CTRT_END_TM)) AS CTRT_END_DT - , (SELECT GET_CODE_NM('FIM089', H.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM - , H.HIRER_REG_NO - , H.HIRER_NM + , (CONCAT(L.CTRT_BGNG_YMD, L.CTRT_BGNG_TM)) AS CTRT_BGNG_DT + , (CONCAT(L.CTRT_END_YMD, L.CTRT_END_TM)) AS CTRT_END_DT + , (SELECT GET_CODE_NM('FIM089', L.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM + , L.HIRER_REG_NO + , L.HIRER_NM FROM TB_CRDN C LEFT OUTER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID) LEFT OUTER JOIN TB_PAYER P ON (C.RTPYR_ID = P.RTPYR_ID) LEFT OUTER JOIN TB_PAYER_ADDR PA ON (C.RTPYR_ID = PA.RTPYR_ID AND C.ADDR_SN = PA.ADDR_SN) LEFT OUTER JOIN TB_LSCT_MPNG LM ON (C.CRDN_ID = LM.CRDN_ID AND LM.DEL_YN = 'N') - LEFT OUTER JOIN TB_HIRER H ON (L.HIRER_ID = H.HIRER_ID AND H.DEL_YN = 'N') + LEFT OUTER JOIN TB_LSCT L ON (LM.LSCT_ID = L.LSCT_ID AND L.DEL_YN = 'N')