Skip to content

Commit 7c3f77b

Browse files
Conserta bug em presenca (#1185)
1 parent 4217b9f commit 7c3f77b

File tree

3 files changed

+23
-17
lines changed

3 files changed

+23
-17
lines changed

.codeclimate.yml codeclimate.yml

File renamed without changes.

sapl/materia/views.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -87,8 +87,8 @@ def proposicao_texto(request, pk):
8787
proposicao = Proposicao.objects.get(pk=pk)
8888

8989
if proposicao.texto_original:
90-
if not proposicao.data_recebimento:
91-
if proposicao.autor.user_id != request.user.id:
90+
if (not proposicao.data_recebimento and
91+
proposicao.autor.user_id != request.user.id):
9292
raise Http404
9393

9494
arquivo = proposicao.texto_original

sapl/sessao/views.py

+21-15
Original file line numberDiff line numberDiff line change
@@ -599,16 +599,19 @@ def post(self, request, *args, **kwargs):
599599
if form.is_valid():
600600
# Pegar os presentes salvos no banco
601601
presentes_banco = SessaoPlenariaPresenca.objects.filter(
602-
sessao_plenaria_id=self.object.id)
602+
sessao_plenaria_id=self.object.id).values_list(
603+
'parlamentar_id', flat=True).distinct()
603604

604605
# Id dos parlamentares presentes
605-
marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_inativos')
606+
marcados = request.POST.getlist('presenca_ativos') \
607+
+ request.POST.getlist('presenca_inativos')
608+
marcados = list(map(lambda x: int(x), marcados))
606609

607-
# Deletar os que foram desmarcadors
608-
deletar = set(set(presentes_banco) - set(marcados))
609-
for d in deletar:
610-
SessaoPlenariaPresenca.objects.filter(
611-
parlamentar_id=d.parlamentar_id, sessao_plenaria_id=self.object.id).delete()
610+
# Deletar os que foram desmarcados
611+
deletar = set(presentes_banco) - set(marcados)
612+
SessaoPlenariaPresenca.objects.filter(
613+
parlamentar_id__in=deletar,
614+
sessao_plenaria_id=self.object.id).delete()
612615

613616
for p in marcados:
614617
sessao = SessaoPlenariaPresenca()
@@ -707,16 +710,19 @@ def post(self, request, *args, **kwargs):
707710
if form.is_valid():
708711
# Pegar os presentes salvos no banco
709712
presentes_banco = PresencaOrdemDia.objects.filter(
710-
sessao_plenaria_id=pk)
713+
sessao_plenaria_id=self.object.id).values_list(
714+
'parlamentar_id', flat=True).distinct()
711715

712716
# Id dos parlamentares presentes
713-
marcados = request.POST.getlist('presenca_ativos') + request.POST.getlist('presenca_inativos')
714-
715-
# Deletar os que foram desmarcadors
716-
deletar = set(set(presentes_banco) - set(marcados))
717-
for d in deletar:
718-
PresencaOrdemDia.objects.filter(
719-
parlamentar_id=d.parlamentar_id, sessao_plenaria_id=self.object.id).delete()
717+
marcados = request.POST.getlist('presenca_ativos') \
718+
+ request.POST.getlist('presenca_inativos')
719+
marcados = list(map(lambda x: int(x), marcados))
720+
721+
# Deletar os que foram desmarcados
722+
deletar = set(presentes_banco) - set(marcados)
723+
PresencaOrdemDia.objects.filter(
724+
parlamentar_id__in=deletar,
725+
sessao_plenaria_id=self.object.id).delete()
720726

721727
for p in marcados:
722728
ordem = PresencaOrdemDia()

0 commit comments

Comments
 (0)