mirror of
https://forge.chapril.org/tykayn/wololo
synced 2025-06-20 01:34:42 +02:00
up plaques mapping
This commit is contained in:
parent
c9ecd31302
commit
e33aecb565
3 changed files with 74 additions and 25 deletions
|
@ -423,57 +423,63 @@ export default class MappingEngine {
|
|||
debugLog('truncate_enums_to_limit => ', convertedValue)
|
||||
}
|
||||
|
||||
let conditionnalConfig: any = ''
|
||||
let conditionalConfig: any = ''
|
||||
/**
|
||||
* config pour une clé
|
||||
* nous pouvons renseigner une string ou un objet décrivant les transformations à réaliser
|
||||
*/
|
||||
if (configObject.conditional_values) {
|
||||
// console.log('configObject.conditional_values', configObject.conditional_values)
|
||||
|
||||
|
||||
// convert numbers from json to string to compare them correctly
|
||||
originalValue = '' + originalValue
|
||||
|
||||
let keysConditionnalValues: any = Object.keys(configObject.conditional_values)
|
||||
let isFoundValue = keysConditionnalValues.indexOf(originalValue)
|
||||
conditionnalConfig = configObject.conditional_values[keysConditionnalValues[isFoundValue]]
|
||||
let foundValue = keysConditionnalValues.indexOf(originalValue)
|
||||
conditionalConfig = configObject.conditional_values[keysConditionnalValues[foundValue]]
|
||||
|
||||
// par défaut on retire les valeurs qui ne sont pas dans la liste des valeurs conditionnelles
|
||||
// sauf si on a activé l'option allow_unspecified_conditional_values dans la MappingConfigType
|
||||
if (!this.mapping_config.allow_unspecified_conditional_values && foundValue === -1) {
|
||||
|
||||
// console.log('(x) => ignore', originalValue, ' in ', pointKeyName)
|
||||
remove_original_key = true
|
||||
}
|
||||
|
||||
|
||||
if (!remove_original_key) {
|
||||
|
||||
|
||||
if (isFoundValue !== -1) {
|
||||
debugLog('found condition', isFoundValue)
|
||||
if (foundValue !== -1) {
|
||||
debugLog('found condition', foundValue)
|
||||
|
||||
/** ----------------------
|
||||
* gestion des valeurs conditionnelles
|
||||
* ---------------------- */
|
||||
debugLog('conditionnalConfig', conditionnalConfig)
|
||||
debugLog('conditionnalConfig', conditionalConfig)
|
||||
|
||||
|
||||
if (conditionnalConfig.ignore_this_data) {
|
||||
if (conditionalConfig.ignore_this_data) {
|
||||
debugLog(`on ignore cette clé car sa valeur "${originalValue}" est à exclure: `, pointKeyName, '=>', newKey)
|
||||
remove_original_key = true;
|
||||
}
|
||||
|
||||
if (conditionnalConfig.truthy_value) {
|
||||
if (conditionalConfig.truthy_value) {
|
||||
// convertir la valeur, si elle est truthy, la transformer en ce que donne la propriété truthy_value
|
||||
// exemple: le jeu de données dit que la colonne cable_t2_attache vaut "True", mais on veut le convertir en "1".
|
||||
// on met donc truthy_value: '1'
|
||||
if (custom_utils.truthyValues.indexOf(originalValue) !== -1) {
|
||||
convertedValue = conditionnalConfig.truthy_value
|
||||
convertedValue = conditionalConfig.truthy_value
|
||||
}
|
||||
}
|
||||
if (conditionnalConfig.falsy_value) {
|
||||
if (conditionalConfig.falsy_value) {
|
||||
if (custom_utils.falsyValues.indexOf(originalValue) !== -1) {
|
||||
convertedValue = conditionnalConfig.falsy_value
|
||||
convertedValue = conditionalConfig.falsy_value
|
||||
}
|
||||
}
|
||||
|
||||
// use the value converted
|
||||
else if (conditionnalConfig.value_converted) {
|
||||
convertedValue = conditionnalConfig.value_converted
|
||||
else if (conditionalConfig.value_converted) {
|
||||
convertedValue = conditionalConfig.value_converted
|
||||
}
|
||||
|
||||
|
||||
|
@ -482,15 +488,15 @@ export default class MappingEngine {
|
|||
|
||||
}
|
||||
// console.log('convertedValue =>', convertedValue)
|
||||
if (conditionnalConfig?.tags_to_add) {
|
||||
debugLog('on ajoute des tags', conditionnalConfig.tags_to_add)
|
||||
if (conditionalConfig?.tags_to_add) {
|
||||
debugLog('on ajoute des tags', conditionalConfig.tags_to_add)
|
||||
// on peut définir un ensemble de tags à rajouter
|
||||
let tagKeys = Object.keys(conditionnalConfig.tags_to_add)
|
||||
debugLog('conditionnalConfig.tags_to_add', conditionnalConfig.tags_to_add)
|
||||
let tagKeys = Object.keys(conditionalConfig.tags_to_add)
|
||||
debugLog('conditionnalConfig.tags_to_add', conditionalConfig.tags_to_add)
|
||||
tagKeys.forEach((index: any) => {
|
||||
debugLog('key', index)
|
||||
debugLog('value', conditionnalConfig.tags_to_add[index])
|
||||
newProperties[index] = conditionnalConfig.tags_to_add[index]
|
||||
debugLog('value', conditionalConfig.tags_to_add[index])
|
||||
newProperties[index] = conditionalConfig.tags_to_add[index]
|
||||
})
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue