임대차계약 수정.

- 임차인 테이블 -> 임대차계약 테이블로 수정.
main
xitpc\xituser 2 months ago
parent 51f98a4417
commit ecee543fbe

@ -5,19 +5,19 @@ import lombok.Getter;
import lombok.Setter; import lombok.Setter;
/** /**
* *
* @author JoJH * @author JoJH
*/ */
@Getter @Getter
@Setter @Setter
public class Hirer extends AbstractEntity { public class Lsct extends AbstractEntity {
public static String INF_TYPE = "120"; // 임대차계약 첨부파일 public static String INF_TYPE = "120"; // 임대차계약 첨부파일
/** /**
* ID * ID
*/ */
private String hirerId; private String lsctId;
/** /**
* ID * ID
@ -110,9 +110,9 @@ public class Hirer extends AbstractEntity {
private String delRsn; private String delRsn;
/** /**
* IDs * IDs
*/ */
private String[] hirerIds; private String[] lsctIds;
/** /**
* IDs * IDs

@ -17,6 +17,16 @@ public class LsctMpng extends AbstractEntity {
*/ */
private String lsctMpngId; private String lsctMpngId;
/**
* ID
*/
private String lsctId;
/**
* ID
*/
private String entId;
/** /**
* ID * ID
*/ */
@ -62,16 +72,6 @@ public class LsctMpng extends AbstractEntity {
*/ */
private String rtpyrNm; private String rtpyrNm;
/**
* ID
*/
private String entId;
/**
* ID
*/
private String hirerId;
/** /**
* *
*/ */

@ -22,8 +22,8 @@ public class RentQuery extends CmmnQuery {
private String userId; // 사용자 ID private String userId; // 사용자 ID
private String[] entIds; // 기업 IDs private String[] entIds; // 기업 IDs
private String entId; // 기업 ID private String entId; // 기업 ID
private String[] hirerIds; // 임차인 IDs private String[] lsctIds; // 임대차계약 IDs
private String hirerId; // 임차인 ID private String lsctId; // 임대차계약 ID
private String[] lsctMpngIds; // 임대차계약 매핑 IDs private String[] lsctMpngIds; // 임대차계약 매핑 IDs
private String lsctMpngId; // 임대차계약 매핑 ID private String lsctMpngId; // 임대차계약 매핑 ID
private String[] aprvIds; // 승인 IDs private String[] aprvIds; // 승인 IDs
@ -96,20 +96,20 @@ public class RentQuery extends CmmnQuery {
this.entId = entId; this.entId = entId;
} }
public String[] getHirerIds() { public String[] getLsctIds() {
return ifEmpty(hirerIds, () -> null); return ifEmpty(lsctIds, () -> null);
} }
public void setHirerIds(String... hirerIds) { public void setLsctIds(String... lsctIds) {
this.hirerIds = hirerIds; this.lsctIds = lsctIds;
} }
public String getHirerId() { public String getLsctId() {
return ifEmpty(hirerId, () -> null); return ifEmpty(lsctId, () -> null);
} }
public void setHirerId(String hirerId) { public void setLsctId(String lsctId) {
this.hirerId = hirerId; this.lsctId = lsctId;
} }
public String[] getLsctMpngIds() { public String[] getLsctMpngIds() {

@ -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
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
@Mapper("hirerMapper")
public interface HirerMapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectHirerList(RentQuery req);
/** .
* @param req
* @return
*/
List<DataObject> 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<DataObject> hirers = selectHirers(req);
return !hirers.isEmpty() ? hirers.get(0) : null;
}
/** .
* @param params
* <ul><li>"hirer" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertHirer(Hirer hirer);
/** .
* @param params
* <ul><li>"hirer" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateHirer(Hirer hirer);
/** .
* @param params
* <ul><li>"hirer" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateAtchFileCnt(Hirer hirer);
/** .
* @param params
* <ul><li>"hirer" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteHirer(Hirer hirer);
}

@ -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
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
@Mapper("lsctMapper")
public interface LsctMapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectLsctList(RentQuery req);
/** .
* @param req
* @return
*/
List<DataObject> 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<DataObject> lscts = selectLscts(req);
return !lscts.isEmpty() ? lscts.get(0) : null;
}
/** .
* @param params
* <ul><li>"lsct" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertLsct(Lsct lsct);
/** .
* @param params
* <ul><li>"lsct" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateLsct(Lsct lsct);
/** .
* @param params
* <ul><li>"lsct" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateAtchFileCnt(Lsct lsct);
/** .
* @param params
* <ul><li>"lsct" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteLsct(Lsct lsct);
}

@ -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;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
public interface HirerService {
/** .
* @param req
* @return
*/
List<DataObject> getHirerList(RentQuery req);
/** .
* @param req
* @return
*/
List<DataObject> getHirers(RentQuery req);
/** .
* @param req
* @return
*/
DataObject getHirerInfo(RentQuery req);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String createHirer(Hirer hirer, List<FileInfo> fileInfoList);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String updateHirer(Hirer hirer, List<FileInfo> fileInfoList);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String removeAtchFile(Hirer hirer);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String removeHirer(Hirer hirer);
}

@ -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;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
public interface LsctService {
/** .
* @param req
* @return
*/
List<DataObject> getLsctList(RentQuery req);
/** .
* @param req
* @return
*/
List<DataObject> getLscts(RentQuery req);
/** .
* @param req
* @return
*/
DataObject getLsctInfo(RentQuery req);
/** .
* @param lsct
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String createLsct(Lsct lsct, List<FileInfo> fileInfoList);
/** .
* @param lsct
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String updateLsct(Lsct lsct, List<FileInfo> fileInfoList);
/** .
* @param lsct
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String removeAtchFile(Lsct lsct);
/** .
* @param lsct
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
String removeLsct(Lsct lsct);
}

@ -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;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
@Service("hirerService")
public class HirerServiceBean extends AbstractServiceBean implements HirerService {
/** 임차인 정보 정보 Bean */
@Resource(name = "hirerBean")
private HirerBean hirerBean;
@Override
public List<DataObject> getHirerList(RentQuery req) {
return hirerBean.getHirerList(req);
}
@Override
public List<DataObject> getHirers(RentQuery req) {
return hirerBean.getHirers(req);
}
@Override
public DataObject getHirerInfo(RentQuery req) {
return hirerBean.getHirerInfo(req);
}
@Override
public String createHirer(Hirer hirer, List<FileInfo> fileInfoList) {
return hirerBean.createHirer(hirer, fileInfoList);
}
@Override
public String updateHirer(Hirer hirer, List<FileInfo> 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);
}
}

@ -11,10 +11,9 @@ import cokr.xit.foundation.data.DataObject;
import cokr.xit.base.file.FileInfo; import cokr.xit.base.file.FileInfo;
import cokr.xit.base.file.service.FileQuery; import cokr.xit.base.file.service.FileQuery;
import cokr.xit.base.file.service.bean.FileBean; import cokr.xit.base.file.service.bean.FileBean;
import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.rent.Lsct;
import cokr.xit.fims.rent.Hirer;
import cokr.xit.fims.rent.RentQuery; import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.dao.HirerMapper; import cokr.xit.fims.rent.dao.LsctMapper;
/** Bean /** Bean
* *
@ -26,68 +25,68 @@ import cokr.xit.fims.rent.dao.HirerMapper;
* ================================ * ================================
* </pre> * </pre>
*/ */
@Component("hirerBean") @Component("lsctBean")
public class HirerBean extends AbstractBean { public class LsctBean extends AbstractBean {
/** 임차인 정보 정보 DAO */ /** 임대차계약 정보 정보 DAO */
@Resource(name = "hirerMapper") @Resource(name = "lsctMapper")
private HirerMapper hirerMapper; private LsctMapper lsctMapper;
/** 첨부파일 Bean */ /** 첨부파일 Bean */
@Resource(name="fileBean") @Resource(name="fileBean")
private FileBean fileBean; private FileBean fileBean;
/** . /** .
* @param req * @param req
* @return * @return
*/ */
public List<DataObject> getHirerList(RentQuery req) { public List<DataObject> getLsctList(RentQuery req) {
return hirerMapper.selectHirerList(req); return lsctMapper.selectLsctList(req);
} }
/** . /** .
* @param req * @param req
* @return * @return
*/ */
public List<DataObject> getHirers(RentQuery req) { public List<DataObject> getLscts(RentQuery req) {
return hirerMapper.selectHirers(req); return lsctMapper.selectLscts(req);
} }
/** . /** .
* @param req * @param req
* @return * @return
*/ */
public DataObject getHirerInfo(RentQuery req) { public DataObject getLsctInfo(RentQuery req) {
return hirerMapper.selectHirerInfo(req); return lsctMapper.selectLsctInfo(req);
} }
/** . /** .
* @param hirer * @param lsct
* @return * @return
* <ul><li> true</li> * <ul><li> true</li>
* <li> false</li> * <li> false</li>
* </ul> * </ul>
*/ */
public String createHirer(Hirer hirer, List<FileInfo> fileInfoList) { public String createLsct(Lsct lsct, List<FileInfo> fileInfoList) {
// 변수 선언 // 변수 선언
int rtnNocs = -1; // 처리 결과 건수 int rtnNocs = -1; // 처리 결과 건수
// 첨부파일 갯수 // 첨부파일 갯수
if (fileInfoList != null && !fileInfoList.isEmpty()) { if (fileInfoList != null && !fileInfoList.isEmpty()) {
hirer.setAtchFileCnt(fileInfoList.size()); lsct.setAtchFileCnt(fileInfoList.size());
} else { } else {
hirer.setAtchFileCnt(0); lsct.setAtchFileCnt(0);
} }
// 임차인(TB_HIRER) 대장을 등록한다. // 임대차계약(TB_LSCT) 대장을 등록한다.
rtnNocs = hirerMapper.insertHirer(hirer); rtnNocs = lsctMapper.insertLsct(lsct);
if (rtnNocs != 1) { if (rtnNocs != 1) {
throw new RuntimeException("[F] 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("[F] 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }
// 파일 첨부하기 // 파일 첨부하기
if (fileInfoList != null && !fileInfoList.isEmpty()) { 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); fileBean.create(fileInfoList);
} }
@ -95,24 +94,24 @@ public class HirerBean extends AbstractBean {
return "[S] 작업이 정상 처리 되었습니다."; return "[S] 작업이 정상 처리 되었습니다.";
} }
/** . /** .
* @param hirer * @param lsct
* @return * @return
* <ul><li> true</li> * <ul><li> true</li>
* <li> false</li> * <li> false</li>
* </ul> * </ul>
*/ */
public String updateHirer(Hirer hirer, List<FileInfo> fileInfoList) { public String updateLsct(Lsct lsct, List<FileInfo> fileInfoList) {
// 첨부파일 수정 // 첨부파일 수정
if (fileInfoList != null && !fileInfoList.isEmpty()) { if (fileInfoList != null && !fileInfoList.isEmpty()) {
fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Hirer.INF_TYPE) fileInfoList.forEach(fileInfo -> fileInfo.setInfoType(Lsct.INF_TYPE)
.setInfoKey(hirer.getHirerId())); .setInfoKey(lsct.getLsctId()));
fileBean.create(fileInfoList); // 파일 등록 fileBean.create(fileInfoList); // 파일 등록
// 임차인 ID로 파일(TB_FILE) 정보 조회 // 임차인 ID로 파일(TB_FILE) 정보 조회
List<DataObject> fileList = fileBean.getFileList(new FileQuery().setInfoType(Hirer.INF_TYPE) List<DataObject> fileList = fileBean.getFileList(new FileQuery().setInfoType(Lsct.INF_TYPE)
.setInfoKeys(hirer.getHirerId()) .setInfoKeys(lsct.getLsctId())
.setOrderBy("FILE_ID")); .setOrderBy("FILE_ID"));
if (fileList != null && fileList.size() > 0) { 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) 대장을 수정한다. // 임대차계약(TB_LSCT) 대장을 수정한다.
int rtnNocs = hirerMapper.updateHirer(hirer); int rtnNocs = lsctMapper.updateLsct(lsct);
if (rtnNocs != 1) { if (rtnNocs != 1) {
throw new RuntimeException("[F] 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("[F] 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }
@ -138,27 +137,27 @@ public class HirerBean extends AbstractBean {
return "[S] 작업이 정상 처리 되었습니다."; return "[S] 작업이 정상 처리 되었습니다.";
} }
/** . /** .
* @param hirer * @param lsct
* @return * @return
* <ul><li> true</li> * <ul><li> true</li>
* <li> false</li> * <li> false</li>
* </ul> * </ul>
*/ */
public String removeAtchFile(Hirer hirer) { public String removeAtchFile(Lsct lsct) {
// 첨부파일 삭제 // 첨부파일 삭제
fileBean.remove(hirer.getFileIDs()); fileBean.remove(lsct.getFileIDs());
// 임차인 ID로 파일(TB_FILE) 정보 조회 // 임대차계약 ID로 파일(TB_FILE) 정보 조회
List<DataObject> fileList = fileBean.getFileList(new FileQuery().setInfoType(Hirer.INF_TYPE) List<DataObject> fileList = fileBean.getFileList(new FileQuery().setInfoType(Lsct.INF_TYPE)
.setInfoKeys(hirer.getHirerId()) .setInfoKeys(lsct.getLsctIds())
.setOrderBy("FILE_ID")); .setOrderBy("FILE_ID"));
// 첨부파일 갯수 // 첨부파일 갯수
hirer.setAtchFileCnt(fileList.size()); lsct.setAtchFileCnt(fileList.size());
// 임차인(TB_HIRER) 대장에 첨부파일수를 수정한다. // 임대차계약(TB_LSCT) 대장에 첨부파일수를 수정한다.
int rtnNocs = hirerMapper.updateAtchFileCnt(hirer); int rtnNocs = lsctMapper.updateAtchFileCnt(lsct);
if (rtnNocs != 1) { if (rtnNocs != 1) {
throw new RuntimeException("[F] 파일삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("[F] 파일삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }
@ -166,16 +165,16 @@ public class HirerBean extends AbstractBean {
return "[S] 작업이 정상 처리 되었습니다."; return "[S] 작업이 정상 처리 되었습니다.";
} }
/** . /** .
* @param hirer * @param lsct
* @return * @return
* <ul><li> true</li> * <ul><li> true</li>
* <li> false</li> * <li> false</li>
* </ul> * </ul>
*/ */
public String removeHirer(Hirer hirer) { public String removeLsct(Lsct lsct) {
// 임차인(TB_HIRER) 대장을 삭제한다. // 임대차계약(TB_LSCT) 대장을 삭제한다.
int rtnNocs = hirerMapper.deleteHirer(hirer); int rtnNocs = lsctMapper.deleteLsct(lsct);
if (rtnNocs < 1) { if (rtnNocs < 1) {
throw new RuntimeException("[F] 삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback throw new RuntimeException("[F] 삭제 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
} }

@ -28,7 +28,7 @@ import cokr.xit.fims.rent.LsctMpng;
import cokr.xit.fims.rent.LsctAprv; import cokr.xit.fims.rent.LsctAprv;
import cokr.xit.fims.rent.RentQuery; import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.dao.FinSysFtpMapper; 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.LsctAprvMapper;
import cokr.xit.fims.rent.dao.LsctMpngMapper; import cokr.xit.fims.rent.dao.LsctMpngMapper;
import cokr.xit.fims.rent.dao.RentEntMapper; import cokr.xit.fims.rent.dao.RentEntMapper;
@ -60,9 +60,9 @@ public class LsctMpngBean extends AbstractBean {
@Resource(name = "rentEntMapper") @Resource(name = "rentEntMapper")
private RentEntMapper rentEntMapper; private RentEntMapper rentEntMapper;
/** 임차인 정보 정보 DAO */ /** 임대차계약 정보 정보 DAO */
@Resource(name = "hirerMapper") @Resource(name = "lsctMapper")
private HirerMapper hirerMapper; private LsctMapper lsctMapper;
/** 파일 정보 Bean */ /** 파일 정보 Bean */
@Resource(name = "fileBean") @Resource(name = "fileBean")
@ -391,7 +391,7 @@ public class LsctMpngBean extends AbstractBean {
RentQuery req = new RentQuery(); RentQuery req = new RentQuery();
req.setCrdnId(lsctMpng.getCrdnId()); // 단속 ID req.setCrdnId(lsctMpng.getCrdnId()); // 단속 ID
req.setEntId(lsctMpng.getEntId()); // 기업 ID req.setEntId(lsctMpng.getEntId()); // 기업 ID
req.setHirerId(lsctMpng.getHirerId()); // 임차인 ID req.setLsctId(lsctMpng.getLsctId()); // 임대차계약 ID
req.setDelYn("N"); // 삭제 여부 req.setDelYn("N"); // 삭제 여부
// 단속(TB_CRDN) 대장 조회 // 단속(TB_CRDN) 대장 조회
@ -410,17 +410,17 @@ public class LsctMpngBean extends AbstractBean {
// 임대 기업 자료가 없다면 종료.. // 임대 기업 자료가 없다면 종료..
if (rentEntInfo == null) { if (rentEntInfo == null) {
rtnMsg = "[F] 작업 중 임대 기업 자료가 존재하지 않습니다."; rtnMsg = "[F] 작업 중 임대기업 자료가 존재하지 않습니다.";
return rtnMsg; return rtnMsg;
} }
// 임차인(TB_HIRER) 대장 조회 // 임차인(TB_HIRER) 대장 조회
req.setOrderBy("H.HIRER_ID DESC"); req.setOrderBy("L.LSCT_ID DESC");
DataObject hirerInfo = hirerMapper.selectHirerInfo(req); DataObject lsctInfo = lsctMapper.selectLsctInfo(req);
// 임차인 자료가 없다면 종료.. // 임차인 자료가 없다면 종료..
if (hirerInfo == null) { if (lsctInfo == null) {
rtnMsg = "[F] 작업 중 임차인 자료가 존재하지 않습니다."; rtnMsg = "[F] 작업 중 임대차계약 자료가 존재하지 않습니다.";
return rtnMsg; return rtnMsg;
} }

@ -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;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2024-08-27 JoJH
* ================================
* </pre>
*/
@Service("lsctService")
public class LsctServiceBean extends AbstractServiceBean implements LsctService {
/** 임대차계약 정보 정보 Bean */
@Resource(name = "lsctBean")
private LsctBean lsctBean;
@Override
public List<DataObject> getLsctList(RentQuery req) {
return lsctBean.getLsctList(req);
}
@Override
public List<DataObject> getLscts(RentQuery req) {
return lsctBean.getLscts(req);
}
@Override
public DataObject getLsctInfo(RentQuery req) {
return lsctBean.getLsctInfo(req);
}
@Override
public String createLsct(Lsct lsct, List<FileInfo> fileInfoList) {
return lsctBean.createLsct(lsct, fileInfoList);
}
@Override
public String updateLsct(Lsct lsct, List<FileInfo> 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);
}
}

@ -103,7 +103,7 @@ public class RentEntBean extends AbstractBean {
if (userRentEntMpngInfo != null) { if (userRentEntMpngInfo != null) {
rtnMsg = "[F] 등록 작업 중 오류가 발생하였습니다.<br>이미 등록된 매핑 정보가 존재합니다." rtnMsg = "[F] 등록 작업 중 오류가 발생하였습니다.<br>이미 등록된 매핑 정보가 존재합니다."
+ "<p>" + "법인(사업자)번호 : " + userRentEntMpngInfo.string("ENT_NO") + "</p>";; + "<p>" + "법인(사업자)번호 : " + userRentEntMpngInfo.string("ENT_REG_NO") + "</p>";;
return rtnMsg; return rtnMsg;
} }
@ -189,6 +189,12 @@ public class RentEntBean extends AbstractBean {
public String createRentEnt(RentEnt rentEnt) { public String createRentEnt(RentEnt rentEnt) {
// 변수 선언 // 변수 선언
String rtnMsg = ""; // 처리 결과 메시지 String rtnMsg = ""; // 처리 결과 메시지
String regExp = "^[0-9]+$"; // 숫자 정규식
if (!rentEnt.getEntRegNo().matches(regExp)) {
rtnMsg = "[F] 등록 중 오류가 발생하였습니다.<br>법인(사업자)번호는 숫자만 입력되어야 합니다.";
return rtnMsg;
}
RentQuery req = new RentQuery(); RentQuery req = new RentQuery();
req.setSchEntRegNo(rentEnt.getEntRegNo()); req.setSchEntRegNo(rentEnt.getEntRegNo());
@ -219,6 +225,15 @@ public class RentEntBean extends AbstractBean {
* </ul> * </ul>
*/ */
public String updateRentEnt(RentEnt rentEnt) { public String updateRentEnt(RentEnt rentEnt) {
// 변수 선언
String rtnMsg = ""; // 처리 결과 메시지
String regExp = "^[0-9]+$"; // 숫자 정규식
if (!rentEnt.getEntRegNo().matches(regExp)) {
rtnMsg = "[F] 등록 중 오류가 발생하였습니다.<br>법인(사업자)번호는 숫자만 입력되어야 합니다.";
return rtnMsg;
}
// 임대기업(TB_RENT_ENT) 대장을 수정한다. // 임대기업(TB_RENT_ENT) 대장을 수정한다.
int rtnNocs = rentEntMapper.updateRentEnt(rentEnt); int rtnNocs = rentEntMapper.updateRentEnt(rentEnt);
if (rtnNocs != 1) { if (rtnNocs != 1) {

@ -123,12 +123,11 @@ public class Rent01Controller extends ApplicationController {
List<DataObject> list = rentEntService.getUserRentEntMpngList(req.setFetchSize(0)); List<DataObject> list = rentEntService.getUserRentEntMpngList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>(); Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("사용자계정", format.of("USER_ACNT")); valueMap.put("사용자계정", format.of("USER_ACNT"));
valueMap.put("사용자명", format.of("USER_NM").style(center)); valueMap.put("사용자명", format.of("USER_NM").style(center));
valueMap.put("기업구분", format.of("ENT_SE_NM").style(center)); valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
valueMap.put("기업명", format.of("ENT_NM")); 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("RPRSV_NM").style(center));
valueMap.put("전화번호", format.of("ENT_TELNO").style(center)); valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
valueMap.put("팩스번호", format.of("ENT_FXNO").style(center)); valueMap.put("팩스번호", format.of("ENT_FXNO").style(center));
@ -304,7 +303,7 @@ public class Rent01Controller extends ApplicationController {
Map<String,Object> valueMap = new HashMap<String,Object>(); Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("기업구분", format.of("ENT_SE_NM").style(center)); valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
valueMap.put("기업명", format.of("ENT_NM")); 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("RPRSV_NM").style(center));
valueMap.put("전화번호", format.of("ENT_TELNO").style(center)); valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
valueMap.put("팩스번호", format.of("ENT_FXNO").style(center)); valueMap.put("팩스번호", format.of("ENT_FXNO").style(center));

@ -27,11 +27,11 @@ import cokr.xit.fims.base.FimsUser;
import cokr.xit.fims.cmmn.service.bean.StngBean; import cokr.xit.fims.cmmn.service.bean.StngBean;
import cokr.xit.fims.cmmn.xls.FormatMaker; import cokr.xit.fims.cmmn.xls.FormatMaker;
import cokr.xit.fims.cmmn.xls.StyleMaker; 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.LsctMpng;
import cokr.xit.fims.rent.LsctAprv; import cokr.xit.fims.rent.LsctAprv;
import cokr.xit.fims.rent.RentQuery; 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.LsctMpngService;
import cokr.xit.fims.rent.service.RentEntService; import cokr.xit.fims.rent.service.RentEntService;
import cokr.xit.fims.task.Task; import cokr.xit.fims.task.Task;
@ -55,20 +55,20 @@ public class Rent02Controller extends ApplicationController {
public class METHOD_URL { public class METHOD_URL {
public static final String public static final String
leaseContractRegistrationMain = "/010/main.do" // 임대차계약 대장 등록 메인 화면 crackdownLeaseContractMain = "/010/main.do" // 단속 임대차계약 대장 등록 메인 화면
, getLeaseContractRegistrationList = "/010/list.do" // 임대차계약 대장 등록 단속 대장 목록 조회 , getCrackdownLeaseContractList = "/010/list.do" // 단속 임대차계약 대장 등록 목록 조회
, removeLeaseContract = "/010/removeCtrt.do" // 임대차계약 대장 삭제 , removeLeaseContractMapping = "/010/removeMpng.do" // 임대차계약 매핑 대장 삭제
, getLeaseContractRegistrationInfo = "/020/info.do" // 임대차계약 대장 등록 상세 화면 , getCrackdownLeaseContractInfo = "/020/info.do" // 단속 임대차계약 대장 등록 상세 화면
, getLeaseContractRegistration = "/020/list.do" // 임대차계약 대장 등록 상세 정보 조회 , getCrackdownLeaseContract = "/020/list.do" // 단속 임대차계약 대장 등록 상세 조회
, hirerMain = "/030/main.do" // 임대차계약 등록 단속 대장 상세 조회 , leaseContractMain = "/030/main.do" // 임대차계약 대장 메인 화면
, getHirerList = "/030/list.do" // 임차인 대장 목록 조회 , getLeaseContractList = "/030/list.do" // 임대차계약 대장 목록 조회
, createLeaseContract = "/030/createCtrt.do" // 임대차계약 대장 등록 , createLeaseContractMapping = "/030/createMpng.do" // 임대차계약 매핑 대장 등록
, removeHirer = "/030/removeHirer.do" // 임차인 대장 삭제 , removeLeaseContract = "/030/removeLsct.do" // 임대차계약 대장 삭제
, getHirerInfo = "/040/info.do" // 임차인 대장 상세 화면 , getLeaseContractInfo = "/040/info.do" // 임대차계약 대장 상세 화면
, getHirer = "/040/list.do" // 임차인 대장 상세 정보 조회 , getLeaseContract = "/040/list.do" // 임대차계약 대장 상세 정보 조회
, createHirer = "/040/createHirer.do" // 임차인 대장 등록 , createLeaseContract = "/040/createLsct.do" // 임대차계약 대장 등록
, updateHirer = "/040/updateHirer.do" // 임차인 대장 수정 , updateLeaseContract = "/040/updateLsct.do" // 임대차계약 대장 수정
, removeAttachmentFile = "/040/removeAtchFile.do" // 임차인 첨부 파일 수정 , removeAttachmentFile = "/040/removeAtchFile.do" // 임대차계약 첨부 파일 삭제
, leaseContractMappingMain = "/050/main.do" // 임대차계약 매핑 대장 관리 메인 화면 , leaseContractMappingMain = "/050/main.do" // 임대차계약 매핑 대장 관리 메인 화면
, getLeaseContractMappingList = "/050/list.do" // 임대차계약 매핑 대장 관리 대장 목록 조회 , getLeaseContractMappingList = "/050/list.do" // 임대차계약 매핑 대장 관리 대장 목록 조회
, createLeaseContractApproval = "/050/createAprv.do" // 임대차계약 승인 대장 등록 , createLeaseContractApproval = "/050/createAprv.do" // 임대차계약 승인 대장 등록
@ -83,8 +83,8 @@ public class Rent02Controller extends ApplicationController {
private LsctMpngService lsctMpngService; private LsctMpngService lsctMpngService;
/**임차인 정보 서비스*/ /**임차인 정보 서비스*/
@Resource(name = "hirerService") @Resource(name = "lsctService")
private HirerService hirerService; private LsctService lsctService;
/**임대 기업 대장 서비스*/ /**임대 기업 대장 서비스*/
@Resource(name = "rentEntService") @Resource(name = "rentEntService")
@ -94,12 +94,11 @@ public class Rent02Controller extends ApplicationController {
@Resource(name = "stngBean") @Resource(name = "stngBean")
private StngBean stngBean; private StngBean stngBean;
/** (lsct/lsct-main) . /** (fims/rent/rent02010-main) .
* {@link #getLsctList(LsctQuery) } . * @return fims/rent/rent02010-main
* @return /lsct/lsct-main
*/ */
@RequestMapping(name = "임대차계약 대장 등록 메인", value=METHOD_URL.leaseContractRegistrationMain) @RequestMapping(name = "단속 임대차계약 대장 등록 메인 화면", value=METHOD_URL.crackdownLeaseContractMain)
public ModelAndView leaseContractRegistrationMain() { public ModelAndView crackdownLeaseContractMain() {
ModelAndView mav = new ModelAndView("fims/rent/rent02010-main"); ModelAndView mav = new ModelAndView("fims/rent/rent02010-main");
// 사용자 정보 // 사용자 정보
@ -119,21 +118,21 @@ public class Rent02Controller extends ApplicationController {
; ;
} }
/** .<br /> /** .
* {@link LsctMpngService#getLsctList(LsctQuery)} * {@link LsctMpngService#getLsctList(LsctQuery)}
* @param req * @param req
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
* "lsctList": [ ] * "List": [ ]
* "lsctStart": * "Start":
* "lsctFetch": * "Fetch":
* "lsctTotal": * "Total":
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 등록 단속 대장 조회", value=METHOD_URL.getLeaseContractRegistrationList) @RequestMapping(name = "단속 임대차계약 대장 등록 목록 조회", value=METHOD_URL.getCrackdownLeaseContractList)
public ModelAndView getLeaseContractRegistrationList(RentQuery req) { public ModelAndView getCrackdownLeaseContractList(RentQuery req) {
if (!"xls".equals(req.getDownload())) { if (!"xls".equals(req.getDownload())) {
List<?> result = lsctMpngService.getCrdnLsctMpngList(setFetchSize(req)); List<?> result = lsctMpngService.getCrdnLsctMpngList(setFetchSize(req));
return setPagingInfo(new ModelAndView("jsonView"), result, ""); return setPagingInfo(new ModelAndView("jsonView"), result, "");
@ -182,18 +181,18 @@ public class Rent02Controller extends ApplicationController {
} }
} }
/** (fims/rent/rent02020-info) . /** (fims/rent/rent02020-info) .
* {@link #getRentEntList(RentEntQuery) } . * {@link #getCrackdownLeaseContract(RentQuery) } .
* @return /rentEnt/rentEnt-main * @return fims/rent/rent02020-info
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 등록 단속 상세 화면", value=METHOD_URL.getLeaseContractRegistrationInfo) @RequestMapping(name = "단속 임대차계약 대장 등록 상세 화면", value=METHOD_URL.getCrackdownLeaseContractInfo)
public ModelAndView getLeaseContractRegistrationInfo(HttpServletRequest hReq, RentQuery req) { public ModelAndView getCrackdownLeaseContractInfo(HttpServletRequest hReq, RentQuery req) {
boolean json = jsonResponse(); boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02020-info"); 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)); mav.addObject("Info", json ? info : toJson(info));
if (!json) { if (!json) {
@ -212,24 +211,24 @@ public class Rent02Controller extends ApplicationController {
} }
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 등록 단속 상세정보 조회", value=METHOD_URL.getLeaseContractRegistration) @RequestMapping(name = "단속 임대차계약 대장 등록 상세 조회", value=METHOD_URL.getCrackdownLeaseContract)
public DataObject getLeaseContractRegistration(RentQuery req) { public DataObject getCrackdownLeaseContract(RentQuery req) {
// 상세 정보 조회 // 상세 정보 조회
return lsctMpngService.getCrdnLsctMpngInfo(req); return lsctMpngService.getCrdnLsctMpngInfo(req);
} }
/** . /** .
* @param lsct * @param lsctMpng
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
* "saved": true, false * "saved": true, false
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 매핑 대장 등록", value = METHOD_URL.createLeaseContract) @RequestMapping(name = "임대차계약 매핑 대장 등록", value = METHOD_URL.createLeaseContractMapping)
public ModelAndView createLeaseContractMapping(LsctMpng lsct) { public ModelAndView createLeaseContractMapping(LsctMpng lsctMpng) {
boolean saved = false; boolean saved = false;
String rtnMsg = lsctMpngService.createLsctMpng(lsct); String rtnMsg = lsctMpngService.createLsctMpng(lsctMpng);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -242,8 +241,8 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** . /** .
* @param lsctIDs * @param lsctMpngIds s
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
* "affected": * "affected":
@ -251,10 +250,10 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 매핑 대장 제거", value = METHOD_URL.removeLeaseContract) @RequestMapping(name = "임대차계약 매핑 대장 제거", value = METHOD_URL.removeLeaseContractMapping)
public ModelAndView removeLeaseContractMapping(LsctMpng lsct) { public ModelAndView removeLeaseContractMapping(LsctMpng lsctMpng) {
boolean saved = false; boolean saved = false;
String rtnMsg = lsctMpngService.removeLsctMpng(lsct); String rtnMsg = lsctMpngService.removeLsctMpng(lsctMpng);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -267,12 +266,11 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** (fims/rent/rent02030-main) . /**() (fims/rent/rent02030-main) .
* {@link #getRentEntList(RentEntQuery) } . * @return fims/rent/rent02030-main
* @return /rentEnt/rentEnt-main
*/ */
@RequestMapping(name = "임차인 대장 메인", value=METHOD_URL.hirerMain) @RequestMapping(name = "임대차계약 대장 메인 화면", value=METHOD_URL.leaseContractMain)
public ModelAndView hirerMain(RentQuery req) { public ModelAndView leaseContractMain(RentQuery req) {
ModelAndView mav = new ModelAndView("fims/rent/rent02030-main"); ModelAndView mav = new ModelAndView("fims/rent/rent02030-main");
return mav return mav
@ -285,22 +283,22 @@ public class Rent02Controller extends ApplicationController {
; ;
} }
/** .<br /> /**() .
* {@link HirerService#getHirerList(HirerQuery)} * {@link LsctService#getHirerList(RentQuery)}
* @param req * @param req
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
* "hirerList": [ ] * "List": [ ]
* "hirerStart": * "Start":
* "hirerFetch": * "Fetch":
* "hirerTotal": * "Total":
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 조회", value=METHOD_URL.getHirerList) @RequestMapping(name = "임대차계약 대장 목록 조회", value=METHOD_URL.getLeaseContractList)
public ModelAndView getHirerList(RentQuery req) { public ModelAndView getLeaseContractList(RentQuery req) {
if (!"xls".equals(req.getDownload())) { if (!"xls".equals(req.getDownload())) {
List<?> result = hirerService.getHirerList(setFetchSize(req)); List<?> result = lsctService.getLsctList(setFetchSize(req));
return setPagingInfo(new ModelAndView("jsonView"), result, ""); return setPagingInfo(new ModelAndView("jsonView"), result, "");
} else { } else {
// 현재 날짜 구하기 // 현재 날짜 구하기
@ -314,12 +312,12 @@ public class Rent02Controller extends ApplicationController {
CellStyle center = format.cellStyle(Style.CENTER); CellStyle center = format.cellStyle(Style.CENTER);
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss(); CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = hirerService.getHirerList(req.setFetchSize(0)); List<DataObject> list = lsctService.getLsctList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>(); Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("기업구분", format.of("ENT_SE_NM").style(center)); valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
valueMap.put("기업명", format.of("ENT_NM")); 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("RPRSV_NM").style(center));
valueMap.put("전화번호", format.of("ENT_TELNO").style(center)); valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
valueMap.put("팩스번호", format.of("ENT_FXNO").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) } . * {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main * @return fims/rent/rent02040-info
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 상세 화면", value=METHOD_URL.getHirerInfo) @RequestMapping(name = "임대차계약 대장 상세 화면", value=METHOD_URL.getLeaseContractInfo)
public ModelAndView getHirerInfo(HttpServletRequest hReq, RentQuery req) { public ModelAndView getLeaseContractInfo(HttpServletRequest hReq, RentQuery req) {
boolean json = jsonResponse(); boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02040-info"); ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02040-info");
// 수정(update)으로 호출 // 수정(update)으로 호출
if (req.getHirerId() != null) { if (req.getLsctId() != null) {
DataObject info = getHirer(req); // 상세 정보 조회 DataObject info = getLeaseContract(req); // 임대차계약 상세 정보 조회
mav.addObject("Info", json ? info : toJson(info)); mav.addObject("Info", json ? info : toJson(info));
} }
@ -372,13 +370,13 @@ public class Rent02Controller extends ApplicationController {
} }
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 상세 정보 조회", value=METHOD_URL.getHirer) @RequestMapping(name = "임대차계약 대장 상세 정보 조회", value=METHOD_URL.getLeaseContract)
public DataObject getHirer(RentQuery req) { public DataObject getLeaseContract(RentQuery req) {
// 상세 정보 조회 // 상세 정보 조회
return hirerService.getHirerInfo(req); return lsctService.getLsctInfo(req);
} }
/** . /** .
* @param hirer * @param hirer
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
@ -386,8 +384,8 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 등록", value=METHOD_URL.createHirer) @RequestMapping(name = "임대차계약 대장 등록", value=METHOD_URL.createLeaseContract)
public ModelAndView createHirer(Hirer hirer, MultipartFile[] uploadFiles) { public ModelAndView createLeaseContract(Lsct lsct, MultipartFile[] uploadFiles) {
boolean saved = false; boolean saved = false;
// 첨부 파일 // 첨부 파일
@ -396,7 +394,7 @@ public class Rent02Controller extends ApplicationController {
fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles); fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles);
} }
String rtnMsg = hirerService.createHirer(hirer, fileInfoList); String rtnMsg = lsctService.createLsct(lsct, fileInfoList);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -409,7 +407,7 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** . /** .
* @param hirer * @param hirer
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
@ -417,8 +415,8 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 수정", value=METHOD_URL.updateHirer) @RequestMapping(name = "임대차계약 대장 수정", value=METHOD_URL.updateLeaseContract)
public ModelAndView updateHirer(Hirer hirer, MultipartFile[] uploadFiles) { public ModelAndView updateLeaseContract(Lsct lsct, MultipartFile[] uploadFiles) {
boolean saved = false; boolean saved = false;
// 첨부 파일 // 첨부 파일
@ -427,7 +425,7 @@ public class Rent02Controller extends ApplicationController {
fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles); fileInfoList = new FileInfoFactory().makeFileInfos(null, uploadFiles);
} }
String rtnMsg = hirerService.updateHirer(hirer, fileInfoList); String rtnMsg = lsctService.updateLsct(lsct, fileInfoList);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -440,7 +438,7 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** , . /** , .
* @param hirer * @param hirer
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
@ -448,10 +446,10 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 첨부파일 삭제", value=METHOD_URL.removeAttachmentFile) @RequestMapping(name = "임대차계약 대장 첨부파일 삭제", value=METHOD_URL.removeAttachmentFile)
public ModelAndView removeAttachmentFile(Hirer hirer) { public ModelAndView removeAttachmentFile(Lsct lsct) {
boolean saved = false; boolean saved = false;
String rtnMsg = hirerService.removeAtchFile(hirer); String rtnMsg = lsctService.removeAtchFile(lsct);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -464,7 +462,7 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** . /** .
* @param hirerIDs * @param hirerIDs
* @return jsonView * @return jsonView
* <pre><code> { * <pre><code> {
@ -473,10 +471,10 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임차인 대장 삭제", value=METHOD_URL.removeHirer) @RequestMapping(name = "임대차계약 대장 삭제", value=METHOD_URL.removeLeaseContract)
public ModelAndView removeHirer(Hirer hirer) { public ModelAndView removeLeaseContract(Lsct lsct) {
boolean saved = false; boolean saved = false;
String rtnMsg = hirerService.removeHirer(hirer); String rtnMsg = lsctService.removeLsct(lsct);
if (rtnMsg.contains("[S]")) { if (rtnMsg.contains("[S]")) {
saved = true; saved = true;
@ -493,7 +491,7 @@ public class Rent02Controller extends ApplicationController {
* {@link #getLsctList(LsctQuery) } . * {@link #getLsctList(LsctQuery) } .
* @return /lsct/lsct-main * @return /lsct/lsct-main
*/ */
@RequestMapping(name = "임대차계약 매핑 대장 관리 메인", value=METHOD_URL.leaseContractMappingMain) @RequestMapping(name = "임대차계약 승인 대장 관리 메인", value=METHOD_URL.leaseContractMappingMain)
public ModelAndView leaseContractMappingMain() { public ModelAndView leaseContractMappingMain() {
ModelAndView mav = new ModelAndView("fims/rent/rent02050-main"); ModelAndView mav = new ModelAndView("fims/rent/rent02050-main");
@ -526,7 +524,7 @@ public class Rent02Controller extends ApplicationController {
* }</code></pre> * }</code></pre>
*/ */
@Task("CMN") @Task("CMN")
@RequestMapping(name = "임대차계약 매핑 대장 관리 조회", value=METHOD_URL.getLeaseContractMappingList) @RequestMapping(name = "임대차계약 승인 대장 관리 조회", value=METHOD_URL.getLeaseContractMappingList)
public ModelAndView getLeaseContractMappingList(RentQuery req) { public ModelAndView getLeaseContractMappingList(RentQuery req) {
if (!"xls".equals(req.getDownload())) { if (!"xls".equals(req.getDownload())) {
List<?> result = lsctMpngService.getLsctMpngList(setFetchSize(req)); List<?> result = lsctMpngService.getLsctMpngList(setFetchSize(req));
@ -601,14 +599,14 @@ public class Rent02Controller extends ApplicationController {
// 단건 // 단건
if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) { if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) {
rtnMsg = lsctMpngService.createLsctAprv(lsctAprv); // 등록 rtnMsg = lsctMpngService.createLsctAprv(lsctAprv); // 등록
} else { } else {
// Ids 만큼 반복 등록 // Ids 만큼 반복 등록
for (String lsctMpngId : lsctAprv.getLsctMpngIds()) { for (String lsctMpngId : lsctAprv.getLsctMpngIds()) {
LsctAprv createAprv = new LsctAprv(); LsctAprv createAprv = new LsctAprv();
createAprv.setLsctMpngId(lsctMpngId); createAprv.setLsctMpngId(lsctMpngId);
rtnMsg = lsctMpngService.createLsctAprv(createAprv); // 등록 rtnMsg = lsctMpngService.createLsctAprv(createAprv); // 등록
if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료.. if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료..
saved = false; saved = false;
break; break;
@ -642,14 +640,14 @@ public class Rent02Controller extends ApplicationController {
// 단건 // 단건
if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) { if (lsctAprv.getLsctMpngIds() == null || lsctAprv.getLsctMpngIds().length < 1) {
rtnMsg = lsctMpngService.removeLsctAprv(lsctAprv); // 삭제 rtnMsg = lsctMpngService.removeLsctAprv(lsctAprv); // 삭제
} else { } else {
// Ids 만큼 반복 등록 // Ids 만큼 반복 등록
for (String lsctMpngId : lsctAprv.getLsctMpngIds()) { for (String lsctMpngId : lsctAprv.getLsctMpngIds()) {
LsctAprv removeAprv = new LsctAprv(); LsctAprv removeAprv = new LsctAprv();
removeAprv.setLsctMpngId(lsctMpngId); removeAprv.setLsctMpngId(lsctMpngId);
rtnMsg = lsctMpngService.removeLsctAprv(removeAprv); // 삭제 rtnMsg = lsctMpngService.removeLsctAprv(removeAprv); // 삭제
if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료.. if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료..
saved = false; saved = false;
break; break;
@ -668,7 +666,7 @@ public class Rent02Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg); .addObject("rtnMsg", rtnMsg);
} }
/** (fims/rent/rent02060-info) . /** (fims/rent/rent02060-info) .
* {@link #getRentEntList(RentEntQuery) } . * {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main * @return /rentEnt/rentEnt-main
*/ */

@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.rent.dao.HirerMapper"> <mapper namespace="cokr.xit.fims.rent.dao.LsctMapper">
<!-- 임차인 정보 정보 매퍼 <!-- 임차인 정보 정보 매퍼
========== 변경 이력 ========== ========== 변경 이력 ==========
2024-08-27 JoJH 최초 작성 2024-08-27 JoJH 최초 작성
============================ --> ============================ -->
<resultMap id="hirerRow" type="cokr.xit.fims.rent.Hirer"> <!-- 임차인 대장 --> <resultMap id="hirerRow" type="cokr.xit.fims.rent.Lsct"> <!-- 임대차계약 대장 -->
<result property="hirerId" column="HIRER_ID" /> <!-- 임차인 ID --> <result property="lsctId" column="LSCT_ID" /> <!-- 임대차계약 ID -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID --> <result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
<result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 --> <result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 -->
<result property="ctrtBgngYmd" column="CTRT_BGNG_YMD" /> <!-- 계약 시작 일자 --> <result property="ctrtBgngYmd" column="CTRT_BGNG_YMD" /> <!-- 계약 시작 일자 -->
@ -36,75 +36,64 @@
</resultMap> </resultMap>
<sql id="select"> <sql id="select">
SELECT H.HIRER_ID <!-- 임차인 ID --> SELECT L.LSCT_ID <!-- 임대차계약 ID -->
, H.ENT_ID <!-- 기업 ID --> , L.ENT_ID <!-- 기업 ID -->
, H.VHRNO <!-- 자동차등록번호 --> , L.VHRNO <!-- 자동차등록번호 -->
, H.CTRT_BGNG_YMD <!-- 계약 시작 일자 --> , L.CTRT_BGNG_YMD <!-- 계약 시작 일자 -->
, H.CTRT_BGNG_TM <!-- 계약 시작 시각 --> , L.CTRT_BGNG_TM <!-- 계약 시작 시각 -->
, (CONCAT(H.CTRT_BGNG_YMD, H.CTRT_BGNG_TM)) AS CTRT_BGNG_DT <!-- 계약 시작 일시 --> , (CONCAT(L.CTRT_BGNG_YMD, L.CTRT_BGNG_TM)) AS CTRT_BGNG_DT <!-- 계약 시작 일시 -->
, H.CTRT_END_YMD <!-- 계약 종료 시각 --> , L.CTRT_END_YMD <!-- 계약 종료 시각 -->
, H.CTRT_END_TM <!-- 계약 종료 일시 --> , L.CTRT_END_TM <!-- 계약 종료 일시 -->
, (CONCAT(H.CTRT_END_YMD, H.CTRT_END_TM)) AS CTRT_END_DT <!-- 계약 종료 일시 --> , (CONCAT(L.CTRT_END_YMD, L.CTRT_END_TM)) AS CTRT_END_DT <!-- 계약 종료 일시 -->
, H.HIRER_SE_CD <!-- 임차인 구분 코드 --> , L.HIRER_SE_CD <!-- 임차인 구분 코드 -->
, (SELECT GET_CODE_NM('FIM089', H.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM <!-- 임차인 구분 명 --> , (SELECT GET_CODE_NM('FIM089', L.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM <!-- 임차인 구분 명 -->
, H.HIRER_REG_NO <!-- 임차인 등록 번호 --> , L.HIRER_REG_NO <!-- 임차인 등록 번호 -->
, H.HIRER_NM <!-- 임차인 명 --> , L.HIRER_NM <!-- 임차인 명 -->
, H.HIRER_TELNO <!-- 임차인 전화번호 --> , L.HIRER_TELNO <!-- 임차인 전화번호 -->
, H.HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 --> , L.HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 -->
, H.HIRER_EML_ADDR <!-- 임차인 이메일 --> , L.HIRER_EML_ADDR <!-- 임차인 이메일 -->
, H.HIRER_ZIP <!-- 임차인 우편번호 --> , L.HIRER_ZIP <!-- 임차인 우편번호 -->
, H.HIRER_ADDR <!-- 임차인 주소 --> , L.HIRER_ADDR <!-- 임차인 주소 -->
, H.HIRER_DTL_ADDR <!-- 임차인 상세 주소 --> , L.HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
, H.ATCH_FILE_CNT <!-- 첨부 파일 수 --> , L.ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, H.DEL_YN <!-- 삭제 여부 --> , L.DEL_YN <!-- 삭제 여부 -->
, (SELECT GET_CODE_NM('CMN007', H.DEL_YN) FROM DUAL) AS DEL_YN_NM <!-- 삭제 여부 명 --> , (SELECT GET_CODE_NM('CMN007', L.DEL_YN) FROM DUAL) AS DEL_YN_NM <!-- 삭제 여부 명 -->
, H.REG_DT <!-- 등록 일시 --> , L.REG_DT <!-- 등록 일시 -->
, H.RGTR <!-- 등록자 --> , L.RGTR <!-- 등록자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.RGTR) AS RGTR_NM <!-- 등록자 명 --> , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.RGTR) AS RGTR_NM <!-- 등록자 명 -->
, H.MDFCN_DT <!-- 수정 일시 --> , L.MDFCN_DT <!-- 수정 일시 -->
, H.MDFR <!-- 수정자 --> , L.MDFR <!-- 수정자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.MDFR) AS MDFR_NM <!-- 수정자 명 --> , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = L.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 <!-- 삭제자 명 -->
FROM TB_HIRER H FROM TB_HIRER H
</sql> </sql>
<select id="selectHirerList" parameterType="map" resultType="dataobject">/* 임차인 대장 목록 조회(hirerMapper.selectHirerList) */ <select id="selectLsctList" parameterType="map" resultType="dataobject">/* 임대차계약 대장 목록 조회(lsctMapper.selectLsctList) */
<include refid="utility.paging-prefix" /> <include refid="utility.paging-prefix" />
<include refid="select" /> <include refid="select" />
<where> <where>
<if test="schCtrtYmd != null"> <if test="schCtrtYmd != null">
AND H.CTRT_BGNG_YMD <![CDATA[<=]]> #{schCtrtYmd} <!-- 계약 시작 시작 --> AND L.CTRT_BGNG_YMD <![CDATA[<=]]> #{schCtrtYmd} <!-- 계약 시작 시작 -->
AND H.CTRT_END_YMD <![CDATA[>=]]> #{schCtrtYmd} <!-- 계약 종료 종료 --> AND L.CTRT_END_YMD <![CDATA[>=]]> #{schCtrtYmd} <!-- 계약 종료 종료 -->
</if> </if>
<if test="schCtrtBgngYmd != null"> <if test="schCtrtBgngYmd != null">
AND H.CTRT_BGNG_YMD = #{schCtrtBgngYmd} <!-- 계약 시작 일자 --> AND L.CTRT_BGNG_YMD = #{schCtrtBgngYmd} <!-- 계약 시작 일자 -->
</if> </if>
<if test="schCtrtEndYmd != null"> <if test="schCtrtEndYmd != null">
AND H.CTRT_END_YMD = #{schCtrtEndYmd} <!-- 계약 종료 일자 --> AND L.CTRT_END_YMD = #{schCtrtEndYmd} <!-- 계약 종료 일자 -->
</if> </if>
<if test="schVhrno != null"> <if test="schVhrno != null">
AND H.VHRNO = #{schVhrno} <!-- 자동차등록번호 --> AND L.VHRNO = #{schVhrno} <!-- 자동차등록번호 -->
</if> </if>
<if test="schHirerRegNo != null"> <if test="schHirerRegNo != null">
AND H.HIRER_REG_NO = #{schHirerRegNo} <!-- 임차인 등록 번호 --> AND L.HIRER_REG_NO = #{schHirerRegNo} <!-- 임차인 등록 번호 -->
</if>
<if test="schEntRegNos != null">
AND RE.ENT_REG_NO IN ( <!-- 기업 등록 번호s -->
<foreach collection="schEntRegNos" item="schEntRegNo" separator=","> #{schEntRegNo} </foreach>
)
</if>
<if test="schEntRegNo != null">
AND RE.ENT_REG_NO = #{schEntRegNo} <!-- 기업 등록 번호 -->
</if> </if>
<if test="entIds != null"> <if test="entIds != null">
AND H.ENT_ID IN ( <!-- 기업 등록 번호s --> AND L.ENT_ID IN ( <!-- 기업 등록 번호s -->
<foreach collection="entIds" item="entId" separator=","> #{entId} </foreach> <foreach collection="entIds" item="entId" separator=","> #{entId} </foreach>
) )
</if> </if>
<if test="entId != null"> <if test="entId != null">
AND H.ENT_ID = #{entId} <!-- 기업 등록 번호 --> AND L.ENT_ID = #{entId} <!-- 기업 등록 번호 -->
</if> </if>
AND DEL_YN = 'N' AND DEL_YN = 'N'
</where> </where>
@ -112,55 +101,47 @@
<include refid="utility.paging-suffix" /> <include refid="utility.paging-suffix" />
</select> </select>
<select id="selectHirers" parameterType="map" resultType="dataobject">/* 임차인 대장 객체 가져오기(hirerMapper.selectHirers) */ <select id="selectLscts" parameterType="map" resultType="dataobject">/* 임대차계약 대장 객체 가져오기(lsctMapper.selectLscts) */
<include refid="select" /> <include refid="select" />
<where> <where>
<if test="hirerIds != null"> <if test="lsctIds != null">
AND H.HIRER_ID IN ( <!-- 임차인 IDs --> AND L.LSCT_ID IN ( <!-- 임대차계약 IDs -->
<foreach collection="hirerIds" item="hirerId" separator=","> #{hirerId} </foreach> <foreach collection="lsctIds" item="lsctId" separator=","> #{lsctId} </foreach>
) )
</if> </if>
<if test="hirerId != null"> <if test="lsctId != null">
AND H.HIRER_ID = #{hirerId} <!-- 임차인 ID --> AND L.LSCT_ID = #{lsctId} <!-- 임대차계약 ID -->
</if> </if>
<if test="entIds != null"> <if test="entIds != null">
AND H.ENT_ID IN ( <!-- 기업 IDs --> AND L.ENT_ID IN ( <!-- 기업 IDs -->
<foreach collection="entIds" item="entId" separator=","> #{entId} </foreach> <foreach collection="entIds" item="entId" separator=","> #{entId} </foreach>
) )
</if> </if>
<if test="entId != null"> <if test="entId != null">
AND H.ENT_ID = #{entId} <!-- 기업 ID --> AND L.ENT_ID = #{entId} <!-- 기업 ID -->
</if>
<if test="schEntRegNos != null">
AND RE.ENT_REG_NO IN ( <!-- 기업 등록 번호s -->
<foreach collection="schEntRegNos" item="schEntRegNo" separator=","> #{schEntRegNo} </foreach>
)
</if>
<if test="schEntRegNo != null">
AND RE.ENT_REG_NO = #{schEntRegNo} <!-- 기업 등록 번호 -->
</if> </if>
<choose> <choose>
<when test="delYn != null"> <when test="delYn != null">
AND H.DEL_YN = #{delYn} <!-- 삭제 여부 --> AND L.DEL_YN = #{delYn} <!-- 삭제 여부 -->
</when> </when>
<otherwise> <otherwise>
AND H.DEL_YN = 'N' <!-- 삭제 여부 --> AND L.DEL_YN = 'N' <!-- 삭제 여부 -->
</otherwise> </otherwise>
</choose> </choose>
</where> </where>
<include refid="utility.orderBy" /> <include refid="utility.orderBy" />
</select> </select>
<insert id="insertHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 대장 등록(hirerMapper.insertHirer) */ <insert id="insertLsct" parameterType="cokr.xit.fims.rent.Lsct">/* 임대차계약 대장 등록(lsctMapper.insertLsct) */
<selectKey resultType="string" keyProperty="hirerId" keyColumn="NEW_ID" order="BEFORE"> <selectKey resultType="string" keyProperty="lsctId" keyColumn="NEW_ID" order="BEFORE">
<include refid="numbering.key"> <include refid="numbering.key">
<property name="TABLE_NAME" value="TB_HIRER" /> <property name="TABLE_NAME" value="TB_LSCT" />
<property name="TABLE_KEY" value="HIRER_ID" /> <property name="TABLE_KEY" value="LSCT_ID" />
<property name="pad" value="10" /> <property name="pad" value="10" />
</include> </include>
</selectKey> </selectKey>
INSERT INTO TB_HIRER ( INSERT INTO TB_LSCT (
HIRER_ID <!-- 임차인 ID --> LSCT_ID <!-- 임대차계약 ID -->
, ENT_ID <!-- 기업 ID --> , ENT_ID <!-- 기업 ID -->
, VHRNO <!-- 자동차등록번호 --> , VHRNO <!-- 자동차등록번호 -->
, CTRT_BGNG_YMD <!-- 계약 시작 일자 --> , CTRT_BGNG_YMD <!-- 계약 시작 일자 -->
@ -184,7 +165,7 @@
, MDFR <!-- 수정자 --> , MDFR <!-- 수정자 -->
) )
VALUES ( VALUES (
#{hirerId} <!-- 임차인 ID --> #{lsctId} <!-- 임대차계약 ID -->
, #{entId} <!-- 기업 ID --> , #{entId} <!-- 기업 ID -->
, #{vhrno} <!-- 자동차등록번호 --> , #{vhrno} <!-- 자동차등록번호 -->
, #{ctrtBgngYmd} <!-- 계약 시작 일자 --> , #{ctrtBgngYmd} <!-- 계약 시작 일자 -->
@ -209,8 +190,8 @@
) )
</insert> </insert>
<update id="updateHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 대장 수정(hirerMapper.updateHirer) */ <update id="updateLsct" parameterType="cokr.xit.fims.rent.Lsct">/* 임대차계약 대장 수정(lsctMapper.updateLsct) */
UPDATE TB_HIRER UPDATE TB_LSCT
SET VHRNO = #{vhrno} <!-- 자동차등록번호 --> SET VHRNO = #{vhrno} <!-- 자동차등록번호 -->
, CTRT_BGNG_YMD = #{ctrtBgngYmd} <!-- 계약 시작 일자 --> , CTRT_BGNG_YMD = #{ctrtBgngYmd} <!-- 계약 시작 일자 -->
, CTRT_BGNG_TM = #{ctrtBgngTm} <!-- 계약 시작 시각 --> , CTRT_BGNG_TM = #{ctrtBgngTm} <!-- 계약 시작 시각 -->
@ -230,33 +211,33 @@
</if> </if>
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 --> , MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 --> , MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE HIRER_ID = #{hirerId} <!-- 임차인 ID --> WHERE LSCT_ID = #{lsctId} <!-- 임대차계약 ID -->
AND DEL_YN = 'N' AND DEL_YN = 'N'
</update> </update>
<update id="updateAtchFileCnt" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 대장 첨부파일수 수정(hirerMapper.updateHirer) */ <update id="updateAtchFileCnt" parameterType="cokr.xit.fims.rent.Lsct">/* 임대차계약 대장 첨부파일수 수정(lsctMapper.updateAtchFileCnt) */
UPDATE TB_HIRER UPDATE TB_LSCT
SET ATCH_FILE_CNT = #{atchFileCnt} <!-- 첨부 파일 수 --> SET ATCH_FILE_CNT = #{atchFileCnt} <!-- 첨부 파일 수 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 --> , MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 --> , MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE HIRER_ID = #{hirerId} <!-- 임차인 ID --> WHERE LSCT_ID = #{lsctId} <!-- 임대차계약 ID -->
AND DEL_YN = 'N' AND DEL_YN = 'N'
</update> </update>
<update id="deleteHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 대장 삭제(hirerMapper.deleteHirer) */ <update id="deleteLsct" parameterType="cokr.xit.fims.rent.Lsct">/* 임대차계약 대장 삭제(lsctMapper.deleteLsct) */
UPDATE TB_HIRER UPDATE TB_LSCT
SET DEL_YN = 'Y' SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 --> , DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{modifiedBy} <!-- 삭제자 --> , DLTR = #{modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{delRsn} <!-- 삭제 사유 --> , DEL_RSN = #{delRsn} <!-- 삭제 사유 -->
<choose> <choose>
<when test="hirerIds != null"> <when test="lsctIds != null">
WHERE HIRER_ID IN ( <!-- 기업 IDs --> WHERE LSCT_ID IN ( <!-- 임대차계약 IDs -->
<foreach collection="hirerIds" item="hirerId" separator=","> #{hirerId} </foreach> <foreach collection="lsctIds" item="lsctId" separator=","> #{lsctId} </foreach>
) )
</when> </when>
<otherwise> <otherwise>
WHERE HIRER_ID = #{hirerId} <!-- 임차인 ID --> WHERE LSCT_ID = #{lsctId} <!-- 임대차계약 ID -->
</otherwise> </otherwise>
</choose> </choose>
AND DEL_YN = 'N' AND DEL_YN = 'N'

@ -9,6 +9,8 @@
<resultMap id="lsctRow" type="cokr.xit.fims.rent.LsctMpng"> <!-- 임대차계약 대장 --> <resultMap id="lsctRow" type="cokr.xit.fims.rent.LsctMpng"> <!-- 임대차계약 대장 -->
<result property="lsctMpngId" column="LSCT_MPNG_ID" /> <!-- 임대차계약 매핑 ID --> <result property="lsctMpngId" column="LSCT_MPNG_ID" /> <!-- 임대차계약 매핑 ID -->
<result property="lsctId" column="LSCT_ID" /> <!-- 임대차계약 ID -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID --> <result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="levyId" column="LEVY_ID" /> <!-- 부과 ID --> <result property="levyId" column="LEVY_ID" /> <!-- 부과 ID -->
<result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드--> <result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드-->
@ -18,8 +20,6 @@
<result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 --> <result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 -->
<result property="rtpyrNo" column="RTPYR_NO" /> <!-- 납부자 번호 --> <result property="rtpyrNo" column="RTPYR_NO" /> <!-- 납부자 번호 -->
<result property="rtpyrNm" column="RTPYR_NM" /> <!-- 납부자 명 --> <result property="rtpyrNm" column="RTPYR_NM" /> <!-- 납부자 명 -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
<result property="hirerId" column="HIRER_ID" /> <!-- 임차인 ID -->
<result property="chgDmndYn" column="CHG_DMND_YN" /> <!-- 변경 요청 여부 --> <result property="chgDmndYn" column="CHG_DMND_YN" /> <!-- 변경 요청 여부 -->
<result property="chgDmndDt" column="CHG_DMND_DT" /> <!-- 변경 요청 일시 --> <result property="chgDmndDt" column="CHG_DMND_DT" /> <!-- 변경 요청 일시 -->
<result property="chgDmndRgtr" column="CHG_DMND_RGTR" /> <!-- 변경 요청 등록자 --> <result property="chgDmndRgtr" column="CHG_DMND_RGTR" /> <!-- 변경 요청 등록자 -->
@ -380,10 +380,10 @@
WHEN LM.CHG_APRV_YN = 'N' AND LM.CHG_DMND_YN = 'N' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '계약서등록' WHEN LM.CHG_APRV_YN = 'N' AND LM.CHG_DMND_YN = 'N' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '계약서등록'
ELSE '대상' ELSE '대상'
END) AS TRGT_STTS_NM <!-- 계약서 등록 대상 --> END) AS TRGT_STTS_NM <!-- 계약서 등록 대상 -->
, LM.LSCT_ID <!-- 임대차계약 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) , (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 ELSE LM.ENT_ID
END) AS ENT_ID <!-- 계약서 등록 대상 --> END) AS ENT_ID <!-- 계약서 등록 대상 -->
, LM.HIRER_ID <!-- 임차인 ID -->
, LM.CHG_DMND_YN <!-- 변경 요청 여부 --> , LM.CHG_DMND_YN <!-- 변경 요청 여부 -->
, LM.CHG_DMND_DT <!-- 변경 요청 일시 --> , LM.CHG_DMND_DT <!-- 변경 요청 일시 -->
, LM.CHG_DMND_RGTR <!-- 변경 요청 등록자 --> , LM.CHG_DMND_RGTR <!-- 변경 요청 등록자 -->
@ -402,17 +402,17 @@
, LM.MDFCN_DT <!-- 수정 일시 --> , LM.MDFCN_DT <!-- 수정 일시 -->
, LM.MDFR <!-- 수정자 --> , LM.MDFR <!-- 수정자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LM.MDFR) AS MDFR_NM <!-- 수정자 명 --> , (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(L.CTRT_BGNG_YMD, L.CTRT_BGNG_TM)) AS CTRT_BGNG_DT <!-- 계약 시작 일시 -->
, (CONCAT(H.CTRT_END_YMD, H.CTRT_END_TM)) AS CTRT_END_DT <!-- 계약 종료 일시 --> , (CONCAT(L.CTRT_END_YMD, L.CTRT_END_TM)) AS CTRT_END_DT <!-- 계약 종료 일시 -->
, (SELECT GET_CODE_NM('FIM089', H.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM <!-- 임차인 구분 명 --> , (SELECT GET_CODE_NM('FIM089', L.HIRER_SE_CD) FROM DUAL) AS HIRER_SE_NM <!-- 임차인 구분 명 -->
, H.HIRER_REG_NO <!-- 임차인 등록 번호 --> , L.HIRER_REG_NO <!-- 임차인 등록 번호 -->
, H.HIRER_NM <!-- 임차인 명 --> , L.HIRER_NM <!-- 임차인 명 -->
FROM TB_CRDN C FROM TB_CRDN C
LEFT OUTER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID) 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 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_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_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')
</sql> </sql>
<select id="selectCrdnLsctMpngList" parameterType="map" resultType="dataobject">/* 단속 대장 목록 조회(lsctMapper.selectCrdnLsctMpngList) */ <select id="selectCrdnLsctMpngList" parameterType="map" resultType="dataobject">/* 단속 대장 목록 조회(lsctMapper.selectCrdnLsctMpngList) */
@ -485,6 +485,8 @@
<sql id="select"> <sql id="select">
SELECT LM.LSCT_MPNG_ID <!-- 임대차계약 매핑 ID --> SELECT LM.LSCT_MPNG_ID <!-- 임대차계약 매핑 ID -->
, LM.LSCT_ID <!-- 임대차계약 ID -->
, LM.ENT_ID <!-- 기업 ID -->
, LM.CRDN_ID <!-- 단속 ID --> , LM.CRDN_ID <!-- 단속 ID -->
, LM.LEVY_ID <!-- 부과 ID --> , LM.LEVY_ID <!-- 부과 ID -->
, LM.SGG_CD <!-- 시군구 코드 --> , LM.SGG_CD <!-- 시군구 코드 -->
@ -496,8 +498,6 @@
, LM.VHRNO <!-- 자동차등록번호 --> , LM.VHRNO <!-- 자동차등록번호 -->
, LM.RTPYR_NO <!-- 납부자 번호 --> , LM.RTPYR_NO <!-- 납부자 번호 -->
, LM.RTPYR_NM <!-- 납부자 명 --> , LM.RTPYR_NM <!-- 납부자 명 -->
, LM.ENT_ID <!-- 기업 ID -->
, LM.HIRER_ID <!-- 임차인 ID -->
, LM.CHG_DMND_YN <!-- 변경 요청 여부 --> , LM.CHG_DMND_YN <!-- 변경 요청 여부 -->
, (SELECT GET_CODE_NM('CMN006', LM.CHG_DMND_YN) FROM DUAL) AS CHG_DMND_NM <!-- 변경 요청 여부 명 --> , (SELECT GET_CODE_NM('CMN006', LM.CHG_DMND_YN) FROM DUAL) AS CHG_DMND_NM <!-- 변경 요청 여부 명 -->
, LM.CHG_DMND_DT <!-- 변경 요청 일시 --> , LM.CHG_DMND_DT <!-- 변경 요청 일시 -->
@ -560,8 +560,8 @@
, C.MM_CODE <!-- 메인 코드 --> , C.MM_CODE <!-- 메인 코드 -->
, (SELECT V.VLTN_ARTCL FROM TB_VLTN V WHERE V.VLTN_ID = C.VLTN_ID) AS VLTN_ARTCL <!-- 위반 항목 --> , (SELECT V.VLTN_ARTCL FROM TB_VLTN V WHERE V.VLTN_ID = C.VLTN_ID) AS VLTN_ARTCL <!-- 위반 항목 -->
FROM TB_LSCT_MPNG LM FROM TB_LSCT_MPNG LM
LEFT OUTER JOIN TB_HIRER H ON (LM.LSCT_ID = L.LSCT_ID)
LEFT OUTER JOIN TB_RENT_ENT RE ON (LM.ENT_ID = RE.ENT_ID) LEFT OUTER JOIN TB_RENT_ENT RE ON (LM.ENT_ID = RE.ENT_ID)
LEFT OUTER JOIN TB_HIRER H ON (LM.HIRER_ID = H.HIRER_ID)
LEFT OUTER JOIN TB_CRDN C ON (LM.CRDN_ID = C.CRDN_ID) LEFT OUTER JOIN TB_CRDN C ON (LM.CRDN_ID = C.CRDN_ID)
</sql> </sql>
@ -661,6 +661,8 @@
</selectKey> </selectKey>
INSERT INTO TB_LSCT_MPNG ( INSERT INTO TB_LSCT_MPNG (
LSCT_MPNG_ID <!-- 임대차계약 매핑 ID --> LSCT_MPNG_ID <!-- 임대차계약 매핑 ID -->
, LSCT_ID <!-- 임대차계약 ID -->
, ENT_ID <!-- 기업 ID -->
, CRDN_ID <!-- 단속 ID --> , CRDN_ID <!-- 단속 ID -->
, LEVY_ID <!-- 부과 ID --> , LEVY_ID <!-- 부과 ID -->
, SGG_CD <!-- 시군구 코드 --> , SGG_CD <!-- 시군구 코드 -->
@ -670,8 +672,6 @@
, VHRNO <!-- 자동차등록번호 --> , VHRNO <!-- 자동차등록번호 -->
, RTPYR_NO <!-- 납부자 번호 --> , RTPYR_NO <!-- 납부자 번호 -->
, RTPYR_NM <!-- 납부자 명 --> , RTPYR_NM <!-- 납부자 명 -->
, ENT_ID <!-- 기업 ID -->
, HIRER_ID <!-- 임차인 ID -->
, CHG_DMND_YN <!-- 변경 요청 여부 --> , CHG_DMND_YN <!-- 변경 요청 여부 -->
, CHG_DMND_DT <!-- 변경 요청 일시 --> , CHG_DMND_DT <!-- 변경 요청 일시 -->
, CHG_DMND_RGTR <!-- 변경 요청 등록자 --> , CHG_DMND_RGTR <!-- 변경 요청 등록자 -->
@ -691,6 +691,8 @@
, MDFR <!-- 수정자 --> , MDFR <!-- 수정자 -->
) VALUES ( ) VALUES (
#{lsctMpngId} <!-- 임대차계약 매핑 ID --> #{lsctMpngId} <!-- 임대차계약 매핑 ID -->
, #{lsctId} <!-- 임대차계약 ID -->
, #{entId} <!-- 기업 ID -->
, #{crdnId} <!-- 단속 ID --> , #{crdnId} <!-- 단속 ID -->
, #{levyId} <!-- 부과 ID --> , #{levyId} <!-- 부과 ID -->
, #{sggCd} <!-- 시군구 코드 --> , #{sggCd} <!-- 시군구 코드 -->
@ -700,8 +702,6 @@
, #{vhrno} <!-- 자동차등록번호 --> , #{vhrno} <!-- 자동차등록번호 -->
, #{rtpyrNo} <!-- 납부자 번호 --> , #{rtpyrNo} <!-- 납부자 번호 -->
, #{rtpyrNm} <!-- 납부자 명 --> , #{rtpyrNm} <!-- 납부자 명 -->
, #{entId} <!-- 기업 ID -->
, #{hirerId} <!-- 임차인 ID -->
, 'N' <!-- 변경 요청 여부 --> , 'N' <!-- 변경 요청 여부 -->
, #{chgDmndDt} <!-- 변경 요청 일시 --> , #{chgDmndDt} <!-- 변경 요청 일시 -->
, #{chgDmndRgtr} <!-- 변경 요청 등록자 --> , #{chgDmndRgtr} <!-- 변경 요청 등록자 -->
@ -729,8 +729,6 @@
, VHRNO = #{vhrno} <!-- 자동차등록번호 --> , VHRNO = #{vhrno} <!-- 자동차등록번호 -->
, RTPYR_NO = #{rtpyrNo} <!-- 납부자 번호 --> , RTPYR_NO = #{rtpyrNo} <!-- 납부자 번호 -->
, RTPYR_NM = #{rtpyrNm} <!-- 납부자 명 --> , RTPYR_NM = #{rtpyrNm} <!-- 납부자 명 -->
, ENT_ID = #{entId} <!-- 기업 ID -->
, HIRER_ID = #{hirerId} <!-- 임차인 ID -->
, CHG_DMND_YN = #{chgDmndYn} <!-- 변경 요청 여부 --> , CHG_DMND_YN = #{chgDmndYn} <!-- 변경 요청 여부 -->
, CHG_DMND_DT = #{chgDmndDt} <!-- 변경 요청 일시 --> , CHG_DMND_DT = #{chgDmndDt} <!-- 변경 요청 일시 -->
, CHG_DMND_RGTR = #{chgDmndRgtr} <!-- 변경 요청 등록자 --> , CHG_DMND_RGTR = #{chgDmndRgtr} <!-- 변경 요청 등록자 -->

Loading…
Cancel
Save