From 600f49a0ff8a386ab47baa975678fea2a1455020 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Wed, 3 Mar 2021 18:21:00 +0100 Subject: [PATCH] Hide groupe instructeur selector when routage is done via API --- app/models/dossier.rb | 12 ++++++++++++ app/views/shared/dossiers/_champs.html.haml | 2 +- app/views/shared/dossiers/_edit.html.haml | 2 +- config/initializers/flipper.rb | 1 + 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/app/models/dossier.rb b/app/models/dossier.rb index d4dd49e37..4796b18f0 100644 --- a/app/models/dossier.rb +++ b/app/models/dossier.rb @@ -418,6 +418,14 @@ class Dossier < ApplicationRecord Dossier.en_construction_close_to_expiration.where(id: self).present? end + def show_groupe_instructeur_details? + procedure.routee? && (!procedure.feature_enabled?(:procedure_routage_api) || !defaut_groupe_instructeur?) + end + + def show_groupe_instructeur_selector? + procedure.routee? && !procedure.feature_enabled?(:procedure_routage_api) + end + def assign_to_groupe_instructeur(groupe_instructeur, author = nil) if groupe_instructeur.procedure == procedure && groupe_instructeur != self.groupe_instructeur if update(groupe_instructeur: groupe_instructeur, groupe_instructeur_updated_at: Time.zone.now) @@ -832,6 +840,10 @@ class Dossier < ApplicationRecord private + def defaut_groupe_instructeur? + groupe_instructeur == procedure.defaut_groupe_instructeur + end + def geo_areas champs.includes(:geo_areas).flat_map(&:geo_areas) + champs_private.includes(:geo_areas).flat_map(&:geo_areas) end diff --git a/app/views/shared/dossiers/_champs.html.haml b/app/views/shared/dossiers/_champs.html.haml index 381d389e6..11e0bbd37 100644 --- a/app/views/shared/dossiers/_champs.html.haml +++ b/app/views/shared/dossiers/_champs.html.haml @@ -1,6 +1,6 @@ %table.table.vertical.dossier-champs %tbody - - if dossier.procedure.routee? + - if dossier.show_groupe_instructeur_details? %th= dossier.procedure.routing_criteria_name %td{ class: highlight_if_unseen_class(demande_seen_at, dossier.groupe_instructeur_updated_at) }= dossier.groupe_instructeur.label %td.updated-at diff --git a/app/views/shared/dossiers/_edit.html.haml b/app/views/shared/dossiers/_edit.html.haml index 67e21b38a..290d91e6f 100644 --- a/app/views/shared/dossiers/_edit.html.haml +++ b/app/views/shared/dossiers/_edit.html.haml @@ -30,7 +30,7 @@ %hr - - if dossier.procedure.routee? + - if dossier.show_groupe_instructeur_selector? = f.label :groupe_instructeur_id do = dossier.procedure.routing_criteria_name %span.mandatory * diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb index 83b661626..cb1d72894 100644 --- a/config/initializers/flipper.rb +++ b/config/initializers/flipper.rb @@ -38,6 +38,7 @@ features = [ :maintenance_mode, :make_experts_notifiable, :mini_profiler, + :procedure_routage_api, :xray ]