From 2ff50cd813cd1d6db24dbb4a43f689b9656ee1c1 Mon Sep 17 00:00:00 2001 From: Tykayn Date: Sun, 30 Jul 2023 15:52:01 +0200 Subject: [PATCH] start more complex mapping config --- .../convert_to_osm_tags.mjs | 53 +-- mapping_geojson_to_osm_tags/dataset_info.md | 315 ++++++++++++++++++ .../mappings/configIRVE.js | 104 ++++++ 3 files changed, 420 insertions(+), 52 deletions(-) create mode 100644 mapping_geojson_to_osm_tags/dataset_info.md create mode 100644 mapping_geojson_to_osm_tags/mappings/configIRVE.js diff --git a/mapping_geojson_to_osm_tags/convert_to_osm_tags.mjs b/mapping_geojson_to_osm_tags/convert_to_osm_tags.mjs index 29534292..6c137dbf 100644 --- a/mapping_geojson_to_osm_tags/convert_to_osm_tags.mjs +++ b/mapping_geojson_to_osm_tags/convert_to_osm_tags.mjs @@ -3,6 +3,7 @@ */ import fs from 'node-fs' import minimist from 'minimist' +import mappingConfigIRVE from 'mappings/configIRVE' let mini_arguments = minimist(process.argv.slice(2)) @@ -48,60 +49,8 @@ let sourceFileIRVEGeoJson = './etalab_data/latest.json' let defaultPropertiesOfPoint = { 'amenity': 'charging_station' } -/** - * plan de conversion des clés du jeu de données vers les tags OSM - * détail dans le tableau - * https://wiki.openstreetmap.org/wiki/France/data.gouv.fr/Bornes_de_Recharge_pour_V%C3%A9hicules_%C3%89lectriques - */ -let mappingConfigIRVE = { - // ******* nombres - nbre_pdc: 'capacity', - // ******* textes - amenity: 'amenity', // conserver le tag de base - capacity: 'capacity', // conserver le tag de base - nom_amenageur: 'operator', - siren_amenageur: 'owner:ref:FR:SIREN', - nom_operateur: 'operator', - telephone_operateur: 'phone', - contact_operateur: 'email', // ici, on souhaite convertir la clé contact_operateur=bidule en email=bidule - id_station_itinerance: 'ref:EU:EVSE', - id_station_local: 'ref', - gratuit: 'fee', - paiement_acte: 'authentication:none', - - reservation: 'reservation', - observations: 'note', - nom_station: 'name', - nom_enseigne: 'network', - - // ******* dates - date_mise_en_service: 'start_date', - date_maj: 'source:date', - - // TODO gestion des types dont on doit convertir la valeur - // ******** champs booléens - cable_t2_attache: 'socket:type2_cable', - prise_type_ef: 'socket:typee', - prise_type_2: 'socket:type2', - prise_type_combo_ccs: 'socket:type2_combo', - prise_type_chademo: 'socket:chademo', - - // ******** champs plus complexes - horaires: 'opening_hours', // déjà au bon format - - // accessibilite_pmr: 'wheelchair', - // paiement_cb: 'payment:credit_cards', - - // station_deux_roues => - // ajout de trois tags: - // bicycle=yes - // scooter=yes - // motorcar=no - - // consolidated_code_postal: "zipcode", -} let listOfBooleanKeys = Object.keys({ prise_type_ef: 'socket:typee', prise_type_2: 'socket:type2', diff --git a/mapping_geojson_to_osm_tags/dataset_info.md b/mapping_geojson_to_osm_tags/dataset_info.md new file mode 100644 index 00000000..44772866 --- /dev/null +++ b/mapping_geojson_to_osm_tags/dataset_info.md @@ -0,0 +1,315 @@ +# info sur les jeux de données + +D'après le jeu de données Etalab + +## liste des opérateurs +270 AGENCY +2Ed Coutances +2F Production +ABSOLUT CONCEPT +Acelec Charge +advenir@zeborne.com +Aeroports de lyon +Allego +ALLENERGIES +alterna energie +ALU GRANON +Ambroise Avocat +ANYOS +AQUA LOISIRS +AREA Tech +ART DECO FINITION +arteco44 +ATELIERS PROVENCE LOISIRS +Atlante | FR*ATL +ATRACHATA +Autel Netherlands B.V. | FR*AUT +Automobile de l'Est +AUTORECHARGE +AUTORECHARGE +AUTORECHARGE SAS +Avomarks +Bastide beaudinard & tours (BBT) +BAUDUCEL +Bénédictines du Sacré-Coeur de Montmartre +BH RESTAURATION +BIARS DISTRIBUTION +BORNECO +Borneco | FR*BHM +Bornevo +Bornevo Connect +Bouygues Energies et Services +BOUYGUES ENERGIES ET SERVICES +box +Camping des graniers +CAP EMPLOI +CAR2PLUG +CHAPITEAUX SERVICE +ChargePoint +Chargepoint +CHARGEPOLY +CHARRIERE DISTRIBUTION +CHATEAU DE RONZIERE +COMMUNAUTE DE COMMUNE LE DOURDANNAIS EN HUREPOIX (CCDH) +contact@autorecharge.fr +COPRODEX +Daltoner Avranches +Daltoner Caen +DALTONER CHERBOURG +Daltoner Granville +Daltoner Vire +DIDIER CHARTON-VACHET +Dropnplug +e-nergyze +E-TOTEM +E-totem +Easycharge services +Ecophi mobility +EcoPhi mobility +EDF +EDFRAY +EGE NOEL BERANGER +EGSM +EIZMENDI TRAITEUR EVENEMENTS +Ekoplug +ELEC eCONNECT +ELECTRA +ELECTRIC 55 CHARGING +Electriox Groupe +electromaps +ELECTROMAPS +Electromaps +ELEK BORDEAUX +ENERGEM +ENERGIE Eure-et-Loir +ENERGIE EURE-ET-LOIR +ENNESSER ET FILS +ENTREPRISE ADAM +ESPACE AUTO COURNON +Est Auto +EURO TAXI LINE +EV MAP SAS +EVBOX +EVERON +EVzen (SMEG Développement) +evzen (SMEG Développement) +evZen | FR*EVZ +F.B. AUTOMOBILES +Festilight +Freshmile +FRESHMILE +freshmile +FReshmile +Freshmile SAS +GABMAG17 +GABORIT BOCAGE SERVICES +Gamba et Rota +GARAGE HENRY +garage Henry herve +Garage lefebvre +GEDIBOIS BATI COLMAN +GENE ELEC 35 +GF3e +Golf de La Wantzenau +Green Diffusion +Green Technologie +GREEN TECHNOLOGIE +Green To Wheel +GreenYellow | FR*GYM +GROFF SAS +GROUPE COURTOIS SOCOHY +GROUPE LGE +GROUPE LGE SOCIETE AUTOPLUG +Grunzke Beate +Guerin +H alu concept +HABT +HAEFELI +HERVE THERMIQUE +HFOOD PESSAC +HFOOD VILLENAVE +Hostellerie +Hotel Le Moulin +Hôtel MACCHI +Hôtel Restaurant Hubert Kieffer +ICS Scgilthigheim +IFERRO +INOUID +IONITY +Ispo france +IXINA Le Cres +IXINA Saint Jean de Védas +ixina Villeneuve-lès-Béziers +Izivia +JAV INVESTISSEMENT +jmd +JONNARD LES ISSAMBRES +Kallista BDR +KIEHL +Kotelon +LA CONCIERGERIE D'ISA. +La dilettante +La jabotte +La jardinerie d'aveze sarl +LA PRAIRIE +Lacotte +Lacotte Pierre +LANGON DISTRIBUTION +Last Mile Solutions +LE BISTRO D'HUGO +Le Capelan +Le Grand Large +Le Manoir de l'Isle +le Relais +LE REVE DE JANINE +Leclerc Millau +LEGA +LEGELEUX +Leroux Damien +Les jardins maraichers des bords de rance +LIDL, Nicolas Barbarin +LMS Informatique +LUMI'IN +M. Yannick PIERRE +M.A.J.U. +ma borne auto +ma Borne Auto +MABORNEAUTO +MAS DES OLIVES +MAS DU TERME +MAS GALOFFRE +Masseria +MEA ENERGIES +MEDIODENT +Mickael Auto +MOBELEC +Modulo +MODULO +Modulo énergies +MONTA +MOVIVE_Izivia +NEXTENEO +NM SECURELEC +NON CONCERNE +Non concerné +non concerné +Normatech +Normatech Lodmi +NVH +NW IECharge +OCR MAINTENANCE ELECTRONIQUE +PAS DITINERANCE +Pascal Chene +Perrin +perrin +PHARMACIE DE HUNDLING +Pilotage Maritime +PLAGECO DISTRIBUTION +Polybati +Prodici +ProperPhi +Provibat +PROVIRIDIS +Proviridis | FR*PVD +PTBG et associés +QoWatt +R3 +Ramsay Pole Lille métropole +RechargerMonAuto +REGIE MUNICIPALE D'ELECTRICITE DE LOOS +Rencontre-handi +REVE +RICOME ET SADOUL AXA FRANCE +RONALEV +Royal Champagne +RSDA mobility +SA FOOTBALL CLUB DES GIRONDINS DE BORDEAUX +sa les broyers +Sanou électricité +SAP LABS FRANCE +SARL BEAUDRE BAUDOT +SARL JUMO +SARL LAFOURCADE +SARL LES BAINS DE ROYAN +SARL VAHE +SAS CHATEAU DE MEMANAT +SAS DE L'AILETTE +sas e-motum +SAS Lujasy +SAS Miodis +SAS Sabo +SATUJO +SCI LA COLLINE +SCI LA GRANGE DESSOUS +SCI LES RUISSEAUX +SCI Lounapiou +SCI NOKI +SCI OLYMPE +SCP ACANTHE DRIMARACCI +SDC CENTRE MEDICAL ARTZAMENDI +SDC ORDINAL +SECAL +Securecharge +See You Sun +SELARL PHARMACIE CEVENOLE +Séolis +SGA Industries +SIEGE 27 +SIPECC +SNAM GROUPE +SNER RHONE-ALPES +société La Clérine +Société LEVAROY, Monsieur LEROY +Societe moderne d'isolation +Société Sigma Tec +Société SIPECC +Société Y +Sodetrel +SOLIDARAUTO 49 +SOREGIES +SPBR1 +SPIE CITYNETWORKS +STATIONS-E +Sud Camargue +Sud Hotel +TANAY Electricité +Technic Elec +themis +Thibal Distribution +TISSERANT +total énergie +Total marketing france +TotalEnergies Charging Services +TotalEnergies Marketing France +ubitricity +UBITRICITY GMBH +Vegetalis +Vigot +Ville de Riquewihr +Vincent +Virta +VIRTA +Volta Charging +WAAT +WAAT SAS | FR*W10 +WAAT SAS | FR*W11 +WAAT SAS | FR*WA1 +WAAT SAS | FR*WA3 +WAAT SAS | FR*WA4 +WAAT SAS | FR*WA5 +WAAT SAS | FR*WA6 +WAAT SAS | FR*WA8 +WAAT SAS | FR*WA9 +WAAT SAS | FR*WAT +WattzHub | FR*SMI +web services advenir +Wedom +WeDoM +WeDoM.io +WeeCharge +WICKER TP +ZEBORNE +ZEborne +ZEENCO +Zen Construction + diff --git a/mapping_geojson_to_osm_tags/mappings/configIRVE.js b/mapping_geojson_to_osm_tags/mappings/configIRVE.js new file mode 100644 index 00000000..705a25d0 --- /dev/null +++ b/mapping_geojson_to_osm_tags/mappings/configIRVE.js @@ -0,0 +1,104 @@ +/** + * plan de conversion des clés du jeu de données vers les tags OSM + * détail dans le tableau + * https://wiki.openstreetmap.org/wiki/France/data.gouv.fr/Bornes_de_Recharge_pour_V%C3%A9hicules_%C3%89lectriques + */ + +export default { + // ******* nombres + nbre_pdc: 'capacity', + // ******* textes + amenity: 'amenity', // conserver le tag de base + capacity: 'capacity', // conserver le tag de base + nom_amenageur: 'operator', + siren_amenageur: 'owner:ref:FR:SIREN', + nom_operateur: 'operator', + telephone_operateur: 'phone', + contact_operateur: 'email', // ici, on souhaite convertir la clé contact_operateur=bidule en email=bidule + + id_station_itinerance: 'ref:EU:EVSE', + id_station_local: 'ref', + + gratuit: 'fee', + paiement_acte: 'authentication:none', + + reservation: 'reservation', + observations: 'note', + nom_station: 'name', + nom_enseigne: 'network', + + // ******* dates + date_mise_en_service: 'start_date', + date_maj: 'source:date', + + // TODO gestion des types dont on doit convertir la valeur + // ******** champs booléens + cable_t2_attache: 'socket:type2_cable', + prise_type_ef: 'socket:typee', + prise_type_2: 'socket:type2', + prise_type_combo_ccs: 'socket:type2_combo', + prise_type_chademo: 'socket:chademo', + + // ******** champs plus complexes + horaires: 'opening_hours', // déjà au bon format + + // accessibilite_pmr: 'wheelchair', + // paiement_cb: 'payment:credit_cards', + + accessibilite_pmr: { + key_converted: "wheelchair", + conditional_values: { + "Accessibilité inconnue": { + value_converted: "", + ignore_this_data: true, // ne pas ajouter de tag si la valeur est égale à Accessibilité inconnue. + }, + "Accessible mais non réservé PMR": { + value_converted: "" + }, + "Réservé PMR": { + value_converted: "" + }, + "Non accessible": { + value_converted: "no" + }, + "Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30": { + value_converted: "Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30" + } + "24/7": { + value_converted: "" + } + +// choix: + +// Sa:09:00-19:00 +// 24/7 +// Mo-Fr 08:00-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:00 +// Mo-Fr 08:00-19:00,Sat 09:00-18:00 +// Sa:08:00-19:00 +// 24/7 +// Mo-Fr 08:30-12:00,Mo-Fr 14:00-19:00,Sat 09:00-18:30 +// Mo-Fr 09:00-16:00 +// Mo-Fr 08:00-12:00,Mo-Fr 14:00-18:00,Th 08:00-18:00 + +} + }, + station_deux_roues: { + key_converted: null, + conditional_values: { + // ajout de trois tags si la valeur est yes + yes: { + tags_to_add: [ + {bicycle: "yes"}, + {scooter: "yes"}, + {motorcar: "no"}, + ] + } + } + + } + // station_deux_roues => + // bicycle=yes + // scooter=yes + // motorcar=no + +} \ No newline at end of file