From 1737e807d685836c9e4dfa76a4b029c463021f94 Mon Sep 17 00:00:00 2001 From: Anet Date: Fri, 26 Jul 2019 00:45:27 +0200 Subject: [PATCH] =?UTF-8?q?Kr=C3=A1tk=C3=A9=20pokra=C4=8Dov=C3=A1n=C3=AD?= =?UTF-8?q?=20ve=20vrt=C3=A1n=C3=AD=20se=20ve=20v=C3=BDsledkovce=20=C4=8D?= =?UTF-8?q?=C3=ADsla.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seminar/views.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/seminar/views.py b/seminar/views.py index 04a71f64..e7fb0fda 100644 --- a/seminar/views.py +++ b/seminar/views.py @@ -379,13 +379,14 @@ class ProblemView(generic.DetailView): class VysledkyResitele(object): - #resitel_jmeno = models.CharField('jméno řešitele', max_length=256) - #resitel_prijmeni = CharField('příjmení', max_length=256) + "Pro daného řešitele ukládá počet bodů za jednotlivé úlohy a celkový + počet bodů za číslo." def __init__(self, jmeno, prijmeni): resitel_jmeno = jmeno resitel_prijmeni = prijmeni body = {} + body_cislo = 0 def body_za_cislo(self): return sum(body.values()) @@ -460,14 +461,21 @@ class CisloView(generic.DetailView): aktivni_resitele = Resitel.objects.filter( rok_maturity__gte=context['rocnik'].druhy_rok()) #.filter(hodnoceni_set__rocnik__eq=cislo_rocnik) - udaje_vysledkovky = {} + radky_vysledkovky = [] for ar in aktivni_resitele: vr = VysledkyResitele(ar.jmeno, ar.prijmeni) - for h in hlavni_problemy: - vr.body[h.id] = vysledky_resitele_problemu(h, ar, cislo) + for h in hlavni_problemy: + body = vysledky_resitele_problemu(h, ar, cislo) + vr.body[h.kod_v_rocniku] = body + vr.body_cislo = vr.body_cislo + body + radky_vysledkovky.append(vr) + + ## TODO: spočítat počet bodů řešitele v daném ročníku a seřadit je podle toho + ## TODO: možná použít tyto funkce i v RocnikVysledkovkaView (a umístit sem nebo tam)? + - vysledky = VysledkyKCisluZaRocnik.objects.filter(cislo = context['cislo']).\ - order_by('-body', 'resitel__prijmeni', 'resitel__jmeno') +# vysledky = VysledkyKCisluZaRocnik.objects.filter(cislo = context['cislo']).\ +# order_by('-body', 'resitel__prijmeni', 'resitel__jmeno') # reseni = Reseni.objects.filter(cislo_body = context['cislo']).select_related("resitel") # typy úloh, které se mají zobrazovat u čísla, tj. těch, které byly