Skip to content

Agent level Sector Attributions : Migration + Admin UI + Search

Created by: adipasquale

https://trello.com/c/ah4YO3LK/1109-secto-support-des-r%C3%A8gles-de-niveau-agent

followup to #919 rebased on master

Migration de la DB

image

Screencast

Nouvelle Page séparée pour la création d'une SectorAttribution

sect

Ce formulaire est relativement interactif et force la page à se recharger au changement de certains paramètres pour limiter la quantité de JS à écrire. Le but est de donner des indications contextualisées à la personne qui configure le formulaire : pourquoi certaines orgas ou agents ne sont pas disponibles etc.

Détails techniques

  • j'ai refacto et complexifié le service SectoriseAddressService. Il est maintenant responsable de renvoyer les motifs et services disponibles en plus des agents et orgas attribuées
  • Le code pour trouver les motifs disponibles a la recherche est pas mal complexifié par l'introduction de cette fonctionnalité. Il faut joindre les plages d'ouvertures des agents des orgas entières attribués + des agents individuellement attribués. Je l'ai fait avec des requêtes ActiveRecord (AREL) groupées par des .or
  • j'ai transformé ce service avec une signature #perform unique en un PORO (Plain Old Ruby Object) Users::GeolocalisedSearch avec plusieurs methodes publiques #matching_zones, #available_motifs etc. Je ne trouvais pas de maniere coherente de le faire en Service classique. J'ai mis ce nouvel objet un peu unique dans un repertoire /app/service_models , tres tres discutable.

Merge request reports