feat(recipe/controller): adaptada función de detalle de SearchAllRecipes para la lista

parent b3442dbd
package com.example.apprecetas.recipe.infrastructure.controller;
import com.example.apprecetas.recipe.application.SearchAIRecipesUseCase;
import com.example.apprecetas.recipe.domain.entity.Recipe;
import com.example.apprecetas.recipe.domain.entity.Step;
import com.example.apprecetas.recipe.infrastructure.controller.dto.output.RecipeOutputDto;
import com.example.apprecetas.recipe.infrastructure.controller.dto.output.RecipeSummaryOutputDto;
import com.example.apprecetas.recipe.infrastructure.mapper.RecipeMapper;
......@@ -9,8 +11,10 @@ import org.mapstruct.factory.Mappers;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@RestController
@RequestMapping("/recipe")
......@@ -51,7 +55,16 @@ public class SearchAIRecipesController {
@PostMapping("/detail/{index}")
public ResponseEntity<RecipeOutputDto> getRecipeDetail(@RequestHeader("X-Session-ID") String sessionId,
@PathVariable int index) {
RecipeOutputDto recipeDto = mapper.map(service.getRecipeDetail(sessionId, index));
Recipe recipe = service.getRecipeDetail(sessionId, index);
if (recipe != null && recipe.getSteps() != null) {
List<Step> sortedSteps = recipe.getSteps().stream()
.sorted(Comparator.comparing(Step::getNumber))
.collect(Collectors.toList());
recipe.setSteps(sortedSteps);
}
RecipeOutputDto recipeDto = mapper.map(recipe);
return ResponseEntity.ok(recipeDto);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment