1. 사전통보된 자료만 조회되도록 수정

2. 수기등록시 법인사업자외국인추가
3. 승인요청시 주소정보가 없으면 자동으로 임대기업주소입력되도록 수정
main
이범준 1 month ago
parent 8a9dd25aaf
commit 4e0d242e7b

@ -11,6 +11,8 @@ public interface ApplMapper extends AbstractMapper {
int countRequestedLsctAprv(LsctAprv lsctAprv);
int updateInProgress(Crdn crdn);
void lockMmCode(Crdn crdn);
int countLockMmCode(Crdn lockQ);
}

@ -1,7 +1,6 @@
package cokr.xit.fims.appl.service.bean;
import java.text.SimpleDateFormat;
import java.util.List;
import javax.annotation.Resource;
@ -9,7 +8,6 @@ import org.springframework.stereotype.Component;
import cokr.xit.base.file.service.bean.FileBean;
import cokr.xit.fims.appl.dao.ApplMapper;
import cokr.xit.fims.cmmn.CmmnUtil;
import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.levy.dao.LevyMapper;
import cokr.xit.fims.nxrp.dao.NisIndivMapper;
@ -21,7 +19,6 @@ import cokr.xit.fims.rent.dao.LsctMapper;
import cokr.xit.fims.rent.dao.LsctMpngMapper;
import cokr.xit.fims.rent.dao.RentEntMapper;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
@Component("applBean")
public class ApplBean extends AbstractBean {
@ -69,142 +66,10 @@ public class ApplBean extends AbstractBean {
public String createLsctAprv(LsctAprv lsctAprv) {
// 변수 선언
int rtnNocs = -1; // 처리 결과 건수
String rtnMsg = ""; // 처리 결과 메시지
String sggCd = ifEmpty(lsctAprv.getSggCd(), ()->"");
String taskSeCd = ifEmpty(lsctAprv.getTaskSeCd(), ()->"");
if (sggCd.equals("")) {
rtnMsg = "[F] 시군구 코드 파라미터가 없습니다.(sggCd)";
return rtnMsg;
}
if (taskSeCd.equals("")) {
rtnMsg = "[F] 업무 구분 코드 파라미터가 없습니다.(taskSeCd)";
return rtnMsg;
}
List<DataObject> sggTasks = nisIndivMapper.getNxrpRentSggTask("");
for(DataObject sggTask : sggTasks) {
if(sggTask.string("SGG_CD").equals(sggCd) && sggTask.string("TASK_SE_CD").equals(taskSeCd)) {
lsctAprv.setLsctLinkTblNm("TB_LSCT_APRV_"+sggCd+"_"+taskSeCd);
}
}
if(ifEmpty(lsctAprv.getLsctLinkTblNm(), ()->"").equals("")) {
rtnMsg = "[F] 작업 중 연계시스템이 확인되지 않았습니다.";
return rtnMsg;
}
String rentEntNm = ifEmpty(lsctAprv.getRentEntNm(), ()->"");
if (rentEntNm.equals("")) {
rtnMsg = "[F] 임대기업명 파라미터가 없습니다.(rentEntNm)";
return rtnMsg;
}
String rentEntRegNo = ifEmpty(lsctAprv.getRentEntRegNo(), ()->"");
rentEntRegNo = rentEntRegNo.replace("-", "");
if (rentEntRegNo.equals("")) {
rtnMsg = "[F] 임대기업등록번호 파라미터가 없습니다.(rentEntRegNo)";
return rtnMsg;
}
String vhrno = ifEmpty(lsctAprv.getVhrno(), ()->"");
if (vhrno.equals("")) {
rtnMsg = "[F] 차량번호 파라미터가 없습니다.(vhrno)";
return rtnMsg;
}
String hirerNm = ifEmpty(lsctAprv.getHirerNm(), ()->"");
if (hirerNm.equals("")) {
rtnMsg = "[F] 임차인명 파라미터가 없습니다.(hirerNm)";
return rtnMsg;
}
String omJno = ifEmpty(lsctAprv.getOmJno(), ()->"");
omJno = omJno.replace("-", "");
omJno = omJno.replace(" ", "");
if (omJno.equals("")) {
rtnMsg = "[F] 면허번호 파라미터가 없습니다.(omJno)";
return rtnMsg;
}
if (!CmmnUtil.isNumeric(omJno)) {
rtnMsg = "[F] 면허번호는 숫자만 입력 가능합니다.(omJno)";
return rtnMsg;
}
if (omJno.length() != 12) {
rtnMsg = "[F] 면허번호 자릿수는 12자리이여야 합니다.(omJno)";
return rtnMsg;
}
String crdnYmd = ifEmpty(lsctAprv.getCrdnYmd(), ()->"");
crdnYmd = crdnYmd.replace("-","");
if (crdnYmd.equals("")) {
rtnMsg = "[F] 단속일자 파라미터가 없습니다.(crdnYmd)";
return rtnMsg;
}
SimpleDateFormat sdf_ymd = new SimpleDateFormat("yyyyMMdd");
sdf_ymd.setLenient(false);
boolean ymdErr = false;
try {
sdf_ymd.parse(crdnYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 단속일자가 년월일 형식이 아닙니다.(crdnYmd)";
return rtnMsg;
}
String crdnTm = ifEmpty(lsctAprv.getCrdnTm(), ()->"");
crdnTm = crdnTm.replace(":","");
if (crdnTm.equals("")) {
rtnMsg = "[F] 단속시간 파라미터가 없습니다.(crdnTm)";
return rtnMsg;
}
SimpleDateFormat sdf_hms = new SimpleDateFormat("HHmmss");
sdf_hms.setLenient(false);
boolean hmsErr = false;
try {
sdf_hms.parse(crdnTm);
} catch (Exception e) {
hmsErr = true;
}
if (hmsErr) {
rtnMsg = "[F] 단속시간이 시분초 형식이 아닙니다.(crdnTm)";
return rtnMsg;
}
String ctrtBgngYmd = ifEmpty(lsctAprv.getCtrtBgngYmd(), ()->"");
ctrtBgngYmd = ctrtBgngYmd.replace("-","");
if (!ctrtBgngYmd.equals("")) {
try {
sdf_ymd.parse(ctrtBgngYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 계약시작일자가 년월일 형식이 아닙니다.(ctrtBgngYmd)";
return rtnMsg;
}
}
String ctrtEndYmd = ifEmpty(lsctAprv.getCtrtEndYmd(), ()->"");
ctrtEndYmd = ctrtEndYmd.replace("-","");
if (!ctrtEndYmd.equals("")) {
try {
sdf_ymd.parse(ctrtEndYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 계약종료일자가 년월일 형식이 아닙니다.(ctrtEndYmd)";
return rtnMsg;
}
}
lsctAprv.setHirerSeCd("01"); // 임차인 구분 코드
lsctAprv.setAtchFileCnt(0); // 첨부 파일 수
lsctAprv.setLsctMpngId("9999999999");
@ -229,8 +94,8 @@ public class ApplBean extends AbstractBean {
crdn.setMmCode(lsctAprv.getMmCode());
crdn.setSggCd(lsctAprv.getSggCd());
crdn.setTaskSeCd(lsctAprv.getTaskSeCd());
applMapper.updateInProgress(crdn);
applMapper.lockMmCode(crdn);
return "[S] 임대차계약 등록 작업이 정상 처리 되었습니다.";
}

@ -7,6 +7,7 @@ import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
import java.text.SimpleDateFormat;
import java.util.List;
import java.util.function.Consumer;
@ -22,8 +23,11 @@ import org.springframework.web.servlet.ModelAndView;
import cokr.xit.applib.AppCmmnUtil;
import cokr.xit.fims.appl.service.bean.ApplBean;
import cokr.xit.fims.cmmn.CmmnUtil;
import cokr.xit.fims.nxrp.dao.NisIndivMapper;
import cokr.xit.fims.rent.LsctAprv;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.dao.LsctMpngMapper;
import cokr.xit.foundation.Downloadable;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.foundation.web.AbstractController;
@ -40,6 +44,9 @@ public class ApplController extends AbstractController {
@Resource(name = "nisIndivMapper")
private NisIndivMapper nisIndivMapper;
@Resource(name = "lsctMpngMapper")
private LsctMpngMapper lsctMpngMapper;
/** .
* @return
* @throws Exception
@ -113,7 +120,6 @@ public class ApplController extends AbstractController {
lsctAprv.setChgDmndIp(remoteAddr); // 변경 요청 IP
String sggCd = ifEmpty(lsctAprv.getSggCd(), ()->"");
String taskSeCd = ifEmpty(lsctAprv.getTaskSeCd(), ()->"");
if (sggCd.equals("")) {
@ -161,6 +167,19 @@ public class ApplController extends AbstractController {
.addObject("rtnMsg", rtnMsg);
}
String hirerSeCd = lsctAprv.getHirerSeCd();
if(hirerSeCd == null || hirerSeCd.equals("")) {
lsctAprv.setHirerSeCd("01"); // 임차인 구분 코드
}
hirerSeCd = lsctAprv.getHirerSeCd();
if(!hirerSeCd.equals("01") && !hirerSeCd.equals("02") && !hirerSeCd.equals("03") && !hirerSeCd.equals("04")) {
rtnMsg = "[F] 임차인 구분 코드 오류";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String nxrpCrdnLinkYn = lsctAprv.getNxrpCrdnLinkYn();
if(nxrpCrdnLinkYn == null || nxrpCrdnLinkYn.equals("")) {
lsctAprv.setNxrpCrdnLinkYn("Y");
@ -174,6 +193,214 @@ public class ApplController extends AbstractController {
.addObject("rtnMsg", rtnMsg);
}
String rentEntNm = ifEmpty(lsctAprv.getRentEntNm(), ()->"");
if (rentEntNm.equals("")) {
rtnMsg = "[F] 임대기업명 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String rentEntRegNo = ifEmpty(lsctAprv.getRentEntRegNo(), ()->"");
rentEntRegNo = rentEntRegNo.replace("-", "");
if (rentEntRegNo.equals("")) {
rtnMsg = "[F] 임대기업등록번호 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String vhrno = ifEmpty(lsctAprv.getVhrno(), ()->"");
if (vhrno.equals("")) {
rtnMsg = "[F] 차량번호 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String crdnYmd = ifEmpty(lsctAprv.getCrdnYmd(), ()->"");
crdnYmd = crdnYmd.replace("-","");
if (crdnYmd.equals("")) {
rtnMsg = "[F] 단속일자 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
SimpleDateFormat sdf_ymd = new SimpleDateFormat("yyyyMMdd");
sdf_ymd.setLenient(false);
boolean ymdErr = false;
try {
sdf_ymd.parse(crdnYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 단속일자가 년월일 형식이 아닙니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String crdnTm = ifEmpty(lsctAprv.getCrdnTm(), ()->"");
crdnTm = crdnTm.replace(":","");
if (crdnTm.equals("")) {
rtnMsg = "[F] 단속시간 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
SimpleDateFormat sdf_hms = new SimpleDateFormat("HHmmss");
sdf_hms.setLenient(false);
boolean hmsErr = false;
try {
sdf_hms.parse(crdnTm);
} catch (Exception e) {
hmsErr = true;
}
if (hmsErr) {
rtnMsg = "[F] 단속시간이 시분초 형식이 아닙니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String hirerNm = ifEmpty(lsctAprv.getHirerNm(), ()->"");
if (hirerNm.equals("")) {
rtnMsg = "[F] 임차인명 파라미터가 없습니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
String omJno = ifEmpty(lsctAprv.getOmJno(), ()->"");
omJno = omJno.replace("-", "");
omJno = omJno.replace(" ", "");
if (omJno.equals("")) {
if(hirerSeCd.equals("02")) {
rtnMsg = "[F] 법인번호 파라미터가 없습니다.";
} else if(hirerSeCd.equals("03")) {
rtnMsg = "[F] 사업자번호 파라미터가 없습니다.";
} else {
rtnMsg = "[F] 면허번호 파라미터가 없습니다.";
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
if (!CmmnUtil.isNumeric(omJno)) {
if(hirerSeCd.equals("02")) {
rtnMsg = "[F] 법인번호는 숫자만 입력 가능합니다.";
} else if(hirerSeCd.equals("03")) {
rtnMsg = "[F] 사업자번호는 숫자만 입력 가능합니다.";
} else {
rtnMsg = "[F] 면허번호는 숫자만 입력 가능합니다.";
}
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
if(hirerSeCd.equals("01")) {
if (omJno.length() != 12) {
rtnMsg = "[F] 면허번호 자릿수는 12자리이여야 합니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
} else if(hirerSeCd.equals("02")) {
if (omJno.length() != 13) {
rtnMsg = "[F] 법인번호 자릿수는 13자리이여야 합니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
} else if(hirerSeCd.equals("03")) {
if (omJno.length() != 10) {
rtnMsg = "[F] 사업자번호 자릿수는 10자리이여야 합니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
} else if(hirerSeCd.equals("04")) {
if (omJno.length() < 6 || omJno.length() > 18) {
rtnMsg = "[F] 외국인 면허번호 자릿수는 6~18자리이여야 합니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
}
lsctAprv.setOmJno(omJno);
String ctrtBgngYmd = ifEmpty(lsctAprv.getCtrtBgngYmd(), ()->"");
ctrtBgngYmd = ctrtBgngYmd.replace("-","");
if (!ctrtBgngYmd.equals("")) {
try {
sdf_ymd.parse(ctrtBgngYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 계약시작일자가 년월일 형식이 아닙니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
}
String ctrtEndYmd = ifEmpty(lsctAprv.getCtrtEndYmd(), ()->"");
ctrtEndYmd = ctrtEndYmd.replace("-","");
if (!ctrtEndYmd.equals("")) {
try {
sdf_ymd.parse(ctrtEndYmd);
} catch (Exception e) {
ymdErr = true;
}
if (ymdErr) {
rtnMsg = "[F] 계약종료일자가 년월일 형식이 아닙니다.";
return new ModelAndView("jsonView")
.addObject("saved", saved)
.addObject("rtnMsg", rtnMsg);
}
}
RentQuery mmQuery = new RentQuery();
mmQuery.setSggCd(sggCd);
mmQuery.setTaskSeCd(taskSeCd);
mmQuery.setMmCode(mmCode);
mmQuery.setOrderBy("MM_DATE, MM_TIME"); // 정렬
List<DataObject> mainList = lsctMpngMapper.selectFfnlgMainList(mmQuery);
if(mainList != null && !mainList.isEmpty()) {
DataObject mmInfo = mainList.get(0);
lsctAprv.setHirerZip(mmInfo.string("OM_ZIP"));
lsctAprv.setHirerAddr(mmInfo.string("OM_JUSO"));
lsctAprv.setHirerDtlAddr(mmInfo.string("OM_BUNJI"));
lsctAprv.setRoadNmCd(mmInfo.string("OM_DORO_CODE"));
lsctAprv.setUdgdSeCd(mmInfo.string("OM_BLD_POSITION"));
lsctAprv.setBmno(mmInfo.string("OM_BLD_NO1"));
lsctAprv.setBsno(mmInfo.string("OM_BLD_NO2"));
lsctAprv.setBldgMngNo(mmInfo.string("OM_BLD_ADMNO"));
lsctAprv.setStdgCd(mmInfo.string("OM_BDCODE"));
}
if("Y".equals(lsctAprv.getUdgdSeCd())) {
lsctAprv.setUdgdSeCd("1");
} else if("N".equals(lsctAprv.getUdgdSeCd())) {
lsctAprv.setUdgdSeCd("0");
}
if("".equals(lsctAprv.getBmno())) {
lsctAprv.setBmno(null);
}
if("".equals(lsctAprv.getBsno())) {
lsctAprv.setBsno(null);
}
rtnMsg = applBean.createLsctAprv(lsctAprv); // 등록

@ -28,7 +28,6 @@ import cokr.xit.fims.nxrp.Hirer;
import cokr.xit.fims.nxrp.NisIndivQuery;
import cokr.xit.fims.nxrp.dao.NisIndivMapper;
import cokr.xit.fims.nxrp.support.OnlyTxtMaker;
import cokr.xit.fims.rent.RentQuery;
import cokr.xit.fims.rent.dao.LsctAprvMapper;
import cokr.xit.fims.rent.dao.LsctMpngMapper;
import cokr.xit.foundation.component.AbstractBean;
@ -399,35 +398,6 @@ public class NisIndivBean extends AbstractBean {
String table = "TB_LSCT_APRV_"+driverInfo.getSggCd()+"_"+driverInfo.getTaskSeCd();
driverInfo.setLsctLinkTblNm(table);
if(ifEmpty(driverInfo.getAddr(), ()->"").equals("")) {
RentQuery query = new RentQuery();
query.setTaskSeCd(driverInfo.getTaskSeCd());
query.setMmCode(driverInfo.getMmCode());
DataObject addrInfo = lsctMpngMapper.selectIsCrdnInfo(query);
driverInfo.setZip(addrInfo.string("ZIP"));
driverInfo.setAddr(addrInfo.string("ADDR"));
driverInfo.setDaddr(addrInfo.string("DTL_ADDR"));
driverInfo.setRoadNmCd(addrInfo.string("ROAD_NM_CD"));
driverInfo.setAddrUdgdYn(addrInfo.string("UDGD_SE_CD"));
driverInfo.setBmno(addrInfo.string("BMNO"));
driverInfo.setBsno(addrInfo.string("BSNO"));
driverInfo.setStdgCd(addrInfo.string("STDG_CD"));
if(driverInfo.getAddrUdgdYn().equals("Y")) {
driverInfo.setAddrUdgdYn("1");
} else if(driverInfo.getAddrUdgdYn().equals("N")) {
driverInfo.setAddrUdgdYn("0");
}
if("".equals(driverInfo.getBmno())) {
driverInfo.setBmno(null);
}
if("".equals(driverInfo.getBsno())) {
driverInfo.setBsno(null);
}
}
return lsctAprvMapper.updateDriverInfo(driverInfo) == 1 ? true : false;
}

@ -115,7 +115,11 @@ public class LsctMpngBean extends AbstractBean {
int rtnNocs = -1;
int mainListSize = mainList.size();
if (mainListSize > 0) {
if (mainListSize <= 0) {
return "[S] 등록 및 수정 작업이 정상 처리 되었습니다.";
}
for (int iLoop = 0; iLoop < mainListSize; iLoop++) {
DataObject row = mainList.get(iLoop);
@ -131,6 +135,15 @@ public class LsctMpngBean extends AbstractBean {
// 단속 정보가 존재하지 않는다면.. 해당 자료 insert
if (isCrdnInfo == null) {
Crdn lockQ = new Crdn();
lockQ.setSggCd(row.string("OM_SGGCODE"));
lockQ.setTaskSeCd(row.string("MM_TASKGB"));
lockQ.setMmCode(row.string("MM_CODE"));
int lock = applMapper.countLockMmCode(lockQ);
if(lock > 0) {
continue;
}
// 납부자 정보
payer.setSggCd(row.string("OM_SGGCODE")); // 시군구 코드
payer.setRtpyrInptSeCd("07"); // 납부자 입력 구분 코드 FIM015
@ -509,7 +522,7 @@ public class LsctMpngBean extends AbstractBean {
}
}
}
}
return "[S] 등록 및 수정 작업이 정상 처리 되었습니다.";
}
@ -788,7 +801,7 @@ public class LsctMpngBean extends AbstractBean {
lsctAprv.setHirerMblTelno(lsctMpngInfo.string("HIRER_MBL_TELNO")); // 임차인 휴대 전화번호
lsctAprv.setHirerEmlAddr(lsctMpngInfo.string("HIRER_EML_ADDR")); // 임차인 이메일 주소
if(!lsctMpngInfo.string("HIRER_SE_CD").equals("01") && lsctMpngInfo.string("HIRER_ADDR").equals("")){
if(lsctMpngInfo.string("HIRER_ADDR").equals("")){
lsctAprv.setHirerZip(crdnInfo.string("ZIP")); // 임차인 우편번호
lsctAprv.setHirerAddr(crdnInfo.string("ADDR")); // 임차인 주소
lsctAprv.setHirerDtlAddr(crdnInfo.string("DTL_ADDR")); // 임차인 상세 주소

@ -13,19 +13,39 @@ SELECT COUNT(*)
AND LM.TASK_SE_CD = #{taskSeCd} <!-- 업무 구분 코드 -->
AND LM.DMND_YN = 'Y' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD = 'RQ' <!-- 변경 승인 상태 -->
AND C.CRDN_STTS_CD BETWEEN '11' AND '45'
AND C.CRDN_STTS_CD BETWEEN '41' AND '45'
AND LM.LSCT_MPNG_ID != '9999999999'
AND C.MM_CODE = #{mmCode}
</select>
<update id="updateInProgress" parameterType="cokr.xit.fims.crdn.Crdn">
UPDATE TB_CRDN
SET IN_PROGRESS = 'Y'
WHERE DEL_YN = 'N'
AND MM_CODE = #{mmCode}
AND SGG_CD = #{sggCd}
AND TASK_SE_CD = #{taskSeCd}
</update>
<insert id="lockMmCode" parameterType="cokr.xit.fims.crdn.Crdn">
MERGE INTO TB_MM_CODE_LOCK
USING DUAL ON (SGG_CD = #{sggCd} AND TASK_SE_CD = #{taskSeCd} AND MM_CODE = #{mmCode})
WHEN MATCHED THEN
UPDATE SET LOCK_YN = 'Y'
WHEN NOT MATCHED THEN
INSERT INTO (
SGG_CD
, TASK_SE_CD
, MM_CODE
, LOCK_YN
) VALUES (
#{sggCd}
, #{taskSeCd}
, #{mmCode}
, 'Y'
)
</insert>
<select id="countLockMmCode" parameterType="cokr.xit.fims.crdn.Crdn" resultType="int">
SELECT COUNT(*)
FROM TB_MM_CODE_LOCK
WHERE SGG_CD = #{sggCd}
AND TASK_SE_CD = #{taskSeCd}
AND MM_CODE = #{mmCode}
AND LOCK_YN = 'Y'
</select>
</mapper>

@ -437,14 +437,6 @@
<if test="npaLinkRspnsNm == '정상'">
, NPA_OM_JNO = #{npaOmJno}
, HIRER_NM = #{pyrNm}
, HIRER_ZIP = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{zip} ELSE HIRER_ZIP END)
, HIRER_ADDR = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{addr} ELSE HIRER_ADDR END)
, HIRER_DTL_ADDR = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{daddr} ELSE HIRER_DTL_ADDR END)
, ROAD_NM_CD = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{roadNmCd} ELSE ROAD_NM_CD END)
, UDGD_SE_CD = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{addrUdgdYn} ELSE UDGD_SE_CD END)
, BMNO = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{bmno} ELSE BMNO END)
, BSNO = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{bsno} ELSE BSNO END)
, STDG_CD = (CASE WHEN HIRER_ADDR = '' OR HIRER_ADDR IS NULL THEN #{stdgCd} ELSE STDG_CD END)
</if>
WHERE APRV_ID = #{aprvId}
AND CHG_APRV_STTS_CD = 'RQ' <!-- 변경 승인 상태 -->

@ -152,6 +152,7 @@
, MC_ACCOUNT_NO11
FROM VW_CP_MAIN
<where>
AND MM_STATE <![CDATA[>=]]> '41'
<if test="schCrdnYmdFrom != null">
AND MM_DATE <![CDATA[>=]]> #{schCrdnYmdFrom} <!-- 단속 일자 시작 -->
</if>
@ -178,6 +179,9 @@
<if test="taskSeCd != null">
AND MM_TASKGB = #{taskSeCd} <!-- 업무 구분 코드 -->
</if>
<if test="mmCode != null">
AND MM_CODE = #{mmCode} <!-- mmCode -->
</if>
</where>
<include refid="utility.orderBy" />
</select>
@ -679,13 +683,13 @@
, P.RTPYR_NO <!-- 납부자 번호 -->
, P.RTPYR_NM <!-- 납부자 명 -->
, LM.LSCT_MPNG_ID <!-- 임대차계약 매핑 ID -->
, (CASE WHEN C.IN_PROGRESS = 'Y' THEN '담당자처리'
, (CASE WHEN LCK.LOCK_YN = 'Y' THEN '담당자처리'
WHEN LM.LSCT_MPNG_ID IS NOT NULL AND LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'RQ' THEN '승인요청(요청중)'
WHEN LM.LSCT_MPNG_ID IS NOT NULL AND LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'RT' THEN '승인요청(요청취소)'
WHEN LM.LSCT_MPNG_ID IS NOT NULL AND LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'AP' THEN '승인요청(승인)'
WHEN LM.LSCT_MPNG_ID IS NOT NULL AND LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'UA' THEN '승인요청(미승인)'
WHEN LM.LSCT_MPNG_ID IS NOT NULL AND LM.DMND_YN = 'N' THEN '계약서등록'
WHEN LM.LSCT_MPNG_ID IS NULL AND C.CRDN_STTS_CD BETWEEN '11' AND '45' THEN '대상'
WHEN LM.LSCT_MPNG_ID IS NULL AND C.CRDN_STTS_CD BETWEEN '41' AND '45' THEN '대상'
ELSE CONCAT('기타', '(', GET_CODE_NM('FIM010',C.CRDN_STTS_CD), ')')
END) AS TRGT_STTS_NM <!-- 계약서 등록 대상 -->
, LM.LSCT_ID <!-- 임대차계약 ID -->
@ -724,6 +728,7 @@
, L.HIRER_ADDR <!-- 임차인 주소 -->
, L.HIRER_DTL_ADDR <!-- 임차인 상세 주소 -->
FROM TB_CRDN C
LEFT OUTER JOIN TB_MM_CODE_LOCK LCK ON (C.SGG_CD = LCK.SGG_CD AND C.TASK_SE_CD = LCK.TASK_SE_CD AND C.MM_CODE = LCK.MM_CODE)
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_LSCT_MPNG LM ON (C.CRDN_ID = LM.CRDN_ID AND LM.DEL_YN = 'N')
@ -746,26 +751,27 @@
<if test='trgtSttsNm != null and trgtSttsNm != "전체"'>
<choose>
<when test='trgtSttsNm == "대상"'>
AND C.CRDN_STTS_CD BETWEEN '11' AND '45'
AND C.CRDN_STTS_CD BETWEEN '41' AND '45'
AND LM.LSCT_MPNG_ID IS NULL
AND C.IN_PROGRESS = 'N'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "계약서등록"'>
AND LM.LSCT_MPNG_ID IS NOT NULL
AND LM.DMND_YN = 'N'
AND C.IN_PROGRESS = 'N'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "승인요청"'>
AND LM.LSCT_MPNG_ID IS NOT NULL
AND LM.DMND_YN = 'Y'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "기타"'>
AND C.CRDN_STTS_CD NOT BETWEEN '11' AND '45'
AND C.CRDN_STTS_CD NOT BETWEEN '41' AND '45'
AND LM.LSCT_MPNG_ID IS NULL
AND C.IN_PROGRESS = 'N'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "담당자처리"'>
AND C.IN_PROGRESS = 'Y'
AND LCK.LOCK_YN = 'Y'
</when>
<otherwise>
</otherwise>
@ -849,12 +855,12 @@
, LM.MDFCN_DT <!-- 수정 일시 -->
, LM.MDFR <!-- 수정자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LM.MDFR) AS MDFR_NM <!-- 수정자 명 -->
, (CASE WHEN C.IN_PROGRESS = 'Y' THEN '담당자처리'
, (CASE WHEN LCK.LOCK_YN = 'Y' THEN '담당자처리'
WHEN LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'AP' THEN '승인'
WHEN LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'UA' THEN '미승인'
WHEN LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'RQ' AND C.CRDN_STTS_CD BETWEEN '11' AND '45' THEN '요청중'
WHEN LM.DMND_YN = 'N' AND LM.CHG_APRV_STTS_CD = 'RT' AND C.CRDN_STTS_CD BETWEEN '11' AND '45' THEN '요청취소'
WHEN LM.DMND_YN = 'N' AND LM.CHG_APRV_STTS_CD IS NULL AND C.CRDN_STTS_CD BETWEEN '11' AND '45' THEN '대상'
WHEN LM.DMND_YN = 'Y' AND LM.CHG_APRV_STTS_CD = 'RQ' AND C.CRDN_STTS_CD BETWEEN '41' AND '45' THEN '요청중'
WHEN LM.DMND_YN = 'N' AND LM.CHG_APRV_STTS_CD = 'RT' AND C.CRDN_STTS_CD BETWEEN '41' AND '45' THEN '요청취소'
WHEN LM.DMND_YN = 'N' AND LM.CHG_APRV_STTS_CD IS NULL AND C.CRDN_STTS_CD BETWEEN '41' AND '45' THEN '대상'
ELSE CONCAT('기타', '(', GET_CODE_NM('FIM010',C.CRDN_STTS_CD), ')')
END) AS TRGT_STTS_NM <!-- 계약서 등록 대상 -->
, RE.ENT_SE_CD <!-- 기업 구분 코드 -->
@ -905,6 +911,7 @@
LEFT OUTER JOIN TB_LSCT L 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_CRDN C ON (LM.CRDN_ID = C.CRDN_ID)
LEFT OUTER JOIN TB_MM_CODE_LOCK LCK ON (C.SGG_CD = LCK.SGG_CD AND C.TASK_SE_CD = LCK.TASK_SE_CD AND C.MM_CODE = LCK.MM_CODE)
</sql>
<select id="selectLsctMpngList" parameterType="map" resultType="dataobject">/* 임대차계약 매핑 대장 목록 조회(lsctMpngMapper.selectLsctMpngList) */
@ -953,37 +960,37 @@
<when test='trgtSttsNm == "승인"'>
AND LM.DMND_YN = 'Y' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD = 'AP' <!-- 변경 승인 상태 -->
AND C.IN_PROGRESS = 'N'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "미승인"'>
AND LM.DMND_YN = 'Y' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD = 'UA' <!-- 변경 승인 상태 -->
AND C.IN_PROGRESS = 'N'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "요청중"'>
AND LM.DMND_YN = 'Y' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD = 'RQ' <!-- 변경 승인 상태 -->
AND C.CRDN_STTS_CD BETWEEN '11' AND '45'
AND C.IN_PROGRESS = 'N'
AND C.CRDN_STTS_CD BETWEEN '41' AND '45'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "요청취소"'>
AND LM.DMND_YN = 'N' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD = 'RT' <!-- 변경 승인 상태 -->
AND C.CRDN_STTS_CD BETWEEN '11' AND '45'
AND C.IN_PROGRESS = 'N'
AND C.CRDN_STTS_CD BETWEEN '41' AND '45'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "대상"'>
AND LM.DMND_YN = 'N' <!-- 요청 여부 -->
AND LM.CHG_APRV_STTS_CD IS NULL <!-- 변경 승인 상태 -->
AND C.CRDN_STTS_CD BETWEEN '11' AND '45'
AND C.IN_PROGRESS = 'N'
AND C.CRDN_STTS_CD BETWEEN '41' AND '45'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</when>
<when test='trgtSttsNm == "담당자처리"'>
AND C.IN_PROGRESS = 'Y'
AND LCK.LOCK_YN = 'Y'
</when>
<otherwise>
AND C.CRDN_STTS_CD NOT BETWEEN '11' AND '45'
AND C.IN_PROGRESS = 'N'
AND C.CRDN_STTS_CD NOT BETWEEN '41' AND '45'
AND (LCK.LOCK_YN IS NULL OR LCK.LOCK_YN = 'N')
</otherwise>
</choose>
</if>

Loading…
Cancel
Save