Skip to content

Commit

Permalink
#78 [feat] Swagger 관련 에러를 수정한다.
Browse files Browse the repository at this point in the history
  • Loading branch information
juuuunny committed Nov 25, 2024
2 parents 6e282c7 + c82c786 commit 090f3d5
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 534 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -93,13 +93,13 @@ sourceSets {

tasks.named('compileJava') {
doFirst {
// QClass 파일 자동 삭제
def querydslGeneratedDir = layout.buildDirectory.dir("generated/sources/annotationProcessor/java/main").get().asFile
if (querydslGeneratedDir.exists()) {
querydslGeneratedDir.deleteDir()
}
}
}

ext {
snippetsDir = file('build/generated-snippets')
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,11 @@ public Long getIdByStadiumName(String staiumName) {
}

/**
* 해당 스타디움명을 통하여 스타디움 정보를 반환한다.
* @param stadiumName 스타디움명
* @return 스타디움 정보 (이미지 Url, 1루석 팀, 3루석 팀, 구역명, 구역 색상)
* 주어진 경기장 이름에 대한 정보를 조회.
*
* @param stadiumName 경기장 이름
* @return 경기장 정보와 구역 정보 리스트를 포함하는 DTO
* @throws CustomException 유효하지 않은 경기장 이름이 주어진 경우
*/
public GetStadiumInfosResponseDto getStadiumInfos(String stadiumName) {
StadiumInfo stadiumInfo = stadiumDomainService.getStadiumInfoByName(stadiumName);
Expand All @@ -66,10 +68,12 @@ public GetStadiumInfosResponseDto getStadiumInfos(String stadiumName) {
}

/**
* 해당 스타디움, 구역의 정보를 반환한다.
* @param stadiumName 스다티움명
* @param zoneName 구역명
* @return 해당 구역 정보 (이미지 Url, 구역명, 구역 색상, 설명, 1루팀, 3루팀, 입구, 단차, 좌석 거리, 유용한 점, 팁, 참고 사항)
* 주어진 경기장 이름에 해당하는 구역 정보를 조회.
*
* @param stadiumName 경기장 이름
* @param zoneName 구역 이름
* @return 구역 정보 DTO
* @throws CustomException 유효하지 않은 경기장 이름이나 구역 이름이 주어진 경우
*/
public GetZoneGuideResponseDto getZoneGuide(String stadiumName, String zoneName) {
StadiumStatusType zoneType = switch (stadiumName) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
@RequiredArgsConstructor
public enum KtWizStadiumStatusType implements StadiumStatusType {

//특징 확인 필요
CENTER("https://kr.object.ncloudstorage.com/hitzone-bucket/hitzone/guide/kt/center.svg",
"중앙지정석",
"#5E346E",
Expand Down Expand Up @@ -126,10 +125,10 @@ public enum KtWizStadiumStatusType implements StadiumStatusType {
)
)
),
List.of("나 혼자", "같은 팀 팬과"),
List.of("열정적인 응원"),
List.of(),
List.of("다른 팀 팬과", "큰 소리 싫어요", "음식 먹기 편한", "삼겹살 구워먹기 가능"),
List.of(),
List.of(),
List.of(),
new String[]{"데이터 추가 입력 예정"},
new String[]{"[1루] 약 27~32cm [3루] 약 27~32cm"},
new String[]{"[1루] 약 28cm [3루] 약 26~33cm"},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,17 @@
import java.util.Arrays;
import java.util.List;

import static kusitms.backend.stadium.domain.enums.KtWizStadiumStatusType.CHEERING_DUMMY;

@Service
public class StadiumDomainService {

/**
* 스타디움명을 통하여 스타디움 정보를 조회한다.
* @param stadiumName 스타디움명
* @return 스타디움 정보 (이미지 Url, 1루팀, 3루팀)
* 주어진 경기장 이름에 대한 기본 정보를 조회.
*
* @param stadiumName 경기장 이름
* @return 경기장 기본 정보
* @throws CustomException 유효하지 않은 경기장 이름이 주어진 경우
*/
public StadiumInfo getStadiumInfoByName(String stadiumName) {
return switch (stadiumName) {
Expand All @@ -29,9 +33,11 @@ public StadiumInfo getStadiumInfoByName(String stadiumName) {
}

/**
* 스타디움명을 토대로 구역 가이드 정보 리스트를 조회한다.
* @param stadiumName 스타디움명
* @return 구역 가이드 정보 리스트 (이미지 Url, 구역명, 구역 색상, 한줄 설명, 설명 리스트, 1루팀, 3루팀, 팁, 참고 사항 리스트, 키워드 리스트, 입구, 단차, 좌석, 유용한 점)
* 주어진 경기장 이름에 대한 상태 타입 배열을 조회.
*
* @param stadiumName 경기장 이름
* @return 경기장 상태 타입 배열
* @throws CustomException 유효하지 않은 경기장 이름이 주어진 경우
*/
public StadiumStatusType[] getStatusTypesByName(String stadiumName) {
return switch (stadiumName) {
Expand All @@ -42,21 +48,26 @@ public StadiumStatusType[] getStatusTypesByName(String stadiumName) {
}

/**
* 구역 가이드 정보에서 이미지 Url, 1루팀, 3루팀, 구역명, 구역 색상만 추출한다.
* @param statusTypes 구역 가이드 정보 리스트
* @return 구역 정보 리스트 (이미지 Url, 1루팀, 3루팀, 구역명, 구역 색상)
* 주어진 상태 타입 배열에서 특정 구역의 이름과 색상을 조회.
* CHEERING_DUMMY 구역은 제외됩니다.
*
* @param statusTypes 상태 타입 배열
* @return 구역 이름과 색상 정보를 담은 리스트
*/
public List<GetStadiumInfosResponseDto.ZoneInfo> getZonesNameAndColorFromStadium(StadiumStatusType[] statusTypes) {
return Arrays.stream(statusTypes)
.filter(status -> status != CHEERING_DUMMY)
.map(status -> GetStadiumInfosResponseDto.ZoneInfo.of(status.getZoneName(), status.getZoneColor()))
.toList();
}

/**
* 구역 리스트에서 구역명에 해당하는 것만 추출한다.
* @param statusTypes 구역가이드 정보 리스트
* @param zoneName 구역명
* @return
* 주어진 상태 타입 배열에서 특정 구역 이름과 일치하는 구역 정보를 조회.
*
* @param statusTypes 상태 타입 배열
* @param zoneName 구역 이름
* @return 일치하는 구역 정보
* @throws CustomException 일치하는 구역을 찾을 수 없는 경우
*/
public StadiumStatusType findZoneInStadium(StadiumStatusType[] statusTypes, String zoneName) {
return Arrays.stream(statusTypes)
Expand Down
Loading

0 comments on commit 090f3d5

Please sign in to comment.