diff --git a/sapl/base/forms.py b/sapl/base/forms.py index f3832b666..77b2231e3 100644 --- a/sapl/base/forms.py +++ b/sapl/base/forms.py @@ -1148,6 +1148,11 @@ class RelatorioMateriasTramitacaoFilterSet(django_filters.FilterSet): queryset=StatusTramitacao.objects.all(), label=_('Status Atual')) + materia__autores = django_filters.ModelChoiceFilter( + label='Autor da Matéria', + queryset=Autor.objects.all()) + + @property def qs(self): parent = super(RelatorioMateriasTramitacaoFilterSet, self).qs @@ -1159,7 +1164,7 @@ class RelatorioMateriasTramitacaoFilterSet(django_filters.FilterSet): model = MateriaEmTramitacao fields = ['materia__ano', 'materia__tipo', 'tramitacao__unidade_tramitacao_destino', - 'tramitacao__status'] + 'tramitacao__status','materia__autores'] def __init__(self, *args, **kwargs): super(RelatorioMateriasTramitacaoFilterSet, self).__init__( @@ -1171,6 +1176,7 @@ class RelatorioMateriasTramitacaoFilterSet(django_filters.FilterSet): row2 = to_row([('materia__tipo', 12)]) row3 = to_row([('tramitacao__unidade_tramitacao_destino', 12)]) row4 = to_row([('tramitacao__status', 12)]) + row5 = to_row([('materia__autores', 12)]) buttons = FormActions( *[ @@ -1190,7 +1196,7 @@ class RelatorioMateriasTramitacaoFilterSet(django_filters.FilterSet): self.form.helper.form_method = 'GET' self.form.helper.layout = Layout( Fieldset(_('Pesquisa de Matéria em Tramitação'), - row1, row2, row3, row4, + row1, row2, row3, row4,row5, buttons,) ) diff --git a/sapl/base/views.py b/sapl/base/views.py index f6775ea04..bc86b5900 100644 --- a/sapl/base/views.py +++ b/sapl/base/views.py @@ -810,6 +810,7 @@ class RelatorioMateriasTramitacaoView(RelatorioMixin, FilterView): tipo_materia = data['data']['materia__tipo'] unidade_tramitacao_destino = data['data']['tramitacao__unidade_tramitacao_destino'] status_tramitacao = data['data']['tramitacao__status'] + autor = data['data']['materia__autores'] kwargs = {} if ano_materia: @@ -820,8 +821,10 @@ class RelatorioMateriasTramitacaoView(RelatorioMixin, FilterView): kwargs['tramitacao__unidade_tramitacao_destino'] = unidade_tramitacao_destino if status_tramitacao: kwargs['tramitacao__status'] = status_tramitacao + if autor: + kwargs['materia__autores'] = autor + qs = qs.filter(**kwargs) - data['queryset'] = qs self.total_resultados_tipos = num_materias_por_tipo(qs, "materia__tipo") @@ -876,6 +879,14 @@ class RelatorioMateriasTramitacaoView(RelatorioMixin, FilterView): ) else: context['tramitacao__unidade_tramitacao_destino'] = '' + + if self.request.GET['materia__autores']: + autor = self.request.GET['materia__autores'] + context['materia__autor'] = ( + str(Autor.objects.get(id=autor)) + ) + else: + context['materia__autor'] = '' context['filter_url'] = ('&' + qr.urlencode()) if len(qr) > 0 else '' context['show_results'] = show_results_filter_set(qr) diff --git a/sapl/templates/base/RelatorioMateriasPorTramitacao_filter.html b/sapl/templates/base/RelatorioMateriasPorTramitacao_filter.html index a6d3e0362..497b3a53e 100644 --- a/sapl/templates/base/RelatorioMateriasPorTramitacao_filter.html +++ b/sapl/templates/base/RelatorioMateriasPorTramitacao_filter.html @@ -16,7 +16,8 @@  Ano: {{ ano }}
 Tipo de matéria: {{ tipo }}
 Status atual: {{ tramitacao__status }}
-  Local atual: {{ tramitacao__unidade_tramitacao_destino }}


+  Local atual: {{ tramitacao__unidade_tramitacao_destino }}
+  Autor: {{ materia__autor }}


@@ -42,6 +43,7 @@ + @@ -55,6 +57,7 @@ + {% endfor %} diff --git a/sapl/templates/relatorios/relatorio_materias_em_tramitacao.html b/sapl/templates/relatorios/relatorio_materias_em_tramitacao.html index 568bd3fed..d31922354 100644 --- a/sapl/templates/relatorios/relatorio_materias_em_tramitacao.html +++ b/sapl/templates/relatorios/relatorio_materias_em_tramitacao.html @@ -43,6 +43,8 @@
Status:  {{ materia_em_tramitacao.materia.tramitacao_set.last.status }}
+ Autores:  +
{% endif %} {% endfor %}
QUADRO GERAL
Ementa Local Atual StatusAutores
{{ materia_em_tramitacao.materia.ementa }} {{ materia_em_tramitacao.materia.tramitacao_set.last.unidade_tramitacao_destino }} {{ materia_em_tramitacao.materia.tramitacao_set.last.status }}{% for autor in materia_em_tramitacao.materia.autores.all %}

{{autor}}

{% endfor %}