add from_depose_at filter

This commit is contained in:
Lisa Durand 2023-05-02 10:32:38 +02:00
parent 21ed6abcad
commit 24eca40f66
4 changed files with 30 additions and 5 deletions

View file

@ -16,6 +16,11 @@
= f.label 'from_created_at_date', 'Dossier créé depuis le', class: 'fr-label'
= f.date_field 'from_created_at_date', value: @filter.from_created_at_date, class: 'fr-input'
.fr-col-12.fr-col-md-3
.fr-input-group
= f.label 'from_depose_at_date', 'Dossier déposé depuis le', class: 'fr-label'
= f.date_field 'from_depose_at_date', value: @filter.from_depose_at_date, class: 'fr-input'
.fr-mb-2w
= f.submit 'Appliquer les filtres', class: 'fr-btn fr-btn--sm'
= link_to 'Réinitialiser les filtres', dossiers_path(statut: @statut), class: 'fr-btn fr-btn--sm fr-btn--tertiary-no-outline'

View file

@ -61,6 +61,7 @@ module Users
dossiers_result = dossiers
dossiers_result = dossiers_result.where(state: filter.states) if filter.states.present?
dossiers_result = dossiers_result.where('created_at >= ?', filter.from_created_at_date) if filter.from_created_at_date.present?
dossiers_result = dossiers_result.where('depose_at >= ?', filter.from_depose_at_date) if filter.from_depose_at_date.present?
dossiers_result
end

View file

@ -5,11 +5,11 @@ class DossiersFilter
def initialize(user, params)
@user = user
@params = params.permit(:page, :from_created_at_date, states: [])
@params = params.permit(:page, :from_created_at_date, :from_depose_at_date, states: [])
end
def filter_params
params[:from_created_at_date].presence || params[:states].presence
params[:from_created_at_date].presence || params[:from_depose_at_date].presence || params[:states].presence
end
def states
@ -27,4 +27,12 @@ class DossiersFilter
rescue Date::Error
nil
end
def from_depose_at_date
return if params[:from_depose_at_date].blank?
Date.parse(params[:from_depose_at_date])
rescue Date::Error
nil
end
end