Přednášky #87
1 changed files with 7 additions and 2 deletions
|
@ -157,6 +157,8 @@ def PrednaskyExportView(request: HttpRequest, seznam: int, **kwargs) -> HttpResp
|
|||
# A po inicializaci sloupců vyplníme tabulku
|
||||
table: [str, list[str|Prednaska|Znalost,]] = {}
|
||||
|
||||
errors = []
|
||||
|
||||
for h in hlasovani:
|
||||
if h.ucastnik not in table: # Pokud jsme účastníka ještě neviděli, předgenerujeme si jeho řádek
|
||||
table[h.ucastnik] = [h.ucastnik] + ([""] * width)
|
||||
|
@ -164,7 +166,7 @@ def PrednaskyExportView(request: HttpRequest, seznam: int, **kwargs) -> HttpResp
|
|||
if h.prednaska.id in prednasky_map:
|
||||
table[h.ucastnik][prednasky_map[h.prednaska.id]] = h.body
|
||||
else:
|
||||
pass # TODO Padat hlasitě?
|
||||
errors.append(f"Přednáška {h.prednaska.id} ({h.prednaska}) dostala od Účastníka {h.ucastnik} následující hodnocení: {h.body}")
|
||||
|
||||
for h in hlasovani_o_znalostech:
|
||||
ucastnik = str(h.ucastnik) + ' ' + str(h.ucastnik.id) # id, kvůli kolizi jmen
|
||||
|
@ -174,8 +176,11 @@ def PrednaskyExportView(request: HttpRequest, seznam: int, **kwargs) -> HttpResp
|
|||
if h.znalost.id in znalosti_map:
|
||||
table[ucastnik][znalosti_map[h.znalost.id]] = h.odpoved
|
||||
else:
|
||||
pass # TODO Padat hlasitě?
|
||||
errors.append(f"Znalost {h.znalost.id} ({h.znalost}) dostala od Účastníka {h.ucastnik.id} následující odpověď: {h.odpoved}")
|
||||
|
||||
if len(errors) > 0:
|
||||
logger.error("Při exportování hlasování o přednáškách a znalostech se neexportovali hodnocení z následujícího infa (pravděpodobně se od hlasování vyškrtla nějaká znalost/přednáška ze seznamu).")
|
||||
logger.info("\n".join(errors))
|
||||
|
||||
response = HttpResponse(content_type="text/csv", charset="utf-8")
|
||||
response["Content-Disposition"] = 'attachment; filename="hlasovani.csv"'
|
||||
|
|
Loading…
Reference in a new issue