임대차계약서 수정.

main
xitpc\xituser 1 year ago
parent bd46033baf
commit b1e60b9ca6

@ -23,14 +23,24 @@ public class Hirer extends AbstractEntity {
private String vhrno;
/**
*
*
*/
private String hireBgngDt;
private String ctrtBgngYmd;
/**
*
*
*/
private String hireEndDt;
private String ctrtBgngTm;
/**
*
*/
private String ctrtEndYmd;
/**
*
*/
private String ctrtEndTm;
/**
*
@ -38,14 +48,19 @@ public class Hirer extends AbstractEntity {
private String hirerSeCd;
/**
*
*
*/
private String hirerDln;
/**
*
*/
private String corpBzmnNo;
private String hirerCrno;
/**
*
*
*/
private String lcnsNo;
private String hirerBrno;
/**
*
@ -58,9 +73,9 @@ public class Hirer extends AbstractEntity {
private String hirerMblTelno;
/**
*
*
*/
private String hirerEml;
private String hirerEmlAddr;
/**
*

@ -28,40 +28,20 @@ public class Lsct extends AbstractEntity {
private String levyId;
/**
*
*
*/
private String sggCd;
private String crdnYmd;
/**
*
*
*/
private String taskSeCd;
/**
*
*/
private String crdnDt;
private String crdnTm;
/**
*
*/
private String vhrno;
/**
*
*/
private String crdnStdgNm;
/**
*
*/
private String crdnPlc;
/**
*
*/
private String vltnArtcl;
/**
*
*/

@ -37,6 +37,7 @@ public class RentQuery extends CmmnQuery {
private String omJno; // 소유주 번호
private String[] rtpyrNos; // 납부자 번호s
private String rtpyrNo; // 납부자 번호
private String regTrgtYn; // 임대차계약 등록 대상 여부
private String nxrpCrdnLinkYn; // 세외수입 단속 연계 여부
// ETC
@ -187,6 +188,14 @@ public class RentQuery extends CmmnQuery {
this.rtpyrNo = rtpyrNo;
}
public String getRegTrgtYn() {
return ifEmpty(regTrgtYn, () -> null);
}
public void setRegTrgtYn(String regTrgtYn) {
this.regTrgtYn = regTrgtYn;
}
public String getNxrpCrdnLinkYn() {
return ifEmpty(nxrpCrdnLinkYn, () -> null);
}

@ -1,7 +1,6 @@
package cokr.xit.fims.rent.dao;
import java.util.List;
import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
@ -34,7 +33,7 @@ public interface HirerMapper extends AbstractMapper {
* @param req
* @return
*/
List<Hirer> selectHirers(RentQuery req);
List<DataObject> selectHirers(RentQuery req);
/** .
* @param params
@ -43,18 +42,7 @@ public interface HirerMapper extends AbstractMapper {
* </ul>
* @return
*/
int insertHirer(Map<String, Object> params);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insert(Hirer hirer) {
return hirer != null && insertHirer(params().set("hirer", hirer)) == 1;
}
int insertHirer(Hirer hirer);
/** .
* @param params
@ -63,18 +51,7 @@ public interface HirerMapper extends AbstractMapper {
* </ul>
* @return
*/
int updateHirer(Map<String, Object> params);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean update(Hirer hirer) {
return hirer != null && updateHirer(params().set("hirer", hirer)) == 1;
}
int updateHirer(Hirer hirer);
/** .
* @param params
@ -83,17 +60,6 @@ public interface HirerMapper extends AbstractMapper {
* </ul>
* @return
*/
int deleteHirer(Map<String, ?> params);
/** .
* @param hirer
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(Hirer hirer) {
return hirer != null && deleteHirer(params().set("hirer", hirer)) == 1;
}
int deleteHirer(Hirer hirer);
}

@ -47,6 +47,17 @@ public interface LsctMapper extends AbstractMapper {
int copyMainToCrdnAdi(Crdn crdn);
/** .<br />
* @param req
* @return
*/
List<DataObject> selectCrdnLsctList(RentQuery req);
/** .<br />
* @param req
* @return

@ -29,7 +29,7 @@ public interface HirerService {
* @param req
* @return
*/
List<Hirer> getHirers(RentQuery req);
List<DataObject> getHirers(RentQuery req);
/** .
* @param hirer
@ -38,7 +38,7 @@ public interface HirerService {
* <li> false</li>
* </ul>
*/
boolean create(Hirer hirer);
String create(Hirer hirer);
/** .
* @param hirer
@ -47,7 +47,7 @@ public interface HirerService {
* <li> false</li>
* </ul>
*/
boolean update(Hirer hirer);
String update(Hirer hirer);
/** .
* @param hirer
@ -56,6 +56,6 @@ public interface HirerService {
* <li> false</li>
* </ul>
*/
boolean remove(Hirer hirer);
String remove(Hirer hirer);
}

@ -19,6 +19,12 @@ import cokr.xit.fims.rent.RentQuery;
*/
public interface LsctService {
/** .
* @param req
* @return
*/
List<DataObject> getCrdnLsctList(RentQuery req);
/** .
* @param req
* @return

@ -42,7 +42,7 @@ public class HirerBean extends AbstractBean {
* @param req
* @return
*/
public List<Hirer> getHirers(RentQuery req) {
public List<DataObject> getHirers(RentQuery req) {
return hirerMapper.selectHirers(req);
}
@ -53,8 +53,10 @@ public class HirerBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean create(Hirer hirer) {
return hirerMapper.insert(hirer);
public String create(Hirer hirer) {
int rtnNocs = hirerMapper.insertHirer(hirer);
return "[S] 작업이 정상 처리 되었습니다.";
}
/** .
@ -64,8 +66,10 @@ public class HirerBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean update(Hirer hirer) {
return hirerMapper.update(hirer);
public String update(Hirer hirer) {
int rtnNocs = hirerMapper.updateHirer(hirer);
return "[S] 작업이 정상 처리 되었습니다.";
}
/** .
@ -75,8 +79,10 @@ public class HirerBean extends AbstractBean {
* <li> false</li>
* </ul>
*/
public boolean remove(Hirer hirer) {
return hirerMapper.delete(hirer);
public String remove(Hirer hirer) {
int rtnNocs = hirerMapper.deleteHirer(hirer);
return "[S] 작업이 정상 처리 되었습니다.";
}
}

@ -36,22 +36,22 @@ public class HirerServiceBean extends AbstractServiceBean implements HirerServic
}
@Override
public List<Hirer> getHirers(RentQuery req) {
public List<DataObject> getHirers(RentQuery req) {
return hirerBean.getHirers(req);
}
@Override
public boolean create(Hirer hirer) {
public String create(Hirer hirer) {
return hirerBean.create(hirer);
}
@Override
public boolean update(Hirer hirer) {
public String update(Hirer hirer) {
return hirerBean.update(hirer);
}
@Override
public boolean remove(Hirer hirer) {
public String remove(Hirer hirer) {
return hirerBean.remove(hirer);
}

@ -49,6 +49,205 @@ public class LsctBean extends AbstractBean {
@Resource(name = "payerBean")
private PayerBean payerBean;
/** .
* TB_CRDN, TB_PAYER .
* @param req
* @return
*/
public List<DataObject> getCrdnLsctList(RentQuery req) {
// 기존 과태료 시스템에서 사용하던 암/복호화 함수 사용을 위해서..
XitAria crypto = new XitAria("xit-aria");
// 연계 view 테이블 검색 조건에 사용할 소유주 암호화 하기
if (req.getSchEntNos() != null && req.getSchEntNos().length > 0 ) { // 임대기업번호s 암호화
int tnocs = req.getSchEntNos().length;
String[] strArray = req.getSchEntNos();
String[] encArray = new String[tnocs];
for (int iLoop = 0; iLoop < tnocs; iLoop++) {
encArray[iLoop] = crypto.encrypt(strArray[iLoop]);
}
req.setOmJnos(encArray);
} else { // 임대기업번호 암호화
req.setOmJno(crypto.encrypt(req.getSchEntNo()));
}
// 연계 View 테이블 조회
List<DataObject> mainList = lsctMapper.selectMainList(req);
if (mainList.size() > 0) {
for (int iLoop = 0; iLoop < mainList.size(); iLoop++) {
// 통합플랫폼 ID에 맞게 20자리로 변경
String mainCode = String.format("%020d", mainList.get(iLoop).number("MM_CODE").longValue());
// 단속 ID로 단속(TB_CRDN) 정보 조회
DataObject crdnInfo = lsctMapper.selectCrdnInfo(mainCode);
// 단속 정보가 존재하지 않는다면..
if (crdnInfo == null ) {
// 납부자 정보
Payer payer = new Payer();
payer.setSggCd(mainList.get(iLoop).string("OM_SGGCODE")); // 시군구 코드
payer.setRtpyrInptSeCd("07"); // 납부자 입력 구분 코드 FIM015
switch (mainList.get(iLoop).string("OM_NOGB")) { // 납부자 구분 코드 FIM011
case "11":
payer.setRtpyrSeCd("01"); break;
case "12":
payer.setRtpyrSeCd("02"); break;
case "13":
payer.setRtpyrSeCd("03"); break;
case "14":
payer.setRtpyrSeCd("04"); break;
case "15":
payer.setRtpyrSeCd("05"); break;
default:
payer.setRtpyrSeCd("05"); break;
}
payer.setRtpyrNo(crypto.decrypt(mainList.get(iLoop).string("OM_JNO"))); // 납부자 번호
payer.setRtpyrNm(mainList.get(iLoop).string("OM_NAME")); // 납부자명
payer.setRtpyrBrdt(mainList.get(iLoop).string("OM_NO1")); // 납부자 생년월일
// 납부자 주소 정보
payer.setAddrInptSeCd("07"); // 주소 입력 구분 코드 FIM087
if (!mainList.get(iLoop).string("OM_DORO_CODE").equals("")) { // 주소 구분 코드
payer.setAddrSeCd("02");
}
payer.setZip(mainList.get(iLoop).string("OM_ZIP")); // 우편번호
payer.setAddr(mainList.get(iLoop).string("OM_JUSO")); // 주소
payer.setDtlAddr(mainList.get(iLoop).string("OM_BUNJI")); // 상세 주소
payer.setRoadNmCd(mainList.get(iLoop).string("OM_DORO_CODE")); // 도로명 코드
payer.setUdgdSeCd(mainList.get(iLoop).string("OM_BLD_POSITION")); // 지하 구분 코드
payer.setBmno(mainList.get(iLoop).number("OM_BLD_NO1").intValue()); // 건물본번
payer.setBsno(mainList.get(iLoop).number("OM_BLD_NO2").intValue()); // 건물부번
payer.setBldgMngNo(mainList.get(iLoop).string("OM_BLD_ADMNO")); // 건물 관리 번호
payer.setStdgCd(mainList.get(iLoop).string("OM_BDCODE")); // 법정동 코드
payer.setWholAddr(mainList.get(iLoop).string("OM_JUSO") + ", " + mainList.get(iLoop).string("OM_BUNJI")); // 전체 주소
// 납부자 주소 정보 등록
Payer result = payerBean.create(payer) ? payer : payerBean.getPayerAddrInfo(payer);
// 단속 정보 Insert
Crdn crdn = new Crdn();
crdn.setCrdnId(mainList.get(iLoop).string("MM_CODE"));
crdn.setSggCd(mainList.get(iLoop).string("MM_SGGCODE"));
crdn.setTaskSeCd(mainList.get(iLoop).string("MM_TASKGB"));
crdn.setCrdnRegSeCd(String.format("%02d", mainList.get(iLoop).number("MM_DLGB").intValue())); // 단속 등록 구분 코드
crdn.setCrdnInptSeCd(String.format("%02d", mainList.get(iLoop).number("MM_INGB").intValue())); // 단속 입력 구분 코드
// 민원 정보는 원본 시스템에서 확인하게끔 null로 입력한다.
crdn.setCvlcptLinkYn("N"); // 민원 연계 여부
crdn.setLinkId(null); // 연계 ID
crdn.setLinkTblNm(null); // 민원 연계 테이블 명
crdn.setRtpyrId(result.getRtpyrId()); // 납부자 ID
crdn.setAddrSn(result.getAddrSn()); // 주소 일련번호
crdn.setCrdnYmd(mainList.get(iLoop).string("MM_DATE")); // 단속 일자
crdn.setCrdnTm(mainList.get(iLoop).string("MM_TIME")); // 단속 시간
crdn.setVhrno(mainList.get(iLoop).string("MM_CARNO")); // 자동차등록번호
crdn.setCrdnStdgNm(mainList.get(iLoop).string("CRDN_STDG_NM")); // 단속 법정동 명
crdn.setCrdnRoadNm(null); // 단속 도로 명
crdn.setCrdnPlc(mainList.get(iLoop).string("MM_SGPOS")); // 단속 장소
crdn.setVltnId(mainList.get(iLoop).string("VLTN_ID")); // 위반 ID
crdn.setGpsX(mainList.get(iLoop).string("MM_GPS_X")); // GPS_X
crdn.setGpsY(mainList.get(iLoop).string("MM_GPS_Y")); // GPS_Y
crdn.setAtchFileCnt(mainList.get(iLoop).number("MM_IMAGECNT").intValue()); // 첨부 파일 수
crdn.setVin(mainList.get(iLoop).string("MM_VHMNO")); // 차대번호
crdn.setVhclNm(mainList.get(iLoop).string("MM_CARNAME")); // 차량 명
crdn.setVhclColr(mainList.get(iLoop).string("MM_CARCOLOR")); // 차량 색상
crdn.setFfnlgCrdnAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 단속 금액
crdn.setFfnlgRdcrt(null); // 과태료 감면율
crdn.setFfnlgAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 금액
crdn.setAdvntceBgngYmd(mainList.get(iLoop).string("MM_SDATE")); // 사전통지 시작 일자
crdn.setAdvntceDudtYmd(mainList.get(iLoop).string("MM_EDATE")); // 사전통지 납기 일자
crdn.setAdvntceAmt(mainList.get(iLoop).number("MM_KEUM1").intValue()); // 사전통지 금액
if (mainList.get(iLoop).string("MM_RECALL").equals("1")) { // 의견 제출 여부
crdn.setOpnnSbmsnYn("Y");
} else {
crdn.setOpnnSbmsnYn("N");
}
crdn.setEtcCn(mainList.get(iLoop).string("MM_ETC")); // 기타 내용
crdn.setCrdnSttsCd(mainList.get(iLoop).string("MM_STATE")); // 단속 상태 코드
crdn.setCrdnSttsChgDt(mainList.get(iLoop).string("MM_STATE_DT")); // 단속 상태 변경 일시
crdn.setAdtnAmt(mainList.get(iLoop).number("MM_ADD_KEUM").intValue()); // 가산 금액
crdn.setMinusAmt(mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 감경 금액
crdn.setRcvmtAmt(mainList.get(iLoop).number("MM_SUKEUM").intValue()); // 수납 금액
crdn.setBfrCrdnId(mainList.get(iLoop).string("MM_PRECODE")); // 이전 단속 ID
crdn.setNxrpCrdnLinkYn(mainList.get(iLoop).string("NIS_LINK_YN")); // 세외수입 단속 연계 여부
crdn.setNxrpCrdnLinkUserId(null); // 세외수입 단속 연계 사용자 ID
crdn.setNxrpCrdnLinkDt(null); // 세외수입 단속 연계 일시
if (mainList.get(iLoop).string("MC_LVY_KEY").length() == 11) { // 세외수입 대장 키
crdn.setNxrpAcbKey(mainList.get(iLoop).string("MC_LVY_KEY"));
} else {
crdn.setNxrpAcbKey(null);
}
crdn.setDelYn("N"); // 삭제 여부
crdn.setCreatedAt(mainList.get(iLoop).string("MM_INDT"));
crdn.setCreatedBy(mainList.get(iLoop).string("MM_INUSER"));
int rtnNocs = lsctMapper.copyMainToCrdn(crdn);
if (rtnNocs == 0) {
throw new RuntimeException("[F] 단속 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
// 단속 부가 정보 Insert
crdn.setCrdnSeCd(null); // 단속 구분 코드
crdn.setTeamId(null); // 조 ID
if (mainList.get(iLoop).string("MM_PRECODE").equals("1")) { // 단속 특별구역 코드 FIM007
crdn.setCrdnSpareaCd("01");
} else {
crdn.setCrdnSpareaCd("00");
}
crdn.setCrdnBgngTm(mainList.get(iLoop).string("MM_TIME")); // 단속 시작 시각
crdn.setCrdnEndTm(mainList.get(iLoop).string("MM_TIME2")); // 단속 종료 시각
crdn.setCrdnSn(mainList.get(iLoop).string("MM_SNO")); // 단속 일련번호
crdn.setMoscX(null); // 모자이크 X
crdn.setMoscY(null); // 모자이크 Y
if (mainList.get(iLoop).string("MM_TRAC").equals("1")) { // 견인 여부
crdn.setTowngYn("Y");
} else {
crdn.setTowngYn("N");
}
crdn.setUseFuelCd(mainList.get(iLoop).string("MM_CARFUEL")); // 사용 연료 코드 LVS005
crdn.setFfnlgCarmdlCd(String.format("%02d", mainList.get(iLoop).number("MM_CARKIND").intValue())); // 과태료 차종 코드 FIM009
crdn.setPrkPsbltyRsltCd(mainList.get(iLoop).string("MM_CARCHECK")); // 주차 가능 결과 코드
crdn.setVltnNmtm(mainList.get(iLoop).string("MM_VIORCNT")); // 위반 횟수
crdn.setOvtmYn("N"); // 시간외 여부
crdn.setOvtmPrttnYn("N"); // 시간외 분할 여부
rtnNocs = lsctMapper.copyMainToCrdnAdi(crdn);
if (rtnNocs == 0) {
throw new RuntimeException("[F] 단속 부가 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
// 단속ID로 단속 파일 다운로드
// 단속 파일 등록
List<FileInfo> fileInfoList = new ArrayList<FileInfo>();
//
}
}
}
// 단속(TB_CRDN) 자료 조회
if (req.getSchEntNos() != null) {
// 잠시 대기.. 한실장님 확인중
// req.setRtpyrNos(req.getSchEntNos());
}
if (req.getSchEntNo() != null) {
req.setRtpyrNo(req.getSchEntNo());
}
return lsctMapper.selectCrdnLsctList(req);
}
/** .
* TB_CRDN, TB_PAYER .
* @param req

@ -30,6 +30,11 @@ public class LsctServiceBean extends AbstractServiceBean implements LsctService
@Resource(name = "lsctBean")
private LsctBean lsctBean;
@Override
public List<DataObject> getCrdnLsctList(RentQuery req) {
return lsctBean.getCrdnLsctList(req);
}
@Override
public List<DataObject> getLsctList(RentQuery req) {
return lsctBean.getLsctList(req);

@ -140,7 +140,7 @@ public class Rent01Controller extends ApplicationController {
xlsx.cell(0, 0).value("임대기업매핑").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> { if(i.getValue() instanceof Format) { i.setField(null); }; return i; }).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("임대기업매핑" + "_목록_" + dateTime + ".xlsx"));
@ -194,7 +194,7 @@ public class Rent01Controller extends ApplicationController {
CellStyle center = format.cellStyle(Style.CENTER);
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = rentEntService.getUserRentEntMpngList(req.setFetchSize(0));
List<DataObject> list = rentEntService.getRentEntList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
@ -214,7 +214,7 @@ public class Rent01Controller extends ApplicationController {
xlsx.cell(0, 0).value("임대기업").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> { if(i.getValue() instanceof Format) { i.setField(null); }; return i; }).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("임대기업" + "_목록_" + dateTime + ".xlsx"));

@ -6,13 +6,14 @@ import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.ss.usermodel.CellStyle;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.docs.xls.CellDef;
import cokr.xit.base.docs.xls.Format;
import cokr.xit.base.docs.xls.Style;
@ -22,6 +23,7 @@ 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.RentQuery;
import cokr.xit.fims.rent.service.HirerService;
@ -48,8 +50,16 @@ public class Rent02Controller extends ApplicationController {
public class METHOD_URL {
public static final String
leaseContractMain = "/010/main.do" // 임대차계약 메인 화면
, getLeaseContractList = "/010/list.do" // 임대차계약 대장 목록 조회
leaseContractRegistrationMain = "/010/main.do" // 임대차계약 등록 메인 화면
, getLeaseContractRegistrationList = "/010/list.do" // 임대차계약 등록 단속 대장 목록 조회
, getLeaseContractRegistrationInfo = "/020/info.do" // 임대차계약 등록 단속 대장 상세 조회
, getHirerList = "/020/list.do" // 임차인 대장 목록 조회
, getHirerInfo = "/030/info.do" // 임차인 대장 상세 조회
, createHirer = "/030/create.do" // 임차인 대장 등록
, updateHirer = "/030/update.do" // 임차인 대장 수정
, removeHirer = "/030/remove.do" // 임차인 대장 삭제
, leaseContractMain = "/040/main.do" // 임대차계약 관리 메인 화면
, getLeaseContractList = "/040/list.do" // 임대차계약 관리 대장 목록 조회
;
}
@ -73,8 +83,8 @@ public class Rent02Controller extends ApplicationController {
* {@link #getLsctList(LsctQuery) } .
* @return /lsct/lsct-main
*/
@RequestMapping(name = "임대차계약 대장 메인", value=METHOD_URL.leaseContractMain)
public ModelAndView leaseContractMain() {
@RequestMapping(name = "임대차계약 등록 메인", value=METHOD_URL.leaseContractRegistrationMain)
public ModelAndView leaseContractRegistrationMain() {
ModelAndView mav = new ModelAndView("fims/rent/rent02010-main");
// 사용자 정보
@ -107,7 +117,273 @@ public class Rent02Controller extends ApplicationController {
*/
@Task("CMN")
@RequestMapping(name = "임대차계약 대장 조회", value=METHOD_URL.getLeaseContractList)
@RequestMapping(name = "임대차계약 등록 단속 대장 조회", value=METHOD_URL.getLeaseContractRegistrationList)
public ModelAndView getLeaseContractRegistrationList(RentQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = lsctService.getCrdnLsctList(setFetchSize(req));
return setPagingInfo(new ModelAndView("jsonView"), result, "");
} else {
// 현재 날짜 구하기
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateTime = dateFormat.format(System.currentTimeMillis());
List<CellDef> cellDefs = fromJson(req.getCellDefs(), CellDef.listType());
XLSWriter xlsx = new XLSWriter().worksheet(0);
Format format = new Format(xlsx);
CellStyle center = format.cellStyle(Style.CENTER);
CellStyle numeric = format.n_nn0();
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = lsctService.getCrdnLsctList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("업무구분", format.of("TASK_SE_NM").style(center));
valueMap.put("단속일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "CRDN_YMD_TM").style(dateDT));
valueMap.put("차량번호", format.of("VHRNO"));
valueMap.put("납부자구분", format.of("RTPYR_SE_NM").style(center));
valueMap.put("납부자번호", format.of("RTPYR_NO").style(center));
valueMap.put("납부자명", format.of("RTPYR_NM"));
valueMap.put("위반항목", format.of("VLTN_ARTCL"));
valueMap.put("단속법정동", format.of("CRDN_STDG_NM").style(center));
valueMap.put("단속장소", format.of("CRDN_PLC"));
valueMap.put("단속원금", format.of("FFNLG_CRDN_AMT").style(numeric));
valueMap.put("처리상태", format.of("CRDN_STTS_NM"));
valueMap.put("등록일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "REG_DT").style(dateDT));
valueMap.put("등록사용자", format.of("RGTR_NM").style(center));
valueMap.put("수정일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "MDFCN_DT").style(dateDT));
valueMap.put("수정사용자", format.of("MDFR_NM").style(center));
CellDef.setValues(cellDefs, valueMap);
xlsx.cell(0, 0).value("임대차계약").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> { if(i.getValue() instanceof Format) { i.setField(null); }; return i; }).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("임대차계약" + "_목록_" + dateTime + ".xlsx"));
}
}
/** (fims/rent/rent02020-info) .
* {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main
*/
@Task("CMN")
@RequestMapping(name = "임대차계약 등록 상세 정보", value=METHOD_URL.getLeaseContractRegistrationInfo)
public ModelAndView getLeaseContractRegistrationInfo(HttpServletRequest hReq, RentQuery req) {
ModelAndView mav = new ModelAndView("fims/rent/rent02020-info");
return mav
.addObject("callPurpose", req.getCallPurpose()) // 호출 용도
.addObject("pageName", "rent02020") // jsp pageName
.addObject("prefixUrl", CLASS_URL) // prefixUrl
.addObject("userId", req.getUserId()) // 사용자 ID
.addObject("schEntNo", req.getSchEntNo()) // 기업 (법인/사업자)번호
;
}
/** .<br />
* {@link HirerService#getHirerList(HirerQuery)}
* @param req
* @return jsonView
* <pre><code> {
* "hirerList": [ ]
* "hirerStart":
* "hirerFetch":
* "hirerTotal":
* }</code></pre>
*/
@Task("CMN")
@RequestMapping(name = "임차인 대장 조회", value=METHOD_URL.getHirerList)
public ModelAndView getHirerList(RentQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = hirerService.getHirerList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "");
} else {
// 현재 날짜 구하기
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String dateTime = dateFormat.format(System.currentTimeMillis());
List<CellDef> cellDefs = fromJson(req.getCellDefs(), CellDef.listType());
XLSWriter xlsx = new XLSWriter().worksheet(0);
Format format = new Format(xlsx);
CellStyle center = format.cellStyle(Style.CENTER);
CellStyle dateDT = format.yyyy_mm_dd_hh_mm_ss();
List<DataObject> list = hirerService.getHirerList(req.setFetchSize(0));
Map<String,Object> valueMap = new HashMap<String,Object>();
valueMap.put("기업구분", format.of("ENT_SE_NM").style(center));
valueMap.put("기업명", format.of("ENT_NM"));
valueMap.put("법인(사업자)번호", format.of("ENT_NO").style(center));
valueMap.put("대표자명", format.of("RPRSV_NM").style(center));
valueMap.put("전화번호", format.of("ENT_TELNO").style(center));
valueMap.put("팩스번호", format.of("ENT_FXNO").style(center));
valueMap.put("이메일주소", format.of("ENT_EML_ADDR"));
valueMap.put("우편번호", format.of("ENT_ZIP").style(center));
valueMap.put("주소", format.of("ENT_ADDR"));
valueMap.put("상세주소", format.of("ENT_DTL_ADDR"));
valueMap.put("등록일시", FormatMaker.yyyy_mm_dd_hh_mm_ss(format, "REG_DT").style(dateDT));
valueMap.put("등록사용자", format.of("RGTR_NM").style(center));
CellDef.setValues(cellDefs, valueMap);
xlsx.cell(0, 0).value("임대기업").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> { if(i.getValue() instanceof Format) { i.setField(null); }; return i; }).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("임대기업" + "_목록_" + dateTime + ".xlsx"));
}
}
/** (fims/rent/rent02030-info) .
* {@link #getRentEntList(RentEntQuery) } .
* @return /rentEnt/rentEnt-main
*/
@Task("CMN")
@RequestMapping(name = "임차인 대장 상세 정보", value=METHOD_URL.getHirerInfo)
public ModelAndView getHirerInfo(HttpServletRequest hReq, RentQuery req) {
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/rent/rent02030-info");
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM088");
// 수정(update)으로 호출
if (req.getCallPurpose().equals("update")) {
DataObject info = rentEntService.getRentEntInfo(req); // 상세 정보 조회
mav.addObject("Info", json ? info : toJson(info)); // 정보
}
return mav
.addObject("callPurpose", req.getCallPurpose()) // 호출 용도
.addObject("pageName", "rent02030") // jsp pageName
.addObject("prefixUrl", CLASS_URL) // prefixUrl
.addObject("FIM088List", commonCodes.get("FIM088")) // 기업 구분 코드(ENT_SE_CD)
;
}
/** .
* @param hirer
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@Task("CMN")
@RequestMapping(name = "임차인 대장 등록", value=METHOD_URL.createHirer)
public ModelAndView createHirer(Hirer hirer) {
boolean saved = false;
String rtnMsg = hirerService.create(hirer);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** .
* @param hirer
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@Task("CMN")
@RequestMapping(name = "임차인 대장 수정", value=METHOD_URL.updateHirer)
public ModelAndView updateHirer(Hirer hirer) {
boolean saved = false;
String rtnMsg = hirerService.update(hirer);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** .
* @param hirerIDs
* @return jsonView
* <pre><code> {
* "affected":
* "saved": true, false
* }</code></pre>
*/
@Task("CMN")
@RequestMapping(name = "임차인 대장 제거", value=METHOD_URL.removeHirer)
public ModelAndView removeHirer(Hirer hirer) {
boolean saved = false;
String rtnMsg = hirerService.remove(hirer);
if (rtnMsg.contains("[S]")) {
saved = true;
} else {
saved = false;
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
/** (lsct/lsct-main) .
* {@link #getLsctList(LsctQuery) } .
* @return /lsct/lsct-main
*/
@RequestMapping(name = "임대차계약 대장 관리 메인", value=METHOD_URL.leaseContractMain)
public ModelAndView leaseContractMain() {
ModelAndView mav = new ModelAndView("fims/rent/rent02040-main");
// 사용자 정보
FimsUser fimsUser = (FimsUser)currentUser().getUser();
// 사용자와 매핑되어있는 임대업체 정보 조회
RentQuery req = new RentQuery();
req.setUserId(fimsUser.getId());
List<DataObject> entNolist = rentEntService.getUserRentEntMpngs(req);
return mav
.addObject("pageName", "rent02040") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("prefixUrl", CLASS_URL) // prefixUrl
.addObject("userId", fimsUser.getId()) // 사용자 ID(USER_ID)
.addObject("entNoList", entNolist) // 임대업체 목록
;
}
/** .<br />
* {@link LsctService#getLsctList(LsctQuery)}
* @param req
* @return jsonView
* <pre><code> {
* "lsctList": [ ]
* "lsctStart":
* "lsctFetch":
* "lsctTotal":
* }</code></pre>
*/
@Task("CMN")
@RequestMapping(name = "임대차계약 대장 관리 조회", value=METHOD_URL.getLeaseContractList)
public ModelAndView getLeaseContractList(RentQuery req) {
if (!"xls".equals(req.getDownload())) {
List<?> result = lsctService.getLsctList(setFetchSize(req));
@ -147,12 +423,12 @@ public class Rent02Controller extends ApplicationController {
CellDef.setValues(cellDefs, valueMap);
xlsx.cell(0, 0).value("임대계약").value(center).merge(0, cellDefs.size() - 1)
xlsx.cell(0, 0).value("임대계약").value(center).merge(0, cellDefs.size() - 1)
.cell(3, 0).rowValues(CellDef.header(cellDefs, () -> StyleMaker.headerStyle(xlsx)))
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> {if(i.getValue() instanceof Format) {i.setField(null);}; return i;}).toList()));
.cell(4, 0).values(list, CellDef.values(cellDefs.stream().map(i -> { if(i.getValue() instanceof Format) { i.setField(null); }; return i; }).toList()));
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("임대계약" + "_목록_" + dateTime + ".xlsx"));
.addObject("download", xlsx.getDownloadable().setFilename("임대계약" + "_목록_" + dateTime + ".xlsx"));
}
}
@ -163,7 +439,7 @@ public class Rent02Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대차계약 대장 등록", value = "/create.do")
// @PostMapping(name = "임대차계약 대장 등록", value = "/create.do")
public ModelAndView create(Lsct lsct) {
boolean saved = lsctService.create(lsct);
return new ModelAndView("jsonView")
@ -177,7 +453,7 @@ public class Rent02Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대차계약 대장 수정", value = "/update.do")
// @PostMapping(name = "임대차계약 대장 수정", value = "/update.do")
public ModelAndView update(Lsct lsct) {
boolean saved = lsctService.update(lsct);
return new ModelAndView("jsonView")
@ -192,11 +468,29 @@ public class Rent02Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "임대차계약 대장 제거", value = "/remove.do")
// @PostMapping(name = "임대차계약 대장 제거", value = "/remove.do")
public ModelAndView remove(Lsct lsct) {
boolean saved = lsctService.remove(lsct);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
/** (hirer/hirer-main) .
* {@link #getHirerList(HirerQuery) } .
* @return /hirer/hirer-main
*/
// @GetMapping(name = "임차인 대장 메인", value = "/main.do")
// public ModelAndView main() {
// ModelAndView mav = getHirerList(new RentQuery().setPageNum(1));
// mav.setViewName("/hirer/hirer-main");
// return mav.addObject("hirerList", toJson(mav.getModel().get("hirerList")));
// }
}

@ -7,179 +7,196 @@
2024-08-27 JoJH 최초 작성
============================ -->
<resultMap id="hirerRow" type="cokr.xit.fims.rent.Hirer"> <!-- 임차인 정보 -->
<result property="hirerId" column="HIRER_ID" /> <!-- 임차인 ID -->
<result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 -->
<result property="hireBgngDt" column="HIRE_BGNG_DT" /> <!-- 임차 시작 일시 -->
<result property="hireEndDt" column="HIRE_END_DT" /> <!-- 임차 종료 일시 -->
<result property="hirerSeCd" column="HIRER_SE_CD" /> <!-- 임차인 구분 코드 -->
<result property="corpBzmnNo" column="CORP_BZMN_NO" /> <!-- 법인 사업자 번호 -->
<result property="lcnsNo" column="LCNS_NO" /> <!-- 면허 번호 -->
<result property="hirerNm" column="HIRER_NM" /> <!-- 임차인 명 -->
<result property="hirerMblTelno" column="HIRER_MBL_TELNO" /> <!-- 임차인 휴대 전화번호 -->
<result property="hirerEml" column="HIRER_EML" /> <!-- 임차인 이메일 -->
<result property="hirerZip" column="HIRER_ZIP" /> <!-- 임차인 우편번호 -->
<result property="hirerAddr" column="HIRER_ADDR" /> <!-- 임차인 주소 -->
<result property="hirerDtlAddr" column="HIRER_DTL_ADDR" /> <!-- 임차인 상세 주소 -->
<result property="atchFileCnt" column="ATCH_FILE_CNT" /> <!-- 첨부 파일 수 -->
<result property="atchFileDelYn" column="ATCH_FILE_DEL_YN" /> <!-- 첨부 파일 삭제 여부 -->
<result property="atchFileRegDt" column="ATCH_FILE_REG_DT" /> <!-- 첨부 파일 등록 일시 -->
<result property="atchFileRgtr" column="ATCH_FILE_RGTR" /> <!-- 첨부 파일 등록자 -->
<result property="atchFileRegIp" column="ATCH_FILE_REG_IP" /> <!-- 첨부 파일 등록 IP -->
<result property="atchFileDelDt" column="ATCH_FILE_DEL_DT" /> <!-- 첨부 파일 삭제 일시 -->
<result property="atchFileDltr" column="ATCH_FILE_DLTR" /> <!-- 첨부 파일 삭제자 -->
<result property="atchFileDelIp" column="ATCH_FILE_DEL_IP" /> <!-- 첨부 파일 삭제 IP -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<resultMap id="hirerRow" type="cokr.xit.fims.rent.Hirer"> <!-- 임차인 정보 -->
<result property="hirerId" column="HIRER_ID" /> <!-- 임차인 ID -->
<result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 -->
<result property="ctrtBgngYmd" column="CTRT_BGNG_YMD" /> <!-- 계약 시작 일자 -->
<result property="ctrtBgngTm" column="CTRT_BGNG_TM" /> <!-- 계약 시작 시각 -->
<result property="ctrtEndYmd" column="CTRT_END_YMD" /> <!-- 계약 종료 일자 -->
<result property="ctrtEndTm" column="CTRT_END_TM" /> <!-- 계약 종료 시각 -->
<result property="hirerSeCd" column="HIRER_SE_CD" /> <!-- 임차인 구분 코드 -->
<result property="hirerDln" column="HIRER_DLN" /> <!-- 임차인 운전면허번호 -->
<result property="hirerCrno" column="HIRER_CRNO" /> <!-- 임차인 법인등록번호 -->
<result property="hirerBrno" column="HIRER_BRNO" /> <!-- 임차인 사업자등록번호 -->
<result property="hirerNm" column="HIRER_NM" /> <!-- 임차인 명 -->
<result property="hirerMblTelno" column="HIRER_MBL_TELNO" /> <!-- 임차인 휴대 전화번호 -->
<result property="hirerEmlAddr" column="HIRER_EML_ADDR" /> <!-- 임차인 이메일 -->
<result property="hirerZip" column="HIRER_ZIP" /> <!-- 임차인 우편번호 -->
<result property="hirerAddr" column="HIRER_ADDR" /> <!-- 임차인 주소 -->
<result property="hirerDtlAddr" column="HIRER_DTL_ADDR" /> <!-- 임차인 상세 주소 -->
<result property="atchFileCnt" column="ATCH_FILE_CNT" /> <!-- 첨부 파일 수 -->
<result property="atchFileDelYn" column="ATCH_FILE_DEL_YN" /> <!-- 첨부 파일 삭제 여부 -->
<result property="atchFileRegDt" column="ATCH_FILE_REG_DT" /> <!-- 첨부 파일 등록 일시 -->
<result property="atchFileRgtr" column="ATCH_FILE_RGTR" /> <!-- 첨부 파일 등록자 -->
<result property="atchFileRegIp" column="ATCH_FILE_REG_IP" /> <!-- 첨부 파일 등록 IP -->
<result property="atchFileDelDt" column="ATCH_FILE_DEL_DT" /> <!-- 첨부 파일 삭제 일시 -->
<result property="atchFileDltr" column="ATCH_FILE_DLTR" /> <!-- 첨부 파일 삭제자 -->
<result property="atchFileDelIp" column="ATCH_FILE_DEL_IP" /> <!-- 첨부 파일 삭제 IP -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="select">SELECT HIRER_ID <!-- 임차인 ID -->
, VHRNO <!-- 자동차등록번호 -->
, HIRE_BGNG_DT <!-- 임차 시작 일시 -->
, HIRE_END_DT <!-- 임차 종료 일시 -->
, HIRER_SE_CD <!-- 임차인 구분 코드 -->
, CORP_BZMN_NO <!-- 법인 사업자 번호 -->
, LCNS_NO <!-- 면허 번호 -->
, HIRER_NM <!-- 임차인 명 -->
, HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 -->
, HIRER_EML <!-- 임차인 이메일 -->
, HIRER_ZIP <!-- 임차인 우편번호 -->
, HIRER_ADDR <!-- 임차인 주소 -->
, HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
, ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, ATCH_FILE_DEL_YN <!-- 첨부 파일 삭제 여부 -->
, ATCH_FILE_REG_DT <!-- 첨부 파일 등록 일시 -->
, ATCH_FILE_RGTR <!-- 첨부 파일 등록자 -->
, ATCH_FILE_REG_IP <!-- 첨부 파일 등록 IP -->
, ATCH_FILE_DEL_DT <!-- 첨부 파일 삭제 일시 -->
, ATCH_FILE_DLTR <!-- 첨부 파일 삭제자 -->
, ATCH_FILE_DEL_IP <!-- 첨부 파일 삭제 IP -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
, DEL_RSN <!-- 삭제 사유 -->
FROM TB_HIRER</sql>
<sql id="select">
SELECT H.HIRER_ID <!-- 임차인 ID -->
, H.VHRNO <!-- 자동차등록번호 -->
, H.CTRT_BGNG_YMD <!-- 계약 시작 일자 -->
, H.CTRT_BGNG_TM <!-- 계약 시작 시각 -->
, H.CTRT_END_YMD <!-- 계약 종료 시각 -->
, H.CTRT_END_TM <!-- 임차 종료 일시 -->
, H.HIRER_SE_CD <!-- 임차인 구분 코드 -->
, H.HIRER_DLN <!-- 임차인 운전면허번호 -->
, H.HIRER_CRNO <!-- 임차인 법인등록번호 -->
, H.HIRER_BRNO <!-- 임차인 사업자등록번호 -->
, H.HIRER_NM <!-- 임차인 명 -->
, H.HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 -->
, H.HIRER_EML_ADDR <!-- 임차인 이메일 -->
, H.HIRER_ZIP <!-- 임차인 우편번호 -->
, H.HIRER_ADDR <!-- 임차인 주소 -->
, H.HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
, H.ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, H.ATCH_FILE_DEL_YN <!-- 첨부 파일 삭제 여부 -->
, H.ATCH_FILE_REG_DT <!-- 첨부 파일 등록 일시 -->
, H.ATCH_FILE_RGTR <!-- 첨부 파일 등록자 -->
, H.ATCH_FILE_REG_IP <!-- 첨부 파일 등록 IP -->
, H.ATCH_FILE_DEL_DT <!-- 첨부 파일 삭제 일시 -->
, H.ATCH_FILE_DLTR <!-- 첨부 파일 삭제자 -->
, H.ATCH_FILE_DEL_IP <!-- 첨부 파일 삭제 IP -->
, 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 RGTR_NM <!-- 수정자 명 -->
, H.DEL_DT <!-- 삭제 일시 -->
, H.DLTR <!-- 삭제자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = H.DLTR) AS RGTR_NM <!-- 삭제자 명 -->
FROM TB_HIRER H
</sql>
<select id="selectHirerList" parameterType="map" resultType="dataobject">/* 임차인 정보 목록 조회(hirerMapper.selectHirerList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></select>
<select id="selectHirerList" parameterType="map" resultType="dataobject">/* 임차인 정보 목록 조회(hirerMapper.selectHirerList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<select id="selectHirers" parameterType="map" resultMap="hirerRow">/* 임차인 정보 객체 가져오기(hirerMapper.selectHirers) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" /></select>
<select id="selectHirers" parameterType="map" resultType="dataobject">/* 임차인 정보 객체 가져오기(hirerMapper.selectHirers) */
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
</select>
<insert id="insertHirer" parameterType="map">/* 임차인 정보 등록(hirerMapper.insertHirer) */
INSERT INTO TB_HIRER (
HIRER_ID <!-- 임차인 ID -->
, VHRNO <!-- 자동차등록번호 -->
, HIRE_BGNG_DT <!-- 임차 시작 일시 -->
, HIRE_END_DT <!-- 임차 종료 일시 -->
, HIRER_SE_CD <!-- 임차인 구분 코드 -->
, CORP_BZMN_NO <!-- 법인 사업자 번호 -->
, LCNS_NO <!-- 면허 번호 -->
, HIRER_NM <!-- 임차인 명 -->
, HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 -->
, HIRER_EML <!-- 임차인 이메일 -->
, HIRER_ZIP <!-- 임차인 우편번호 -->
, HIRER_ADDR <!-- 임차인 주소 -->
, HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
, ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, ATCH_FILE_DEL_YN <!-- 첨부 파일 삭제 여부 -->
, ATCH_FILE_REG_DT <!-- 첨부 파일 등록 일시 -->
, ATCH_FILE_RGTR <!-- 첨부 파일 등록자 -->
, ATCH_FILE_REG_IP <!-- 첨부 파일 등록 IP -->
, ATCH_FILE_DEL_DT <!-- 첨부 파일 삭제 일시 -->
, ATCH_FILE_DLTR <!-- 첨부 파일 삭제자 -->
, ATCH_FILE_DEL_IP <!-- 첨부 파일 삭제 IP -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
, DEL_RSN <!-- 삭제 사유 -->
) VALUES (
#{hirer.hirerId} <!-- 임차인 ID -->
, #{hirer.vhrno} <!-- 자동차등록번호 -->
, #{hirer.hireBgngDt} <!-- 임차 시작 일시 -->
, #{hirer.hireEndDt} <!-- 임차 종료 일시 -->
, #{hirer.hirerSeCd} <!-- 임차인 구분 코드 -->
, #{hirer.corpBzmnNo} <!-- 법인 사업자 번호 -->
, #{hirer.lcnsNo} <!-- 면허 번호 -->
, #{hirer.hirerNm} <!-- 임차인 명 -->
, #{hirer.hirerMblTelno} <!-- 임차인 휴대 전화번호 -->
, #{hirer.hirerEml} <!-- 임차인 이메일 -->
, #{hirer.hirerZip} <!-- 임차인 우편번호 -->
, #{hirer.hirerAddr} <!-- 임차인 주소 -->
, #{hirer.hirerDtlAddr} <!-- 임차인 상세 주소 -->
, #{hirer.atchFileCnt} <!-- 첨부 파일 수 -->
, #{hirer.atchFileDelYn} <!-- 첨부 파일 삭제 여부 -->
, #{hirer.atchFileRegDt} <!-- 첨부 파일 등록 일시 -->
, #{hirer.atchFileRgtr} <!-- 첨부 파일 등록자 -->
, #{hirer.atchFileRegIp} <!-- 첨부 파일 등록 IP -->
, #{hirer.atchFileDelDt} <!-- 첨부 파일 삭제 일시 -->
, #{hirer.atchFileDltr} <!-- 첨부 파일 삭제자 -->
, #{hirer.atchFileDelIp} <!-- 첨부 파일 삭제 IP -->
, #{hirer.delYn} <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{currentUser.id} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{currentUser.id} <!-- 수정자 -->
, #{hirer.removedAt} <!-- 삭제 일시 -->
, #{hirer.removedBy} <!-- 삭제자 -->
, #{hirer.delRsn} <!-- 삭제 사유 -->
)</insert>
<insert id="insertHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 정보 등록(hirerMapper.insertHirer) */
INSERT INTO TB_HIRER (
HIRER_ID <!-- 임차인 ID -->
, VHRNO <!-- 자동차등록번호 -->
, CTRT_BGNG_YMD <!-- 계약 시작 일자 -->
, CTRT_BGNG_TM <!-- 계약 시작 시각 -->
, CTRT_END_YMD <!-- 계약 종료 시각 -->
, CTRT_END_TM <!-- 임차 종료 일시 -->
, HIRER_SE_CD <!-- 임차인 구분 코드 -->
, HIRER_DLN <!-- 임차인 운전면허번호 -->
, HIRER_CRNO <!-- 임차인 법인등록번호 -->
, HIRER_BRNO <!-- 임차인 사업자등록번호 -->
, HIRER_NM <!-- 임차인 명 -->
, HIRER_MBL_TELNO <!-- 임차인 휴대 전화번호 -->
, HIRER_EML_ADDR <!-- 임차인 이메일 -->
, HIRER_ZIP <!-- 임차인 우편번호 -->
, HIRER_ADDR <!-- 임차인 주소 -->
, HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
, ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, ATCH_FILE_DEL_YN <!-- 첨부 파일 삭제 여부 -->
, ATCH_FILE_REG_DT <!-- 첨부 파일 등록 일시 -->
, ATCH_FILE_RGTR <!-- 첨부 파일 등록자 -->
, ATCH_FILE_REG_IP <!-- 첨부 파일 등록 IP -->
, ATCH_FILE_DEL_DT <!-- 첨부 파일 삭제 일시 -->
, ATCH_FILE_DLTR <!-- 첨부 파일 삭제자 -->
, ATCH_FILE_DEL_IP <!-- 첨부 파일 삭제 IP -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
)
VALUES (
#{hirerId} <!-- 임차인 ID -->
, #{vhrno} <!-- 자동차등록번호 -->
, #{ctrtBgngYmd} <!-- 계약 시작 일자 -->
, #{ctrtBgngTm} <!-- 계약 시작 시각 -->
, #{ctrtEndYmd} <!-- 계약 종료 시각 -->
, #{ctrtEndTm} <!-- 임차 종료 일시 -->
, #{hirerSeCd} <!-- 임차인 구분 코드 -->
, #{hirerDln} <!-- 임차인 운전면허번호 -->
, #{hirerCrno} <!-- 임차인 법인등록번호 -->
, #{hirerBrno} <!-- 임차인 사업자등록번호 -->
, #{hirerNm} <!-- 임차인 명 -->
, #{hirerMblTelno} <!-- 임차인 휴대 전화번호 -->
, #{hirerEmlAddr} <!-- 임차인 이메일 -->
, #{hirerZip} <!-- 임차인 우편번호 -->
, #{hirerAddr} <!-- 임차인 주소 -->
, #{hirerDtlAddr} <!-- 임차인 상세 주소 -->
, #{atchFileCnt} <!-- 첨부 파일 수 -->
, #{atchFileDelYn} <!-- 첨부 파일 삭제 여부 -->
, #{atchFileRegDt} <!-- 첨부 파일 등록 일시 -->
, #{atchFileRgtr} <!-- 첨부 파일 등록자 -->
, #{atchFileRegIp} <!-- 첨부 파일 등록 IP -->
, #{atchFileDelDt} <!-- 첨부 파일 삭제 일시 -->
, #{atchFileDltr} <!-- 첨부 파일 삭제자 -->
, #{tchFileDelIp} <!-- 첨부 파일 삭제 IP -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateHirer" parameterType="map">/* 임차인 정보 수정(hirerMapper.updateHirer) */
UPDATE TB_HIRER SET
VHRNO = #{hirer.vhrno} <!-- 자동차등록번호 -->
, HIRE_BGNG_DT = #{hirer.hireBgngDt} <!-- 임차 시작 일시 -->
, HIRE_END_DT = #{hirer.hireEndDt} <!-- 임차 종료 일시 -->
, HIRER_SE_CD = #{hirer.hirerSeCd} <!-- 임차인 구분 코드 -->
, CORP_BZMN_NO = #{hirer.corpBzmnNo} <!-- 법인 사업자 번호 -->
, LCNS_NO = #{hirer.lcnsNo} <!-- 면허 번호 -->
, HIRER_NM = #{hirer.hirerNm} <!-- 임차인 명 -->
, HIRER_MBL_TELNO = #{hirer.hirerMblTelno} <!-- 임차인 휴대 전화번호 -->
, HIRER_EML = #{hirer.hirerEml} <!-- 임차인 이메일 -->
, HIRER_ZIP = #{hirer.hirerZip} <!-- 임차인 우편번호 -->
, HIRER_ADDR = #{hirer.hirerAddr} <!-- 임차인 주소 -->
, HIRER_DTL_ADDR = #{hirer.hirerDtlAddr} <!-- 임차인 상세 주소 -->
, ATCH_FILE_CNT = #{hirer.atchFileCnt} <!-- 첨부 파일 수 -->
, ATCH_FILE_DEL_YN = #{hirer.atchFileDelYn} <!-- 첨부 파일 삭제 여부 -->
, ATCH_FILE_REG_DT = #{hirer.atchFileRegDt} <!-- 첨부 파일 등록 일시 -->
, ATCH_FILE_RGTR = #{hirer.atchFileRgtr} <!-- 첨부 파일 등록자 -->
, ATCH_FILE_REG_IP = #{hirer.atchFileRegIp} <!-- 첨부 파일 등록 IP -->
, ATCH_FILE_DEL_DT = #{hirer.atchFileDelDt} <!-- 첨부 파일 삭제 일시 -->
, ATCH_FILE_DLTR = #{hirer.atchFileDltr} <!-- 첨부 파일 삭제자 -->
, ATCH_FILE_DEL_IP = #{hirer.atchFileDelIp} <!-- 첨부 파일 삭제 IP -->
, DEL_YN = #{hirer.delYn} <!-- 삭제 여부 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{currentUser.id} <!-- 수정자 -->
, DEL_DT = #{hirer.removedAt} <!-- 삭제 일시 -->
, DLTR = #{hirer.removedBy} <!-- 삭제자 -->
, DEL_RSN = #{hirer.delRsn} <!-- 삭제 사유 -->
WHERE HIRER_ID = #{hirer.hirerId}</update>
<update id="updateHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 정보 수정(hirerMapper.updateHirer) */
UPDATE TB_HIRER
SET VHRNO = #{vhrno} <!-- 자동차등록번호 -->
, HIRE_BGNG_DT = #{hireBgngDt} <!-- 임차 시작 일시 -->
, HIRE_END_DT = #{hireEndDt} <!-- 임차 종료 일시 -->
, HIRER_SE_CD = #{hirerSeCd} <!-- 임차인 구분 코드 -->
, HIRER_DLN = #{hirerDln} <!-- 임차인 운전면허번호 -->
, HIRER_CRNO = #{hirerCrno} <!-- 임차인 법인등록번호 -->
, HIRER_BRNO = #{hirerBrno} <!-- 임차인 사업자등록번호 -->
, HIRER_NM = #{hirerNm} <!-- 임차인 명 -->
, HIRER_MBL_TELNO = #{hirerMblTelno} <!-- 임차인 휴대 전화번호 -->
, HIRER_EML_ADDR = #{hirerEmlAddr} <!-- 임차인 이메일 -->
, HIRER_ZIP = #{hirerZip} <!-- 임차인 우편번호 -->
, HIRER_ADDR = #{hirerAddr} <!-- 임차인 주소 -->
, HIRER_DTL_ADDR = #{hirerDtlAddr} <!-- 임차인 상세 주소 -->
, ATCH_FILE_CNT = #{atchFileCnt} <!-- 첨부 파일 수 -->
, ATCH_FILE_DEL_YN = #{atchFileDelYn} <!-- 첨부 파일 삭제 여부 -->
, ATCH_FILE_REG_DT = #{atchFileRegDt} <!-- 첨부 파일 등록 일시 -->
, ATCH_FILE_RGTR = #{atchFileRgtr} <!-- 첨부 파일 등록자 -->
, ATCH_FILE_REG_IP = #{atchFileRegIp} <!-- 첨부 파일 등록 IP -->
, ATCH_FILE_DEL_DT = #{atchFileDelDt} <!-- 첨부 파일 삭제 일시 -->
, ATCH_FILE_DLTR = #{atchFileDltr} <!-- 첨부 파일 삭제자 -->
, ATCH_FILE_DEL_IP = #{atchFileDelIp} <!-- 첨부 파일 삭제 IP -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE HIRER_ID = #{hirerId} <!-- 임차인 ID -->
AND DEL_YN = 'N'
</update>
<update id="deleteHirer" parameterType="map">/* 임차인 정보 삭제(hirerMapper.deleteHirer) */
UPDATE TB_HIRER SET
USE_YN = 'N'
, MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id}
WHERE HIRER_ID = #{hirer.hirerId}</update>
<update id="deleteHirer" parameterType="cokr.xit.fims.rent.Hirer">/* 임차인 정보 삭제(hirerMapper.deleteHirer) */
UPDATE TB_HIRER
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{delRsn} <!-- 삭제 사유 -->
WHERE HIRER_ID = #{hirerId} <!-- 임차인 ID -->
AND DEL_YN = 'N'
</update>
</mapper>

@ -11,13 +11,9 @@
<result property="lsctId" column="LSCT_ID" /> <!-- 임대차계약 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="levyId" column="LEVY_ID" /> <!-- 부과 ID -->
<result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드 -->
<result property="taskSeCd" column="TASK_SE_CD" /> <!-- 업무 구분 코드 -->
<result property="crdnDt" column="CRDN_DT" /> <!-- 단속 일시 -->
<result property="crdnYmd" column="CRDN_YMD" /> <!-- 단속 일자 -->
<result property="crdnTm" column="CRDN_TM" /> <!-- 단속 시각 -->
<result property="vhrno" column="VHRNO" /> <!-- 자동차등록번호 -->
<result property="crdnStdgNm" column="CRDN_STDG_NM" /> <!-- 단속 법정동 명 -->
<result property="crdnPlc" column="CRDN_PLC" /> <!-- 단속 장소 -->
<result property="vltnArtcl" column="VLTN_ARTCL" /> <!-- 위반 항목 -->
<result property="rtpyrNo" column="RTPYR_NO" /> <!-- 납부자 번호 -->
<result property="rtpyrNm" column="RTPYR_NM" /> <!-- 납부자 명 -->
<result property="entId" column="ENT_ID" /> <!-- 기업 ID -->
@ -309,7 +305,8 @@
)
</insert>
<sql id="selectList">
<select id="selectCrdnLsctList" parameterType="map" resultType="dataobject">/* 단속 대장 목록 조회(lsctMapper.selectLsctList) */
<include refid="utility.paging-prefix" />
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
@ -338,6 +335,104 @@
, PA.ADDR <!-- 주소 -->
, PA.DTL_ADDR <!-- 상세 주소 -->
, L.LSCT_ID <!-- 임대차계약 ID -->
, (CASE WHEN L.LSCT_ID IS NULL THEN 'Y' ELSE 'N' END) AS TRGT_YN <!-- 계약서 등록 대상 -->
, L.ENT_ID <!-- 기업 ID -->
, L.HIRER_ID <!-- 임차인 ID -->
, L.CHG_DMND_YN <!-- 변경 요청 여부 -->
, L.CHG_DMND_DT <!-- 변경 요청 일시 -->
, L.CHG_DMND_RGTR <!-- 변경 요청 등록자 -->
, L.CHG_DMND_IP <!-- 변경 요청 IP -->
, L.CHG_DMND_MDFCN_DT <!-- 변경 요청 수정 일시 -->
, L.CHG_DMND_MDFR <!-- 변경 요청 수정자 -->
, L.CHG_DMND_MDFCN_IP <!-- 변경 요청 수정 IP -->
, L.CHG_APRV_YN <!-- 변경 승인 여부 -->
, L.CHG_APRV_DT <!-- 변경 승인 일시 -->
, L.CHG_AUTZR <!-- 변경 승인자 -->
, L.CHG_APRV_RSN <!-- 변경 승인 사유 -->
, L.CHG_APRV_IP <!-- 변경 승인 IP -->
, 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_CRDN C
INNER JOIN TB_VLTN V ON (C.VLTN_ID = V.VLTN_ID)
INNER 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 L ON (C.CRDN_ID = L.CRDN_ID AND L.DEL_YN = 'N')
LEFT OUTER JOIN TB_HIRER H ON (L.HIRER_ID = H.HIRER_ID AND H.DEL_YN = 'N')
<where>
<if test="schCrdnYmdFrom != null">
AND C.CRDN_YMD <![CDATA[>=]]> #{schCrdnYmdFrom} <!-- 단속 일자 시작 -->
</if>
<if test="schCrdnYmdTo != null">
AND C.CRDN_YMD <![CDATA[<=]]> #{schCrdnYmdTo} <!-- 단속 일자 종료 -->
</if>
<if test="schVhrno != null">
AND C.VHRNO = #{schVhrno} <!-- 차량번호 -->
</if>
<if test="regTrgtYn != null">
<choose>
<when test='regTrgtYn == "Y"'>
AND L.LSCT_ID IS NULL
</when>
<otherwise>
AND L.LSCT_ID IS NOT NULL
</otherwise>
</choose>
</if>
<if test="rtpyrNos != null">
AND P.RTPYR_NO IN ( <!-- 납부자 번호s -->
<foreach collection="rtpyrNos" item="rtpyrNo" separator=","> #{rtpyrNo} </foreach>
)
</if>
<if test="rtpyrNo != null">
AND P.RTPYR_NO = #{rtpyrNo} <!-- 납부자 번호 -->
</if>
<if test="sggCd != null">
AND C.SGG_CD = #{sggCd} <!-- 시군구 코드 -->
</if>
<if test="taskSeCd != null">
AND C.TASK_SE_CD = #{taskSeCd} <!-- 업무 구분 코드 -->
</if>
AND C.DEL_YN = 'N' <!-- 단속 삭제 여부 -->
</where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<sql id="selectList">
SELECT C.CRDN_ID <!-- 단속 ID -->
, C.SGG_CD <!-- 시군구 코드 -->
, C.TASK_SE_CD <!-- 업무 구분 코드 -->
, (SELECT GET_CODE_NM('FIM054', C.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM <!-- 업무 구분 명 -->
, C.CRDN_YMD <!-- 단속 일자 -->
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM <!-- 단속 일시 -->
, C.VHRNO <!-- 차량번호 -->
, C.CRDN_STDG_NM <!-- 단속 법정동 명 -->
, C.CRDN_ROAD_NM <!-- 단속 도로 명 -->
, C.CRDN_PLC <!-- 단속 장소 -->
, C.FFNLG_CRDN_AMT <!-- 과태료 단속 금액 -->
, C.CRDN_STTS_CD <!-- 단속 상태 코드 -->
, (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM <!-- 단속 상태 명 -->
, C.NXRP_CRDN_LINK_YN <!-- 세외수입 단속 연계 여부 -->
, C.NXRP_ACB_KEY <!-- 세외수입 대장 키 -->
, V.VLTN_ID <!-- 위반 ID -->
, V.VLTN_CD <!-- 위반 코드 -->
, V.VLTN_ARTCL <!-- 위반 항목 -->
, P.RTPYR_ID <!-- 납부자 ID -->
, P.RTPYR_SE_CD <!-- 납부자 구분 코드 -->
, (SELECT GET_CODE_NM('FIM011', P.RTPYR_SE_CD) FROM DUAL) AS RTPYR_SE_NM <!-- 납부자 구분 명 -->
, P.RTPYR_NO <!-- 납부자 번호 -->
, P.RTPYR_NM <!-- 납부자 명 -->
, PA.ADDR_SN <!-- 주소 일련번호 -->
, PA.ZIP <!-- 우편번호 -->
, PA.ADDR <!-- 주소 -->
, PA.DTL_ADDR <!-- 상세 주소 -->
, L.LSCT_ID <!-- 임대차계약 ID -->
, (CASE WHEN L.LSCT_ID IS NULL THEN 'Y' ELSE 'N' END) AS TRGT_YN <!-- 계약서 등록 대상 -->
, L.ENT_ID <!-- 기업 ID -->
, L.HIRER_ID <!-- 임차인 ID -->
@ -407,13 +502,9 @@
SELECT LSCT_ID <!-- 임대차계약 ID -->
, CRDN_ID <!-- 단속 ID -->
, LEVY_ID <!-- 부과 ID -->
, SGG_CD <!-- 시군구 코드 -->
, TASK_SE_CD <!-- 업무 구분 코드 -->
, CRDN_DT <!-- 단속 일시 -->
, CRDN_YMD <!-- 단속 일자 -->
, CRDN_TM <!-- 단속 시각 -->
, VHRNO <!-- 자동차등록번호 -->
, CRDN_STDG_NM <!-- 단속 법정동 명 -->
, CRDN_PLC <!-- 단속 장소 -->
, VLTN_ARTCL <!-- 위반 항목 -->
, RTPYR_NO <!-- 납부자 번호 -->
, RTPYR_NM <!-- 납부자 명 -->
, ENT_ID <!-- 기업 ID -->
@ -447,13 +538,9 @@
LSCT_ID <!-- 임대차계약 ID -->
, CRDN_ID <!-- 단속 ID -->
, LEVY_ID <!-- 부과 ID -->
, SGG_CD <!-- 시군구 코드 -->
, TASK_SE_CD <!-- 업무 구분 코드 -->
, CRDN_DT <!-- 단속 일시 -->
, CRDN_YMD <!-- 단속 일자 -->
, CRDN_TM <!-- 단속 시각 -->
, VHRNO <!-- 자동차등록번호 -->
, CRDN_STDG_NM <!-- 단속 법정동 명 -->
, CRDN_PLC <!-- 단속 장소 -->
, VLTN_ARTCL <!-- 위반 항목 -->
, RTPYR_NO <!-- 납부자 번호 -->
, RTPYR_NM <!-- 납부자 명 -->
, ENT_ID <!-- 기업 ID -->
@ -484,11 +571,9 @@
, #{lsct.levyId} <!-- 부과 ID -->
, #{lsct.sggCd} <!-- 시군구 코드 -->
, #{lsct.taskSeCd} <!-- 업무 구분 코드 -->
, #{lsct.crdnDt} <!-- 단속 일시 -->
, #{lsct.crdnYmd} <!-- 단속 일자 -->
, #{lsct.crdnTm} <!-- 단속 시각 -->
, #{lsct.vhrno} <!-- 자동차등록번호 -->
, #{lsct.crdnStdgNm} <!-- 단속 법정동 명 -->
, #{lsct.crdnPlc} <!-- 단속 장소 -->
, #{lsct.vltnArtcl} <!-- 위반 항목 -->
, #{lsct.rtpyrNo} <!-- 납부자 번호 -->
, #{lsct.rtpyrNm} <!-- 납부자 명 -->
, #{lsct.entId} <!-- 기업 ID -->
@ -520,13 +605,9 @@
UPDATE TB_LSCT
SET CRDN_ID = #{lsct.crdnId} <!-- 단속 ID -->
, LEVY_ID = #{lsct.levyId} <!-- 부과 ID -->
, SGG_CD = #{lsct.sggCd} <!-- 시군구 코드 -->
, TASK_SE_CD = #{lsct.taskSeCd} <!-- 업무 구분 코드 -->
, CRDN_DT = #{lsct.crdnDt} <!-- 단속 일시 -->
, CRDN_YMD = #{lsct.crdnYmd} <!-- 단속 일자 -->
, CRDN_TM = #{lsct.crdnTm} <!-- 단속 시각 -->
, VHRNO = #{lsct.vhrno} <!-- 자동차등록번호 -->
, CRDN_STDG_NM = #{lsct.crdnStdgNm} <!-- 단속 법정동 명 -->
, CRDN_PLC = #{lsct.crdnPlc} <!-- 단속 장소 -->
, VLTN_ARTCL = #{lsct.vltnArtcl} <!-- 위반 항목 -->
, RTPYR_NO = #{lsct.rtpyrNo} <!-- 납부자 번호 -->
, RTPYR_NM = #{lsct.rtpyrNm} <!-- 납부자 명 -->
, ENT_ID = #{lsct.entId} <!-- 기업 ID -->

Loading…
Cancel
Save