imrpoved session details page
This commit is contained in:
1 parent
6a655002d4
commit
666b859a34
4 files changed
+238
-24
No files matched your search
@@ -78,6 +78,18 @@ class SessionSummary:
|
||||
def total_net_cents(self) -> int:
|
||||
return sum(entry.net_cents for entry in self.entries)
|
||||
|
||||
@property
|
||||
def total_payout_due_cents(self) -> int:
|
||||
return sum(entry.payout_due_cents for entry in self.entries)
|
||||
|
||||
@property
|
||||
def total_paid_cents(self) -> int:
|
||||
return sum(entry.paid_cents for entry in self.entries)
|
||||
|
||||
@property
|
||||
def total_remaining_cents(self) -> int:
|
||||
return sum(entry.payout_remaining_cents for entry in self.entries)
|
||||
|
||||
|
||||
@dataclass
|
||||
class PlayerStats:
|
||||
@@ -437,6 +449,20 @@ def player_session_series(
|
||||
}
|
||||
|
||||
|
||||
def session_breakdown_series(session: SessionSummary) -> dict[str, Any]:
|
||||
ordered_entries = sorted(
|
||||
session.entries,
|
||||
key=lambda entry: (entry.net_cents, entry.player_name.casefold()),
|
||||
reverse=True,
|
||||
)
|
||||
|
||||
return {
|
||||
"labels": [entry.player_name for entry in ordered_entries],
|
||||
"net_values": [round(entry.net_cents / 100, 2) for entry in ordered_entries],
|
||||
"net_colors": [net_tone(entry.net_cents) for entry in ordered_entries],
|
||||
}
|
||||
|
||||
|
||||
def session_events(events: list[EventRow], session_date: str) -> list[EventRow]:
|
||||
return [event for event in events if event["session_date"] == session_date]
|
||||
|
||||
|
||||
Reference in new issue
Block a user