diff --git a/sapl/norma/forms.py b/sapl/norma/forms.py index a7ce41652..d4920ed35 100644 --- a/sapl/norma/forms.py +++ b/sapl/norma/forms.py @@ -92,13 +92,13 @@ class NormaFilterSet(django_filters.FilterSet): return queryset.filter(q) - def filter_vigencia(self, queryset, name, value): + def filter_vigencia(self, queryset, name, data_fim_vigencia): data_atual = timezone.now() - if value: # É vigente - queryset = queryset.filter((Q(data_vigencia__gt=data_atual) or Q(data_vigencia__isnull=True)) and Q(data__lte=data_atual)) - else: - queryset = queryset.filter(Q(data_vigencia__lte=data_atual) or Q(data__gt=data_atual)) - + if data_fim_vigencia: # É vigente + queryset = queryset.filter((Q(data_vigencia__gt=data_atual) | Q(data_vigencia__isnull=True)) & Q(data__lte=data_atual)) + elif data_fim_vigencia == False: + queryset = queryset.filter(Q(data_vigencia__lte=data_atual) | Q(data__gt=data_atual)) + return queryset