diff --git a/src/main/java/store/teabliss/survey/controller/SurveyController.java b/src/main/java/store/teabliss/survey/controller/SurveyController.java index 1a28807..64ef246 100644 --- a/src/main/java/store/teabliss/survey/controller/SurveyController.java +++ b/src/main/java/store/teabliss/survey/controller/SurveyController.java @@ -12,6 +12,8 @@ import store.teabliss.survey.dto.SurveyResponse; import store.teabliss.survey.service.SurveyService; +import java.util.List; + @RestController @RequiredArgsConstructor @Tag(name = "설문조사 API") @@ -32,8 +34,17 @@ public ResponseEntity createSurvey( return ResponseEntity.ok(SurveyResponse.ok("정상적으로 설문조사가 등록되었습니다.", id)); } + @GetMapping("/") + @Operation(summary = "설문조사 리스트 조회", description = "설문조사 리스트 조회 API") + public ResponseEntity getSurvey() { + + List surveys = surveyService.findBySurveys(); + + return ResponseEntity.ok(SurveyResponse.ok(surveys)); + } + @GetMapping("/{id}") - @Operation(summary = "설문조사 조회", description = "설문조사 조회 API") + @Operation(summary = "설문조사 단일 조회", description = "설문조사 단일 조회 API") public ResponseEntity getSurvey( @PathVariable Long id ) { diff --git a/src/main/java/store/teabliss/survey/mapper/SurveyMapper.java b/src/main/java/store/teabliss/survey/mapper/SurveyMapper.java index a21a67b..e82c357 100644 --- a/src/main/java/store/teabliss/survey/mapper/SurveyMapper.java +++ b/src/main/java/store/teabliss/survey/mapper/SurveyMapper.java @@ -3,11 +3,14 @@ import org.apache.ibatis.annotations.Mapper; import store.teabliss.survey.entity.Survey; +import java.util.List; + @Mapper public interface SurveyMapper { Long createSurvey(Survey survey); + List findBySurveys(); Survey findById(Long id); } diff --git a/src/main/java/store/teabliss/survey/service/SurveyService.java b/src/main/java/store/teabliss/survey/service/SurveyService.java index 4260064..2499ede 100644 --- a/src/main/java/store/teabliss/survey/service/SurveyService.java +++ b/src/main/java/store/teabliss/survey/service/SurveyService.java @@ -9,6 +9,7 @@ import store.teabliss.tea.entity.Tea; import store.teabliss.tea.mapper.TeaMapper; +import java.util.ArrayList; import java.util.List; @Service @@ -25,6 +26,29 @@ public Long createSurvey(Long memId, SurveyCreateDto surveyCreateDto) { return surveyMapper.createSurvey(survey); } + public List findBySurveys() { + List surveyDtos = new ArrayList<>(); + + List surveys = surveyMapper.findBySurveys(); + + for(Survey s : surveys) { + Tea tea = Tea.builder() + .priceStart(s.getSale()) + .priceEnd(s.getSale() + 10000) + .category(s.getCategory()) + .caffeine(s.getCaffeine().equals("N")) + .build(); + + List teas = teaMapper.surveyRecommendTea(tea); + + SurveyDto surveyDto = SurveyDto.of(s, teas); + + surveyDtos.add(surveyDto); + } + + return surveyDtos; + } + public SurveyDto findById(Long id) { Survey survey = surveyMapper.findById(id); diff --git a/src/main/resources/mapper/SurveyMapper.xml b/src/main/resources/mapper/SurveyMapper.xml index cba4efe..4bd7608 100644 --- a/src/main/resources/mapper/SurveyMapper.xml +++ b/src/main/resources/mapper/SurveyMapper.xml @@ -8,6 +8,14 @@ VALUES (#{taste}, #{sale}, #{category}, #{caffeine}, #{memId}) + +