From 8012a30f88604e0b7160febe8f0024bbc8ce0f17 Mon Sep 17 00:00:00 2001 From: Laurie Montant Date: Wed, 2 Sep 2026 10:35:39 +0200 Subject: [PATCH] SCPN1-11199 --- RFXtoRP_HsaCarrier.ftl | 37 ++++++++++++------- RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl | 49 +++++++++++++++++++++++++ RFXtoRP_HsaCons.ftl | 15 +++++++- RFXtoRP_HsaCons_ActorWMSUpdated.ftl | 49 +++++++++++++++++++++++++ RFXtoRP_HsaSup.ftl | 15 +++++++- RFXtoRP_HsaSup_ActorWMSUpdated.ftl | 49 +++++++++++++++++++++++++ RFXtoRP_HsrDepot.ftl | 15 +++++++- RFXtoRP_HsrDepot_ActorWMSUpdated.ftl | 51 ++++++++++++++++++++++++++ 8 files changed, 261 insertions(+), 19 deletions(-) create mode 100644 RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl create mode 100644 RFXtoRP_HsaCons_ActorWMSUpdated.ftl create mode 100644 RFXtoRP_HsaSup_ActorWMSUpdated.ftl create mode 100644 RFXtoRP_HsrDepot_ActorWMSUpdated.ftl diff --git a/RFXtoRP_HsaCarrier.ftl b/RFXtoRP_HsaCarrier.ftl index 19fe197..8208eb6 100644 --- a/RFXtoRP_HsaCarrier.ftl +++ b/RFXtoRP_HsaCarrier.ftl @@ -14,20 +14,31 @@ <#switch cloudEventMsg.action> <#case "C"> - <#case "U"> - <#-- *********************************************** Action = CREATE or UPDATE ******************** --> - <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> - <#assign carrier = JsonUtil.jsonToMap(dataRfx)> - [ - { - <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorCreatedv2> - "apiReflexPlatformID" : "${apiReflexPlatformID}", - "datas" : - <#include "RFXtoRP_HsaCarrier_ActorCreated.ftl"> - } - ] + <#-- *********************************************** Action = CREATE ******************** --> + <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> + <#assign carrier = JsonUtil.jsonToMap(dataRfx)> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorCreatedv2> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_HsaCarrier_ActorCreated.ftl"> + } + ] <#break> - + <#case "U"> + <#-- *********************************************** Action = UPDATE ******************** --> + <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> + <#assign carrier = JsonUtil.jsonToMap(dataRfx)> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorWMSUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl"> + } + ] + <#break> <#case "D"> <#-- *********************************************** Action = DELETE ******************************* --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> diff --git a/RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl b/RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl new file mode 100644 index 0000000..1f20c26 --- /dev/null +++ b/RFXtoRP_HsaCarrier_ActorWMSUpdated.ftl @@ -0,0 +1,49 @@ +[ + { + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${RFXtoRPprefixCarrier(carrier.carrier_code?trim?json_string)}" + }, + "Payload": { + "Name": "${carrier.carrier_designation?json_string}", + <#include "RFXtoRP_HsaCarrier_ActorCreated_Metadata.ftl">, + "Address": + { + <#-- if HARDIS WMS address is structured --> + <#if carrier.carrier_structured_address?? > + "Name": "${carrier.carrier_structured_address.name_or_company?json_string}", + "StreetAddressOne" : "${carrier.carrier_structured_address.street_and_PO?json_string}", + "StreetAddressTwo" : "${carrier.carrier_structured_address.additionnal_data?json_string}", + "PostalCode" : "${carrier.carrier_structured_address.postal_code?json_string}", + "City" : "${carrier.carrier_structured_address.post_code_area_name?json_string}", + <#assign isCountryCode = JsonUtil.isCountryCode(carrier.carrier_structured_address.country_code?upper_case) /> + <#if isCountryCode> + "CountryCode" : "${carrier.carrier_structured_address.country_code?upper_case?json_string}", + <#else> + "CountryCode" : "", + + "ProvinceCode": "${carrier.carrier_structured_address.territorial_div_code?json_string}", + "State": "${carrier.carrier_structured_address.country_designation?json_string}" + <#-- if HARDIS WMS address is not structured --> + <#else> + <#if carrier.address??> + "Name": "${carrier.address.company_name?json_string}", + "StreetAddressOne" : "${carrier.address.address_1?json_string}", + "StreetAddressTwo" : "${carrier.address.address_2?json_string}", + "StreetAddressThree" : "${carrier.address.address_3?json_string}", + "CountryCode" : "" + + + } + <#if carrier.address??> + , + "Phones": ["${carrier.address.telephone?json_string}", + "${carrier.address.other_number?json_string}" + ] + + + } + } +] diff --git a/RFXtoRP_HsaCons.ftl b/RFXtoRP_HsaCons.ftl index 62403ac..9501dab 100644 --- a/RFXtoRP_HsaCons.ftl +++ b/RFXtoRP_HsaCons.ftl @@ -14,7 +14,6 @@ <#switch cloudEventMsg.action> <#case "C"> - <#case "U"> <#-- *********************************************** Action = CREATE or UPDATE ******************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> <#assign actor = JsonUtil.jsonToMap(dataRfx)> @@ -28,7 +27,19 @@ ] <#break> - + <#case "U"> + <#-- *********************************************** Action = UPDATE ******************** --> + <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> + <#assign actor = JsonUtil.jsonToMap(dataRfx)> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorWMSUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_HsaCons_ActorWMSUpdated.ftl"> + } + ] + <#break> <#case "D"> <#-- *********************************************** Action = DELETE ******************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> diff --git a/RFXtoRP_HsaCons_ActorWMSUpdated.ftl b/RFXtoRP_HsaCons_ActorWMSUpdated.ftl new file mode 100644 index 0000000..90a6963 --- /dev/null +++ b/RFXtoRP_HsaCons_ActorWMSUpdated.ftl @@ -0,0 +1,49 @@ +[ + { + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${RFXtoRPprefixConsignee(actor.code?trim?json_string)}" + }, + "Payload": { + "Name": "${actor.designation?json_string}", + <#include "RFXtoRP_HsaCons_ActorCreated_Metadata.ftl">, + "Address": + { + <#-- if HARDIS WMS is structured --> + <#if actor.consignee_structured_address??> + "Name": "${actor.consignee_structured_address.name_or_company?json_string}", + "StreetAddressOne" : "${actor.consignee_structured_address.street_and_PO?json_string}", + "StreetAddressTwo" : "${actor.consignee_structured_address.additionnal_data?json_string}", + "PostalCode" : "${actor.consignee_structured_address.postal_code?json_string}", + "City" : "${actor.consignee_structured_address.post_code_area_name?json_string}", + <#assign isCountryCode = JsonUtil.isCountryCode(actor.consignee_structured_address.country_code?upper_case) /> + <#if isCountryCode> + "CountryCode" : "${actor.consignee_structured_address.country_code?upper_case?json_string}", + <#else> + "CountryCode" : "", + + "ProvinceCode": "${actor.consignee_structured_address.territorial_div_code?json_string}", + "State": "${actor.consignee_structured_address.country_designation?json_string}" + <#-- if HARDIS WMS is not structured --> + <#else> + <#if actor.address?? > + "Name": "${actor.address.company_name?json_string}", + "StreetAddressOne" : "${actor.address.address_1?json_string}", + "StreetAddressTwo" : "${actor.address.address_2?json_string}", + "StreetAddressThree" : "${actor.address.address_3?json_string}", + "CountryCode" : "" + + + } + <#if actor.address?? > + , + "Phones": ["${actor.address.telephone?json_string}", + "${actor.address.other_number?json_string}" + ] + + + } + } +] diff --git a/RFXtoRP_HsaSup.ftl b/RFXtoRP_HsaSup.ftl index db3c516..f99ebf2 100644 --- a/RFXtoRP_HsaSup.ftl +++ b/RFXtoRP_HsaSup.ftl @@ -14,7 +14,6 @@ <#switch cloudEventMsg.action> <#case "C"> - <#case "U"> <#-- *********************************************** Action = CREATE or UPDATE ******************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> <#assign actor = JsonUtil.jsonToMap(dataRfx)> @@ -27,7 +26,19 @@ } ] <#break> - + <#case "U"> + <#-- *********************************************** Action = UPDATE ******************** --> + <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> + <#assign actor = JsonUtil.jsonToMap(dataRfx)> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorWMSUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_HsaSup_ActorWMSUpdated.ftl"> + } + ] + <#break> <#case "D"> <#-- *********************************************** Action = DELETE ******************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> diff --git a/RFXtoRP_HsaSup_ActorWMSUpdated.ftl b/RFXtoRP_HsaSup_ActorWMSUpdated.ftl new file mode 100644 index 0000000..c375b7b --- /dev/null +++ b/RFXtoRP_HsaSup_ActorWMSUpdated.ftl @@ -0,0 +1,49 @@ +[ + { + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${RFXtoRPprefixSupplier(actor.code?trim?json_string)}" + }, + "Payload": { + "Name": "${actor.designation?json_string}", + <#include "RFXtoRP_HsaSup_ActorCreated_Metadata.ftl">, + + "Address": + { + <#-- if HARDIS WMS address is structured --> + <#if actor.supplier_structured_address?? > + "Name": "${actor.supplier_structured_address.name_or_company?json_string}", + "StreetAddressOne" : "${actor.supplier_structured_address.street_and_PO?json_string}", + "StreetAddressTwo" : "${actor.supplier_structured_address.additionnal_data?json_string}", + "PostalCode" : "${actor.supplier_structured_address.postal_code?json_string}", + "City" : "${actor.supplier_structured_address.post_code_area_name?json_string}", + <#assign isCountryCode = JsonUtil.isCountryCode(actor.supplier_structured_address.country_code?upper_case) /> + <#if isCountryCode> + "CountryCode" : "${actor.supplier_structured_address.country_code?upper_case?json_string}", + <#else> + "CountryCode" : "", + + "ProvinceCode": "${actor.supplier_structured_address.territorial_div_code?json_string}", + "State": "${actor.supplier_structured_address.country_designation?json_string}" + <#-- if HARDIS WMS address is not structured --> + <#else> + <#if actor.optional_attributes?? > + "Name": "${actor.optional_attributes.company_name?json_string}", + "StreetAddressOne" : "${actor.optional_attributes.address_1?json_string}", + "StreetAddressTwo" : "${actor.optional_attributes.address_2?json_string}", + "StreetAddressThree" : "${actor.optional_attributes.address_3?json_string}", + "CountryCode" : "" + + + } + <#if actor.optional_attributes?? > + , + "Phones": ["${actor.optional_attributes.telephone?json_string}", + "${actor.optional_attributes.other_number?json_string}" + ] + + } + } +] diff --git a/RFXtoRP_HsrDepot.ftl b/RFXtoRP_HsrDepot.ftl index 09088de..2a91b92 100644 --- a/RFXtoRP_HsrDepot.ftl +++ b/RFXtoRP_HsrDepot.ftl @@ -11,7 +11,6 @@ <#switch cloudEventMsg.action> <#case "C"> - <#case "U"> <#-- *********************************************** Action = CREATE or UPDATE ******************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> <#assign depot = JsonUtil.jsonToMap(dataRfx)> @@ -24,7 +23,19 @@ } ] <#break> - + <#case "U"> + <#-- *********************************************** Action = UPDATE ******************** --> + <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> + <#assign depot = JsonUtil.jsonToMap(dataRfx)> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ActorWMSUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_HsrDepot_ActorWMSUpdated.ftl"> + } + ] + <#break> <#case "D"> <#-- *********************************************** Action = DELETE *************************** --> <#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) /> diff --git a/RFXtoRP_HsrDepot_ActorWMSUpdated.ftl b/RFXtoRP_HsrDepot_ActorWMSUpdated.ftl new file mode 100644 index 0000000..79fc7fc --- /dev/null +++ b/RFXtoRP_HsrDepot_ActorWMSUpdated.ftl @@ -0,0 +1,51 @@ +<#include "ReflexUtils.ftl"> +<#include "HfRpConfig.ftl"> +<#include "ActorPrefix.ftl"> +[ + { + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${RFXtoRPprefixDepot(depot.physical_depot_code?trim?json_string)}" + }, + "Payload": { + "Name": "${depot.physical_depot_designation?json_string}", + <#include "RFXtoRP_HsrDepot_ActorCreated_Metadata.ftl">, + "Address": + { + <#-- if HARDIS WMS address is structured --> + <#if depot.physical_depot_structured_address?? > + "Name": "${depot.physical_depot_structured_address.name_or_company?json_string}", + "StreetAddressOne" : "${depot.physical_depot_structured_address.street_and_PO?json_string}", + "StreetAddressTwo" : "${depot.physical_depot_structured_address.additionnal_data?json_string}", + "PostalCode" : "${depot.physical_depot_structured_address.postal_code?json_string}", + "City" : "${depot.physical_depot_structured_address.post_code_area_name?json_string}", + <#assign isCountryCode = JsonUtil.isCountryCode(depot.physical_depot_structured_address.country_code?upper_case) /> + <#if isCountryCode > + "CountryCode" : "${depot.physical_depot_structured_address.country_code?upper_case?json_string}", + <#else> + "CountryCode" : "", + + "ProvinceCode": "${depot.physical_depot_structured_address.territorial_div_code?json_string}", + "State": "${depot.physical_depot_structured_address.country_designation?json_string}" + <#-- if HARDIS WMS address is not structured --> + <#else> + <#if depot.physical_depot_address??> + "Name": "${depot.physical_depot_address.company_name?json_string}", + "StreetAddressOne" : "${depot.physical_depot_address.address_1?json_string}", + "StreetAddressTwo" : "${depot.physical_depot_address.address_2?json_string}", + "StreetAddressThree" : "${depot.physical_depot_address.address_3?json_string}", + "CountryCode" : "" + + + } + <#if depot.physical_depot_address??> + , + "Phones": ["${depot.physical_depot_address.telephone?json_string}", + "${depot.physical_depot_address.other_number?json_string}" + ] + + } + } +]