Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

amelioration : ETQ instructeur, je souhaite pouvoir filtrer les dossiers sur mon tableau de bord fonction des choix simple/multiple/etc.. sans conflit parmis les autres valeurs de ces même choix simple/multiple/etc... #10866

Merged
merged 6 commits into from
Oct 3, 2024
19 changes: 7 additions & 12 deletions app/models/procedure_presentation.rb
Original file line number Diff line number Diff line change
Expand Up @@ -240,22 +240,17 @@ def filtered_ids(dossiers, statut)
dossiers
.includes(:followers_instructeurs)
.joins('INNER JOIN users instructeurs_users ON instructeurs_users.id = instructeurs.user_id')
.filter_ilike('instructeurs_users', :email, values)
when 'user', 'individual', 'avis'
.filter_ilike('instructeurs_users', :email, values) # ilike OK, user may want to search by *@domain
when 'user', 'individual' # user_columns: [email], individual_columns: ['nom', 'prenom', 'gender']
dossiers
.includes(table)
.filter_ilike(table, column, values)
.filter_ilike(table, column, values) # ilike or where column == 'value' are both valid, we opted for ilike
when 'groupe_instructeur'
assert_supported_column(table, column)
if column == 'label'
dossiers
.joins(:groupe_instructeur)
.filter_ilike(table, column, values)
Comment on lines -250 to -253
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

la j'ai l'impression que tu supprimes la possibilité de filtrer par nom du groupe d'instructeur. C'est fait expres ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

C'est du code mort, confère : https://github.com/demarches-simplifiees/demarches-simplifiees.fr/blob/main/app/models/concerns/columns_concern.rb#L55

Désormais on ne filtre pas sur le label d'un groupe d'instrcuteur (à la ilike), mais par énum

else
dossiers
.joins(:groupe_instructeur)
.where(groupe_instructeur_id: values)
end

dossiers
.joins(:groupe_instructeur)
.where(groupe_instructeur_id: values)
end.pluck(:id)
end
end.reduce(:&)
Expand Down