# trip
1. Migrer l'action "getAuthorizedCode" (Appelé dans HttpTransport) afin de renvoyer la liste de code commune du territoire avec les fonctions sql suivantes :
- territory.get_com_by_territory_id
- geo.get_latest_millesime
Attention au typage de authorizedCode
2h
2. Modifier les Params des fonction du service trip qui utilise encore territory_id afin qu'elles utilisent territoryGroupSelector :
```javascript=
const selector = {
com: ['', ''],
epci: ['', ''],
}
```
2h
3. Modifier le middleware ScopeToGroupMiddleware pour chercher la liste des codes communes des selecteurs envoyés et faire un filtre avec authorizedCode (voir 1)
4h
4. Mettre à jour les providers SQL pour utiliser les code communes au lieu des territory_id comme selecteurs géographique (journey_start_insee)
4h
5. Mettre à jour le front pour qu'il envoie les bons paramètres :)
4h
6. BONUS : excluded_start :rocket:
Les requêtes sql de la :skull_and_crossbones:
```sql=
with data as (select oo.name, ci.uuid, to_char(cc.datetime, 'YYYY-MM-DD'), count(*) from carpool.carpools as cc join carpool.identities as ci on ci._id = cc.identity_id join operator.operators as oo on oo._id = cc.operator_id where cc.datetime >= '2022-05-01'::timestamp and operator_id <> 14 group by oo.name, ci.uuid, to_char(cc.datetime, 'YYYY-MM-DD')) select distinct uuid, count(*), sum(count), avg(count) from data where count > 2 group by uuid order by avg(count) desc;```