From b14a70abf7c0364ec68794d8e7d5f7e08408fb8a Mon Sep 17 00:00:00 2001 From: Colin Darie Date: Mon, 27 Mar 2023 19:11:22 +0200 Subject: [PATCH] feat(instructeur): filter dossiers "en attente" --- app/models/procedure_presentation.rb | 8 +++++++- config/locales/views/instructeurs/fr.yml | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/models/procedure_presentation.rb b/app/models/procedure_presentation.rb index 194ef1519..b86606dbf 100644 --- a/app/models/procedure_presentation.rb +++ b/app/models/procedure_presentation.rb @@ -183,6 +183,8 @@ class ProcedurePresentation < ApplicationRecord .filter_map { |v| Time.zone.parse(v).beginning_of_day rescue nil } dossiers.filter_by_datetimes(column, dates) + elsif field['column'] == "state" && values.include?("pending_correction") + dossiers.joins(:resolutions).where(resolutions: DossierResolution.pending) else dossiers.where("dossiers.#{column} IN (?)", values) end @@ -245,7 +247,11 @@ class ProcedurePresentation < ApplicationRecord if [TYPE_DE_CHAMP, TYPE_DE_CHAMP_PRIVATE].include?(filter[TABLE]) find_type_de_champ(filter[COLUMN]).dynamic_type.filter_to_human(filter['value']) elsif filter['column'] == 'state' - Dossier.human_attribute_name("state.#{filter['value']}") + if filter['value'] == 'pending_correction' + Dossier.human_attribute_name("pending_correction.for_instructeur") + else + Dossier.human_attribute_name("state.#{filter['value']}") + end elsif filter['table'] == 'groupe_instructeur' && filter['column'] == 'id' instructeur.groupe_instructeurs .find { _1.id == filter['value'].to_i }&.label || filter['value'] diff --git a/config/locales/views/instructeurs/fr.yml b/config/locales/views/instructeurs/fr.yml index 372c9107b..9afb2b1ca 100644 --- a/config/locales/views/instructeurs/fr.yml +++ b/config/locales/views/instructeurs/fr.yml @@ -19,6 +19,7 @@ fr: classe_sans_suite: Le %{processed_at}, %{email} a classé ce dossier sans suite filterable_state: en_construction: "En construction" + pending_correction: "En attente" en_instruction: "En instruction" accepte: "Accepté" refuse: "Refusé"