Browse Source

impl action para expedientes de uma sessão

pull/2708/head
Leandro Roberto 6 years ago
parent
commit
0df877108b
  1. 16
      sapl/api/views.py
  2. 23
      sapl/sessao/models.py

16
sapl/api/views.py

@ -27,7 +27,7 @@ from sapl.materia.models import Proposicao, TipoMateriaLegislativa,\
from sapl.parlamentares.models import Parlamentar from sapl.parlamentares.models import Parlamentar
from sapl.protocoloadm.models import DocumentoAdministrativo,\ from sapl.protocoloadm.models import DocumentoAdministrativo,\
DocumentoAcessorioAdministrativo, TramitacaoAdministrativo DocumentoAcessorioAdministrativo, TramitacaoAdministrativo
from sapl.sessao.models import SessaoPlenaria from sapl.sessao.models import SessaoPlenaria, ExpedienteSessao
from sapl.utils import models_with_gr_for_model, choice_anos_com_sessaoplenaria from sapl.utils import models_with_gr_for_model, choice_anos_com_sessaoplenaria
@ -498,3 +498,17 @@ class _SessaoPlenariaViewSet:
serializer = ChoiceSerializer(years, many=True) serializer = ChoiceSerializer(years, many=True)
return Response(serializer.data) return Response(serializer.data)
@action(detail=True)
def expedientes(self, request, *args, **kwargs):
sessao = self.get_object()
page = self.paginate_queryset(sessao.expedientesessao_set.all())
if page is not None:
serializer = SaplApiViewSetConstrutor.get_class_for_model(
ExpedienteSessao).serializer_class(page, many=True)
return self.get_paginated_response(serializer.data)
serializer = self.get_serializer(page, many=True)
return Response(serializer.data)

23
sapl/sessao/models.py

@ -290,8 +290,11 @@ class TipoExpediente(models.Model):
@reversion.register() @reversion.register()
class ExpedienteSessao(models.Model): # ExpedienteSessaoPlenaria class ExpedienteSessao(models.Model): # ExpedienteSessaoPlenaria
sessao_plenaria = models.ForeignKey(SessaoPlenaria, sessao_plenaria = models.ForeignKey(
on_delete=models.CASCADE) SessaoPlenaria,
on_delete=models.CASCADE,
related_name='expedientesessao_set'
)
tipo = models.ForeignKey(TipoExpediente, on_delete=models.PROTECT) tipo = models.ForeignKey(TipoExpediente, on_delete=models.PROTECT)
conteudo = models.TextField( conteudo = models.TextField(
blank=True, verbose_name=_('Conteúdo do expediente')) blank=True, verbose_name=_('Conteúdo do expediente'))
@ -379,7 +382,7 @@ class OradorExpediente(AbstractOrador): # OradoresExpediente
@reversion.register() @reversion.register()
class OradorOrdemDia(AbstractOrador): # OradoresOrdemDia class OradorOrdemDia(AbstractOrador): # OradoresOrdemDia
class Meta: class Meta:
verbose_name = _('Orador da Ordem do Dia') verbose_name = _('Orador da Ordem do Dia')
@ -584,10 +587,14 @@ class ResumoOrdenacao(models.Model):
oitavo = models.CharField(max_length=30) oitavo = models.CharField(max_length=30)
nono = models.CharField(max_length=30) nono = models.CharField(max_length=30)
decimo = models.CharField(max_length=30) decimo = models.CharField(max_length=30)
decimo_primeiro = models.CharField(max_length=30,default="Ocorrências da Sessão") decimo_primeiro = models.CharField(
decimo_segundo = models.CharField(max_length=30, default="Votos Nominais Mat Expediente") max_length=30, default="Ocorrências da Sessão")
decimo_terceiro = models.CharField(max_length=30, default="Votos Nominais Mat Ordem Dia") decimo_segundo = models.CharField(
decimo_quarto = models.CharField(max_length=30, default="Oradores da Ordem do Dia") max_length=30, default="Votos Nominais Mat Expediente")
decimo_terceiro = models.CharField(
max_length=30, default="Votos Nominais Mat Ordem Dia")
decimo_quarto = models.CharField(
max_length=30, default="Oradores da Ordem do Dia")
class Meta: class Meta:
verbose_name = _('Ordenação do Resumo de uma Sessão') verbose_name = _('Ordenação do Resumo de uma Sessão')
@ -596,6 +603,7 @@ class ResumoOrdenacao(models.Model):
def __str__(self): def __str__(self):
return 'Ordenação do Resumo de uma Sessão' return 'Ordenação do Resumo de uma Sessão'
@reversion.register() @reversion.register()
class TipoRetiradaPauta(models.Model): class TipoRetiradaPauta(models.Model):
descricao = models.CharField(max_length=150, verbose_name=_('Descrição')) descricao = models.CharField(max_length=150, verbose_name=_('Descrição'))
@ -687,6 +695,7 @@ class JustificativaAusencia(models.Model):
using=using, using=using,
update_fields=update_fields) update_fields=update_fields)
class RetiradaPauta(models.Model): class RetiradaPauta(models.Model):
materia = models.ForeignKey(MateriaLegislativa, materia = models.ForeignKey(MateriaLegislativa,
on_delete=models.CASCADE, on_delete=models.CASCADE,

Loading…
Cancel
Save