Browse Source

fix #2430 (#2431)

* fix #2430

* Corrige pep8

* minor fix
pull/2179/head
Victor Fabre 6 years ago
committed by Edward
parent
commit
baf2bbd898
  1. 2
      requirements/requirements.txt
  2. 24
      sapl/api/forms.py
  3. 65
      sapl/base/forms.py
  4. 52
      sapl/materia/forms.py
  5. 13
      sapl/norma/forms.py
  6. 26
      sapl/protocoloadm/forms.py

2
requirements/requirements.txt

@ -9,7 +9,7 @@ django-compressor==2.0
django-crispy-forms==1.6.1 django-crispy-forms==1.6.1
django-extensions==1.9.8 django-extensions==1.9.8
django-extra-views==0.11.0 django-extra-views==0.11.0
django-filter==0.15.3 django-filter==1.0.0
django-floppyforms==1.6.2 django-floppyforms==1.6.2
django-model-utils==3.1.1 django-model-utils==3.1.1
django-sass-processor==0.5.8 django-sass-processor==0.5.8

24
sapl/api/forms.py

@ -5,9 +5,8 @@ from django.forms.fields import CharField, MultiValueField
from django.forms.widgets import MultiWidget, TextInput from django.forms.widgets import MultiWidget, TextInput
from django.utils import timezone from django.utils import timezone
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django_filters.filters import DateFilter, MethodFilter, ModelChoiceFilter from django_filters.filters import CharFilter, ModelChoiceFilter, DateFilter
from rest_framework import serializers from rest_framework import serializers
from rest_framework.compat import django_filters
from rest_framework.filters import FilterSet from rest_framework.filters import FilterSet
from sapl.base.models import Autor, TipoAutor from sapl.base.models import Autor, TipoAutor
@ -16,9 +15,9 @@ from sapl.utils import generic_relations_for_model
class SaplGenericRelationSearchFilterSet(FilterSet): class SaplGenericRelationSearchFilterSet(FilterSet):
q = MethodFilter() q = CharFilter(method='filter_q')
def filter_q(self, queryset, value): def filter_q(self, queryset, name, value):
query = value.split(' ') query = value.split(' ')
if query: if query:
@ -87,12 +86,12 @@ class SearchForFieldField(MultiValueField):
return None return None
class SearchForFieldFilter(django_filters.filters.MethodFilter): class SearchForFieldFilter(CharFilter):
field_class = SearchForFieldField field_class = SearchForFieldField
class AutorChoiceFilterSet(SaplGenericRelationSearchFilterSet): class AutorChoiceFilterSet(SaplGenericRelationSearchFilterSet):
q = MethodFilter() q = CharFilter(method='filter_q')
tipo = ModelChoiceFilter(queryset=TipoAutor.objects.all()) tipo = ModelChoiceFilter(queryset=TipoAutor.objects.all())
class Meta: class Meta:
@ -101,18 +100,18 @@ class AutorChoiceFilterSet(SaplGenericRelationSearchFilterSet):
'tipo', 'tipo',
'nome', ] 'nome', ]
def filter_q(self, queryset, value): def filter_q(self, queryset, name,value):
return SaplGenericRelationSearchFilterSet.filter_q( return SaplGenericRelationSearchFilterSet.filter_q(
self, queryset, value).distinct('nome').order_by('nome') self, queryset, value).distinct('nome').order_by('nome')
class AutorSearchForFieldFilterSet(AutorChoiceFilterSet): class AutorSearchForFieldFilterSet(AutorChoiceFilterSet):
q = SearchForFieldFilter() q = SearchForFieldFilter(method='filter_q')
class Meta(AutorChoiceFilterSet.Meta): class Meta(AutorChoiceFilterSet.Meta):
pass pass
def filter_q(self, queryset, value): def filter_q(self, queryset, name, value):
value[0] = value[0].split(',') value[0] = value[0].split(',')
value[1] = value[1].split(',') value[1] = value[1].split(',')
@ -128,7 +127,7 @@ class AutorSearchForFieldFilterSet(AutorChoiceFilterSet):
class AutoresPossiveisFilterSet(FilterSet): class AutoresPossiveisFilterSet(FilterSet):
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
data_relativa = DateFilter(method='filter_data_relativa') data_relativa = DateFilter(method='filter_data_relativa')
tipo = MethodFilter() tipo = CharFilter(method='filter_tipo')
class Meta: class Meta:
model = Autor model = Autor
@ -137,10 +136,11 @@ class AutoresPossiveisFilterSet(FilterSet):
def filter_data_relativa(self, queryset, name, value): def filter_data_relativa(self, queryset, name, value):
return queryset return queryset
def filter_tipo(self, queryset, value): def filter_tipo(self, queryset, name, value):
try: try:
self.logger.debug("Tentando obter TipoAutor correspondente à pk {}.".format(value)) self.logger.debug(
"Tentando obter TipoAutor correspondente à pk {}.".format(value))
tipo = TipoAutor.objects.get(pk=value) tipo = TipoAutor.objects.get(pk=value)
except: except:
self.logger.error("TipoAutor(pk={}) inexistente.".format(value)) self.logger.error("TipoAutor(pk={}) inexistente.".format(value))

65
sapl/base/forms.py

@ -655,14 +655,13 @@ class AutorFormForAdmin(AutorForm):
class RelatorioAtasFilterSet(django_filters.FilterSet): class RelatorioAtasFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = SessaoPlenaria model = SessaoPlenaria
fields = ['data_inicio'] fields = ['data_inicio']
@ -768,14 +767,13 @@ class RelatorioNormasVigenciaFilterSet(django_filters.FilterSet):
class RelatorioPresencaSessaoFilterSet(django_filters.FilterSet): class RelatorioPresencaSessaoFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = SessaoPlenaria model = SessaoPlenaria
fields = ['data_inicio'] fields = ['data_inicio']
@ -802,19 +800,18 @@ class RelatorioPresencaSessaoFilterSet(django_filters.FilterSet):
class RelatorioHistoricoTramitacaoFilterSet(django_filters.FilterSet): class RelatorioHistoricoTramitacaoFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
@property @property
def qs(self): def qs(self):
parent = super(RelatorioHistoricoTramitacaoFilterSet, self).qs parent = super(RelatorioHistoricoTramitacaoFilterSet, self).qs
return parent.distinct().prefetch_related('tipo').order_by('-ano', 'tipo', 'numero') return parent.distinct().prefetch_related('tipo').order_by('-ano', 'tipo', 'numero')
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'tramitacao__unidade_tramitacao_local', fields = ['tipo', 'tramitacao__unidade_tramitacao_local',
'tramitacao__status', 'tramitacao__data_tramitacao'] 'tramitacao__status', 'tramitacao__data_tramitacao']
@ -842,19 +839,18 @@ class RelatorioHistoricoTramitacaoFilterSet(django_filters.FilterSet):
class RelatorioDataFimPrazoTramitacaoFilterSet(django_filters.FilterSet): class RelatorioDataFimPrazoTramitacaoFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
@property @property
def qs(self): def qs(self):
parent = super(RelatorioDataFimPrazoTramitacaoFilterSet, self).qs parent = super(RelatorioDataFimPrazoTramitacaoFilterSet, self).qs
return parent.distinct().prefetch_related('tipo').order_by('-ano', 'tipo', 'numero') return parent.distinct().prefetch_related('tipo').order_by('-ano', 'tipo', 'numero')
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'tramitacao__unidade_tramitacao_local', fields = ['tipo', 'tramitacao__unidade_tramitacao_local',
'tramitacao__status', 'tramitacao__data_fim_prazo'] 'tramitacao__status', 'tramitacao__data_fim_prazo']
@ -1014,13 +1010,6 @@ class RelatorioMateriasPorAnoAutorTipoFilterSet(django_filters.FilterSet):
class RelatorioMateriasPorAutorFilterSet(django_filters.FilterSet): class RelatorioMateriasPorAutorFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
autoria__autor = django_filters.CharFilter(widget=forms.HiddenInput()) autoria__autor = django_filters.CharFilter(widget=forms.HiddenInput())
@property @property
@ -1030,6 +1019,12 @@ class RelatorioMateriasPorAutorFilterSet(django_filters.FilterSet):
.order_by('autoria__autor', '-autoria__primeiro_autor', 'tipo', '-ano', '-numero') .order_by('autoria__autor', '-autoria__primeiro_autor', 'tipo', '-ano', '-numero')
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'data_apresentacao'] fields = ['tipo', 'data_apresentacao']

52
sapl/materia/forms.py

@ -757,13 +757,6 @@ class AnexadaForm(ModelForm):
class MateriaLegislativaFilterSet(django_filters.FilterSet): class MateriaLegislativaFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial Final')),
'widget': RangeWidgetOverride}
}}
ano = django_filters.ChoiceFilter(required=False, ano = django_filters.ChoiceFilter(required=False,
label='Ano da Matéria', label='Ano da Matéria',
choices=ANO_CHOICES) choices=ANO_CHOICES)
@ -794,6 +787,12 @@ class MateriaLegislativaFilterSet(django_filters.FilterSet):
o = MateriaPesquisaOrderingFilter() o = MateriaPesquisaOrderingFilter()
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['numero', fields = ['numero',
'numero_protocolo', 'numero_protocolo',
@ -1032,14 +1031,13 @@ class AutoriaMultiCreateForm(Form):
class AcessorioEmLoteFilterSet(django_filters.FilterSet): class AcessorioEmLoteFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'data_apresentacao'] fields = ['tipo', 'data_apresentacao']
@ -1063,14 +1061,13 @@ class AcessorioEmLoteFilterSet(django_filters.FilterSet):
class PrimeiraTramitacaoEmLoteFilterSet(django_filters.FilterSet): class PrimeiraTramitacaoEmLoteFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'data_apresentacao'] fields = ['tipo', 'data_apresentacao']
@ -1095,14 +1092,13 @@ class PrimeiraTramitacaoEmLoteFilterSet(django_filters.FilterSet):
class TramitacaoEmLoteFilterSet(django_filters.FilterSet): class TramitacaoEmLoteFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = MateriaLegislativa model = MateriaLegislativa
fields = ['tipo', 'data_apresentacao', 'tramitacao__status', fields = ['tipo', 'data_apresentacao', 'tramitacao__status',
'tramitacao__unidade_tramitacao_destino'] 'tramitacao__unidade_tramitacao_destino']

13
sapl/norma/forms.py

@ -41,13 +41,6 @@ ORDENACAO_CHOICES = [('', '---------'),
class NormaFilterSet(django_filters.FilterSet): class NormaFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
ano = django_filters.ChoiceFilter(required=False, ano = django_filters.ChoiceFilter(required=False,
label='Ano', label='Ano',
choices=ANO_CHOICES) choices=ANO_CHOICES)
@ -63,6 +56,12 @@ class NormaFilterSet(django_filters.FilterSet):
o = NormaPesquisaOrderingFilter() o = NormaPesquisaOrderingFilter()
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': '%s (%s)' % (f.verbose_name, _('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = NormaJuridica model = NormaJuridica
fields = ['tipo', 'numero', 'ano', 'data', 'data_vigencia', fields = ['tipo', 'numero', 'ano', 'data', 'data_vigencia',
'data_publicacao', 'ementa', 'assuntos'] 'data_publicacao', 'ementa', 'assuntos']

26
sapl/protocoloadm/forms.py

@ -66,13 +66,6 @@ class AcompanhamentoDocumentoForm(ModelForm):
class ProtocoloFilterSet(django_filters.FilterSet): class ProtocoloFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateTimeField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': 'Data (%s)' % (_('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
ano = django_filters.ChoiceFilter(required=False, ano = django_filters.ChoiceFilter(required=False,
label='Ano', label='Ano',
choices=ANO_CHOICES) choices=ANO_CHOICES)
@ -99,6 +92,12 @@ class ProtocoloFilterSet(django_filters.FilterSet):
o = AnoNumeroOrderingFilter() o = AnoNumeroOrderingFilter()
class Meta: class Meta:
filter_overrides = {models.DateTimeField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': 'Data (%s)' % (_('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = Protocolo model = Protocolo
fields = ['numero', fields = ['numero',
'tipo_documento', 'tipo_documento',
@ -154,13 +153,6 @@ class ProtocoloFilterSet(django_filters.FilterSet):
class DocumentoAdministrativoFilterSet(django_filters.FilterSet): class DocumentoAdministrativoFilterSet(django_filters.FilterSet):
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': 'Data (%s)' % (_('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
ano = django_filters.ChoiceFilter(required=False, ano = django_filters.ChoiceFilter(required=False,
label='Ano', label='Ano',
choices=ANO_CHOICES) choices=ANO_CHOICES)
@ -176,6 +168,12 @@ class DocumentoAdministrativoFilterSet(django_filters.FilterSet):
o = AnoNumeroOrderingFilter() o = AnoNumeroOrderingFilter()
class Meta: class Meta:
filter_overrides = {models.DateField: {
'filter_class': django_filters.DateFromToRangeFilter,
'extra': lambda f: {
'label': 'Data (%s)' % (_('Inicial - Final')),
'widget': RangeWidgetOverride}
}}
model = DocumentoAdministrativo model = DocumentoAdministrativo
fields = ['tipo', fields = ['tipo',
'numero', 'numero',

Loading…
Cancel
Save