feat(#14): add PlayerAttendanceStats record + interface method
This commit is contained in:
@@ -27,4 +27,18 @@ public interface ISessionStore
|
|||||||
Task RemoveGroupCoGmAsync(Guid groupId, long coGmTelegramId);
|
Task RemoveGroupCoGmAsync(Guid groupId, long coGmTelegramId);
|
||||||
Task<List<WebParticipant>> GetSessionParticipantsAsync(Guid sessionId);
|
Task<List<WebParticipant>> GetSessionParticipantsAsync(Guid sessionId);
|
||||||
Task RemovePlayerFromSessionAsync(Guid sessionId, Guid groupId, Guid participantId);
|
Task RemovePlayerFromSessionAsync(Guid sessionId, Guid groupId, Guid participantId);
|
||||||
|
Task<List<PlayerAttendanceStats>> 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
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user