From 116bed16a892832d9ea5875a6d19319fc7fd63ad Mon Sep 17 00:00:00 2001 From: Toutsu Date: Thu, 7 May 2026 13:26:01 +0300 Subject: [PATCH] feat(#14): add PlayerAttendanceStats record + interface method --- src/GmRelay.Web/Services/ISessionStore.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/GmRelay.Web/Services/ISessionStore.cs b/src/GmRelay.Web/Services/ISessionStore.cs index d36000a..07e6999 100644 --- a/src/GmRelay.Web/Services/ISessionStore.cs +++ b/src/GmRelay.Web/Services/ISessionStore.cs @@ -27,4 +27,18 @@ public interface ISessionStore Task RemoveGroupCoGmAsync(Guid groupId, long coGmTelegramId); Task> GetSessionParticipantsAsync(Guid sessionId); Task RemovePlayerFromSessionAsync(Guid sessionId, Guid groupId, Guid participantId); + Task> GetGroupAttendanceStatsAsync(Guid groupId); + +public sealed record PlayerAttendanceStats( + Guid PlayerId, + string DisplayName, + string? TelegramUsername, + long TotalSessions, + long ConfirmedCount, + long DeclinedCount, + long NoResponseCount, + long WaitlistedCount, + long CancellationAffectedCount, + decimal AttendanceRate +); }