feat: adjust mvp function to new DB

This commit is contained in:
julius 2025-03-11 12:40:12 +01:00
parent c42231907d
commit 1067b12be8
Signed by: julius
GPG Key ID: C80A63E6A5FD7092

View File

@ -1,4 +1,3 @@
from datetime import datetime
import io
import base64
from fastapi import APIRouter
@ -203,17 +202,16 @@ async def render_sociogram(params: Params):
def mvp():
ranks = dict()
with Session(engine) as session:
players = {p.id: p.display_name for p in session.exec(select(P)).fetchall()}
subquery = (
select(R.user, func.max(R.time).label("latest"))
.where(R.time > datetime(2025, 2, 8))
.group_by(R.user)
.subquery()
select(R.user, func.max(R.time).label("latest")).group_by(R.user).subquery()
)
statement2 = select(R).join(
subquery, (R.user == subquery.c.user) & (R.time == subquery.c.latest)
)
for r in session.exec(statement2):
for i, p in enumerate(r.mvps):
for i, p_id in enumerate(r.mvps):
p = players[p_id]
ranks[p] = ranks.get(p, []) + [i + 1]
return [
{