diff --git a/backend/pokerogue/src/main/java/com/pokerogue/external/s3/service/S3Service.java b/backend/pokerogue/src/main/java/com/pokerogue/external/s3/service/S3Service.java index 77fdf75d2..4084a7f73 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/external/s3/service/S3Service.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/external/s3/service/S3Service.java @@ -63,7 +63,7 @@ private String makeTypeFileName(String typeName) { } public String getPokerogueTypeImageFromS3(String typeName) { - String key = POKEROGUE_TYPE_IMAGE_FOLDER + typeName + "-1" + PNG_EXTENSION; + String key = POKEROGUE_TYPE_IMAGE_FOLDER + typeName; return s3ImageClient.getFileUrl(key); } diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonResponse.java index 5cabd445b..54f43cd63 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonResponse.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonResponse.java @@ -6,6 +6,6 @@ public record BiomePokemonResponse( String id, String name, String image, - List pokemonTypeResponses + List pokemonTypeResponses ) { } diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonTypeResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonTypeResponse.java deleted file mode 100644 index eeeb36c79..000000000 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomePokemonTypeResponse.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.pokerogue.helper.biome.dto; - -public record BiomePokemonTypeResponse(String pokemonTypeLogo, String pokemonTypeName) { -} diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeResponse.java index 5236bc8b1..5ef53c0ff 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeResponse.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeResponse.java @@ -7,11 +7,11 @@ public record BiomeResponse( String id, String name, String image, - List pokemonTypeLogos, - List trainerTypeLogos + List pokemonTypeResponses, + List trainerTypeResponses ) { - public static BiomeResponse from(Biome biome, List pokemonTypeLogos, List trainerTypeLogos) { + public static BiomeResponse of(Biome biome, List pokemonTypeLogos, List trainerTypeLogos) { return new BiomeResponse( biome.getId(), biome.getName(), diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeTypeResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeTypeResponse.java new file mode 100644 index 000000000..c67dbb4cc --- /dev/null +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/BiomeTypeResponse.java @@ -0,0 +1,4 @@ +package com.pokerogue.helper.biome.dto; + +public record BiomeTypeResponse(String typeLogo, String typeName) { +} diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/NextBiomeResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/NextBiomeResponse.java index fe427a0b4..0f02ecab4 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/NextBiomeResponse.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/NextBiomeResponse.java @@ -1,10 +1,30 @@ package com.pokerogue.helper.biome.dto; import com.pokerogue.helper.biome.data.Biome; +import java.util.List; -public record NextBiomeResponse(String id, String name, String image, String percent) { +public record NextBiomeResponse( + String id, + String name, + String image, + String percent, + List pokemonTypeResponses, + List trainerTypeResponses +) { - public static NextBiomeResponse of(Biome biome, String percent) { - return new NextBiomeResponse(biome.getId(), biome.getName(), biome.getImage(), percent); + public static NextBiomeResponse of( + Biome biome, + String percent, + List pokemonTypeResponses, + List trainerTypeResponses + ) { + return new NextBiomeResponse( + biome.getId(), + biome.getName(), + biome.getImage(), + percent, + pokemonTypeResponses, + trainerTypeResponses + ); } } diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/TrainerPokemonResponse.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/TrainerPokemonResponse.java index ae7859347..166b1c4a7 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/TrainerPokemonResponse.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/dto/TrainerPokemonResponse.java @@ -6,13 +6,13 @@ public record TrainerPokemonResponse( String trainerName, String trainerImage, - List trainerTypeLogos, + List trainerTypeResponses, List pokemons ) { public static TrainerPokemonResponse from( Trainer trainer, - List trainerTypes, + List trainerTypes, List trainerPokemons) { return new TrainerPokemonResponse( trainer.getName(), diff --git a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/service/BiomeService.java b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/service/BiomeService.java index 21de92b4b..7d5fac967 100644 --- a/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/service/BiomeService.java +++ b/backend/pokerogue/src/main/java/com/pokerogue/helper/biome/service/BiomeService.java @@ -7,7 +7,7 @@ import com.pokerogue.helper.biome.dto.BiomeAllPokemonResponse; import com.pokerogue.helper.biome.dto.BiomeDetailResponse; import com.pokerogue.helper.biome.dto.BiomePokemonResponse; -import com.pokerogue.helper.biome.dto.BiomePokemonTypeResponse; +import com.pokerogue.helper.biome.dto.BiomeTypeResponse; import com.pokerogue.helper.biome.dto.BiomeResponse; import com.pokerogue.helper.biome.dto.NextBiomeResponse; import com.pokerogue.helper.biome.dto.TrainerPokemonResponse; @@ -32,10 +32,10 @@ public class BiomeService { public List findBiomes() { return biomeRepository.findAll().stream() - .map(biome -> BiomeResponse.from( + .map(biome -> BiomeResponse.of( biome, - getTrainerTypes(biome.getMainTypes()), - getTrainerTypes(biome.getTrainerTypes())) + getTypesResponses(biome.getMainTypes()), + getTypesResponses(biome.getTrainerTypes())) ) .toList(); } @@ -88,25 +88,25 @@ private List getBiomePokemons(List biomePokemons) .toList(); } - private List getBiomePokemonTypeResponses( + private List getBiomePokemonTypeResponses( BiomePokemonType type1, BiomePokemonType type2 ) { - List biomePokemonTypeResponses = new ArrayList<>(); + List biomeTypeRespons = new ArrayList<>(); if (!type1.getName().equals("없음")) { - biomePokemonTypeResponses.add(new BiomePokemonTypeResponse( + biomeTypeRespons.add(new BiomeTypeResponse( biomePokemonTypeImageRepository.findPokemonTypeImageUrl(type1.name()), type1.getName()) ); } if (!type2.getName().equals("없음")) { - biomePokemonTypeResponses.add(new BiomePokemonTypeResponse( + biomeTypeRespons.add(new BiomeTypeResponse( biomePokemonTypeImageRepository.findPokemonTypeImageUrl(type2.name()), type2.getName()) ); } - return biomePokemonTypeResponses; + return biomeTypeRespons; } private List getTrainerPokemons(Biome biome) { @@ -120,16 +120,16 @@ private List getTrainerPokemons(Biome biome) { return biome.getTrainers().stream() .map(trainer -> TrainerPokemonResponse.from( trainer, - getTrainerTypes(trainer.getTrainerTypes()), + getTypesResponses(trainer.getTrainerTypes()), getBiomePokemons(trainer.getPokemons())) ) .toList(); } - private List getTrainerTypes(List trainerTypes) { - return trainerTypes.stream() - .map(trainerType -> biomePokemonTypeImageRepository.findPokemonTypeImageUrl( - BiomePokemonType.getBiomePokemonTypeByName(trainerType).name()) + private List getTypesResponses(List types) { + return types.stream() + .map(type -> new BiomeTypeResponse(biomePokemonTypeImageRepository.findPokemonTypeImageUrl( + BiomePokemonType.getBiomePokemonTypeByName(type).name()), type) ) .toList(); } @@ -140,8 +140,16 @@ private List getNextBiomes(Biome biome) { } return biome.getNextBiome().stream() - .map(nextBiome -> NextBiomeResponse.of(biomeRepository.findById(nextBiome.getId()) - .orElseThrow(() -> new GlobalCustomException(ErrorMessage.BIOME_NOT_FOUND)), nextBiome.getPercent())) + .map(nextBiomeInfo -> { + Biome nextBiome = biomeRepository.findById(nextBiomeInfo.getId()) + .orElseThrow(() -> new GlobalCustomException(ErrorMessage.BIOME_NOT_FOUND)); + return NextBiomeResponse.of( + nextBiome, + nextBiomeInfo.getPercent(), + getTypesResponses(nextBiome.getMainTypes()), + getTypesResponses(nextBiome.getTrainerTypes()) + ); + }) .toList(); } } diff --git a/backend/pokerogue/src/main/resources b/backend/pokerogue/src/main/resources index 1a2997093..ccb594c68 160000 --- a/backend/pokerogue/src/main/resources +++ b/backend/pokerogue/src/main/resources @@ -1 +1 @@ -Subproject commit 1a2997093f1f81512fb5c6d19f23dfc36e28b484 +Subproject commit ccb594c680164ca664f99892b74625ba0f7913f1