-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
EPT integration with structure similar to EPCI
- Loading branch information
Showing
5 changed files
with
71 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,6 +7,7 @@ Données concernant le découpage administratif français, au format JSON. | |
- Départements | ||
- Régions | ||
- EPCI (à fiscalité propre) | ||
- EPT (Etablissements Publics Territoriaux), sans fiscalité propre (disponible depuis 2023) | ||
|
||
## Installation | ||
|
||
|
@@ -28,6 +29,7 @@ const departements = require('@etalab/decoupage-administratif/data/departements. | |
const regions = require('@etalab/decoupage-administratif/data/regions.json') | ||
const arrondissements = require('@etalab/decoupage-administratif/data/arrondissements.json') | ||
const epci = require('@etalab/decoupage-administratif/data/epci.json') | ||
const ept = require('@etalab/decoupage-administratif/data/ept.json') | ||
``` | ||
|
||
### via des URLs | ||
|
@@ -39,6 +41,7 @@ Pour la dernière version | |
- Régions https://unpkg.com/@etalab/decoupage-administratif/data/regions.json | ||
- Arrondissements https://unpkg.com/@etalab/decoupage-administratif/data/arrondissements.json | ||
- EPCI https://unpkg.com/@etalab/decoupage-administratif/data/epci.json | ||
- EPT https://unpkg.com/@etalab/decoupage-administratif/data/ept.json | ||
|
||
Il est possible de rajouter une version. Pour les EPCI 2021, par exemple https://unpkg.com/@etalab/[email protected]/data/epci.json (voir le lien millésime et version de packages) | ||
|
||
|
@@ -48,6 +51,7 @@ Vous avez besoin de données selon une année? Voici un tableau récapitulatif p | |
|
||
| Année | Version du package | NPM | Yarn | | ||
|-------|-------------------------------------------|---------------------------------------------------|----------------------------------------------------| | ||
| 2023 | 3.0.0 | `npm install @etalab/[email protected]` | `yarn install @etalab/[email protected]` | | ||
| 2022 | 2.3.1 | `npm install @etalab/[email protected]` | `yarn install @etalab/[email protected]` | | ||
| 2021 | 1.1.1 | `npm install @etalab/[email protected]` | `yarn install @etalab/[email protected]` | | ||
| 2020 | Non disponible, sauf EPCI 2020 avec 0.8.0 | `npm install @etalab/[email protected]` | `yarn install @etalab/[email protected]` | | ||
|
@@ -57,6 +61,7 @@ Vous avez besoin de données selon une année? Voici un tableau récapitulatif p | |
|
||
* [Code Officiel Géographique](https://insee.fr/fr/information/2560452) de l'INSEE | ||
* [Liste des EPCI à fiscalité propre](https://www.collectivites-locales.gouv.fr/institutions/liste-et-composition-des-epci-fiscalite-propre) de la DGCL ([url exacte](https://www.collectivites-locales.gouv.fr/files/Accueil/DESL/2023/epcicom2023.xlsx)) | ||
* [Liste des EPT (Etablissements Publics Territoriaux)](https://www.insee.fr/fr/information/2510634) avec [l'url exacte du fichier](https://www.insee.fr/fr/statistiques/fichier/2510634/ept_au_01-01-2023.xlsx) | ||
* [Population légale](https://www.insee.fr/fr/statistiques/6683035?sommaire=6683037) de l'INSEE + [population Mayotte INSEE 2017](https://www.insee.fr/fr/statistiques/3291775?sommaire=2120838) + [population COM](https://www.insee.fr/fr/statistiques/6683025?sommaire=6683037) | ||
* [Liste des codes postaux](https://www.data.gouv.fr/fr/datasets/base-officielle-des-codes-postaux/) issue des données La Poste. Antérieurement, sous licence ODBL, maintenant en LO | ||
* [Correspondances communes code SIREN et code INSEE](https://www.banatic.interieur.gouv.fr/V5/fichiers-en-telechargement/fichiers-telech.php) Menu gauche "Table de correspondance code SIREN / Code Insee des communes" ([url exacte](https://www.banatic.interieur.gouv.fr/V5/ressources/documents/document_reference/TableCorrespondanceSirenInsee.zip)) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
const {zipObject, chain} = require('lodash') | ||
const {readSheets} = require('./util') | ||
|
||
function formatSiren(siren) { | ||
return String(siren).padStart(9, '0') | ||
} | ||
|
||
function formatCodeCommune(codeCommune) { | ||
return String(codeCommune).padStart(5, '0') | ||
} | ||
|
||
async function extractEPT(path) { | ||
const sheets = await readSheets(path) | ||
const sheet = sheets.find(sheet => sheet.name === 'Composition_communale') | ||
const [columns, ...rows] = sheet.data.slice(5).filter(line => line.length > 0) | ||
const items = rows.map(row => zipObject(columns, row)) | ||
return chain(items) | ||
.groupBy('EPT') | ||
.map(items => { | ||
const [first] = items | ||
return { | ||
code: formatSiren(first.EPT), | ||
nom: first.LIBEPT, | ||
type: 'EPT', | ||
modeFinancement: '', | ||
membres: items.map(item => formatCodeCommune(item.CODGEO)) | ||
} | ||
}) | ||
.value() | ||
} | ||
|
||
module.exports = {extractEPT} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.