Merge branch 'dev' into feature/qcast-231
This commit is contained in:
commit
1a98b4c18a
@ -823,7 +823,6 @@ public class EstimateService {
|
|||||||
itemRequest.setSpecification(roofItemResponse.getSpecification());
|
itemRequest.setSpecification(roofItemResponse.getSpecification());
|
||||||
itemRequest.setAmount(roofItemResponse.getAmount());
|
itemRequest.setAmount(roofItemResponse.getAmount());
|
||||||
itemRequest.setPcItemId(roofItemResponse.getPcItemId());
|
itemRequest.setPcItemId(roofItemResponse.getPcItemId());
|
||||||
itemRequest.setCircuit(roofItemResponse.getCircuit());
|
|
||||||
|
|
||||||
estimateMapper.insertEstimateRoofItem(itemRequest);
|
estimateMapper.insertEstimateRoofItem(itemRequest);
|
||||||
}
|
}
|
||||||
@ -1342,10 +1341,15 @@ public class EstimateService {
|
|||||||
elm.text(StringUtils.defaultString(data.getObjectName()));
|
elm.text(StringUtils.defaultString(data.getObjectName()));
|
||||||
|
|
||||||
elm = doc.getElementById("objectNo1");
|
elm = doc.getElementById("objectNo1");
|
||||||
elm.text(StringUtils.defaultString(data.getObjectNo()));
|
elm.text(
|
||||||
|
StringUtils.defaultString(data.getObjectNo())
|
||||||
|
+ " / "
|
||||||
|
+ StringUtils.defaultString(data.getPlanNo()));
|
||||||
|
|
||||||
|
/*
|
||||||
elm = doc.getElementById("planNo");
|
elm = doc.getElementById("planNo");
|
||||||
elm.text(StringUtils.defaultString(data.getPlanNo()));
|
elm.text(StringUtils.defaultString(data.getPlanNo()));
|
||||||
|
*/
|
||||||
|
|
||||||
elm = doc.getElementById("estimateDate");
|
elm = doc.getElementById("estimateDate");
|
||||||
elm.text(StringUtils.defaultString(data.getEstimateDate()));
|
elm.text(StringUtils.defaultString(data.getEstimateDate()));
|
||||||
@ -1432,8 +1436,13 @@ public class EstimateService {
|
|||||||
elm = doc.getElementById("totPrice1");
|
elm = doc.getElementById("totPrice1");
|
||||||
elm.text(StringUtils.defaultString(data.getTotPrice()));
|
elm.text(StringUtils.defaultString(data.getTotPrice()));
|
||||||
|
|
||||||
elm = doc.getElementById("remarks");
|
if (!StringUtils.isEmpty(data.getRemarks())) {
|
||||||
elm.text(StringUtils.defaultString(data.getRemarks()));
|
elm = doc.getElementById("remarks");
|
||||||
|
elm.text(StringUtils.defaultString(data.getRemarks()));
|
||||||
|
} else {
|
||||||
|
elm = doc.getElementById("remarks");
|
||||||
|
elm.remove();
|
||||||
|
}
|
||||||
|
|
||||||
// 견적서 특이사항 목록 설정
|
// 견적서 특이사항 목록 설정
|
||||||
if (data.getNoteList() != null) {
|
if (data.getNoteList() != null) {
|
||||||
|
|||||||
@ -1,138 +1,52 @@
|
|||||||
package com.interplug.qcast.biz.master;
|
package com.interplug.qcast.biz.master;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Builder;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@Builder
|
||||||
@Schema(description = "Api 가대 상세 조회 요청 객체 빌더")
|
@Schema(description = "Api 가대 상세 조회 요청 객체 빌더")
|
||||||
public class ApiTrestleDetailBuilder {
|
public class ApiTrestleDetailBuilder {
|
||||||
|
|
||||||
@Schema(description = "모듈타입코드")
|
@Schema(description = "모듈타입코드")
|
||||||
private String moduleTpCd;
|
private String moduleTpCd;
|
||||||
|
|
||||||
@Schema(description = "지붕재코드")
|
@Schema(description = "지붕재코드")
|
||||||
private String roofMatlCd;
|
private String roofMatlCd;
|
||||||
|
|
||||||
@Schema(description = "가대메이커코드")
|
@Schema(description = "가대메이커코드")
|
||||||
private String trestleMkrCd;
|
private String trestleMkrCd;
|
||||||
|
|
||||||
@Schema(description = "공법코드")
|
@Schema(description = "공법코드")
|
||||||
private String constMthdCd;
|
private String constMthdCd;
|
||||||
|
|
||||||
@Schema(description = "지붕기초코드")
|
@Schema(description = "지붕기초코드")
|
||||||
private String roofBaseCd;
|
private String roofBaseCd;
|
||||||
|
|
||||||
@Schema(description = "면조도")
|
@Schema(description = "면조도")
|
||||||
private String illuminationTp;
|
private String illuminationTp;
|
||||||
|
|
||||||
@Schema(description = "설치높이")
|
@Schema(description = "설치높이")
|
||||||
private String instHt;
|
private String instHt;
|
||||||
|
|
||||||
@Schema(description = "풍속")
|
@Schema(description = "풍속")
|
||||||
private String stdWindSpeed;
|
private String stdWindSpeed;
|
||||||
|
|
||||||
@Schema(description = "적설량")
|
@Schema(description = "적설량")
|
||||||
private String stdSnowLd;
|
private String stdSnowLd;
|
||||||
|
|
||||||
@Schema(description = "경사도코드")
|
@Schema(description = "경사도코드")
|
||||||
private String inclCd;
|
private String inclCd;
|
||||||
|
|
||||||
@Schema(description = "시공법")
|
|
||||||
private String constTp;
|
|
||||||
|
|
||||||
@Schema(description = "혼합모듈번호")
|
|
||||||
private Integer mixMatlNo;
|
|
||||||
|
|
||||||
@Schema(description = "하제(망둥어)피치")
|
|
||||||
private Integer roofPitch;
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setModuleTpCd(String moduleTpCd){
|
@Schema(description = "시공법")
|
||||||
this.moduleTpCd = moduleTpCd;
|
private String constTp;
|
||||||
return this;
|
|
||||||
}
|
@Schema(description = "혼합모듈번호")
|
||||||
|
private Integer mixMatlNo;
|
||||||
public ApiTrestleDetailBuilder setRoofMatlCd(String roofMatlCd){
|
|
||||||
this.roofMatlCd = roofMatlCd;
|
@Schema(description = "하제(망둥어)피치")
|
||||||
return this;
|
private Integer roofPitch;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setTrestleMkrCd(String trestleMkrCd){
|
|
||||||
this.trestleMkrCd = trestleMkrCd;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setConstMthdCd(String constMthdCd){
|
|
||||||
this.constMthdCd = constMthdCd;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setRoofBaseCd(String roofBaseCd){
|
|
||||||
this.roofBaseCd = roofBaseCd;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setIlluminationTp(String illuminationTp){
|
|
||||||
this.illuminationTp = illuminationTp;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setInstHt(String instHt){
|
|
||||||
this.instHt = instHt;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setStdWindSpeed(String stdWindSpeed){
|
|
||||||
this.stdWindSpeed = stdWindSpeed;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setStdSnowLd(String stdSnowLd){
|
|
||||||
this.stdSnowLd = stdSnowLd;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setInclCd(String inclCd){
|
|
||||||
this.inclCd = inclCd;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setConstTp(String constTp){
|
|
||||||
this.constTp = constTp;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setMixMatlNo(int mixMatlNo){
|
|
||||||
this.mixMatlNo = mixMatlNo;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder setRoofPitch(int roofPitch){
|
|
||||||
this.roofPitch = roofPitch;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder (String moduleTpCd, String roofMatlCd, String trestleMkrCd, String constMthdCd, String roofBaseCd, String illuminationTp,
|
|
||||||
String instHt, String stdWindSpeed, String stdSnowLd, String inclCd, String constTp, Integer mixMatlNo, Integer roofPitch) {
|
|
||||||
this.moduleTpCd = moduleTpCd;
|
|
||||||
this.roofMatlCd = roofMatlCd;
|
|
||||||
this.trestleMkrCd = trestleMkrCd;
|
|
||||||
this.constMthdCd = constMthdCd;
|
|
||||||
this.roofBaseCd = roofBaseCd;
|
|
||||||
this.illuminationTp = illuminationTp;
|
|
||||||
this.instHt = instHt;
|
|
||||||
this.stdWindSpeed = stdWindSpeed;
|
|
||||||
this.stdSnowLd = stdSnowLd;
|
|
||||||
this.inclCd = inclCd;
|
|
||||||
this.constTp = constTp;
|
|
||||||
this.mixMatlNo = mixMatlNo;
|
|
||||||
this.roofPitch = roofPitch;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ApiTrestleDetailBuilder build(){
|
|
||||||
return new ApiTrestleDetailBuilder(moduleTpCd, roofMatlCd, trestleMkrCd, constMthdCd, roofBaseCd, illuminationTp,
|
|
||||||
instHt, stdWindSpeed, stdSnowLd, inclCd, constTp, mixMatlNo, roofPitch);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|||||||
@ -49,125 +49,192 @@ public class MasterController {
|
|||||||
@Operation(description = "가대 목록 조회한다.")
|
@Operation(description = "가대 목록 조회한다.")
|
||||||
@GetMapping("/getTrestleList")
|
@GetMapping("/getTrestleList")
|
||||||
public ApiResponse<ApiTrestleResponse> getTrestleList(
|
public ApiResponse<ApiTrestleResponse> getTrestleList(
|
||||||
@Parameter(description = "모듈타입코드") @RequestParam(required = false) String moduleTpCd,
|
@Parameter(description = "모듈타입코드") @RequestParam(required = false) String moduleTpCd,
|
||||||
@Parameter(description = "지붕재코드") @RequestParam(required = false) String roofMatlCd,
|
@Parameter(description = "지붕재코드") @RequestParam(required = false) String roofMatlCd,
|
||||||
@Parameter(description = "서까래기초코드") @RequestParam(required = false) String raftBaseCd,
|
@Parameter(description = "서까래기초코드") @RequestParam(required = false) String raftBaseCd,
|
||||||
@Parameter(description = "가대메이커코드") @RequestParam(required = false) String trestleMkrCd,
|
@Parameter(description = "가대메이커코드") @RequestParam(required = false) String trestleMkrCd,
|
||||||
@Parameter(description = "공법코드") @RequestParam(required = false) String constMthdCd,
|
@Parameter(description = "공법코드") @RequestParam(required = false) String constMthdCd,
|
||||||
@Parameter(description = "지붕기초코드") @RequestParam(required = false) String roofBaseCd) {
|
@Parameter(description = "지붕기초코드") @RequestParam(required = false) String roofBaseCd) {
|
||||||
|
|
||||||
ApiTrestleBuilder apiTrestleInfoBuilder = new ApiTrestleBuilder(moduleTpCd, roofMatlCd, raftBaseCd, trestleMkrCd, constMthdCd, roofBaseCd);
|
ApiTrestleBuilder apiTrestleInfoBuilder =
|
||||||
ApiTrestleBuilder atb = apiTrestleInfoBuilder
|
new ApiTrestleBuilder(
|
||||||
.setModuleTpCd(moduleTpCd)
|
moduleTpCd, roofMatlCd, raftBaseCd, trestleMkrCd, constMthdCd, roofBaseCd);
|
||||||
.setRoofMatlCdCd(roofMatlCd)
|
ApiTrestleBuilder atb =
|
||||||
.setRaftBaseCd(raftBaseCd)
|
apiTrestleInfoBuilder
|
||||||
.setTrestleMkrCd(trestleMkrCd)
|
.setModuleTpCd(moduleTpCd)
|
||||||
.setConstMthdCd(constMthdCd)
|
.setRoofMatlCdCd(roofMatlCd)
|
||||||
.setRoofBaseCd(roofBaseCd)
|
.setRaftBaseCd(raftBaseCd)
|
||||||
.build();
|
.setTrestleMkrCd(trestleMkrCd)
|
||||||
return masterService.getTrestleList(atb.getModuleTpCd(),atb.getRoofMatlCd(),atb.getRaftBaseCd(),atb.getTrestleMkrCd(),atb.getConstMthdCd(),atb.getRoofBaseCd());
|
.setConstMthdCd(constMthdCd)
|
||||||
|
.setRoofBaseCd(roofBaseCd)
|
||||||
|
.build();
|
||||||
|
return masterService.getTrestleList(
|
||||||
|
atb.getModuleTpCd(),
|
||||||
|
atb.getRoofMatlCd(),
|
||||||
|
atb.getRaftBaseCd(),
|
||||||
|
atb.getTrestleMkrCd(),
|
||||||
|
atb.getConstMthdCd(),
|
||||||
|
atb.getRoofBaseCd());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Operation(description = "시공법 목록 조회한다.")
|
@Operation(description = "시공법 목록 조회한다.")
|
||||||
@GetMapping("/getConstructionList")
|
@GetMapping("/getConstructionList")
|
||||||
public ApiResponse<ApiConstructionResponse> getConstructionList(
|
public ApiResponse<ApiConstructionResponse> getConstructionList(
|
||||||
@Parameter(description = "모듈타입코드") @RequestParam String moduleTpCd,
|
@Parameter(description = "모듈타입코드") @RequestParam String moduleTpCd,
|
||||||
@Parameter(description = "지붕재코드") @RequestParam String roofMatlCd,
|
@Parameter(description = "지붕재코드") @RequestParam String roofMatlCd,
|
||||||
@Parameter(description = "가대메이커코드") @RequestParam String trestleMkrCd,
|
@Parameter(description = "가대메이커코드") @RequestParam String trestleMkrCd,
|
||||||
@Parameter(description = "공법코드") @RequestParam String constMthdCd,
|
@Parameter(description = "공법코드") @RequestParam String constMthdCd,
|
||||||
@Parameter(description = "지붕기초코드") @RequestParam String roofBaseCd,
|
@Parameter(description = "지붕기초코드") @RequestParam String roofBaseCd,
|
||||||
@Parameter(description = "면조도") @RequestParam String illuminationTp,
|
@Parameter(description = "면조도") @RequestParam String illuminationTp,
|
||||||
@Parameter(description = "설치높이") @RequestParam String instHt,
|
@Parameter(description = "설치높이") @RequestParam String instHt,
|
||||||
@Parameter(description = "풍속") @RequestParam String stdWindSpeed,
|
@Parameter(description = "풍속") @RequestParam String stdWindSpeed,
|
||||||
@Parameter(description = "적설량") @RequestParam String stdSnowLd,
|
@Parameter(description = "적설량") @RequestParam String stdSnowLd,
|
||||||
@Parameter(description = "경사도코드") @RequestParam String inclCd,
|
@Parameter(description = "경사도코드") @RequestParam String inclCd,
|
||||||
@Parameter(description = "서까래기초코드") @RequestParam(required = false) String raftBaseCd,
|
@Parameter(description = "서까래기초코드") @RequestParam(required = false) String raftBaseCd,
|
||||||
@Parameter(description = "하제(망둥어)피치") @RequestParam(required = false) Integer roofPitch) throws QcastException {
|
@Parameter(description = "하제(망둥어)피치") @RequestParam(required = false) Integer roofPitch)
|
||||||
|
throws QcastException {
|
||||||
if (moduleTpCd == null || moduleTpCd.trim().isEmpty() ||
|
|
||||||
roofMatlCd == null || roofMatlCd.trim().isEmpty() ||
|
if (moduleTpCd == null
|
||||||
trestleMkrCd == null || trestleMkrCd.trim().isEmpty() ||
|
|| moduleTpCd.trim().isEmpty()
|
||||||
constMthdCd == null || constMthdCd.trim().isEmpty() ||
|
|| roofMatlCd == null
|
||||||
roofBaseCd == null || roofBaseCd.trim().isEmpty() ||
|
|| roofMatlCd.trim().isEmpty()
|
||||||
illuminationTp == null || illuminationTp.trim().isEmpty() ||
|
|| trestleMkrCd == null
|
||||||
instHt == null || instHt.trim().isEmpty() ||
|
|| trestleMkrCd.trim().isEmpty()
|
||||||
stdWindSpeed == null || stdWindSpeed.trim().isEmpty() ||
|
|| constMthdCd == null
|
||||||
stdSnowLd == null || stdSnowLd.trim().isEmpty() ||
|
|| constMthdCd.trim().isEmpty()
|
||||||
inclCd == null || inclCd.trim().isEmpty()) {
|
|| roofBaseCd == null
|
||||||
throw new QcastException(ErrorCode.INVALID_INPUT_VALUE);
|
|| roofBaseCd.trim().isEmpty()
|
||||||
}
|
|| illuminationTp == null
|
||||||
|
|| illuminationTp.trim().isEmpty()
|
||||||
ApiConstructionBuilder apiConstructionBuilder = new ApiConstructionBuilder(moduleTpCd, roofMatlCd, trestleMkrCd, constMthdCd, roofBaseCd, illuminationTp
|
|| instHt == null
|
||||||
, instHt, stdWindSpeed, stdSnowLd, inclCd, raftBaseCd, roofPitch);
|
|| instHt.trim().isEmpty()
|
||||||
ApiConstructionBuilder acb = apiConstructionBuilder
|
|| stdWindSpeed == null
|
||||||
.setModuleTpCd(moduleTpCd)
|
|| stdWindSpeed.trim().isEmpty()
|
||||||
.setRoofMatlCd(roofMatlCd)
|
|| stdSnowLd == null
|
||||||
.setTrestleMkrCd(trestleMkrCd)
|
|| stdSnowLd.trim().isEmpty()
|
||||||
.setConstMthdCd(constMthdCd)
|
|| inclCd == null
|
||||||
.setRoofBaseCd(roofBaseCd)
|
|| inclCd.trim().isEmpty()) {
|
||||||
.setIlluminationTp(illuminationTp)
|
throw new QcastException(ErrorCode.INVALID_INPUT_VALUE);
|
||||||
.setInstHt(instHt)
|
}
|
||||||
.setStdWindSpeed(stdWindSpeed)
|
|
||||||
.setStdSnowLd(stdSnowLd)
|
ApiConstructionBuilder apiConstructionBuilder =
|
||||||
.setInclCd(inclCd)
|
new ApiConstructionBuilder(
|
||||||
.setRaftBaseCd(raftBaseCd)
|
moduleTpCd,
|
||||||
.setRoofPitch(roofPitch)
|
roofMatlCd,
|
||||||
.build();
|
trestleMkrCd,
|
||||||
|
constMthdCd,
|
||||||
return masterService.getConstructionList(acb.getModuleTpCd(), acb.getRoofMatlCd(), acb.getTrestleMkrCd(), acb.getConstMthdCd(), acb.getRoofBaseCd(), acb.getIlluminationTp()
|
roofBaseCd,
|
||||||
, acb.getInstHt(), acb.getStdWindSpeed(), acb.getStdSnowLd(), acb.getInclCd(), acb.getRaftBaseCd(), acb.getRoofPitch());
|
illuminationTp,
|
||||||
|
instHt,
|
||||||
|
stdWindSpeed,
|
||||||
|
stdSnowLd,
|
||||||
|
inclCd,
|
||||||
|
raftBaseCd,
|
||||||
|
roofPitch);
|
||||||
|
ApiConstructionBuilder acb =
|
||||||
|
apiConstructionBuilder
|
||||||
|
.setModuleTpCd(moduleTpCd)
|
||||||
|
.setRoofMatlCd(roofMatlCd)
|
||||||
|
.setTrestleMkrCd(trestleMkrCd)
|
||||||
|
.setConstMthdCd(constMthdCd)
|
||||||
|
.setRoofBaseCd(roofBaseCd)
|
||||||
|
.setIlluminationTp(illuminationTp)
|
||||||
|
.setInstHt(instHt)
|
||||||
|
.setStdWindSpeed(stdWindSpeed)
|
||||||
|
.setStdSnowLd(stdSnowLd)
|
||||||
|
.setInclCd(inclCd)
|
||||||
|
.setRaftBaseCd(raftBaseCd)
|
||||||
|
.setRoofPitch(roofPitch)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
return masterService.getConstructionList(
|
||||||
|
acb.getModuleTpCd(),
|
||||||
|
acb.getRoofMatlCd(),
|
||||||
|
acb.getTrestleMkrCd(),
|
||||||
|
acb.getConstMthdCd(),
|
||||||
|
acb.getRoofBaseCd(),
|
||||||
|
acb.getIlluminationTp(),
|
||||||
|
acb.getInstHt(),
|
||||||
|
acb.getStdWindSpeed(),
|
||||||
|
acb.getStdSnowLd(),
|
||||||
|
acb.getInclCd(),
|
||||||
|
acb.getRaftBaseCd(),
|
||||||
|
acb.getRoofPitch());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Operation(description = "가대 상세 조회한다.")
|
@Operation(description = "가대 상세 조회한다.")
|
||||||
@GetMapping("/getTrestleDetailList")
|
@GetMapping("/getTrestleDetailList")
|
||||||
public ApiResponse<ApiTrestleDetailResponse> getTrestleDetailList(
|
public ApiResponse<ApiTrestleDetailResponse> getTrestleDetailList(
|
||||||
@Parameter(description = "모듈타입코드") @RequestParam String moduleTpCd,
|
@Parameter(description = "모듈타입코드") @RequestParam String moduleTpCd,
|
||||||
@Parameter(description = "지붕재코드") @RequestParam String roofMatlCd,
|
@Parameter(description = "지붕재코드") @RequestParam String roofMatlCd,
|
||||||
@Parameter(description = "가대메이커코드") @RequestParam String trestleMkrCd,
|
@Parameter(description = "가대메이커코드") @RequestParam String trestleMkrCd,
|
||||||
@Parameter(description = "공법코드") @RequestParam String constMthdCd,
|
@Parameter(description = "공법코드") @RequestParam String constMthdCd,
|
||||||
@Parameter(description = "지붕기초코드") @RequestParam String roofBaseCd,
|
@Parameter(description = "지붕기초코드") @RequestParam String roofBaseCd,
|
||||||
@Parameter(description = "면조도") @RequestParam String illuminationTp,
|
@Parameter(description = "면조도") @RequestParam String illuminationTp,
|
||||||
@Parameter(description = "설치높이") @RequestParam String instHt,
|
@Parameter(description = "설치높이") @RequestParam String instHt,
|
||||||
@Parameter(description = "풍속") @RequestParam String stdWindSpeed,
|
@Parameter(description = "풍속") @RequestParam String stdWindSpeed,
|
||||||
@Parameter(description = "적설량") @RequestParam String stdSnowLd,
|
@Parameter(description = "적설량") @RequestParam String stdSnowLd,
|
||||||
@Parameter(description = "경사도코드") @RequestParam String inclCd,
|
@Parameter(description = "경사도코드") @RequestParam String inclCd,
|
||||||
@Parameter(description = "시공법") @RequestParam String constTp,
|
@Parameter(description = "시공법") @RequestParam String constTp,
|
||||||
@Parameter(description = "혼합모듈번호") @RequestParam(required = false) Integer mixMatlNo,
|
@Parameter(description = "혼합모듈번호") @RequestParam(required = false) Integer mixMatlNo,
|
||||||
@Parameter(description = "하제(망둥어)피치") @RequestParam(required = false) Integer roofPitch) throws QcastException {
|
@Parameter(description = "하제(망둥어)피치") @RequestParam(required = false) Integer roofPitch)
|
||||||
|
throws QcastException {
|
||||||
if (moduleTpCd == null || moduleTpCd.trim().isEmpty() ||
|
|
||||||
roofMatlCd == null || roofMatlCd.trim().isEmpty() ||
|
if (moduleTpCd == null
|
||||||
trestleMkrCd == null || trestleMkrCd.trim().isEmpty() ||
|
|| moduleTpCd.trim().isEmpty()
|
||||||
constMthdCd == null || constMthdCd.trim().isEmpty() ||
|
|| roofMatlCd == null
|
||||||
roofBaseCd == null || roofBaseCd.trim().isEmpty() ||
|
|| roofMatlCd.trim().isEmpty()
|
||||||
illuminationTp == null || illuminationTp.trim().isEmpty() ||
|
|| trestleMkrCd == null
|
||||||
instHt == null || instHt.trim().isEmpty() ||
|
|| trestleMkrCd.trim().isEmpty()
|
||||||
stdWindSpeed == null || stdWindSpeed.trim().isEmpty() ||
|
|| constMthdCd == null
|
||||||
stdSnowLd == null || stdSnowLd.trim().isEmpty() ||
|
|| constMthdCd.trim().isEmpty()
|
||||||
inclCd == null || inclCd.trim().isEmpty() ||
|
|| roofBaseCd == null
|
||||||
constTp == null || constTp.trim().isEmpty()) {
|
|| roofBaseCd.trim().isEmpty()
|
||||||
throw new QcastException(ErrorCode.INVALID_INPUT_VALUE);
|
|| illuminationTp == null
|
||||||
}
|
|| illuminationTp.trim().isEmpty()
|
||||||
|
|| instHt == null
|
||||||
ApiTrestleDetailBuilder apiTrestleDetailBuilder = new ApiTrestleDetailBuilder(moduleTpCd, roofMatlCd, trestleMkrCd, constMthdCd, roofBaseCd, illuminationTp
|
|| instHt.trim().isEmpty()
|
||||||
, instHt, stdWindSpeed, stdSnowLd, inclCd, constTp, mixMatlNo, roofPitch);
|
|| stdWindSpeed == null
|
||||||
ApiTrestleDetailBuilder atdb = apiTrestleDetailBuilder
|
|| stdWindSpeed.trim().isEmpty()
|
||||||
.setModuleTpCd(moduleTpCd)
|
|| stdSnowLd == null
|
||||||
.setRoofMatlCd(roofMatlCd)
|
|| stdSnowLd.trim().isEmpty()
|
||||||
.setTrestleMkrCd(trestleMkrCd)
|
|| inclCd == null
|
||||||
.setConstMthdCd(constMthdCd)
|
|| inclCd.trim().isEmpty()
|
||||||
.setRoofBaseCd(roofBaseCd)
|
|| constTp == null
|
||||||
.setIlluminationTp(illuminationTp)
|
|| constTp.trim().isEmpty()) {
|
||||||
.setInstHt(instHt)
|
throw new QcastException(ErrorCode.INVALID_INPUT_VALUE);
|
||||||
.setStdWindSpeed(stdWindSpeed)
|
}
|
||||||
.setStdSnowLd(stdSnowLd)
|
|
||||||
.setInclCd(inclCd)
|
ApiTrestleDetailBuilder atdb =
|
||||||
.setConstTp(constTp)
|
ApiTrestleDetailBuilder.builder()
|
||||||
.setMixMatlNo(mixMatlNo)
|
.moduleTpCd(moduleTpCd)
|
||||||
.setRoofPitch(roofPitch)
|
.roofMatlCd(roofMatlCd)
|
||||||
.build();
|
.trestleMkrCd(trestleMkrCd)
|
||||||
|
.constMthdCd(constMthdCd)
|
||||||
return masterService.getTrestleDetailList(atdb.getModuleTpCd(), atdb.getRoofMatlCd(), atdb.getTrestleMkrCd(), atdb.getConstMthdCd(), atdb.getRoofBaseCd(), atdb.getIlluminationTp()
|
.roofBaseCd(roofBaseCd)
|
||||||
, atdb.getInstHt(), atdb.getStdWindSpeed(), atdb.getStdSnowLd(), atdb.getInclCd(), atdb.getConstTp(), atdb.getMixMatlNo(), atdb.getRoofPitch());
|
.illuminationTp(illuminationTp)
|
||||||
|
.instHt(instHt)
|
||||||
|
.stdWindSpeed(stdWindSpeed)
|
||||||
|
.stdSnowLd(stdSnowLd)
|
||||||
|
.inclCd(inclCd)
|
||||||
|
.constTp(constTp)
|
||||||
|
.mixMatlNo(mixMatlNo)
|
||||||
|
.roofPitch(roofPitch)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
return masterService.getTrestleDetailList(
|
||||||
|
atdb.getModuleTpCd(),
|
||||||
|
atdb.getRoofMatlCd(),
|
||||||
|
atdb.getTrestleMkrCd(),
|
||||||
|
atdb.getConstMthdCd(),
|
||||||
|
atdb.getRoofBaseCd(),
|
||||||
|
atdb.getIlluminationTp(),
|
||||||
|
atdb.getInstHt(),
|
||||||
|
atdb.getStdWindSpeed(),
|
||||||
|
atdb.getStdSnowLd(),
|
||||||
|
atdb.getInclCd(),
|
||||||
|
atdb.getConstTp(),
|
||||||
|
atdb.getMixMatlNo(),
|
||||||
|
atdb.getRoofPitch());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -27,44 +27,43 @@ public interface MasterService {
|
|||||||
// 가대 목록 조회
|
// 가대 목록 조회
|
||||||
@GetMapping("/trestle")
|
@GetMapping("/trestle")
|
||||||
public ApiResponse<ApiTrestleResponse> getTrestleList(
|
public ApiResponse<ApiTrestleResponse> getTrestleList(
|
||||||
@RequestParam(required = false) String moduleTpCd,
|
@RequestParam(required = false) String moduleTpCd,
|
||||||
@RequestParam(required = false) String roofMatlCd,
|
@RequestParam(required = false) String roofMatlCd,
|
||||||
@RequestParam(required = false) String raftBaseCd,
|
@RequestParam(required = false) String raftBaseCd,
|
||||||
@RequestParam(required = false) String trestleMkrCd,
|
@RequestParam(required = false) String trestleMkrCd,
|
||||||
@RequestParam(required = false) String constMthdCd,
|
@RequestParam(required = false) String constMthdCd,
|
||||||
@RequestParam(required = false) String roofBaseCd);
|
@RequestParam(required = false) String roofBaseCd);
|
||||||
|
|
||||||
// 시공법 목록 조회
|
// 시공법 목록 조회
|
||||||
@GetMapping("/construction")
|
@GetMapping("/construction")
|
||||||
public ApiResponse<ApiConstructionResponse> getConstructionList(
|
public ApiResponse<ApiConstructionResponse> getConstructionList(
|
||||||
@RequestParam String moduleTpCd,
|
@RequestParam String moduleTpCd,
|
||||||
@RequestParam String roofMatlCd,
|
@RequestParam String roofMatlCd,
|
||||||
@RequestParam String trestleMkrCd,
|
@RequestParam String trestleMkrCd,
|
||||||
@RequestParam String constMthdCd,
|
@RequestParam String constMthdCd,
|
||||||
@RequestParam String roofBaseCd,
|
@RequestParam String roofBaseCd,
|
||||||
@RequestParam String illuminationTp,
|
@RequestParam String illuminationTp,
|
||||||
@RequestParam String instHt,
|
@RequestParam String instHt,
|
||||||
@RequestParam String stdWindSpeed,
|
@RequestParam String stdWindSpeed,
|
||||||
@RequestParam String stdSnowLd,
|
@RequestParam String stdSnowLd,
|
||||||
@RequestParam String inclCd,
|
@RequestParam String inclCd,
|
||||||
@RequestParam(required = false) String raftBaseCd,
|
@RequestParam(required = false) String raftBaseCd,
|
||||||
@RequestParam(required = false) Integer roofPitch);
|
@RequestParam(required = false) Integer roofPitch);
|
||||||
|
|
||||||
// 가대 상세 조회
|
|
||||||
@GetMapping("/trestle/detail")
|
|
||||||
public ApiResponse<ApiTrestleDetailResponse> getTrestleDetailList(
|
|
||||||
@RequestParam String moduleTpCd,
|
|
||||||
@RequestParam String roofMatlCd,
|
|
||||||
@RequestParam String trestleMkrCd,
|
|
||||||
@RequestParam String constMthdCd,
|
|
||||||
@RequestParam String roofBaseCd,
|
|
||||||
@RequestParam String illuminationTp,
|
|
||||||
@RequestParam String instHt,
|
|
||||||
@RequestParam String stdWindSpeed,
|
|
||||||
@RequestParam String stdSnowLd,
|
|
||||||
@RequestParam String inclCd,
|
|
||||||
@RequestParam String constTp,
|
|
||||||
@RequestParam(required = false) Integer mixMatlNo,
|
|
||||||
@RequestParam(required = false) Integer roofPitch);
|
|
||||||
|
|
||||||
|
// 가대 상세 조회
|
||||||
|
@GetMapping(value = "/trestle/detail", consumes = "application/json")
|
||||||
|
public ApiResponse<ApiTrestleDetailResponse> getTrestleDetailList(
|
||||||
|
@RequestParam String moduleTpCd,
|
||||||
|
@RequestParam String roofMatlCd,
|
||||||
|
@RequestParam String trestleMkrCd,
|
||||||
|
@RequestParam String constMthdCd,
|
||||||
|
@RequestParam String roofBaseCd,
|
||||||
|
@RequestParam String illuminationTp,
|
||||||
|
@RequestParam String instHt,
|
||||||
|
@RequestParam String stdWindSpeed,
|
||||||
|
@RequestParam String stdSnowLd,
|
||||||
|
@RequestParam String inclCd,
|
||||||
|
@RequestParam String constTp,
|
||||||
|
@RequestParam(required = false) Integer mixMatlNo,
|
||||||
|
@RequestParam(required = false) Integer roofPitch);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
package com.interplug.qcast.biz.master.dto;
|
package com.interplug.qcast.biz.master.dto;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import java.util.List;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
@ -10,13 +9,13 @@ import lombok.Setter;
|
|||||||
@Setter
|
@Setter
|
||||||
@Schema(description = "결과 데이터")
|
@Schema(description = "결과 데이터")
|
||||||
public class ApiResponse<T> {
|
public class ApiResponse<T> {
|
||||||
|
|
||||||
@Schema(description = "목록 데이터")
|
@Schema(description = "목록 데이터")
|
||||||
private List<T> data;
|
private List<T> data;
|
||||||
|
|
||||||
@Schema(description = "목록 데이터2")
|
@Schema(description = "목록 데이터2")
|
||||||
private List<T> data2;
|
private List<T> data2;
|
||||||
|
|
||||||
@Schema(description = "API 결과 데이터")
|
@Schema(description = "API 결과 데이터")
|
||||||
private ApiResultResponse result;
|
private ApiResultResponse result;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,25 +9,21 @@ import lombok.Setter;
|
|||||||
@Schema(description = "Api 가대 상세 모듈 조회 응답 객체")
|
@Schema(description = "Api 가대 상세 모듈 조회 응답 객체")
|
||||||
public class ApiTrestleDetailModuleResponse {
|
public class ApiTrestleDetailModuleResponse {
|
||||||
|
|
||||||
@Schema(description = "모듈타입코드(혼합제외)")
|
@Schema(description = "모듈타입코드(혼합제외)")
|
||||||
private String moduleTpCd;
|
private String moduleTpCd;
|
||||||
|
|
||||||
@Schema(description = "장경")
|
@Schema(description = "장경")
|
||||||
private double longAxis;
|
private Double longAxis;
|
||||||
|
|
||||||
@Schema(description = "단경")
|
@Schema(description = "단경")
|
||||||
private double shortAxis;
|
private Double shortAxis;
|
||||||
|
|
||||||
@Schema(description = "두께")
|
@Schema(description = "두께")
|
||||||
private double thickness;
|
private Double thickness;
|
||||||
|
|
||||||
@Schema(description = "색상")
|
@Schema(description = "색상")
|
||||||
private String color;
|
private String color;
|
||||||
|
|
||||||
@Schema(description = "모듈최대단수")
|
|
||||||
private Integer moduleMaxRows;
|
|
||||||
|
|
||||||
@Schema(description = "순번")
|
|
||||||
private Integer priority;
|
|
||||||
|
|
||||||
|
@Schema(description = "모듈최대단수")
|
||||||
|
private Integer moduleMaxRows;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,35 @@
|
|||||||
|
package com.interplug.qcast.biz.master.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import java.util.List;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||||
|
@Schema(description = "Api 가대 상세 랙 아이템 응답 객체")
|
||||||
|
public class ApiTrestleDetailRackItemResponse {
|
||||||
|
|
||||||
|
@Schema(description = "아이템ID")
|
||||||
|
private String itemId;
|
||||||
|
|
||||||
|
@Schema(description = "랙단수코드")
|
||||||
|
private String rackRowsCd;
|
||||||
|
|
||||||
|
@Schema(description = "랙길이")
|
||||||
|
private Double rackLen;
|
||||||
|
|
||||||
|
@Schema(description = "스마트랙여부")
|
||||||
|
private String smartRackYn;
|
||||||
|
|
||||||
|
@Schema(description = "랙지지금구수")
|
||||||
|
private Integer supFitQty;
|
||||||
|
|
||||||
|
@Schema(description = "랙지지금구간격(랙양끝기준)")
|
||||||
|
private Double supFitIntvlPct;
|
||||||
|
|
||||||
|
@Schema(description = "Api 가대 상세 스마트랙 응답 객체")
|
||||||
|
private List<ApiTrestleDetailSmartRackResponse> smartRack;
|
||||||
|
}
|
||||||
@ -1,21 +1,38 @@
|
|||||||
package com.interplug.qcast.biz.master.dto;
|
package com.interplug.qcast.biz.master.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import java.util.List;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||||
@Schema(description = "Api 가대 상세 랙 조회 응답 객체")
|
@Schema(description = "Api 가대 상세 랙 조회 응답 객체")
|
||||||
public class ApiTrestleDetailRackResponse {
|
public class ApiTrestleDetailRackResponse {
|
||||||
|
|
||||||
@Schema(description = "모듈총단수")
|
@Schema(description = "모듈타입코드")
|
||||||
private Integer moduleRows;
|
private String moduleTpCd;
|
||||||
|
|
||||||
@Schema(description = "랙단수코드")
|
@Schema(description = "모듈총단수")
|
||||||
private String rackRowsCds;
|
private Integer moduleRows;
|
||||||
|
|
||||||
@Schema(description = "간격")
|
@Schema(description = "모듈1단수")
|
||||||
private String intvls;
|
private String moduleTpRows1; // private Integer moduleTpRows1;
|
||||||
|
|
||||||
|
@Schema(description = "모듈2단수")
|
||||||
|
private String moduleTpRows2; // private Integer moduleTpRows2;
|
||||||
|
|
||||||
|
@Schema(description = "모듈3단수")
|
||||||
|
private String moduleTpRows3; // private Integer moduleTpRows3;
|
||||||
|
|
||||||
|
@Schema(description = "모듈4단수")
|
||||||
|
private String moduleTpRows4; // private Integer moduleTpRows4;
|
||||||
|
|
||||||
|
@Schema(description = "모듈5단수")
|
||||||
|
private String moduleTpRows5; // private Integer moduleTpRows5;
|
||||||
|
|
||||||
|
@Schema(description = "랙목록")
|
||||||
|
private List<ApiTrestleDetailRackItemResponse> racks;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,62 +1,66 @@
|
|||||||
package com.interplug.qcast.biz.master.dto;
|
package com.interplug.qcast.biz.master.dto;
|
||||||
|
|
||||||
import java.util.List;
|
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||||
@Schema(description = "Api 가대 상세 조회 응답 객체")
|
@Schema(description = "Api 가대 상세 조회 응답 객체")
|
||||||
public class ApiTrestleDetailResponse {
|
public class ApiTrestleDetailResponse {
|
||||||
|
|
||||||
@Schema(description = "랙여부")
|
|
||||||
private String rackYn;
|
|
||||||
|
|
||||||
@Schema(description = "치조가능여부")
|
@Schema(description = "랙여부")
|
||||||
private String plvrYn;
|
private String rackYn;
|
||||||
|
|
||||||
@Schema(description = "모듈최대단수")
|
@Schema(description = "치조가능여부")
|
||||||
private Integer moduleMaxRows;
|
private String plvrYn;
|
||||||
|
|
||||||
@Schema(description = "모듈최대열수")
|
@Schema(description = "모듈최대단수")
|
||||||
private Integer moduleMaxCols;
|
private Integer moduleMaxRows;
|
||||||
|
|
||||||
@Schema(description = "지붕기준모듈설치간격-처마")
|
@Schema(description = "모듈최대열수")
|
||||||
private double eaveIntvl;
|
private Integer moduleMaxCols;
|
||||||
|
|
||||||
@Schema(description = "지붕기준모듈설치간격-용마루")
|
@Schema(description = "지붕기준모듈설치간격-처마")
|
||||||
private double ridgeIntvl;
|
private Double eaveIntvl;
|
||||||
|
|
||||||
@Schema(description = "지붕기준모듈설치간격-케라바")
|
@Schema(description = "지붕기준모듈설치간격-용마루")
|
||||||
private double kerabaIntvl;
|
private Double ridgeIntvl;
|
||||||
|
|
||||||
@Schema(description = "모듈간간격-좌우")
|
@Schema(description = "지붕기준모듈설치간격-케라바")
|
||||||
private double moduleIntvlHor;
|
private Double kerabaIntvl;
|
||||||
|
|
||||||
@Schema(description = "모듈간간격-상하")
|
@Schema(description = "모듈간간격-좌우")
|
||||||
private double moduleIntvlVer;
|
private Double moduleIntvlHor;
|
||||||
|
|
||||||
@Schema(description = "치조배치 중단처마커버 설치가능여부")
|
@Schema(description = "모듈간간격-상하")
|
||||||
private String cvrPlvrYn;
|
private Double moduleIntvlVer;
|
||||||
|
|
||||||
@Schema(description = "랙리스지지금구수")
|
@Schema(description = "치조배치 중단처마커버 설치가능여부")
|
||||||
private double lessSupFitQty;
|
private String cvrPlvrYn;
|
||||||
|
|
||||||
@Schema(description = "랙리스지지금구간격(모듈모서리기준)")
|
@Schema(description = "랙리스지지금구수")
|
||||||
private double lessSupFitIntvlPct;
|
private Double lessSupFitQty;
|
||||||
|
|
||||||
@Schema(description = "랙구성수량(모듈1개당)")
|
@Schema(description = "랙리스지지금구간격(모듈모서리기준)")
|
||||||
private double rackQty;
|
private Double lessSupFitIntvlPct;
|
||||||
|
|
||||||
@Schema(description = "랙구성간격(모듈좌우면기준)")
|
@Schema(description = "랙구성수량(모듈1개당)")
|
||||||
private double rackIntvlPct;
|
private Double rackQty;
|
||||||
|
|
||||||
@Schema(description = "Api 가대 상세 모듈 조회 응답 객체")
|
@Schema(description = "랙구성간격(모듈좌우면기준)")
|
||||||
private List<ApiTrestleDetailModuleResponse> module;
|
private Double rackIntvlPct;
|
||||||
|
|
||||||
@Schema(description = "Api 가대 상세 랙 조회 응답 객체")
|
@Schema(description = "모듈낙설방지금구수")
|
||||||
private List<ApiTrestleDetailRackResponse> rack;
|
private Double moduleSnowGdCnt;
|
||||||
|
|
||||||
|
@Schema(description = "Api 가대 상세 모듈 조회 응답 객체")
|
||||||
|
private List<ApiTrestleDetailModuleResponse> module;
|
||||||
|
|
||||||
|
@Schema(description = "Api 가대 상세 랙 조회 응답 객체")
|
||||||
|
private Map<String, ApiTrestleDetailRackResponse> rack; // = new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,25 @@
|
|||||||
|
package com.interplug.qcast.biz.master.dto;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||||
|
@Schema(description = "Api 가대 상세 스마트랙 응답 객체")
|
||||||
|
public class ApiTrestleDetailSmartRackResponse {
|
||||||
|
|
||||||
|
@Schema(description = "스마트랙순번")
|
||||||
|
private Integer seq;
|
||||||
|
|
||||||
|
@Schema(description = "스마트랙유형코드(RACK:랙 길이, INTVL:랙 간격)")
|
||||||
|
private String setRackTpCd;
|
||||||
|
|
||||||
|
@Schema(description = "스마트랙유형길이(RACK:랙 길이, INTVL:랙 간격)")
|
||||||
|
private Integer setRackTpLen;
|
||||||
|
|
||||||
|
@Schema(description = "랙지지금구수")
|
||||||
|
private Integer supFitQty;
|
||||||
|
}
|
||||||
@ -298,33 +298,25 @@
|
|||||||
SELECT
|
SELECT
|
||||||
P.OBJECT_NO
|
P.OBJECT_NO
|
||||||
, P.PLAN_NO
|
, P.PLAN_NO
|
||||||
, RE.ROOF_NO
|
, PE.ITEM_ID
|
||||||
, RE.ROOF_SURFACE
|
, PE.AMOUNT
|
||||||
, ROUND(CAST(RE.SLOPE AS FLOAT), 2) AS SLOPE
|
, PE.SPECIFICATION
|
||||||
, RIE.AMOUNT
|
, I.ITEM_NAME
|
||||||
, CAST(RIE.SPECIFICATION AS FLOAT) SPECIFICATION
|
, ROUND((PE.AMOUNT * CAST(ISNULL(PE.SPECIFICATION, 0) AS FLOAT) / 1000), 4) AS PC_VOL_KW
|
||||||
, ROUND((RIE.AMOUNT * CAST(ISNULL(RIE.SPECIFICATION, 0) AS FLOAT) / 1000), 4) AS PC_VOL_KW
|
|
||||||
, I.ITEM_ID
|
|
||||||
, I.ITEM_NO
|
|
||||||
, ISNULL((
|
, ISNULL((
|
||||||
SELECT
|
SELECT
|
||||||
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
|
SUM((AMOUNT * CAST(ISNULL(SPECIFICATION, 0) AS FLOAT) / 1000))
|
||||||
FROM T_ROOF_ITEM_ESTIMATE
|
FROM T_ROOF_ITEM_ESTIMATE (NOLOCK)
|
||||||
WHERE ROOF_NO = RIE.ROOF_NO
|
WHERE OBJECT_NO = PE.OBJECT_NO
|
||||||
AND OBJECT_NO = RIE.OBJECT_NO
|
AND PLAN_NO = PE.PLAN_NO
|
||||||
AND PLAN_NO = RIE.PLAN_NO
|
AND PC_ITEM_ID = PE.ITEM_ID
|
||||||
AND PC_ITEM_ID = RIE.ITEM_ID
|
|
||||||
), 0) AS MODULE_VOL_KW
|
), 0) AS MODULE_VOL_KW
|
||||||
FROM T_PLAN P WITH (NOLOCK)
|
FROM T_PLAN P WITH (NOLOCK)
|
||||||
INNER JOIN T_ROOF_ESTIMATE RE WITH (NOLOCK)
|
INNER JOIN T_PART_ESTIMATE PE WITH (NOLOCK)
|
||||||
ON P.OBJECT_NO = RE.OBJECT_NO
|
ON P.OBJECT_NO = PE.OBJECT_NO
|
||||||
AND P.PLAN_NO = RE.PLAN_NO
|
AND P.PLAN_NO = PE.PLAN_NO
|
||||||
INNER JOIN T_ROOF_ITEM_ESTIMATE RIE WITH (NOLOCK)
|
|
||||||
ON RE.ROOF_NO = RIE.ROOF_NO
|
|
||||||
AND RE.OBJECT_NO = RE.OBJECT_NO
|
|
||||||
AND RE.PLAN_NO = RE.PLAN_NO
|
|
||||||
INNER JOIN M_ITEM I WITH (NOLOCK)
|
INNER JOIN M_ITEM I WITH (NOLOCK)
|
||||||
ON RIE.ITEM_ID = I.ITEM_ID
|
ON PE.ITEM_ID = I.ITEM_ID
|
||||||
WHERE P.OBJECT_NO = #{objectNo}
|
WHERE P.OBJECT_NO = #{objectNo}
|
||||||
AND P.PLAN_NO = #{planNo}
|
AND P.PLAN_NO = #{planNo}
|
||||||
AND I.ITEM_GROUP = 'PC_'
|
AND I.ITEM_GROUP = 'PC_'
|
||||||
@ -379,7 +371,6 @@
|
|||||||
, ISNULL(PIE.SPECIFICATION, '') AS SPECIFICATION
|
, ISNULL(PIE.SPECIFICATION, '') AS SPECIFICATION
|
||||||
, PIE.AMOUNT
|
, PIE.AMOUNT
|
||||||
, PIE.PC_ITEM_ID
|
, PIE.PC_ITEM_ID
|
||||||
, PIE.CIRCUIT
|
|
||||||
FROM T_ROOF_ITEM_ESTIMATE PIE WITH (NOLOCK)
|
FROM T_ROOF_ITEM_ESTIMATE PIE WITH (NOLOCK)
|
||||||
WHERE PIE.OBJECT_NO = #{objectNo}
|
WHERE PIE.OBJECT_NO = #{objectNo}
|
||||||
AND PIE.PLAN_NO = #{planNo}
|
AND PIE.PLAN_NO = #{planNo}
|
||||||
@ -838,7 +829,6 @@
|
|||||||
, SPECIFICATION
|
, SPECIFICATION
|
||||||
, AMOUNT
|
, AMOUNT
|
||||||
, PC_ITEM_ID
|
, PC_ITEM_ID
|
||||||
, CIRCUIT
|
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
#{roofNo} AS ROOF_NO
|
#{roofNo} AS ROOF_NO
|
||||||
@ -850,7 +840,6 @@
|
|||||||
, I.PNOW_W
|
, I.PNOW_W
|
||||||
, #{amount}
|
, #{amount}
|
||||||
, #{pcItemId}
|
, #{pcItemId}
|
||||||
, #{circuit}
|
|
||||||
FROM M_ITEM I WITH (NOLOCK)
|
FROM M_ITEM I WITH (NOLOCK)
|
||||||
WHERE I.ITEM_ID = #{itemId}
|
WHERE I.ITEM_ID = #{itemId}
|
||||||
</insert>
|
</insert>
|
||||||
|
|||||||
@ -372,10 +372,10 @@
|
|||||||
<span class="tit">見積書番号 :</span>
|
<span class="tit">見積書番号 :</span>
|
||||||
<span id="objectNo1"></span>
|
<span id="objectNo1"></span>
|
||||||
</div>
|
</div>
|
||||||
<div class="product-count">
|
<!--<div class="product-count">
|
||||||
<span class="tit">プラン :</span>
|
<span class="tit">プラン :</span>
|
||||||
<span id="planNo"></span>
|
<span id="planNo"></span>
|
||||||
</div>
|
</div>-->
|
||||||
</div>
|
</div>
|
||||||
<div class="product-form">
|
<div class="product-form">
|
||||||
<span class="tit">日付 :</span>
|
<span class="tit">日付 :</span>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user