|
|
@ -21,7 +21,7 @@ from rest_framework.viewsets import ModelViewSet |
|
|
|
|
|
|
|
|
from sapl.api.forms import SaplFilterSetMixin |
|
|
from sapl.api.forms import SaplFilterSetMixin |
|
|
from sapl.api.permissions import SaplModelPermissions |
|
|
from sapl.api.permissions import SaplModelPermissions |
|
|
from sapl.api.serializers import ChoiceSerializer |
|
|
from sapl.api.serializers import ChoiceSerializer, ParlamentarResumeSerializer |
|
|
from sapl.base.models import Autor, AppConfig, DOC_ADM_OSTENSIVO |
|
|
from sapl.base.models import Autor, AppConfig, DOC_ADM_OSTENSIVO |
|
|
from sapl.materia.models import Proposicao, TipoMateriaLegislativa,\ |
|
|
from sapl.materia.models import Proposicao, TipoMateriaLegislativa,\ |
|
|
MateriaLegislativa, Tramitacao |
|
|
MateriaLegislativa, Tramitacao |
|
|
@ -334,6 +334,25 @@ class _ParlamentarViewSet: |
|
|
serializer = self.get_serializer(page, many=True) |
|
|
serializer = self.get_serializer(page, many=True) |
|
|
return Response(serializer.data) |
|
|
return Response(serializer.data) |
|
|
|
|
|
|
|
|
|
|
|
@action(detail=True) |
|
|
|
|
|
def parlamentares_by_legislatura(self,request,*args,**kwargs): |
|
|
|
|
|
""" |
|
|
|
|
|
Pega lista de parlamentares pelo id da legislatura. |
|
|
|
|
|
""" |
|
|
|
|
|
from sapl.parlamentares.models import Mandato, Parlamentar |
|
|
|
|
|
mandatos = Mandato.objects.filter(legislatura__id=kwargs['pk']).values_list('parlamentar') |
|
|
|
|
|
parlamentares = Parlamentar.objects.filter(id__in=[m[0] for m in mandatos]) |
|
|
|
|
|
serializer_class = ParlamentarResumeSerializer(parlamentares,many=True,context={'legislatura':kwargs['pk']}) |
|
|
|
|
|
|
|
|
|
|
|
return Response(serializer_class.data) |
|
|
|
|
|
|
|
|
|
|
|
@action(detail=False, methods=['post']) |
|
|
|
|
|
def search_parlamentares(self,request,*args,**kwargs): |
|
|
|
|
|
nome = request.data.get('nome_parlamentar','') |
|
|
|
|
|
parlamentares = Parlamentar.objects.filter(nome_parlamentar__icontains=nome) |
|
|
|
|
|
serializer_class= ParlamentarResumeSerializer(parlamentares,many=True) |
|
|
|
|
|
return Response(serializer_class.data) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@customize(Proposicao) |
|
|
@customize(Proposicao) |
|
|
class _ProposicaoViewSet(): |
|
|
class _ProposicaoViewSet(): |
|
|
|