Browse Source

Votação ordem dia

pull/906/head
Eduardo Edson Batista Cordeiro Alves 8 years ago
parent
commit
52878ee090
  1. 61
      sapl/sessao/views.py

61
sapl/sessao/views.py

@ -1317,7 +1317,7 @@ class VotacaoNominalView(SessaoPermissionMixin):
'ementa': sub( 'ementa': sub(
' ', ' ', strip_tags(ordem.observacao))} ' ', ' ', strip_tags(ordem.observacao))}
context = {'materia': materia, 'object': self.get_object(), context = {'materia': materia, 'object': self.get_object(),
'parlamentares': self.get_parlamentares(), 'parlamentares': self.get_parlamentares(ordem.materia),
'tipos': self.get_tipos_votacao(), 'tipos': self.get_tipos_votacao(),
'total': total} 'total': total}
@ -1332,6 +1332,21 @@ class VotacaoNominalView(SessaoPermissionMixin):
form = VotacaoNominalForm(request.POST) form = VotacaoNominalForm(request.POST)
if 'cancelar-votacao' in request.POST: if 'cancelar-votacao' in request.POST:
sessao = self.object
materia = ordem.materia
presentes = PresencaOrdemDia.objects.filter(
sessao_plenaria_id=expediente.sessao_plenaria_id)
for p in presentes:
try:
voto = VotoNominal.objects.get(
parlamentar=p.parlamentar,
sessao=self.object.pk,
materia=materia)
except ObjectDoesNotExist:
pass
else:
voto.delete()
ordem.votacao_aberta = False ordem.votacao_aberta = False
ordem.save() ordem.save()
return self.form_valid(form) return self.form_valid(form)
@ -1350,13 +1365,13 @@ class VotacaoNominalView(SessaoPermissionMixin):
voto = v[0] voto = v[0]
parlamentar_id = v[1] parlamentar_id = v[1]
if(voto == 'sim'): if(voto == 'Sim'):
votos_sim += 1 votos_sim += 1
elif(voto == 'nao'): elif(voto == 'o'):
votos_nao += 1 votos_nao += 1
elif(voto == 'abstencao'): elif(voto == 'Abstenção'):
abstencoes += 1 abstencoes += 1
elif(voto == 'nao_votou'): elif(voto == 'Não Votou'):
nao_votou += 1 nao_votou += 1
try: try:
@ -1385,14 +1400,7 @@ class VotacaoNominalView(SessaoPermissionMixin):
parlamentar_id = v[1] parlamentar_id = v[1]
voto_parlamentar = VotoParlamentar() voto_parlamentar = VotoParlamentar()
if voto == 'sim': voto_parlamentar.voto = voto
voto_parlamentar.voto = _('Sim')
elif voto == 'nao':
voto_parlamentar.voto = _('Não')
elif voto == 'abstencao':
voto_parlamentar.voto = _('Abstenção')
elif voto == 'nao_votou':
voto_parlamentar.voto = _('Não Votou')
voto_parlamentar.parlamentar_id = parlamentar_id voto_parlamentar.parlamentar_id = parlamentar_id
voto_parlamentar.votacao_id = votacao.id voto_parlamentar.votacao_id = votacao.id
voto_parlamentar.save() voto_parlamentar.save()
@ -1410,7 +1418,7 @@ class VotacaoNominalView(SessaoPermissionMixin):
else: else:
return self.form_invalid(form) return self.form_invalid(form)
def get_parlamentares(self): def get_parlamentares(self, materia):
self.object = self.get_object() self.object = self.get_object()
presencas = PresencaOrdemDia.objects.filter( presencas = PresencaOrdemDia.objects.filter(
@ -1420,7 +1428,15 @@ class VotacaoNominalView(SessaoPermissionMixin):
for parlamentar in Parlamentar.objects.filter(ativo=True): for parlamentar in Parlamentar.objects.filter(ativo=True):
if parlamentar in presentes: if parlamentar in presentes:
yield parlamentar try:
voto = VotoNominal.objects.get(
parlamentar=parlamentar,
sessao=self.object.pk,
materia=materia)
except ObjectDoesNotExist:
yield [parlamentar, None]
else:
yield [parlamentar, voto.voto]
def get_tipos_votacao(self): def get_tipos_votacao(self):
for tipo in TipoResultadoVotacao.objects.all(): for tipo in TipoResultadoVotacao.objects.all():
@ -1475,6 +1491,21 @@ class VotacaoNominalEditView(SessaoPermissionMixin):
materia_id = kwargs['oid'] materia_id = kwargs['oid']
ordem_id = kwargs['mid'] ordem_id = kwargs['mid']
sessao = self.object
ordem = ExpedienteMateria.objects.get(id=ordem_id)
presentes = PresencaOrdemDia.objects.filter(
sessao_plenaria_id=ordem.sessao_plenaria_id)
for p in presentes:
try:
voto = VotoNominal.objects.get(
parlamentar=p.parlamentar,
sessao=self.object.pk,
materia=materia_id)
except ObjectDoesNotExist:
pass
else:
voto.delete()
if(int(request.POST['anular_votacao']) == 1): if(int(request.POST['anular_votacao']) == 1):
registro = RegistroVotacao.objects.get( registro = RegistroVotacao.objects.get(
materia_id=materia_id, materia_id=materia_id,

Loading…
Cancel
Save