Browse Source

Zpět hlavni_problem místo slovníku

pull/3/head
Jonas Havelka 2 years ago
parent
commit
82024ad982
  1. 1
      seminar/models/tvorba.py
  2. 8
      vysledkovky/utils.py

1
seminar/models/tvorba.py

@ -480,6 +480,7 @@ class Problem(SeminarModelBase,PolymorphicModel):
def admin_url(self): def admin_url(self):
return reverse('admin:seminar_problem_change', args=(self.id, )) return reverse('admin:seminar_problem_change', args=(self.id, ))
@cached_property
def hlavni_problem(self): def hlavni_problem(self):
""" Pro daný problém vrátí jeho nejvyšší nadproblém.""" """ Pro daný problém vrátí jeho nejvyšší nadproblém."""
return hlavni_problem(self) return hlavni_problem(self)

8
vysledkovky/utils.py

@ -286,19 +286,13 @@ class VysledkovkaCisla(Vysledkovka):
for problem in self.podproblemy[-1] for problem in self.podproblemy[-1]
} }
# Mapování podproblémů na problémy
problem2nadproblem = dict()
for tema in self.temata_a_spol:
for problem in self.podproblemy[tema.id]:
problem2nadproblem[problem.id] = tema.id
# Získáme query všech sčítaných hodnocení # Získáme query všech sčítaných hodnocení
hodnoceni_do_cisla = self.hodnoceni_do_cisla hodnoceni_do_cisla = self.hodnoceni_do_cisla
# Sečteme hodnocení # Sečteme hodnocení
for hodnoceni in hodnoceni_do_cisla: for hodnoceni in hodnoceni_do_cisla:
prob = hodnoceni.problem prob = hodnoceni.problem
nadproblem = problem2nadproblem[prob.id] nadproblem = prob.hlavni_problem.id
problem_slovnik = body_za_problemy[nadproblem][prob.id] problem_slovnik = body_za_problemy[nadproblem][prob.id]
nadproblem_slovnik = body_za_temata[nadproblem] nadproblem_slovnik = body_za_temata[nadproblem]

Loading…
Cancel
Save