tdi-connector/TDItoRP.ftl
2023-10-11 15:01:48 +02:00

57 lines
2.1 KiB
Java

<#assign tdiEventMsg = JsonUtil.jsonToMap(input)>
<#assign projectRP = project>
<#assign organisationRP = organisation>
<#assign tdiEvent64b = JsonUtil.decodeBase64(tdiEventMsg.data) />
<#assign tdiEvent = JsonUtil.jsonToMap(tdiEvent64b)>
{"Header":
{
"ProjectID": "${projectRP}"
},
"ID":
{
"RefID": "${tdiEvent.HUReference1}"
},
"Payload":
{"Events": [
<#-- {"Date": {"DateTime": "${tdiEvent.EventDate?datetime.iso?iso_utc}", -->
{"Date": {"DateTime": "${tdiEvent.EventDate}",
"AuthorTimeZone": "UTC"
},
<#if tdiEvent.EventCode?starts_with("T-") == true ||
tdiEvent.EventCode == "OK-COLLECTED" ||
tdiEvent.EventCode == "OK-IN-TRANST" ||
tdiEvent.EventCode == "OK-OUT-FOR-D" ||
tdiEvent.EventCode == "OK-WITHDRAWA" ||
tdiEvent.EventCode == "OK-EDI" >
"Code": "TRACKING_EVENT_IFTSTA_13", <#-- Acheminement conforme -->
<#else>
<#if tdiEvent.EventCode?starts_with("D-") == true ||
tdiEvent.EventCode == "OK-DELIVERED" >
"Code": "TRACKING_EVENT_IFTSTA_21", <#-- Livraison conforme -->
<#else>
<#if tdiEvent.EventCode?starts_with("DC") == true ||
tdiEvent.EventCode?starts_with("DN") == true ||
tdiEvent.EventCode?starts_with("DR") == true >
"Code": "TRACKING_EVENT_IFTSTA_56",<#-- Livraison non aboutiee -->
<#else>
<#if tdiEvent.EventCode?starts_with("TD") == true ||
tdiEvent.EventCode?starts_with("TA") == true >
"Code": "TRACKING_EVENT_IFTSTA_53",<#-- Acheminement non réalisé -->
<#else>
<#if tdiEvent.EventCode == "OK-IN-TRANST" >
"Code": "TRACKING_EVENT_IFTSTA_5",<#-- Acheminement en cours -->
<#else>
"Code": "TRACKING_EVENT_UNKNOWN",
</#if>
</#if>
</#if>
</#if>
</#if>
"Reason": "${tdiEvent.EventLabel}"
}
]
}
}