diff --git a/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialController.java b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialController.java new file mode 100644 index 00000000..0b2e038f --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialController.java @@ -0,0 +1,23 @@ +package com.interplug.qcast.biz.roofmaterial; + +import com.interplug.qcast.biz.roofmaterial.dto.RoofMaterialResponse; +import java.util.List; +import lombok.RequiredArgsConstructor; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequiredArgsConstructor +@CrossOrigin +@RequestMapping("/api/roof-material") +public class RoofMaterialController { + private final RoofMaterialService roofService; + + @GetMapping("/v1.0/roof-materials") + public ResponseEntity> getRoofs() { + return ResponseEntity.ok(roofService.getRoofMaterials()); + } +} diff --git a/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialMapper.java b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialMapper.java new file mode 100644 index 00000000..6291ed72 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialMapper.java @@ -0,0 +1,10 @@ +package com.interplug.qcast.biz.roofmaterial; + +import com.interplug.qcast.biz.roofmaterial.dto.RoofMaterialResponse; +import java.util.List; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface RoofMaterialMapper { + List getRoofMaterials(); +} diff --git a/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialService.java b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialService.java new file mode 100644 index 00000000..96976f27 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/roofmaterial/RoofMaterialService.java @@ -0,0 +1,16 @@ +package com.interplug.qcast.biz.roofmaterial; + +import com.interplug.qcast.biz.roofmaterial.dto.RoofMaterialResponse; +import java.util.List; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class RoofMaterialService { + private final RoofMaterialMapper roofMapper; + + public List getRoofMaterials() { + return roofMapper.getRoofMaterials(); + } +} diff --git a/src/main/java/com/interplug/qcast/biz/roofmaterial/dto/RoofMaterialResponse.java b/src/main/java/com/interplug/qcast/biz/roofmaterial/dto/RoofMaterialResponse.java new file mode 100644 index 00000000..b8785001 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/roofmaterial/dto/RoofMaterialResponse.java @@ -0,0 +1,16 @@ +package com.interplug.qcast.biz.roofmaterial.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +public class RoofMaterialResponse { + + private Integer id; + private String name; +} diff --git a/src/main/java/com/interplug/qcast/biz/trestle/TrestleController.java b/src/main/java/com/interplug/qcast/biz/trestle/TrestleController.java new file mode 100644 index 00000000..2b0a12cf --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/trestle/TrestleController.java @@ -0,0 +1,21 @@ +package com.interplug.qcast.biz.trestle; + +import com.interplug.qcast.biz.trestle.dto.TrestleResponse; +import java.util.List; +import lombok.RequiredArgsConstructor; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/trestle") +@CrossOrigin +public class TrestleController { + private final TrestleService trestleService; + + @GetMapping("/v1.0/trestles/{roofMaterialId}") + public ResponseEntity> getTrestlesByRoofMaterialId( + @PathVariable Integer roofMaterialId) { + return ResponseEntity.ok(trestleService.getTrestlesByRoofMaterialId(roofMaterialId)); + } +} diff --git a/src/main/java/com/interplug/qcast/biz/trestle/TrestleMapper.java b/src/main/java/com/interplug/qcast/biz/trestle/TrestleMapper.java new file mode 100644 index 00000000..8d67ece4 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/trestle/TrestleMapper.java @@ -0,0 +1,11 @@ +package com.interplug.qcast.biz.trestle; + +import com.interplug.qcast.biz.trestle.dto.TrestleResponse; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface TrestleMapper { + List getTrestlesByRoofMaterialId(Integer roofMaterialId); +} diff --git a/src/main/java/com/interplug/qcast/biz/trestle/TrestleService.java b/src/main/java/com/interplug/qcast/biz/trestle/TrestleService.java new file mode 100644 index 00000000..9f9bcd35 --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/trestle/TrestleService.java @@ -0,0 +1,17 @@ +package com.interplug.qcast.biz.trestle; + +import com.interplug.qcast.biz.trestle.dto.TrestleResponse; +import java.util.List; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +public class TrestleService { + + private final TrestleMapper trestleMapper; + + public List getTrestlesByRoofMaterialId(Integer roofMaterialId) { + return trestleMapper.getTrestlesByRoofMaterialId(roofMaterialId); + } +} diff --git a/src/main/java/com/interplug/qcast/biz/trestle/dto/TrestleResponse.java b/src/main/java/com/interplug/qcast/biz/trestle/dto/TrestleResponse.java new file mode 100644 index 00000000..a2a0721c --- /dev/null +++ b/src/main/java/com/interplug/qcast/biz/trestle/dto/TrestleResponse.java @@ -0,0 +1,16 @@ +package com.interplug.qcast.biz.trestle.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Getter +@Setter +@AllArgsConstructor +@NoArgsConstructor +public class TrestleResponse { + private Integer id; + private String name; + private String manufacturerName; +} diff --git a/src/main/resources/mappers/roofmaterial/roofMaterialMapper.xml b/src/main/resources/mappers/roofmaterial/roofMaterialMapper.xml new file mode 100644 index 00000000..88d34682 --- /dev/null +++ b/src/main/resources/mappers/roofmaterial/roofMaterialMapper.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/src/main/resources/mappers/trestle/trestleMapper.xml b/src/main/resources/mappers/trestle/trestleMapper.xml new file mode 100644 index 00000000..eb347b5d --- /dev/null +++ b/src/main/resources/mappers/trestle/trestleMapper.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file