|
|
@ -88,30 +88,30 @@ def body_resitelu(resitele, za, odjakziva=True, jen_verejne=False): |
|
|
|
# Vyfiltrujeme všechna hodnocení, která jsou buď ze starších ročníků, |
|
|
|
# anebo ze stejného ročníku, jak je zadané číslo, tam ale sčítáme jen |
|
|
|
# pro čísla s pořadím nejvýše stejným, jako má zadané číslo. |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter=( Q(hodnoceni__cislo_body__rocnik__prvni_rok__lt=rok) | |
|
|
|
Q(hodnoceni__cislo_body__rocnik__prvni_rok=rok, |
|
|
|
hodnoceni__cislo_body__poradi__lte=cislo.poradi) )) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter=( Q(reseni__hodnoceni__cislo_body__rocnik__prvni_rok__lt=rok) | |
|
|
|
Q(reseni__hodnoceni__cislo_body__rocnik__prvni_rok=rok, |
|
|
|
reseni__hodnoceni__cislo_body__poradi__lte=cislo.poradi) )) |
|
|
|
elif cislo and not odjakziva: # Body se sčítají za dané číslo. |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter=( Q(hodnoceni__cislo_body__rocnik__prvni_rok=rok, |
|
|
|
hodnoceni__cislo_body__poradi__lte=cislo.poradi) )) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter=( Q(reseni__hodnoceni__cislo_body__rocnik__prvni_rok=rok, |
|
|
|
reseni__hodnoceni__cislo_body__poradi__lte=cislo.poradi) )) |
|
|
|
elif rocnik and odjakziva: # Spočítáme body za starší ročníky až do zadaného včetně. |
|
|
|
if jen_verejne: |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter= Q(hodnoceni__cislo_body__rocnik__prvni_rok__lte=rok, |
|
|
|
hodnoceni__cislo_body__verejna_vysledkovka=True)) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter= Q(reseni__hodnoceni__cislo_body__rocnik__prvni_rok__lte=rok, |
|
|
|
reseni__hodnoceni__cislo_body__verejna_vysledkovka=True)) |
|
|
|
else: |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter= Q(hodnoceni__cislo_body__rocnik__prvni_rok__lte=rok)) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter= Q(reseni__hodnoceni__cislo_body__rocnik__prvni_rok__lte=rok)) |
|
|
|
elif rocnik and not odjakziva: # Spočítáme body za daný ročník. |
|
|
|
if jen_verejne: |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter=Q(hodnoceni__cislo_body__rocnik=rocnik, |
|
|
|
hodnoceni__cislo_body__verejna_vysledkovka=True)) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter=Q(reseni__hodnoceni__cislo_body__rocnik=rocnik, |
|
|
|
reseni__hodnoceni__cislo_body__verejna_vysledkovka=True)) |
|
|
|
else: |
|
|
|
body_k_zapocteni = Sum('hodnoceni__body', |
|
|
|
filter=Q(hodnoceni__cislo_body__rocnik=rocnik)) |
|
|
|
body_k_zapocteni = Sum('reseni__hodnoceni__body', |
|
|
|
filter=Q(reseni__hodnoceni__cislo_body__rocnik=rocnik)) |
|
|
|
else: |
|
|
|
assert True, "body_resitelu: Neplatná kombinace za a odjakživa." |
|
|
|
|
|
|
|