diff --git a/prednasky/views.py b/prednasky/views.py index 8bc66e49..e5adeec1 100644 --- a/prednasky/views.py +++ b/prednasky/views.py @@ -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"'