Browse Source

Merge branch 'matej-fix-export-prednasek'

remotes/origin/test
Matěj Kocián 7 years ago
parent
commit
db18abb382
  1. 29
      prednasky/views.py

29
prednasky/views.py

@ -1,8 +1,10 @@
from django.shortcuts import render,get_object_or_404
# -*- coding: utf-8 -*-
from django.shortcuts import render, get_object_or_404
from django.views import generic
from prednasky.forms import NewPrednaskyForm
from prednasky.models import Seznam, Hlasovani, Prednaska
from django.shortcuts import HttpResponseRedirect
from django.core.exceptions import ObjectDoesNotExist
from models import Prednaska, Seznam, STAV_NAVRH
@ -54,23 +56,32 @@ class SeznamListView(generic.ListView):
return Prednaska.objects.filter(seznamy = self.seznam)
def SeznamExportView(request,seznam):
seznam_obj = Seznam.objects.get(id=seznam)
def SeznamExportView(request, seznam):
u"""Vypíše výsledky hlasování ve formátu pro prologovský optimalizátor"""
# TODO zřejmě se nepoužívá, časem vyřadit? nahradit tabulkou vhodnější pro
# lidi?
hlasovani = Hlasovani.objects.filter(seznam=seznam)
prednasky = Prednaska.objects.filter(seznamy=seznam)
orgove = set(map(lambda x:x.org,prednasky))
ucastnici = list(set(map(lambda x:x.ucastnik,hlasovani)))
orgove = set(p.org for p in prednasky)
ucastnici = set(h.ucastnik for h in hlasovani)
for p in prednasky:
p.body = []
for u in ucastnici:
p.body.append(hlasovani.get(ucastnik=u,prednaska=p).body)
try:
p.body.append(hlasovani.get(ucastnik=u, prednaska=p).body)
except ObjectDoesNotExist:
# účastník nehlasoval
p.body.append("?")
for h in hlasovani:
h.ucastnik = hash(h.ucastnik)
return render(request, 'prednasky/seznam_prednasek_export.txt',
{"hlasovani":hlasovani,"prednasky":prednasky,"orgove":orgove},
content_type="text/plain")
return render(
request,
'prednasky/seznam_prednasek_export.txt',
{"hlasovani": hlasovani, "prednasky": prednasky, "orgove": orgove},
content_type="text/plain"
)

Loading…
Cancel
Save