|
|
|
@ -58,6 +58,8 @@ class NormaFilterSet(django_filters.FilterSet): |
|
|
|
assuntos = django_filters.ModelChoiceFilter( |
|
|
|
queryset=AssuntoNorma.objects.all()) |
|
|
|
|
|
|
|
vigencia = django_filters.BooleanFilter(label='Vigência',method='filter_vigencia') |
|
|
|
|
|
|
|
o = NormaPesquisaOrderingFilter(help_text='') |
|
|
|
|
|
|
|
class Meta(FilterOverridesMetaMixin): |
|
|
|
@ -71,7 +73,7 @@ class NormaFilterSet(django_filters.FilterSet): |
|
|
|
row1 = to_row([('tipo', 4), ('numero', 4), ('ano', 4)]) |
|
|
|
row2 = to_row([('ementa', 6), ('assuntos', 6)]) |
|
|
|
row3 = to_row([('data', 6), ('data_publicacao', 6)]) |
|
|
|
row4 = to_row([('data_vigencia', 12)]) |
|
|
|
row4 = to_row([('data_vigencia', 10),('vigencia',2)]) |
|
|
|
row5 = to_row([('o', 4), ('indexacao', 4), ('apelido', 4)]) |
|
|
|
|
|
|
|
self.form.helper = SaplFormHelper() |
|
|
|
@ -89,6 +91,16 @@ class NormaFilterSet(django_filters.FilterSet): |
|
|
|
q &= Q(ementa__icontains=t) |
|
|
|
|
|
|
|
return queryset.filter(q) |
|
|
|
|
|
|
|
def filter_vigencia(self, queryset, name, value): |
|
|
|
data_atual = timezone.now() |
|
|
|
if value: |
|
|
|
queryset = queryset.filter(Q(data_vigencia__lt=data_atual) | Q(data_vigencia__isnull=True)) |
|
|
|
else: |
|
|
|
queryset = queryset.filter(data_vigencia__gt=data_atual) |
|
|
|
|
|
|
|
return queryset |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class NormaJuridicaForm(FileFieldCheckMixin, ModelForm): |
|
|
|
|