[Indicateurs] - Mise en place d'indicateurs pour le projet statham
## Contexte Lié à [<span dir="">\#</span>359](https://forge.grandlyon.com/web-et-numerique/factory/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/-/issues/359) Pour aider le PO dans l'analyse de son service, il est demandé de sortir un maximum d'informations d'usage de resin. Pour ce faire, Jeremy de data pourra s'appuyer sur les données de navigation présentes dans matomo, ainsi que d'indicateurs métiers développés à l'occasion et exposé par resin. ## Développement ### Données utilisateurs * [x] Endpoint avec la volumétrie des utilisateurs enregistrés dans res'in * [x] Endpoint permettant de requêter les utilisateurs s'étant connectés sur une période de temps donnée (voir si c'est réalisable grâce à un nouveau field dans l'objet user -\> lastLoginDate ?) ### Données structures * [x] Endpoint exposant les structures de resin ### Données orientation * [x] Endpoint pour exposer les orientations > créer un objet commun pour toutes les orientations comprenant les informations suivantes : - La structure qui oriente (nom, commune, adresse...) - Quel type d'orientation (Matériel, Achat, Démarche en ligne, Compétences) - Sous type d'orientation (CAF, Ordinateur...) - Type d'accompagnement (médiation à distance ou contact sur place dans la structure) - Vers où elle oriente - Parcours connecté ou anonyme - Si possible orientation non terminées (stockée à partir du moment où 1 des 4 types d'orientation a été selectionné) * [x] Enlever les champs updated_at autogénérés par Mongoose * [x] Ajouter la fonction du prescripteur si on l'a ## Review 1. Faire plusieurs orientations, en étant connecté/déconnecté, en allant jusqu'au bout, en quittant en plein milieu. 2. **Retrieve all indicators**: * Sans params -\> `GET `[`http://localhost:3000/api/indicator/orientation`](http://localhost:3000/api/indicator/orientation) * Avec pagination -\> `GET `[`http://localhost:3000/api/indicator/orientation?limit=10&skip=0`](http://localhost:3000/api/indicator/orientation?limit=10&skip=0) * Retrieve the next 10 indicators : `GET `[`http://localhost:3000/api/indicator/orientation?limit=10&skip=10`](http://localhost:3000/api/indicator/orientation?limit=10&skip=10) * Filtre sur date après le **`2023-08-01`** * `GET `[`http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z`](http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z) * Entre deux dates **`2023-08-01`** and **`2023-08-15`** * `GET `[`http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z&endDate=2023-08-15T23:59:59.999Z`](http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z&endDate=2023-08-15T23:59:59.999Z) * Combinaison -\> Retrieve the first 5 indicators created after **`2023-08-01`**: * `GET `[`http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z&limit=5&skip=0`](http://localhost:3000/api/indicator/orientation?startDate=2023-08-01T00:00:00.000Z&limit=5&skip=0) 3. **Users**: * Sans params -\> `GET `[`http://localhost:3000/api/indicator/users`](http://localhost:3000/api/indicator/users) * Filtre sur date -\> `GET `[`http://localhost:3000/api/indicator/users?startDate=2023-08-01T00:00:00.000Z`](http://localhost:3000/api/indicator/users?startDate=2023-08-01T00:00:00.000Z)
issue