Skip to content
Snippets Groups Projects
Commit 18bcbab2 authored by Martin Mareš's avatar Martin Mareš
Browse files

export-pion: Bug fixes

parent 44ccfa01
No related branches found
No related tags found
No related merge requests found
......@@ -2,6 +2,7 @@
# Účast ve všech soutěžích ročníku (anonymně)
from dataclasses import dataclass
from sqlalchemy import and_
from sqlalchemy.orm import joinedload
import sys
......@@ -10,14 +11,15 @@ import mo.db as db
sess = db.get_session()
res = (sess.query(db.Participant, db.Participation)
res = (sess.query(db.Participant, db.Participation, db.Contest, db.Round)
.select_from(db.Participant)
.join(db.Participation, db.Participation.user_id == db.Participant.user_id)
.join(db.Contest, db.Contest.contest_id == db.Participation.contest_id)
.join(db.Round, and_(db.Round.round_id == db.Contest.round_id, db.Round.year == db.Participant.year))
.options(joinedload(db.Participant.user))
.options(joinedload(db.Participant.school_place).joinedload(db.Place.parent_place).joinedload(db.Place.parent_place).joinedload(db.Place.parent_place))
.options(joinedload(db.Participation.place))
.options(joinedload(db.Participation.contest).joinedload(db.Contest.place))
.options(joinedload(db.Participation.contest).joinedload(db.Contest.round))
.filter(db.Round.master_round_id == db.Round.round_id)
.all())
......@@ -35,15 +37,13 @@ class Row:
output = []
for pant, pion in res:
if pion.contest.round.is_subround():
continue
for pant, pion, ct, rnd in res:
output.append(Row(
rocnik=str(pion.contest.round.year),
kategorie=pion.contest.round.category,
kolo=str(pion.contest.round.level),
misto=pion.contest.place.name,
kod_mista=str(pion.contest.place.place_id),
rocnik=str(rnd.year),
kategorie=rnd.category,
kolo=str(rnd.seq),
misto=ct.place.name,
kod_mista=str(ct.place.place_id),
kod_ucastnika=str(pion.user_id),
nazev_skoly=pant.school_place.name,
kod_skoly=str(pant.school),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment