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 2eb4b280..d90c3684 100644 --- a/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java +++ b/src/main/java/com/interplug/qcast/biz/estimate/EstimateService.java @@ -448,6 +448,7 @@ public class EstimateService { itemRequest.setFileUploadFlg(itemResponse.getFileUploadFlg()); itemRequest.setPkgMaterialFlg(itemResponse.getPkgMaterialFlg()); itemRequest.setOpenFlg(itemResponse.getOpenFlg()); + itemRequest.setUnitOpenFlg(itemResponse.getUnitOpenFlg()); itemRequest.setDispCableFlg("CABLE_".equals(itemResponse.getItemGroup()) ? "1" : "0"); itemRequest.setItemGroup(itemResponse.getItemGroup()); itemRequest.setItemCtgGr(itemResponse.getItemCtgGr()); @@ -482,6 +483,7 @@ public class EstimateService { bomItem.setFileUploadFlg(itemResponse.getFileUploadFlg()); bomItem.setPkgMaterialFlg(itemResponse.getPkgMaterialFlg()); bomItem.setOpenFlg("0"); + bomItem.setUnitOpenFlg("0"); bomItem.setDispCableFlg("0"); bomItem.setItemGroup(itemResponse.getItemGroup()); bomItem.setItemCtgGr(itemResponse.getItemCtgGr()); @@ -729,6 +731,8 @@ public class EstimateService { !StringUtils.isEmpty(itemRequest.getPartAdd()) ? itemRequest.getPartAdd() : "0"); itemRequest.setOpenFlg( !StringUtils.isEmpty(itemRequest.getOpenFlg()) ? itemRequest.getOpenFlg() : "0"); + itemRequest.setUnitOpenFlg( + !StringUtils.isEmpty(itemRequest.getUnitOpenFlg()) ? itemRequest.getUnitOpenFlg() : "0"); itemRequest.setItemChangeFlg( !StringUtils.isEmpty(itemRequest.getItemChangeFlg()) ? itemRequest.getItemChangeFlg() : "0"); @@ -881,6 +885,7 @@ public class EstimateService { itemRequest.setFileUploadFlg(itemResponse.getFileUploadFlg()); itemRequest.setItemGroup(itemResponse.getItemGroup()); itemRequest.setOpenFlg(itemResponse.getOpenFlg()); + itemRequest.setUnitOpenFlg(itemResponse.getUnitOpenFlg()); break; } @@ -1029,6 +1034,7 @@ public class EstimateService { itemRequest.setFileUploadFlg(itemResponse.getFileUploadFlg()); itemRequest.setPkgMaterialFlg(itemResponse.getPkgMaterialFlg()); itemRequest.setOpenFlg(itemResponse.getOpenFlg()); + itemRequest.setUnitOpenFlg(itemResponse.getUnitOpenFlg()); itemRequest.setDispCableFlg("CABLE_".equals(itemResponse.getItemGroup()) ? "1" : "0"); itemRequest.setItemGroup(itemResponse.getItemGroup()); itemRequest.setItemCtgGr(itemResponse.getItemCtgGr()); @@ -1063,6 +1069,7 @@ public class EstimateService { bomItem.setFileUploadFlg(itemResponse.getFileUploadFlg()); bomItem.setPkgMaterialFlg(itemResponse.getPkgMaterialFlg()); bomItem.setOpenFlg("0"); + bomItem.setUnitOpenFlg("0"); bomItem.setDispCableFlg("0"); bomItem.setItemGroup(itemResponse.getItemGroup()); bomItem.setItemCtgGr(itemResponse.getItemCtgGr()); @@ -1210,6 +1217,8 @@ public class EstimateService { !StringUtils.isEmpty(itemRequest.getPartAdd()) ? itemRequest.getPartAdd() : "0"); itemRequest.setOpenFlg( !StringUtils.isEmpty(itemRequest.getOpenFlg()) ? itemRequest.getOpenFlg() : "0"); + itemRequest.setUnitOpenFlg( + !StringUtils.isEmpty(itemRequest.getUnitOpenFlg()) ? itemRequest.getUnitOpenFlg() : "0"); itemRequest.setItemChangeFlg( !StringUtils.isEmpty(itemRequest.getItemChangeFlg()) ? itemRequest.getItemChangeFlg() : "0"); @@ -1415,6 +1424,14 @@ public class EstimateService { itemResponse.setSalePrice("OPEN"); itemResponse.setSaleTotPrice("OPEN"); } + + String nullChk = StringUtils.isEmpty(itemResponse.getSalePrice()) ? "0" : itemResponse.getSalePrice(); + if ("1".equals(itemResponse.getUnitOpenFlg()) && "1".equals(estimateRequest.getSchUnitPriceFlg())){ + + itemResponse.setSalePrice("OPEN"); + itemResponse.setSaleTotPrice("OPEN"); + + } } // 합산 문자열 통화로 변환 처리 diff --git a/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemRequest.java b/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemRequest.java index 00237d39..2b4e63cb 100644 --- a/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemRequest.java +++ b/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemRequest.java @@ -109,4 +109,7 @@ public class ItemRequest { @Schema(description = "아이템 타입 코드") public String itemTpCd; + + @Schema(description = "unit price 아이템 오픈가 여부") + private String unitOpenFlg; } diff --git a/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemResponse.java b/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemResponse.java index 452016a2..46f6bb6c 100644 --- a/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemResponse.java +++ b/src/main/java/com/interplug/qcast/biz/estimate/dto/ItemResponse.java @@ -88,4 +88,7 @@ public class ItemResponse { @Schema(description = "아이템 타입 코드") public String itemTpCd; + + @Schema(description = "unit price 아이템 오픈가 여부") + private String unitOpenFlg; } diff --git a/src/main/java/com/interplug/qcast/biz/object/ObjectService.java b/src/main/java/com/interplug/qcast/biz/object/ObjectService.java index d42b254a..7ce3da5a 100644 --- a/src/main/java/com/interplug/qcast/biz/object/ObjectService.java +++ b/src/main/java/com/interplug/qcast/biz/object/ObjectService.java @@ -653,6 +653,7 @@ public class ObjectService { itemRequest.setFileUploadFlg(itemResponse.getFileUploadFlg()); itemRequest.setItemGroup(itemResponse.getItemGroup()); itemRequest.setOpenFlg(itemResponse.getOpenFlg()); + itemRequest.setUnitOpenFlg(itemResponse.getUnitOpenFlg()); break; } diff --git a/src/main/resources/mappers/estimate/estimateMapper.xml b/src/main/resources/mappers/estimate/estimateMapper.xml index 0a0d4c3d..044839c2 100644 --- a/src/main/resources/mappers/estimate/estimateMapper.xml +++ b/src/main/resources/mappers/estimate/estimateMapper.xml @@ -281,6 +281,7 @@ , PEI.PKG_MATERIAL_FLG , PEI.FILE_UPLOAD_FLG , PEI.OPEN_FLG + , PEI.UNIT_OPEN_FLG , PEI.ITEM_CHANGE_FLG , PEI.DISP_CABLE_FLG , PEI.ITEM_TP_CD @@ -321,6 +322,7 @@ , II.ITEM_CTG_GR , ISNULL(PPM.SALE_PRICE, '0') AS SALE_PRICE , CASE WHEN PPM.SALE_PRICE = 0 THEN '1' ELSE '0' END AS OPEN_FLG + , CASE WHEN PPM.UNIT_PRICE = 0 AND PPM.SALE_PRICE ]]> 0 THEN '1' ELSE '0' END AS UNIT_OPEN_FLG FROM M_ITEM I WITH (NOLOCK) INNER JOIN M_ITEM_INFO II WITH (NOLOCK) ON I.ITEM_ID = II.ITEM_ID @@ -837,6 +839,7 @@ , PKG_MATERIAL_FLG , FILE_UPLOAD_FLG , OPEN_FLG + , UNIT_OPEN_FLG , ITEM_CHANGE_FLG , DISP_CABLE_FLG , ITEM_TP_CD @@ -856,6 +859,7 @@ , #{pkgMaterialFlg} , #{fileUploadFlg} , #{openFlg} + , #{unitOpenFlg} , #{itemChangeFlg} , #{dispCableFlg} , #{itemTpCd}