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

feat(ui): ajout du filtre UAI (connu ou inconnu) #3278

Merged
merged 4 commits into from
Oct 12, 2023

Conversation

sbenfares
Copy link
Contributor

@sbenfares sbenfares commented Oct 10, 2023

Vu avec @cathbaiona : ajout d'un filtre sur l'UAI connue ou inconnue sur la liste des organismes.

En attente décision produit @cathbaiona @nadinelouchart sur le fait que les admin seulement peuvent voir le filtre.

@sbenfares
Copy link
Contributor Author

Bonus : voir pour trouver un moyen propre de ne pas dupliquer de code en créant un filtreYesNo paramétrable avec des libellés custom.

Copy link
Contributor

@totakoko totakoko left a comment

Choose a reason for hiding this comment

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

👍 J'ai juste détecté une petite erreur quand on fait de la multi-sélection, et j'ai suggéré une amélioration de la fonction de filtre.

if (organismesFilters.etatUAI?.[0] === true) return item.uai;
if (organismesFilters.etatUAI?.[0] === false) return !item.uai;
});
}
Copy link
Contributor

Choose a reason for hiding this comment

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

A priori, on ne gère qu'un seul filtre. Il faudrait que la sélection de tous les filtres soit équivalente à ne rien sélectionner pour rester cohérent avec les autres filtres.

Copy link
Contributor

Choose a reason for hiding this comment

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

Du coup, ça veut dire que chaque organisme doit correspondre à au moins un filtre sur l'UAI.
En regardant de plus près, je me suis rendu compte que le filtre sur transmission avait à peu près la même tronche, mais fonctionne à cause du organismesFilters.transmission?.length === 1, car théoriquement dès que >= 2 params, c'est true + false donc tout donc = aucun filtre.

Mais sinon, y'a moyen de faire qqch qqch comme ça pour avoir un filtre complètement fonctionnel :D (j'ai modifié transmission, mais c'est pareil pour l'UAI) :

  if (organismesFilters.transmission?.length && organismesFilters.transmission?.length > 0)
    filteredOrganismes = filteredOrganismes?.filter((organisme) =>
      organismesFilters.transmission?.some(filter => (!!filter && !!organisme.last_transmission_date) || (!filter && !organisme.last_transmission_date))
    );

Copy link
Contributor Author

@sbenfares sbenfares Oct 10, 2023

Choose a reason for hiding this comment

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

A priori, on ne gère qu'un seul filtre. Il faudrait que la sélection de tous les filtres soit équivalente à ne rien sélectionner pour rester cohérent avec les autres filtres.

C'est le cas normalement et c'est géré il me semble avec cette fonction 🤔

Copy link
Contributor Author

@sbenfares sbenfares Oct 10, 2023

Choose a reason for hiding this comment

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

Du coup, ça veut dire que chaque organisme doit correspondre à au moins un filtre sur l'UAI. En regardant de plus près, je me suis rendu compte que le filtre sur transmission avait à peu près la même tronche, mais fonctionne à cause du organismesFilters.transmission?.length === 1, car théoriquement dès que >= 2 params, c'est true + false donc tout donc = aucun filtre.

Mais sinon, y'a moyen de faire qqch qqch comme ça pour avoir un filtre complètement fonctionnel :D (j'ai modifié transmission, mais c'est pareil pour l'UAI) :

  if (organismesFilters.transmission?.length && organismesFilters.transmission?.length > 0)
    filteredOrganismes = filteredOrganismes?.filter((organisme) =>
      organismesFilters.transmission?.some(filter => (!!filter && !!organisme.last_transmission_date) || (!filter && !organisme.last_transmission_date))
    );

Y'a effectivement une erreur sur la condition organismesFilters.etatUAI?.length qui doit etre === 1.

Après sur le code il y a effectivement une autre façon de l'écrire, ca change la lisibilité et évite le test sur organismesFilters.transmission?.length === 1

@sbenfares sbenfares force-pushed the feature/ajout-filtre-uai branch from 46d7205 to f27fe10 Compare October 12, 2023 07:19
@github-actions
Copy link

🚀 Prévisualisation

https://3278.tdb-preview.apprentissage.beta.gouv.fr/

@sbenfares sbenfares merged commit 22b9fab into master Oct 12, 2023
5 checks passed
@sbenfares sbenfares deleted the feature/ajout-filtre-uai branch October 12, 2023 09:11
@github-actions
Copy link

🎉 This PR is included in version 3.61.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants