From 95f67c4c0c9fe9281f14558c61d7f83e65ecf2a2 Mon Sep 17 00:00:00 2001 From: Laurie Montant Date: Tue, 1 Jul 2025 17:31:10 +0200 Subject: [PATCH] Modifs TDI LMO --- TDItoRP2.ftl | 35 +++++++++++++++++++ TDItoRP_TrackingETAUpdated.ftl | 20 +++++++++++ TDItoRP_TrackingNotified.ftl | 62 ++++++++++++++++++++++++++++++++++ TDItoRP_TrackingURLUpdated.ftl | 11 ++++++ 4 files changed, 128 insertions(+) create mode 100644 TDItoRP2.ftl create mode 100644 TDItoRP_TrackingETAUpdated.ftl create mode 100644 TDItoRP_TrackingNotified.ftl create mode 100644 TDItoRP_TrackingURLUpdated.ftl diff --git a/TDItoRP2.ftl b/TDItoRP2.ftl new file mode 100644 index 0000000..aca1e21 --- /dev/null +++ b/TDItoRP2.ftl @@ -0,0 +1,35 @@ +<#assign tdiEventMsg = JsonUtil.jsonToMap(input)> +<#assign projectRP = project> +<#assign organisationRP = organisation> + +<#assign tdiEvent64b = JsonUtil.decodeBase64(tdiEventMsg.data) /> +<#assign tdiEvent = JsonUtil.jsonToMap(tdiEvent64b)> +<#assign senderTag = tdiEventMsg.senderTag> + <#if tdiEvent.Target == 0 || (tdiEvent.Target == 1 && tdiEvent.ParcelNumber?? && tdiEvent.ParcelNumber == "")> + <#stop> + <#else> + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingNotified> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "TDItoRP_TrackingNotified.ftl"> + } + <#if tdiEvent.EstimatedDeliveryDate?? && tdiEvent.EstimatedDeliveryDate!=""> + , + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingETAUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "TDItoRP_TrackingETAUpdated.ftl"> + } + + <#if tdiEvent.TrackingUrl?? && tdiEvent.TrackingUrl!=""> + , + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingURLUpdated> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "TDItoRP_TrackingURLUpdated.ftl"> + } + + \ No newline at end of file diff --git a/TDItoRP_TrackingETAUpdated.ftl b/TDItoRP_TrackingETAUpdated.ftl new file mode 100644 index 0000000..e2ed43a --- /dev/null +++ b/TDItoRP_TrackingETAUpdated.ftl @@ -0,0 +1,20 @@ +{ + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${tdiEvent.ParcelNumber}" + }, + "Payload": { + "TrackingETA": { + "EndETA": { + "AuthorTimeZone": "Europe/Paris", + "DateTime": "2023-01-01T00:00:00Z" + }, + "StartETA": { + "AuthorTimeZone": "Europe/Paris", + "DateTime": "2023-01-01T00:00:00Z" + } + } + } +} \ No newline at end of file diff --git a/TDItoRP_TrackingNotified.ftl b/TDItoRP_TrackingNotified.ftl new file mode 100644 index 0000000..969e1d0 --- /dev/null +++ b/TDItoRP_TrackingNotified.ftl @@ -0,0 +1,62 @@ +{ + "Header": + { + "ProjectID": "${projectRP}" + }, + "ID": + { + "RefID": "${tdiEvent.ParcelNumber}" + }, + "Payload": + { + "Events": [ + <#-- {"Date": {"DateTime": "${tdiEvent.EventDate?datetime.iso?iso_utc}", --> + { + "Date": { + "DateTime": "${tdiEvent.EventDate}", + "AuthorTimeZone": "UTC" + }, + <#if tdiEvent.EventCode == "OK-COLLECTED" || + tdiEvent.EventCode == "OK-EDI" || + tdiEvent.EventCode == "OK-APPT-DATE" || + tdiEvent.EventCode == "OK-APPT-NOTI" || + tdiEvent.EventCode == "OK-APPT-NEED" || + tdiEvent.EventCode == "ADM" || + tdiEvent.EventCode == "RGP" > + "Code": "TRACKING_EVENT_IFTSTA_349", <#-- Handled by carrier --> + <#else> + <#if tdiEvent.EventCode?starts_with("TA") > + "Code": "TRACKING_EVENT_IFTSTA_56", <#-- Incomplete delivery --> + <#else> + <#if tdiEvent.EventCode?starts_with("T-") == true || + tdiEvent.EventCode?starts_with("TD") == true || + tdiEvent.EventCode == "OK-OUT-FOR-D" || + tdiEvent.EventCode == "OK-IN-TRANST" > + "Code": "TRACKING_EVENT_IFTSTA_113",<#-- Delivery in progress --> + <#else> + <#if tdiEvent.EventCode?starts_with("D-") == true || + tdiEvent.EventCode == "OK-DELIVERED" || + tdiEvent.EventCode == "POD" || + tdiEvent.EventCode == "FAC" || + tdiEvent.EventCode == "OK-WITHDRAWA" > + "Code": "TRACKING_EVENT_IFTSTA_21",<#-- Process Completed --> + <#else> + <#if tdiEvent.EventCode?starts_with("DC") == true || + tdiEvent.EventCode?starts_with("DN") == true || + tdiEvent.EventCode?starts_with("DR") == true || + tdiEvent.EventCode?starts_with("C-") == true || + tdiEvent.EventCode == "SUP" || + tdiEvent.EventCode == "NEX" > + "Code": "TRACKING_EVENT_IFTSTA_14",<#-- Delivery completed --> + <#else> + "Code": "TRACKING_EVENT_UNKNOWN", + + + + + + "Reason": "${tdiEvent.EventLabel}" + } + ] + } +} \ No newline at end of file diff --git a/TDItoRP_TrackingURLUpdated.ftl b/TDItoRP_TrackingURLUpdated.ftl new file mode 100644 index 0000000..fe33996 --- /dev/null +++ b/TDItoRP_TrackingURLUpdated.ftl @@ -0,0 +1,11 @@ +{ + "Header": { + "ProjectID": "${projectRP}" + }, + "ID": { + "RefID": "${tdiEvent.ParcelNumber}" + }, + "Payload": { + "TrackingURL": "${tdiEvent.TrackingUrl}" + } +} \ No newline at end of file