Tituly varuji pri duplicite + filter+first -> get.
This commit is contained in:
parent
7285d6ad89
commit
fb4edae7e9
2 changed files with 22 additions and 10 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
{% if broken %}
|
||||||
|
%% POZOR! %% Dva resitele maji stejne makro!!!
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% autoescape off %}
|
{% autoescape off %}
|
||||||
{% load tex %}
|
{% load tex %}
|
||||||
|
|
||||||
|
|
|
@ -356,7 +356,7 @@ class CisloObalkyStruct:
|
||||||
|
|
||||||
# Vraci QuerySet aktualnich resitelu = nekdy neco poslali, ale jeste neodmaturovali
|
# Vraci QuerySet aktualnich resitelu = nekdy neco poslali, ale jeste neodmaturovali
|
||||||
def aktualniResitele(rocnik):
|
def aktualniResitele(rocnik):
|
||||||
letos = Rocnik.objects.filter(rocnik = rocnik).first()
|
letos = Rocnik.objects.get(rocnik = rocnik)
|
||||||
return Resitel.objects.filter(rok_maturity__gt = letos.prvni_rok)
|
return Resitel.objects.filter(rok_maturity__gt = letos.prvni_rok)
|
||||||
# # ALERT: pokud nekdo nema vypleny rok maturity, tak neni aktualni, protoze Karel Tesar a jini
|
# # ALERT: pokud nekdo nema vypleny rok maturity, tak neni aktualni, protoze Karel Tesar a jini
|
||||||
# return Resitel.objects.filter(Q(rok_maturity__gt = letos.prvni_rok)|Q(rok_maturity = None))
|
# return Resitel.objects.filter(Q(rok_maturity__gt = letos.prvni_rok)|Q(rok_maturity = None))
|
||||||
|
@ -371,8 +371,8 @@ def aktivniResitele(rocnik,cislo):
|
||||||
|
|
||||||
aktualni_resitele = aktualniResitele(rocnik)
|
aktualni_resitele = aktualniResitele(rocnik)
|
||||||
|
|
||||||
letos.rocnik = Rocnik.objects.filter(rocnik = rocnik).first()
|
letos.rocnik = Rocnik.objects.get(rocnik = rocnik)
|
||||||
loni.rocnik = Rocnik.objects.filter(rocnik = int(rocnik)-1).first()
|
loni.rocnik = Rocnik.objects.get(rocnik = int(rocnik)-1)
|
||||||
letos.cisla = Cislo.objects.filter(rocnik=letos.rocnik,cislo__lte = cislo)
|
letos.cisla = Cislo.objects.filter(rocnik=letos.rocnik,cislo__lte = cislo)
|
||||||
loni.cisla = Cislo.objects.filter(rocnik=loni.rocnik)
|
loni.cisla = Cislo.objects.filter(rocnik=loni.rocnik)
|
||||||
if int(cislo) > 3:
|
if int(cislo) > 3:
|
||||||
|
@ -430,20 +430,27 @@ def resitelUlohaView(request,rocnik,cislo):
|
||||||
|
|
||||||
# TODO udelat neco jako get_objects_or_404
|
# TODO udelat neco jako get_objects_or_404
|
||||||
def TitulyView(request, rocnik, cislo):
|
def TitulyView(request, rocnik, cislo):
|
||||||
rocnik_obj = Rocnik.objects.filter(rocnik = rocnik).first()
|
rocnik_obj = Rocnik.objects.get(rocnik = rocnik)
|
||||||
resitele = Resitel.objects.filter(rok_maturity__gte = rocnik_obj.prvni_rok)
|
resitele = Resitel.objects.filter(rok_maturity__gte = rocnik_obj.prvni_rok)
|
||||||
cislo_obj = Cislo.objects.filter(rocnik = rocnik_obj, cislo = cislo).first()
|
cislo_obj = Cislo.objects.get(rocnik = rocnik_obj, cislo = cislo)
|
||||||
|
|
||||||
|
asciijmena = []
|
||||||
|
broken = False
|
||||||
|
|
||||||
for resitel in resitele:
|
for resitel in resitele:
|
||||||
vys = VysledkyKCisluOdjakziva.objects.filter(resitel = resitel, cislo = cislo_obj).first()
|
try:
|
||||||
if vys == None:
|
vys = VysledkyKCisluOdjakziva.objects.get(resitel = resitel, cislo = cislo_obj)
|
||||||
body = 0
|
|
||||||
else:
|
|
||||||
body = vys.body
|
body = vys.body
|
||||||
|
except ObjectDoesNotExist:
|
||||||
|
body = 0
|
||||||
resitel.titul = resitel.get_titul(body)
|
resitel.titul = resitel.get_titul(body)
|
||||||
resitel.ascii = unicodedata.normalize('NFKD',resitel.jmeno+resitel.prijmeni).encode("ascii","ignore").replace(" ","")
|
resitel.ascii = unicodedata.normalize('NFKD',resitel.jmeno+resitel.prijmeni).encode("ascii","ignore").replace(" ","")
|
||||||
|
if resitel.ascii not in asciijmena:
|
||||||
|
asciijmena.append(resitel.ascii)
|
||||||
|
else:
|
||||||
|
broken = True
|
||||||
|
|
||||||
return render(request, 'seminar/archiv/tituly.tex',{'resitele': resitele})
|
return render(request, 'seminar/archiv/tituly.tex',{'resitele': resitele,'broken':broken})
|
||||||
|
|
||||||
|
|
||||||
### Soustredeni
|
### Soustredeni
|
||||||
|
|
Loading…
Reference in a new issue