diff --git a/apps/api/src/routes/recommendations.ts b/apps/api/src/routes/recommendations.ts index b78e1df..4020063 100644 --- a/apps/api/src/routes/recommendations.ts +++ b/apps/api/src/routes/recommendations.ts @@ -511,6 +511,16 @@ export async function recommendationRoutes(app: FastifyInstance) { : "Färdig mat som väntar – snabbaste middagen i huset.", })); + // Betyg (stjärnor) finns på kandidaterna men följer INTE med i + // ScoredRecommendation som rankAll returnerar. Återkoppla dem per recept så + // mobilen kan visa "★ 4,5 · 12" i listan (annars syns aldrig satta betyg). + const ratingByRecipe = new Map( + scoredCandidates.map((c) => [ + c.recipeId, + { average: c.ratingAverage, count: c.ratingCount }, + ]), + ); + return { mealType: q.mealType, context: { @@ -526,7 +536,11 @@ export async function recommendationRoutes(app: FastifyInstance) { view: q.view, }, mealBoxSuggestions, - recommendations, + recommendations: recommendations.map((r) => ({ + ...r, + ratingAverage: ratingByRecipe.get(r.recipeId)?.average ?? null, + ratingCount: ratingByRecipe.get(r.recipeId)?.count ?? 0, + })), }; }); }