diff --git a/src/main/java/com/interplug/qcast/biz/master/MasterController.java b/src/main/java/com/interplug/qcast/biz/master/MasterController.java index f7259c98..5a35c318 100644 --- a/src/main/java/com/interplug/qcast/biz/master/MasterController.java +++ b/src/main/java/com/interplug/qcast/biz/master/MasterController.java @@ -3,11 +3,12 @@ package com.interplug.qcast.biz.master; import com.interplug.qcast.biz.master.dto.*; import com.interplug.qcast.biz.master.dto.construction.ApiConstructionResponse; import com.interplug.qcast.biz.master.dto.moduletype.ApiModuleTpResponse; -import com.interplug.qcast.biz.master.dto.pcs.autorecommend.ApiPcsAutoRecommendRequest; +import com.interplug.qcast.biz.master.dto.pcs.ApiPcsInfoRequest; import com.interplug.qcast.biz.master.dto.pcs.autorecommend.ApiPcsAutoRecommendResponse; import com.interplug.qcast.biz.master.dto.pcs.maker.ApiPcsMakerResponse; import com.interplug.qcast.biz.master.dto.pcs.series.ApiPcsSeriesItemRequest; import com.interplug.qcast.biz.master.dto.pcs.series.ApiPcsSeriesItemResponse; +import com.interplug.qcast.biz.master.dto.pcs.voltagestepup.ApiPcsVoltageStepUpResponse; import com.interplug.qcast.biz.master.dto.quotation.ApiQuotationItemRequest; import com.interplug.qcast.biz.master.dto.quotation.ApiQuotationItemResponse; import com.interplug.qcast.biz.master.dto.roofmaterial.ApiRoofMaterialResponse; @@ -224,13 +225,20 @@ public class MasterController { return masterService.getPcsSeriesItemList(pcsSeriesItemListRequest); } - @Operation(description = "시리즈 중 자동으로 추천 PCS 정보 조회한다.") + @Operation(description = "시리즈 중 자동으로 추천 PCS 정보를 조회한다.") @PostMapping("/getPcsAutoRecommendList") public ApiResponse getPcsAutoRecommendList( - @RequestBody ApiPcsAutoRecommendRequest autoRecommendRequest) { + @RequestBody ApiPcsInfoRequest autoRecommendRequest) { return masterService.getPcsAutoRecommendList(autoRecommendRequest); } + @Operation(description = "PCS 승압설정 정보를 조회한다.") + @PostMapping("/getPcsVoltageStepUpList") + public ApiResponse getPcsVoltageStepUpList( + @RequestBody ApiPcsInfoRequest pcsVoltageStepUpRequest) { + return masterService.getPcsVoltageStepUpList(pcsVoltageStepUpRequest); + } + /** remote api group : quotation */ @Operation(description = "견적서 아이템을 조회한다.") @PostMapping("/getQuotationItem") diff --git a/src/main/java/com/interplug/qcast/biz/master/MasterService.java b/src/main/java/com/interplug/qcast/biz/master/MasterService.java index 8b084618..b7a8222c 100644 --- a/src/main/java/com/interplug/qcast/biz/master/MasterService.java +++ b/src/main/java/com/interplug/qcast/biz/master/MasterService.java @@ -3,11 +3,12 @@ package com.interplug.qcast.biz.master; import com.interplug.qcast.biz.master.dto.*; import com.interplug.qcast.biz.master.dto.construction.ApiConstructionResponse; import com.interplug.qcast.biz.master.dto.moduletype.ApiModuleTpResponse; -import com.interplug.qcast.biz.master.dto.pcs.autorecommend.ApiPcsAutoRecommendRequest; +import com.interplug.qcast.biz.master.dto.pcs.ApiPcsInfoRequest; import com.interplug.qcast.biz.master.dto.pcs.autorecommend.ApiPcsAutoRecommendResponse; import com.interplug.qcast.biz.master.dto.pcs.maker.ApiPcsMakerResponse; import com.interplug.qcast.biz.master.dto.pcs.series.ApiPcsSeriesItemRequest; import com.interplug.qcast.biz.master.dto.pcs.series.ApiPcsSeriesItemResponse; +import com.interplug.qcast.biz.master.dto.pcs.voltagestepup.ApiPcsVoltageStepUpResponse; import com.interplug.qcast.biz.master.dto.roofmaterial.ApiRoofMaterialResponse; import com.interplug.qcast.biz.master.dto.trestle.ApiTrestleResponse; import com.interplug.qcast.biz.master.dto.trestle.detail.ApiTrestleDetailResponse; @@ -88,5 +89,10 @@ public interface MasterService { // 시리즈 중 자동으로 추천 PCS 정보 조회 @PostMapping("/pcsAutoRecommendList") public ApiResponse getPcsAutoRecommendList( - @RequestBody ApiPcsAutoRecommendRequest req); + @RequestBody ApiPcsInfoRequest req); + + // PCS 승압설정 정보 조회 + @PostMapping("/pcsVoltageStepUpList") + public ApiResponse getPcsVoltageStepUpList( + @RequestBody ApiPcsInfoRequest req); } diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRequest.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsInfoRequest.java similarity index 63% rename from src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRequest.java rename to src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsInfoRequest.java index 33cb58ec..93d003f4 100644 --- a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRequest.java +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsInfoRequest.java @@ -1,6 +1,5 @@ -package com.interplug.qcast.biz.master.dto.pcs.autorecommend; +package com.interplug.qcast.biz.master.dto.pcs; -import com.interplug.qcast.biz.master.dto.pcs.ApiPcsModuleItemRequest; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import java.util.List; @@ -9,8 +8,8 @@ import lombok.Setter; @Getter @Setter -@Schema(description = "시리즈 중 자동으로 추천 PCS 정보 조회 요청 객체") -public class ApiPcsAutoRecommendRequest { +@Schema(description = "PCS 정보 조회 요청 객체") +public class ApiPcsInfoRequest { @Schema(description = "Max접속(과적)여부") @NotNull public String maxConnYn; @@ -29,9 +28,9 @@ public class ApiPcsAutoRecommendRequest { @Schema(description = "지붕면별 목록") @NotNull - public List roofSurfaceList; + public List roofSurfaceList; @Schema(description = "PCS아이템ID") @NotNull - public List pcsItemList; + public List pcsItemList; } diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendPcsItemRequest.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsItemRequest.java similarity index 64% rename from src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendPcsItemRequest.java rename to src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsItemRequest.java index 16d771cc..d75c57ca 100644 --- a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendPcsItemRequest.java +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsItemRequest.java @@ -1,4 +1,4 @@ -package com.interplug.qcast.biz.master.dto.pcs.autorecommend; +package com.interplug.qcast.biz.master.dto.pcs; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; @@ -7,8 +7,8 @@ import lombok.Setter; @Getter @Setter -@Schema(description = "시리즈 중 자동으로 추천 PCS 정보 조회 PCS 아이템 요청 객체") -public class ApiPcsAutoRecommendPcsItemRequest { +@Schema(description = "PCS 아이템 요청 객체") +public class ApiPcsItemRequest { @Schema(description = "PCS제품ID", maxLength = 20) @NotNull private String itemId; @@ -20,4 +20,7 @@ public class ApiPcsAutoRecommendPcsItemRequest { @Schema(description = "PCS시리즈코드", maxLength = 10) @NotNull private String pcsSerCd; + + @Schema(description = "선택한직렬매수(적용직렬매수)", maxLength = 10) + private Integer applySerQty; } diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendModuleItemIdRequest.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsModuleItemIdRequest.java similarity index 72% rename from src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendModuleItemIdRequest.java rename to src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsModuleItemIdRequest.java index 0bfc50f3..036315e9 100644 --- a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendModuleItemIdRequest.java +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsModuleItemIdRequest.java @@ -1,4 +1,4 @@ -package com.interplug.qcast.biz.master.dto.pcs.autorecommend; +package com.interplug.qcast.biz.master.dto.pcs; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; @@ -8,7 +8,7 @@ import lombok.Setter; @Getter @Setter @Schema(description = "PCS 모듈아이템 ID 요청 객체") -public class ApiPcsAutoRecommendModuleItemIdRequest { +public class ApiPcsModuleItemIdRequest { @Schema(description = "제품ID", maxLength = 20) @NotNull private String itemId; diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRoofSurfaceRequest.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsRoofSurfaceRequest.java similarity index 66% rename from src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRoofSurfaceRequest.java rename to src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsRoofSurfaceRequest.java index 7dc9e3a1..24e3f968 100644 --- a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/autorecommend/ApiPcsAutoRecommendRoofSurfaceRequest.java +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/ApiPcsRoofSurfaceRequest.java @@ -1,4 +1,4 @@ -package com.interplug.qcast.biz.master.dto.pcs.autorecommend; +package com.interplug.qcast.biz.master.dto.pcs; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; @@ -8,8 +8,8 @@ import lombok.Setter; @Getter @Setter -@Schema(description = "시리즈 중 자동으로 추천 PCS 정보 조회 지붕면 요청 객체") -public class ApiPcsAutoRecommendRoofSurfaceRequest { +@Schema(description = "PCS 아이템 지붕면 요청 객체") +public class ApiPcsRoofSurfaceRequest { @Schema(description = "지붕면ID") @NotNull private String roofSurfaceId; @@ -24,5 +24,5 @@ public class ApiPcsAutoRecommendRoofSurfaceRequest { @Schema(description = "모듈아이템 List(도면에 설치된 모듈)") @NotNull - private List moduleList; + private List moduleList; } diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpConnResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpConnResponse.java new file mode 100644 index 00000000..6561961a --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpConnResponse.java @@ -0,0 +1,29 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 연결함목록 응답 객체") +public class ApiPcsVoltageStepUpConnResponse { + + @Schema(description = "제품ID", maxLength = 20) + private String itemId; + + @Schema(description = "제품명", maxLength = 100) + private String itemNm; + + @Schema(description = "제품명(Basic Material)", maxLength = 40) + private String goodsNo; + + @Schema(description = "병렬수(회로수)", maxLength = 10) + private Integer connMaxParalCnt; + + @Schema(description = "최대전력", maxLength = 10) + private Integer connAllowCur; + + @Schema(description = "승압병렬수", maxLength = 10) + private Integer vStuParalCnt; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpOptionResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpOptionResponse.java new file mode 100644 index 00000000..876c98a6 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpOptionResponse.java @@ -0,0 +1,20 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 옵션목록(모니터선택) 응답 객체") +public class ApiPcsVoltageStepUpOptionResponse { + + @Schema(description = "PCS옵션코드", maxLength = 10) + private String pcsOptCd; + + @Schema(description = "PCS옵션코드명", maxLength = 100) + private String pcsOptNm; + + @Schema(description = "PCS옵션코드명(일본)", maxLength = 100) + private String pcsOptNmJp; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpPcsItemResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpPcsItemResponse.java new file mode 100644 index 00000000..693acb40 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpPcsItemResponse.java @@ -0,0 +1,33 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import java.util.List; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 PCS 아이템 응답 객체") +public class ApiPcsVoltageStepUpPcsItemResponse { + + @Schema(description = "PCS메이커코드", maxLength = 10) + private String pcsMkrCd; + + @Schema(description = "PCS시리즈코드", maxLength = 10) + private String pcsSerCd; + + @Schema(description = "PCS 아이템 ID", maxLength = 20) + private String itemId; + + @Schema(description = "PCS 제품명", maxLength = 100) + private String itemNm; + + @Schema(description = "PCS 제품명(Basic Material)") + private String goodsNo; + + @Schema(description = "직렬매수 목록") + private List serQtyList; + + @Schema(description = "연결함목록") + private List connList; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpResponse.java new file mode 100644 index 00000000..b89ae874 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpResponse.java @@ -0,0 +1,18 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import java.util.List; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 응답 객체") +public class ApiPcsVoltageStepUpResponse { + + @Schema(description = "PCS 아이템 목록") + private List pcsItemList; + + @Schema(description = "옵션목록(모니터선택)") + private List optionList; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceModuleResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceModuleResponse.java new file mode 100644 index 00000000..d2c25095 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceModuleResponse.java @@ -0,0 +1,17 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 모듈아이템 List(도면에 설치된 모듈) 응답 객체") +public class ApiPcsVoltageStepUpRoofSurfaceModuleResponse { + + @Schema(description = "제품ID", maxLength = 20) + private String itemId; + + @Schema(description = "회로구성번호((1-1,1-1,1-2,1-2,2-1,2-2.....))", maxLength = 10) + private String circuit; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceResponse.java new file mode 100644 index 00000000..5fb96a99 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpRoofSurfaceResponse.java @@ -0,0 +1,24 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import java.util.List; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 지붕면 응답 객체") +public class ApiPcsVoltageStepUpRoofSurfaceResponse { + + @Schema(description = "지붕면ID", maxLength = 50) + private String roofSurfaceId; + + @Schema(description = "지붕면방위(동,서,남,북,동남,서북 등등)", maxLength = 10) + private String roofSurface; + + @Schema(description = "촌수(경사도)", maxLength = 10) + private Double roofSurfaceIncl; + + @Schema(description = "모듈아이템 List(도면에 설치된 모듈)") + private List moduleList; +} diff --git a/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpSerQtyResponse.java b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpSerQtyResponse.java new file mode 100644 index 00000000..830acb5a --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/master/dto/pcs/voltagestepup/ApiPcsVoltageStepUpSerQtyResponse.java @@ -0,0 +1,27 @@ +package com.interplug.qcast.biz.master.dto.pcs.voltagestepup; + +import io.swagger.v3.oas.annotations.media.Schema; +import java.util.List; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +@Schema(description = "PCS 승압설정 정보 조회 직렬매수 응답 객체") +public class ApiPcsVoltageStepUpSerQtyResponse { + + @Schema(description = "직렬매수", maxLength = 10) + private Integer serQty; + + @Schema(description = "병렬수(회로수)", maxLength = 10) + private Integer paralQty; + + @Schema(description = "추천여부", maxLength = 1) + private String rmdYn; + + @Schema(description = "사용가능여부", maxLength = 1) + private String usePossYn; + + @Schema(description = "지붕면 목록") + private List roofSurfaceList; +}