Merge branch 'matej-fix-export-prednasek'
This commit is contained in:
commit
db18abb382
1 changed files with 22 additions and 11 deletions
|
@ -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 django.views import generic
|
||||||
from prednasky.forms import NewPrednaskyForm
|
from prednasky.forms import NewPrednaskyForm
|
||||||
from prednasky.models import Seznam, Hlasovani, Prednaska
|
from prednasky.models import Seznam, Hlasovani, Prednaska
|
||||||
from django.shortcuts import HttpResponseRedirect
|
from django.shortcuts import HttpResponseRedirect
|
||||||
|
from django.core.exceptions import ObjectDoesNotExist
|
||||||
|
|
||||||
|
|
||||||
from models import Prednaska, Seznam, STAV_NAVRH
|
from models import Prednaska, Seznam, STAV_NAVRH
|
||||||
|
@ -54,23 +56,32 @@ class SeznamListView(generic.ListView):
|
||||||
return Prednaska.objects.filter(seznamy = self.seznam)
|
return Prednaska.objects.filter(seznamy = self.seznam)
|
||||||
|
|
||||||
|
|
||||||
def SeznamExportView(request,seznam):
|
def SeznamExportView(request, seznam):
|
||||||
seznam_obj = Seznam.objects.get(id=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)
|
hlasovani = Hlasovani.objects.filter(seznam=seznam)
|
||||||
prednasky = Prednaska.objects.filter(seznamy=seznam)
|
prednasky = Prednaska.objects.filter(seznamy=seznam)
|
||||||
orgove = set(map(lambda x:x.org,prednasky))
|
orgove = set(p.org for p in prednasky)
|
||||||
ucastnici = list(set(map(lambda x:x.ucastnik,hlasovani)))
|
ucastnici = set(h.ucastnik for h in hlasovani)
|
||||||
|
|
||||||
for p in prednasky:
|
for p in prednasky:
|
||||||
p.body = []
|
p.body = []
|
||||||
for u in ucastnici:
|
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:
|
for h in hlasovani:
|
||||||
h.ucastnik = hash(h.ucastnik)
|
h.ucastnik = hash(h.ucastnik)
|
||||||
|
|
||||||
return render(request, 'prednasky/seznam_prednasek_export.txt',
|
return render(
|
||||||
{"hlasovani":hlasovani,"prednasky":prednasky,"orgove":orgove},
|
request,
|
||||||
content_type="text/plain")
|
'prednasky/seznam_prednasek_export.txt',
|
||||||
|
{"hlasovani": hlasovani, "prednasky": prednasky, "orgove": orgove},
|
||||||
|
content_type="text/plain"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue