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