diff --git a/apps/api/src/routers/dashboard.ts b/apps/api/src/routers/dashboard.ts index 6900721..4027571 100644 --- a/apps/api/src/routers/dashboard.ts +++ b/apps/api/src/routers/dashboard.ts @@ -104,6 +104,15 @@ export const dashboardRouter = router({ }; }); + // „Gestern im Team": pro User nur die neueste Reflexion (feedRows ist nach + // date desc, reflectedAt desc sortiert → erster Treffer je User = aktuellste). + const seenUsers = new Set(); + const feedLatestPerUser = feedRows.filter((r) => { + if (seenUsers.has(r.userId)) return false; + seenUsers.add(r.userId); + return true; + }); + const presentToday = new Set(todayPresence.map((p) => p.userId)); const usersAll = await ctx.db .select({ id: user.id, name: user.name }) @@ -138,7 +147,7 @@ export const dashboardRouter = router({ pflichtMinimumOffen: allProjects .filter((p) => Object.values(p.pflichtMinimumState).some((v) => v === false)) .map((p) => ({ id: p.id, name: p.name, areaId: p.areaId })), - feed: feedRows, + feed: feedLatestPerUser, gestern: previousWerktag(todayDate), }; }),