From 259e1c8d0e98d43808814c6aadce3afd9b97e06d Mon Sep 17 00:00:00 2001 From: "xitpc\\xituser" Date: Fri, 18 Oct 2024 17:41:16 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9E=84=EB=8C=80=EC=B0=A8=EA=B3=84=EC=95=BD?= =?UTF-8?q?=20=EA=B4=80=EB=A6=AC=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fims/rent/service/bean/LsctMpngBean.java | 46 +++++++++---------- .../xit/fims/rent/web/Rent02Controller.java | 1 + .../sql/mapper/fims/rent/lsctAprv-mapper.xml | 3 +- .../sql/mapper/fims/rent/lsctMpng-mapper.xml | 14 ++++-- 4 files changed, 37 insertions(+), 27 deletions(-) diff --git a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java index 8e7d557e..838b384e 100644 --- a/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java +++ b/src/main/java/cokr/xit/fims/rent/service/bean/LsctMpngBean.java @@ -1,8 +1,5 @@ package cokr.xit.fims.rent.service.bean; -import java.io.IOException; -import java.net.InetAddress; -import java.net.UnknownHostException; import java.util.List; import javax.annotation.Resource; @@ -592,15 +589,6 @@ public class LsctMpngBean extends AbstractBean { lsctAprv.setRentEntDtlAddr(lsctMpngInfo.string("ENT_DTL_ADDR")); // 임대 기업 상세 주소 lsctAprv.setAtchFileCnt(lsctMpngInfo.number("ATCH_FILE_CNT").intValue()); // 첨부 파일 수 - // 서버 IP Address - InetAddress localIP = null; - try { - localIP = InetAddress.getLocalHost(); - } catch (UnknownHostException e) { - e.printStackTrace(); - } - String serverIP = localIP.getHostAddress(); - // 임차인 ID로 파일(TB_FILE) 정보 조회 List fileList = fileBean.getFileList(new FileQuery().setInfoType(Lsct.INF_TYPE) .setInfoKeys(lsctMpngInfo.string("LSCT_ID")) @@ -687,12 +675,16 @@ public class LsctMpngBean extends AbstractBean { req.setOrderBy("LM.LSCT_MPNG_ID DESC"); // 정렬 DataObject lsctMpngInfo = lsctMpngMapper.selectLsctMpngInfo(req); - // 임대차계약 자료가 없다면 종료.. + // 임대차계약매핑 정보가 없다면 종료.. if (lsctMpngInfo == null) { - rtnMsg = "[F] 작업 중 임대차계약 자료가 존재하지 않습니다."; + rtnMsg = "[F] 작업 중 임대차계약 정보가 존재하지 않습니다."; + return rtnMsg; + } + // 임대차계약매핑 변경 승인 상태(CHG_APRV_STTS)가 '요청'이 아니라면 종료.. + if (!lsctMpngInfo.string("CHG_APRV_STTS").equals("RQ")) { + rtnMsg = "[F] 작업 중 임대차계약 승인상태가 '요청' 이 아닙니다."; return rtnMsg; } - // 연계 테이블명 if (lsctMpngInfo.string("SGG_CD").equals("50110") && lsctMpngInfo.string("TASK_SE_CD").equals("ECA")) { req.setLsctLinkTblNm("TB_LSCT_APRV_50110_ECA"); @@ -707,18 +699,19 @@ public class LsctMpngBean extends AbstractBean { // 임대차계약 승인(TB_LSCT_APRV) 대장 조회 req.setOrderBy("LA.LSCT_MPNG_ID DESC"); // WHERE에 있는 컬럼만 정렬이 가능하다.. + DataObject lsctAprvInfo = lsctAprvMapper.selectLsctAprvInfo(req); - // 임대차계약 승인 자료가 없다면 종료.. + // 임대차계약 승인 정보가 없다면 종료.. if (lsctAprvInfo == null) { - rtnMsg = "[F] 작업 중 임대차계약 승인 자료가 존재하지 않습니다."; + rtnMsg = "[F] 작업 중 임대차계약 승인 요청 정보가 존재하지 않습니다."; + return rtnMsg; + } + // 임대차계약 승인 정보의 변경 승인 상태(CHG_APRV_STTS)가 '요청'이 아니라면 종료.. + if (!lsctAprvInfo.string("CHG_APRV_STTS").equals("RQ")) { + rtnMsg = "[F] 작업 중 임대차계약 승인 요청 정보의 승인상태가 '요청' 이 아닙니다."; return rtnMsg; } - lsctAprv.setAprvId(lsctAprvInfo.string("APRV_ID")); - - // DB Link는 트랜잭션이 안된다. update 건수도 확인이 안된다. - // 임대차계약 승인(TB_LSCT_APRV) 대장을 삭제한다. - lsctAprvMapper.deleteLsctAprv(lsctAprv); // 사용자 정보 FimsUser fimsUser = (FimsUser)currentUser().getUser(); @@ -728,7 +721,7 @@ public class LsctMpngBean extends AbstractBean { lsctMpng.setLsctMpngId(lsctAprv.getLsctMpngId()); // 임대차계약 매핑 ID lsctMpng.setChgDmndYn("N"); // 변경 요청 여부 lsctMpng.setChgDmndMdfr(fimsUser.getId()); // 변경 요청 수정자 - lsctMpng.setChgDmndIp(lsctAprv.getChgDmndIp()); // 변경 요청 IP + lsctMpng.setChgDmndRtrcnIp(lsctAprv.getChgDmndIp()); // 변경 요청 취소 IP lsctMpng.setChgAprvStts(null); // 변경 승인 상태 lsctMpng.setLsctLinkTblNm(null); // 임대차계약 연계 테이블 명 lsctMpng.setLsctAprvId(null); // 임대차계약 승인 ID @@ -738,6 +731,13 @@ public class LsctMpngBean extends AbstractBean { throw new RuntimeException("[F] 삭제 작업중 임대차계약 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback } + // DB Link는 트랜잭션이 안된다. update 건수도 확인이 안된다. + // 임대차계약 승인(TB_LSCT_APRV) 대장을 삭제한다. + lsctAprv.setAprvId(lsctAprvInfo.string("APRV_ID")); // 승인 ID + lsctAprv.setChgAprvStts("RT"); // 변경 승인 상태 + + lsctAprvMapper.deleteLsctAprv(lsctAprv); + return "[S] 삭제 작업이 정상 처리 되었습니다."; } diff --git a/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java b/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java index d19449c8..005c66f7 100644 --- a/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java +++ b/src/main/java/cokr/xit/fims/rent/web/Rent02Controller.java @@ -655,6 +655,7 @@ public class Rent02Controller extends ApplicationController { for (String lsctMpngId : lsctAprv.getLsctMpngIds()) { LsctAprv removeAprv = new LsctAprv(); removeAprv.setLsctMpngId(lsctMpngId); + removeAprv.setChgDmndIp(remoteAddr); rtnMsg = lsctMpngService.removeLsctAprv(removeAprv); // 삭제 if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료.. diff --git a/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml b/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml index 43080c58..61629bf1 100644 --- a/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml +++ b/src/main/resources/sql/mapper/fims/rent/lsctAprv-mapper.xml @@ -311,7 +311,8 @@ /* 임대차계약 승인 대장 삭제(lsctAprvMapper.deleteLsctAprv) */ UPDATE ${lsctLinkTblNm} - SET DEL_YN = 'Y' + SET CHG_APRV_STTS = #{chgAprvStts} + , DEL_YN = 'Y' , DEL_DT = , DLTR = #{modifiedBy} , DEL_RSN = #{delRsn} diff --git a/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml b/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml index 9dee9aa7..4aeb5139 100644 --- a/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml +++ b/src/main/resources/sql/mapper/fims/rent/lsctMpng-mapper.xml @@ -537,6 +537,7 @@ , LM.MDFR , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = LM.MDFR) AS MDFR_NM , (CASE WHEN LM.CHG_DMND_YN = 'N' AND LM.CHG_APRV_STTS IS NULL AND C.NXRP_CRDN_LINK_YN = 'N' THEN '대상' + WHEN LM.CHG_DMND_YN = 'N' AND LM.CHG_APRV_STTS = 'RT' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '요청취소' WHEN LM.CHG_DMND_YN = 'Y' AND LM.CHG_APRV_STTS = 'RQ' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '요청중' WHEN LM.CHG_DMND_YN = 'Y' AND LM.CHG_APRV_STTS = 'AP' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '승인' WHEN LM.CHG_DMND_YN = 'Y' AND LM.CHG_APRV_STTS = 'UA' AND C.NXRP_CRDN_LINK_YN = 'N' THEN '미승인' @@ -618,6 +619,11 @@ AND LM.CHG_DMND_YN = 'N' AND LM.CHG_APRV_STTS IS NULL + AND C.NXRP_CRDN_LINK_YN = 'N' + + + AND LM.CHG_DMND_YN = 'N' + AND LM.CHG_APRV_STTS = 'RT' AND C.NXRP_CRDN_LINK_YN = 'N' @@ -780,23 +786,25 @@ /* 임대차계약 매핑 대장 변경 요청 수정(lsctMapper.updateLsctMpngChgDmnd) */ UPDATE TB_LSCT_MPNG SET CHG_DMND_YN = #{chgDmndYn} - + , CHG_DMND_DT = , CHG_DMND_RGTR = #{chgDmndRgtr} , CHG_DMND_IP = #{chgDmndIp} , CHG_DMND_RTRCN_DT = NULL , CHG_DMND_MDFR = NULL , CHG_DMND_RTRCN_IP = NULL + , CHG_APRV_STTS = #{chgAprvStts} , LSCT_LINK_TBL_NM = #{lsctLinkTblNm} , LSCT_APRV_ID = #{lsctAprvId} - - + + , CHG_DMND_DT = NULL , CHG_DMND_RGTR = NULL , CHG_DMND_IP = NULL , CHG_DMND_RTRCN_DT = , CHG_DMND_MDFR = #{chgDmndMdfr} , CHG_DMND_RTRCN_IP = #{chgDmndRtrcnIp} + , CHG_APRV_STTS = NULL , LSCT_LINK_TBL_NM = NULL , LSCT_APRV_ID = NULL