mapping-geojson-osm/mappings/converters/configIRVE.ts

183 lines
6.2 KiB
TypeScript
Raw Normal View History

/**
* 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
*/
import MappingConfigType from "../mapping-config.type";
const MappingIRVE: MappingConfigType = {
config_name: "IRVE config",
config_author: "tykayn <contact@cipherbliss.com>",
default_properties_of_point: {
'amenity': 'charging_station'
},
source: {
geojson_path: "etalab_data/all.json",
url: 'https://www.data.gouv.fr/fr/datasets/r/7eee8f09-5d1b-4f48-a304-5e99e8da1e26'
},
/**
* select only certain points from the source
*/
filters: {
enable_coordinates_filter: false,
enable_properties_filter: true,
// add only geojson points who are found having this regex in the zipcode properties
2023-10-07 22:51:54 +02:00
// properties: {
// consolidated_code_postal: '^[76|27]'
// },
// bounding_box: [
// {}
// ]
},
add_not_mapped_tags_too: false,
tags: {
// ******* 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',
2023-08-18 11:25:02 +02:00
telephone_operateur: {
key_converted: 'operator:phone',
convert_to_phone: true, // conversion en format international si possible
2023-08-18 11:25:02 +02:00
},
2023-08-30 15:55:45 +02:00
phone: {
key_converted: 'operator:phone',
2023-08-30 15:55:45 +02:00
convert_to_phone: true, // conversion en format international si possible
},
contact_operateur: 'operator:email', // ici, on souhaite convertir la clé contact_operateur=bidule en email=bidule
id_station_itinerance: 'ref:EU:EVSE',
id_station_local: 'ref',
2023-10-01 12:53:08 +02:00
/**
* l'info de gratuité a été mal renseignée par les opérateurs, ils mettent TRÈS souvent que c'est gratuit alors que ce n'est pas vrai.
*/
2023-10-01 15:00:10 +02:00
gratuit: {
key_converted: 'fee',
convert_to_boolean_value: true,
invert_boolean_value: true,
},
paiement_acte:
{
key_converted: 'authentication:none',
convert_to_boolean_value: true, // convertit en yes ou no
},
reservation: {
convert_to_boolean_value: true, // convertit en yes ou no
},
// observations: 'note',
2023-10-09 09:43:14 +02:00
// nom_station: 'name',
nom_enseigne: 'network',
// ******* dates
date_mise_en_service: 'start_date',
// date_maj: 'source:date',
// ******** champs booléens
cable_t2_attache:
{
key_converted: 'socket:type2_cable',
// socket:type2_cable vaut 1 dans OSM si vrai
truthy_value: '1',
ignore_if_falsy: true,
}
,
prise_type_ef: {
key_converted: 'socket:typee',
ignore_if_falsy: true,
convert_to_boolean_value: true,
},
prise_type_2: {
key_converted: 'socket:type2',
ignore_if_falsy: true,
convert_to_boolean_value: true,
},
prise_type_combo_ccs: {
key_converted: 'socket:type2_combo',
ignore_if_falsy: true,
convert_to_boolean_value: true,
},
prise_type_chademo: {
key_converted: 'socket:chademo',
ignore_if_falsy: true,
convert_to_boolean_value: true,
},
// ******** champs plus complexes
horaires: 'opening_hours', // déjà au bon format
paiement_cb: {
key_converted: 'payment:credit_cards',
// ignore_if_falsy: true,
convert_to_boolean_value: true,
},
2023-10-07 21:38:09 +02:00
accessibilite_pmr: {
2023-10-07 22:51:54 +02:00
key_converted: "wheelchair",
2023-10-07 21:38:09 +02:00
// conditional_values: {
// "Accessibilité inconnue": {
// // value_converted: "",
// ignore_this_data: true, // ne pas ajouter de tag si la valeur est égale à Accessibilité inconnue.
// // transform_function : (original_value) => original_value.toLowerCase(),
// },
"Accessible mais non réservé PMR": {
value_converted: "yes"
},
"Réservé PMR": {
value_converted: "yes"
},
"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: "yes"
}
},
2023-10-07 22:51:54 +02:00
// station_deux_roues: {
// remove_original_key: true,
// conditional_values: {
// // ajout de trois tags si la valeur est yes
// "yes": {
// tags_to_add: [
// {bicycle: "yes"},
// {scooter: "yes"},
// {motorcar: "no"},
// ]
// }
// }
// },
2023-10-01 11:56:42 +02:00
puissance_nominale: {
key_converted: 'socket:max:output',
2023-10-01 12:53:08 +02:00
socket_output_find_correspondances: true,
}
},
}
// "nom_amenageur": "ELECTRA",
// "siren_amenageur": "891624884",
// "consolidated_commune": "S\u00e9r\u00e9zin-du-Rh\u00f4ne",
// "consolidated_is_lon_lat_correct": true,
// "cable_t2_attache": "True"
// "goal": "jeu de données pour tester la mapping engine",
// "prise_type_2": "yes",
// "station_deux_roues": "yes",
// "accessibilite_pmr": "Non accessible",
// "amenity": "charging_station",
// "capacity": 12,
// "reservation": "False",
// "nom_amenageur": "Bob Lenon",
// "siren_amenageur": "12345678",
// "socket:typee": "False",
// "prise_type_combo_ccs": "no",
// "fee": "no",
// "authentication:none": "yes"
export default MappingIRVE;