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

On affiche l’aide au RDV de suivi que si nécessaire #4918

Conversation

AntoineGirard
Copy link
Member

@AntoineGirard AntoineGirard commented Dec 19, 2024

Review app

Contexte

Dans le parcours de prise de RDV, nous avons un bandeau qui incite les usagers qui souhaitent prendre un RDV de suivi avec leur agent référent à se connecter.

Ce bandeau ne concerne que :

  • 3,5% des RDV sur RDVS
  • 0% des RDV sur RDVSP

L’idée est donc d’afficher le bandeau que si on est dans un contexte dans lequel il peut potentiellement y avoir un RDV de suivi.

Solution

  • On regarde si dans la liste des services du contexte courant, il y a des motifs de prise de RDV de suivi.
  • S'il y a au moins un motif de RDV de suivi (non archivé), on affiche le bandeau d’aide à la connexion.

Conséquence :

  • nous n’affichons plus le bandeau sur RDVSP
  • nous affichons le bandeau que pour 33/113 territoires

@AntoineGirard AntoineGirard force-pushed the agd/feat-display-follow-up-motifs-sign-in-only-if-necessary branch 2 times, most recently from eae3ec8 to cebe0e4 Compare December 19, 2024 10:24
@NesserineZarouri
Copy link
Contributor

🔥🔥🔥

Copy link
Contributor

@adipasquale adipasquale left a comment

Choose a reason for hiding this comment

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

🙇 super cette PR, merci Antoine ! Trop bien d’avoir calculé les stats, c’est très clair et ça va simplifier l’UX pour la vaste majorité des gens.

Je n’ai pas testé mais je suis confiant

J’ai noté des micro commentaires absolument pas bloquants.

app/services/concerns/users/creneaux_wizard_concern.rb Outdated Show resolved Hide resolved
app/views/search/_referent_booking_card.html.slim Outdated Show resolved Hide resolved
spec/requests/prendre_rdv_spec.rb Outdated Show resolved Hide resolved
@AntoineGirard AntoineGirard force-pushed the agd/feat-display-follow-up-motifs-sign-in-only-if-necessary branch from cebe0e4 to 9880d17 Compare December 19, 2024 14:53
Copy link
Contributor

@victormours victormours left a comment

Choose a reason for hiding this comment

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

Trop bien ! C'est un très bon pattern de ne pas afficher ce bout d'interface s'il n'est pas nécessaire, et c'est top d'avoir sorti les chiffres pour mieux comprendre le besoin. Je pense qu'on peut restreindre encore plus le scope, mais c'est pas bloquant pour merger.

@@ -64,6 +64,10 @@ def services
@services ||= matching_motifs.includes(:service).map(&:service).uniq.sort_by(&:name)
end

def follow_up_motifs?
@follow_up_motifs ||= Motif.where(service: services).exists?(follow_up: true, deleted_at: nil)
Copy link
Contributor

Choose a reason for hiding this comment

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

👍 C'est intéressant d'utiliser Motif.where(service: services) plutôt que matching_motifs. On pourrait même restreindre un peu plus en ajoutant where.not(bookable_by: :agents) et en filtrant sur le territoire (plusieurs territoires peuvent utiliser le même service)

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, j'avais hésité à pousser un peu + loin avec cette histoire de bookable_by et je me disais qu’en première étape, c'était déjà pas mal, mais vu ton retour, je vais peut-être pousser un peu plus :)

it "shows a hint to help find a rdv with a referent agent in case the user is looking for follow_up motifs" do
get root_path(departement: "75", city_code: "75056", latitude: "48.859", longitude: "2.347", address: "Paris 75001")
expect(response.body).to include("Pour prendre un RDV de suivi avec un de vos agents référent")
context "when territory has no follow up motifs" do
Copy link
Contributor

Choose a reason for hiding this comment

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

ce contexte est un peu inexact : c'est le service qui n'a pas de motif de follow up. Avec l'implémentation actuelle, si le territoire n'a pas de motifs de follow_up pour ce service mais qu'un autre territoire en a un, on affichera l'invitation à se connecter

Copy link
Member Author

Choose a reason for hiding this comment

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

Effectivement, je vais réécrire le contexte pour que ça soit un peu + exacte

@AntoineGirard AntoineGirard force-pushed the agd/feat-display-follow-up-motifs-sign-in-only-if-necessary branch from ce571ff to c5c13a7 Compare December 23, 2024 16:21
@AntoineGirard AntoineGirard force-pushed the agd/feat-display-follow-up-motifs-sign-in-only-if-necessary branch from c5c13a7 to 3129a96 Compare December 26, 2024 14:21
@AntoineGirard AntoineGirard merged commit 6f2c691 into production Dec 26, 2024
15 checks passed
@AntoineGirard AntoineGirard deleted the agd/feat-display-follow-up-motifs-sign-in-only-if-necessary branch December 26, 2024 14:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

4 participants