add types and tags to add
This commit is contained in:
parent
1405cde5d6
commit
59e2bc25c9
@ -143,7 +143,7 @@ export default class {
|
||||
let keyConvertedFromMapping = mappingKeys[mappingKeys.indexOf(pointKeyName)]
|
||||
let mappingConfigOfTag = this.mapping_config.tags[pointKeyName]
|
||||
|
||||
console.log('========== mappingConfigOfTag', mappingConfigOfTag)
|
||||
debugLog('========== mappingConfigOfTag', mappingConfigOfTag)
|
||||
debugLog('convertProperty: found element', pointKeyName, '=>', keyConvertedFromMapping, 'value : ', valueConvertedFromMapping)
|
||||
let convertedValue = ''
|
||||
|
||||
@ -158,14 +158,14 @@ export default class {
|
||||
|
||||
|
||||
debugLog('convertProperty: isStringValue?', valueConvertedFromMapping, isStringValue)
|
||||
console.log('convertProperty: isStringValue?', valueConvertedFromMapping, isStringValue)
|
||||
debugLog('convertProperty: isStringValue?', valueConvertedFromMapping, isStringValue)
|
||||
|
||||
console.log('mappingConfigOfTag', mappingConfigOfTag)
|
||||
console.log('typeOfConfigForKey', typeOfConfigForKey)
|
||||
debugLog('mappingConfigOfTag', mappingConfigOfTag)
|
||||
debugLog('typeOfConfigForKey', typeOfConfigForKey)
|
||||
|
||||
|
||||
if (isStringValue) {
|
||||
console.log('convertProperty: -- string value')
|
||||
debugLog('convertProperty: -- string value')
|
||||
debugLog('convertProperty: -- string value')
|
||||
if (this.isBooleanKey(pointKeyName)) {
|
||||
let lowerValue = (valueConvertedFromMapping + '').toLowerCase()
|
||||
@ -173,7 +173,7 @@ export default class {
|
||||
convertedValue = this.truthyValues.indexOf(lowerValue) ? 'yes' : 'no'
|
||||
|
||||
} else {
|
||||
console.log('convertProperty: -- simple conversion : ', pointKeyName, '_', originalValue, '=>', valueConvertedFromMapping)
|
||||
debugLog('convertProperty: -- simple conversion : ', pointKeyName, '_', originalValue, '=>', valueConvertedFromMapping)
|
||||
convertedValue = valueConvertedFromMapping
|
||||
}
|
||||
debugLog('convertProperty: -- convertedValue', convertedValue)
|
||||
@ -219,30 +219,34 @@ export default class {
|
||||
* nous pouvons renseigner une string ou un objet décrivant les transformations à réaliser
|
||||
*/
|
||||
if (configObject.conditional_values) {
|
||||
console.log('convertProperty: conditional_values__________',
|
||||
debugLog('convertProperty: conditional_values__________',
|
||||
configObject.conditional_values)
|
||||
|
||||
let keysConditionnalValues: any = Object.keys(configObject.conditional_values)
|
||||
|
||||
let isFoundValue = keysConditionnalValues.indexOf(originalValue)
|
||||
console.log('isFoundValue', isFoundValue)
|
||||
console.log('keysConditionnalValues', keysConditionnalValues)
|
||||
debugLog('isFoundValue', isFoundValue)
|
||||
debugLog('keysConditionnalValues', keysConditionnalValues)
|
||||
|
||||
/** ----------------------
|
||||
* gestion des valeurs conditionnelles
|
||||
* ---------------------- */
|
||||
if (isFoundValue !== -1) {
|
||||
let conditionnalConfig: any = configObject.conditional_values[keysConditionnalValues[isFoundValue]]
|
||||
|
||||
if (conditionnalConfig.tags_to_add) {
|
||||
// on peut définir un ensemble de tags à rajouter
|
||||
let tagKeys = Object.keys(conditionnalConfig.tags_to_add)
|
||||
console.log('conditionnalConfig.tags_to_add', conditionnalConfig.tags_to_add)
|
||||
debugLog('conditionnalConfig.tags_to_add', conditionnalConfig.tags_to_add)
|
||||
conditionnalConfig.tags_to_add.forEach((object: any, pair: any) => {
|
||||
console.log('object', object)
|
||||
console.log('pair', pair)
|
||||
debugLog('object', object)
|
||||
debugLog('pair', pair)
|
||||
let key: any = Object.keys(object)
|
||||
key = key[0]
|
||||
let value = object[key]
|
||||
|
||||
console.log('key', key)
|
||||
console.log('value', value)
|
||||
debugLog('key', key)
|
||||
debugLog('value', value)
|
||||
newProperties[key] = value
|
||||
})
|
||||
}
|
||||
@ -278,7 +282,7 @@ export default class {
|
||||
}
|
||||
|
||||
debugLog('convertProperty: convertedValue ==========> {', newKey, ':', convertedValue, '}')
|
||||
console.log(' =============== remove_original_key', remove_original_key)
|
||||
debugLog(' =============== remove_original_key', remove_original_key)
|
||||
if (!remove_original_key && newKey && !configObject.ignore_this_data) {
|
||||
|
||||
debugLog('convertProperty: added')
|
||||
|
@ -33,20 +33,39 @@ export default interface MappingConfigType{
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* configuration concernant toutes les valeurs
|
||||
*/
|
||||
export interface FeaturePropertyMappingConfigType{
|
||||
[key:string]: any,
|
||||
boolean_value_conversion?:boolean,
|
||||
remove_original_key?:boolean,
|
||||
conditionnal_values?:ConditionnalValuesType,
|
||||
transformer?:Function,
|
||||
}
|
||||
export interface ConditionnalValuesType{
|
||||
[key:string]: ConditionnalValuesConfigType,
|
||||
transform_function?:Function,
|
||||
}
|
||||
|
||||
/**
|
||||
* choix de conversion de la valeur originale selon des critères donnés
|
||||
*/
|
||||
export interface ConditionnalValuesConfigType{
|
||||
key_converted?:string,
|
||||
value_converted?:string,
|
||||
truthy_value?:any,
|
||||
falsy_value?:any,
|
||||
falsy_value?:any, // si la valeur originale est falsy, la convertir en la valeur donnée ici
|
||||
ignore_this_data?:boolean,
|
||||
tags_to_add?:TagsToAddConfig,
|
||||
transform_function?:Function,
|
||||
}
|
||||
|
||||
export interface ConditionnalValuesType{
|
||||
[key:string]: ConditionnalValuesConfigType,
|
||||
}
|
||||
interface OneOSMTag {
|
||||
[key:string]: string,
|
||||
}
|
||||
|
||||
export interface TagsToAddConfig{
|
||||
tags_to_add: Array<OneOSMTag>
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user