diff --git a/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java b/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java index 56d2c06a..fe1048ab 100644 --- a/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java +++ b/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java @@ -742,6 +742,7 @@ public class EstimateService { for (FileRequest fileRequest : estimateRequest.getFileList()) { fileRequest.setUserId(estimateRequest.getUserId()); fileMapper.insertFile(fileRequest); + fileMapper.insertFileInfo(fileRequest); } } diff --git a/src/main/java/com/interplug/qcast/biz/file/FileMapper.java b/src/main/java/com/interplug/qcast/biz/file/FileMapper.java index bc963886..d3883633 100644 --- a/src/main/java/com/interplug/qcast/biz/file/FileMapper.java +++ b/src/main/java/com/interplug/qcast/biz/file/FileMapper.java @@ -26,6 +26,15 @@ public interface FileMapper { */ Integer insertFile(FileRequest fileInsertReq) throws Exception; + /** + * 파일 상세정보 등록 + * + * @param fileInsertReq + * @return + * @throws Exception + */ + Integer insertFileInfo(FileRequest fileInsertReq) throws Exception; + /** * 파일 1건 조회 * diff --git a/src/main/java/com/interplug/qcast/biz/file/FileService.java b/src/main/java/com/interplug/qcast/biz/file/FileService.java index 804ac5a6..23815a67 100644 --- a/src/main/java/com/interplug/qcast/biz/file/FileService.java +++ b/src/main/java/com/interplug/qcast/biz/file/FileService.java @@ -200,6 +200,7 @@ public class FileService { for (FileRequest fileInsertReq : saveFilelist) { if (!"".equals(fileInsertReq.getObjectNo()) && !"".equals(fileInsertReq.getCategory())) { iResult += fileMapper.insertFile(fileInsertReq); + fileMapper.insertFileInfo(fileInsertReq); } } } diff --git a/src/main/java/com/interplug/qcast/biz/user/UserMapper.java b/src/main/java/com/interplug/qcast/biz/user/UserMapper.java index 82686f2c..26ea7cb4 100644 --- a/src/main/java/com/interplug/qcast/biz/user/UserMapper.java +++ b/src/main/java/com/interplug/qcast/biz/user/UserMapper.java @@ -18,6 +18,15 @@ public interface UserMapper { */ int setStoreSave(StoreRequest storeReq) throws Exception; + /** + * 판매점 추가 정보 저장 + * + * @param storeReq + * @return + * @throws Exception + */ + int setStoreInfoSave(StoreRequest storeReq) throws Exception; + /** * 판매점 sap 정보 저장 * diff --git a/src/main/java/com/interplug/qcast/biz/user/UserService.java b/src/main/java/com/interplug/qcast/biz/user/UserService.java index 908bf2ea..445b95ef 100644 --- a/src/main/java/com/interplug/qcast/biz/user/UserService.java +++ b/src/main/java/com/interplug/qcast/biz/user/UserService.java @@ -70,6 +70,7 @@ public class UserService { for (StoreRequest storeRequest : storeList) { try { userMapper.setStoreSave(storeRequest); + userMapper.setStoreInfoSave(storeRequest); userMapper.setStoreSapCdSave(storeRequest); userMapper.setStoreNorthModuleSave(storeRequest); } catch (Exception e) { @@ -141,6 +142,7 @@ public class UserService { List storeList = storeSyncResponse.getStoreList(); for (StoreRequest storeRequest : storeList) { userMapper.setStoreSave(storeRequest); + userMapper.setStoreInfoSave(storeRequest); userMapper.setStoreSapCdSave(storeRequest); userMapper.setStoreNorthModuleSave(storeRequest); } diff --git a/src/main/resources/mappers/displayItem/displayItemMapper.xml b/src/main/resources/mappers/displayItem/displayItemMapper.xml index 764203d6..f8e68cd5 100644 --- a/src/main/resources/mappers/displayItem/displayItemMapper.xml +++ b/src/main/resources/mappers/displayItem/displayItemMapper.xml @@ -57,6 +57,8 @@ WHEN MI.ITEM_GROUP = 'PC_' AND MI.POWER_COM_FLG = '0' THEN 'STORAGE_BATTERY' ELSE MI.ITEM_GROUP END AS ITEM_GROUP FROM M_ITEM MI + LEFT OUTER JOIN M_ITEM_INFO MII + ON MI.ITEM_ID = MII.ITEM_ID LEFT OUTER JOIN M_SALES_STORE_DISP_ITEM SSDI ON MI.ITEM_ID = SSDI.ITEM_ID AND SSDI.SALE_STORE_ID = #{saleStoreId} @@ -67,10 +69,10 @@ AND MI.DEL_FLG = 0 AND MI.LIMITED_RELEASE_FLG = 0 - AND MI.COLD_ZONE_FLG = #{coldZoneFlg} + AND MII.COLD_ZONE_FLG = #{coldZoneFlg} - AND MI.SALT_AFFECTED_FLG = #{saltAffectedFlg} + AND MII.SALT_AFFECTED_FLG = #{saltAffectedFlg} UNION ALL @@ -88,16 +90,18 @@ ON MI.ITEM_ID = SSDI.ITEM_ID AND MI.LIMITED_RELEASE_FLG = 1 AND MI.DEL_FLG = 0 - - AND MI.COLD_ZONE_FLG = #{coldZoneFlg} - - - AND MI.SALT_AFFECTED_FLG = #{saltAffectedFlg} - + LEFT OUTER JOIN M_ITEM_INFO MII + ON MI.ITEM_ID = MII.ITEM_ID WHERE SSDI.SALE_STORE_ID = #{saleStoreId} AND SSDI.DISP_TYPE_CD = 'DISP001' /* 표시 */ AND dbo.fn_fmtdDate(GETDATE(), 'YYYYMMDD') BETWEEN SSDI.START_DATE AND SSDI.END_DATE AND SSDI.DEL_FLG = 0 + + AND MII.COLD_ZONE_FLG = #{coldZoneFlg} + + + AND MII.SALT_AFFECTED_FLG = #{saltAffectedFlg} + ) TT ORDER BY TT.DISP_ORDER @@ -116,12 +120,14 @@ WHEN MI.ITEM_GROUP = 'PC_' AND MI.POWER_COM_FLG = '0' THEN 'STORAGE_BATTERY' ELSE MI.ITEM_GROUP END AS ITEM_GROUP , MI.MODULE_FLG - , MI.PKG_MATERIAL_FLG - , MI.FILE_UPLOAD_FLG - , MI.ITEM_CTG_GR + , MII.PKG_MATERIAL_FLG + , MII.FILE_UPLOAD_FLG + , MII.ITEM_CTG_GR , ISNULL(MPPM.SALE_PRICE, '0') AS SALE_PRICE , CASE WHEN MPPM.SALE_PRICE = 0 THEN '1' ELSE '0' END AS OPEN_FLG FROM M_ITEM MI + LEFT OUTER JOIN M_ITEM_INFO MII + ON MI.ITEM_ID = MII.ITEM_ID LEFT OUTER JOIN M_PRICE_PATTERN_MONEY MPPM ON MPPM.PRICE_PATTERN = '510' AND MI.ITEM_ID = MPPM.ITEM_ID diff --git a/src/main/resources/mappers/file/fileMapper.xml b/src/main/resources/mappers/file/fileMapper.xml index b18361ce..48b8a87a 100644 --- a/src/main/resources/mappers/file/fileMapper.xml +++ b/src/main/resources/mappers/file/fileMapper.xml @@ -7,17 +7,21 @@ SELECT TOP 1 U.OBJECT_NO - , U.PLAN_NO + , UI.PLAN_NO , U.NO , U.FAILE_NAME , U.CATEGORY FROM T_UPLOAD U WITH (NOLOCK) + LEFT OUTER JOIN T_UPLOAD_INFO UI WITH (NOLOCK) + ON U.OBJECT_NO = UI.OBJECT_NO + AND U.NO = UI.NO + AND U.CATEGORY = UI.CATEGORY WHERE U.OBJECT_NO = #{objectNo} AND U.PLAN_NO = #{planNo} - AND U.PLAN_NO IS NULL + AND UI.PLAN_NO IS NULL AND U.NO = #{no} @@ -31,7 +35,7 @@ /* sqlid : com.interplug.qcast.biz.file.selectFileList */ SELECT U.OBJECT_NO - , U.PLAN_NO + , UI.PLAN_NO , U.NO , U.CATEGORY , U.FAILE_NAME @@ -41,10 +45,14 @@ , U.LAST_EDIT_DATETIME , U.LAST_EDIT_USER FROM T_UPLOAD U WITH (NOLOCK) + LEFT OUTER JOIN T_UPLOAD_INFO UI WITH (NOLOCK) + ON U.OBJECT_NO = UI.OBJECT_NO + AND U.NO = UI.NO + AND U.CATEGORY = UI.CATEGORY WHERE U.OBJECT_NO = #{objectNo} AND U.DEL_FLG = '0' - AND U.PLAN_NO = #{planNo} + AND UI.PLAN_NO = #{planNo} AND U.PLAN_NO IS NULL @@ -59,6 +67,12 @@ /* sqlid : com.interplug.qcast.biz.file.insertFile */ + + SELECT COALESCE(MAX(NO) + 1, 1) + FROM T_UPLOAD + WHERE OBJECT_NO = #{objectNo} + + INSERT INTO T_UPLOAD ( OBJECT_NO , NO @@ -72,7 +86,7 @@ , PLAN_NO ) VALUES ( #{objectNo} - , (SELECT COALESCE(MAX(NO) + 1, 1) FROM T_UPLOAD WHERE OBJECT_NO = #{objectNo}) + , #{no} , #{category} , #{faileName} , GETDATE() @@ -84,19 +98,39 @@ ) + + /* sqlid : com.interplug.qcast.biz.file.insertFileInfo */ + INSERT INTO T_UPLOAD_INFO ( + OBJECT_NO + , NO + , CATEGORY + , PLAN_NO + ) VALUES ( + #{objectNo} + , #{no} + , #{category} + , #{planNo} + ) + + /* sqlid : com.interplug.qcast.biz.file.deleteFile */ - UPDATE T_UPLOAD + UPDATE U SET - DEL_FLG = 1 - , LAST_EDIT_DATETIME = GETDATE() - , LAST_EDIT_USER = #{userId} - WHERE OBJECT_NO = #{objectNo} + U.DEL_FLG = 1 + , U.LAST_EDIT_DATETIME = GETDATE() + , U.LAST_EDIT_USER = #{userId} + FROM T_UPLOAD U + LEFT OUTER JOIN T_UPLOAD_INFO UI + ON U.OBJECT_NO = UI.OBJECT_NO + AND U.NO = UI.NO + AND U.CATEGORY = UI.CATEGORY + WHERE U.OBJECT_NO = #{objectNo} - AND PLAN_NO = #{planNo} + AND UI.PLAN_NO = #{planNo} - AND NO = #{no} + AND U.NO = #{no} diff --git a/src/main/resources/mappers/pwrGnrSimulation/pwrGnrSimMapper.xml b/src/main/resources/mappers/pwrGnrSimulation/pwrGnrSimMapper.xml index 616d2c47..01c8e004 100644 --- a/src/main/resources/mappers/pwrGnrSimulation/pwrGnrSimMapper.xml +++ b/src/main/resources/mappers/pwrGnrSimulation/pwrGnrSimMapper.xml @@ -50,12 +50,14 @@ B.ITEM_ID , B.ITEM_NO , B.AMOUNT - , C.CNV_EFF - , C.AMP + , D.CNV_EFF + , D.AMP , B.SPECIFICATION FROM T_PART_ESTIMATE B WITH (NOLOCK) INNER JOIN M_ITEM C WITH (NOLOCK) ON B.ITEM_ID = C.ITEM_ID + LEFT OUTER JOIN M_ITEM_INFO D WITH (NOLOCK) + ON C.ITEM_ID = D.ITEM_ID WHERE C.POWER_COM_FLG ='1' /* PCS만 */ AND B.OBJECT_NO = #{objectNo} AND B.PLAN_NO = #{planNo} @@ -76,10 +78,10 @@ , B.ITEM_NO , ISNULL((SUM(B.AMOUNT) * TRY_CAST(MAX(B.SPECIFICATION) AS FLOAT)),0) AS TOT_SPECIFICATION /* 용량 */ , MAX(C.ITEM_GROUP) AS ITEM_GROUP /* 추후 지붕재테이블로 봐야함. */ - , MAX(C.TEMP_LOSS) AS TEMP_LOSS - , MAX(C.TEMP_COEFF ) AS TEMP_COEFF - , MAX(C.CNV_EFF) AS CNV_EFF - , MAX(C.AMP) AS AMP + , MAX(D.TEMP_LOSS) AS TEMP_LOSS + , MAX(D.TEMP_COEFF ) AS TEMP_COEFF + , MAX(D.CNV_EFF) AS CNV_EFF + , MAX(D.AMP) AS AMP , MAX(B.SPECIFICATION) AS SPECIFICATION , A.ROOF_SURFACE AS ROOF_SURFACE , A.CLASS_TYPE AS CLASS_TYPE @@ -97,6 +99,8 @@ AND A.ROOF_SURFACE_ID = B.ROOF_SURFACE_ID INNER JOIN M_ITEM C WITH (NOLOCK) ON B.ITEM_ID = C.ITEM_ID + LEFT OUTER JOIN M_ITEM_INFO D WITH (NOLOCK) + ON C.ITEM_ID = D.ITEM_ID WHERE A.OBJECT_NO = #{objectNo} AND A.PLAN_NO = #{planNo} AND C.ITEM_GROUP = #{itemGroup} diff --git a/src/main/resources/mappers/user/userMapper.xml b/src/main/resources/mappers/user/userMapper.xml index b5ac9451..66218aa0 100644 --- a/src/main/resources/mappers/user/userMapper.xml +++ b/src/main/resources/mappers/user/userMapper.xml @@ -70,7 +70,6 @@ , ADDRESS = #{address} , TEL = #{tel} , FAX = #{fax} - , BIZ_NO = #{bizNo} , APPLICATION_DATE = #{applicationDate} , APPROVAL_DATE = #{approvalDate} , APPROVE_FLG = #{approveFlg} @@ -100,7 +99,6 @@ , ADDRESS , TEL , FAX - , BIZ_NO , APPLICATION_DATE , APPROVAL_DATE , APPROVE_FLG @@ -137,7 +135,6 @@ , #{address} , #{tel} , #{fax} - , #{bizNo} , #{applicationDate} , #{approvalDate} , #{approveFlg} @@ -169,6 +166,28 @@ ); + + /* sqlid : com.interplug.qcast.user.setStoreInfoSave */ + MERGE M_SALES_STORE_INFO AS A + USING + ( SELECT #{saleStoreId} AS SALE_STORE_ID ) AS D + ON (A.SALE_STORE_ID = D.SALE_STORE_ID) + WHEN MATCHED THEN + UPDATE SET + BIZ_NO = #{bizNo} + , LAST_EDIT_DATETIME = #{lastEditDatetime} + WHEN NOT MATCHED THEN + INSERT ( + SALE_STORE_ID + , BIZ_NO + , LAST_EDIT_DATETIME + ) VALUES ( + #{saleStoreId} + , #{bizNo} + , #{lastEditDatetime} + ); + + /* sqlid : com.interplug.qcast.user.setUserSave */