fix(vad-ska-vi-ata): visa betyg (stjarnor) i listan
ScoredRecommendation som rankAll returnerar bar inte ratingAverage/ratingCount, sa svaret till mobilen saknade dem helt -> stjarnorna syntes aldrig aven efter satt betyg. Aterkopplar nu betyg per recept fran kandidaterna i svaret.
This commit is contained in:
@@ -511,6 +511,16 @@ export async function recommendationRoutes(app: FastifyInstance) {
|
|||||||
: "Färdig mat som väntar – snabbaste middagen i huset.",
|
: "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 {
|
return {
|
||||||
mealType: q.mealType,
|
mealType: q.mealType,
|
||||||
context: {
|
context: {
|
||||||
@@ -526,7 +536,11 @@ export async function recommendationRoutes(app: FastifyInstance) {
|
|||||||
view: q.view,
|
view: q.view,
|
||||||
},
|
},
|
||||||
mealBoxSuggestions,
|
mealBoxSuggestions,
|
||||||
recommendations,
|
recommendations: recommendations.map((r) => ({
|
||||||
|
...r,
|
||||||
|
ratingAverage: ratingByRecipe.get(r.recipeId)?.average ?? null,
|
||||||
|
ratingCount: ratingByRecipe.get(r.recipeId)?.count ?? 0,
|
||||||
|
})),
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user