Compare commits

..

56 Commits

Author SHA1 Message Date
Vincent LE MAÎTRE
45258af56e Release 2.0.17+1 2026-01-08 10:27:50 +01:00
Vincent LE MAÎTRE
11c4386aaa Release 2.0.16+1 2026-01-08 08:51:23 +01:00
Vincent LE MAÎTRE
4d4578a88c Release 2.0.15+1 2026-01-08 08:49:45 +01:00
Vincent LEMAITRE
c0ebc698c8 Edit VERSION 2026-01-08 07:39:38 +00:00
Vincent LE MAÎTRE
81c67a8426 Release 2.0.16 2026-01-08 08:25:22 +01:00
8a6260f54d Merge branch 'release-2.0-fix-1.12-FTL' into 'release/2.0'
release-2.0-fix-1.12-FTL

See merge request r-d-technique/tiers/reflex-wms-connector!215
2026-01-07 16:54:57 +00:00
aba0cf5629 Merge branch 'develop' into release-2.0-fix-1.12-FTL 2026-01-07 16:25:50 +01:00
6bdd925601 rdz 2026-01-07 16:02:19 +01:00
9e8e20f6ce RDV 2026-01-07 14:08:07 +01:00
5006beed8c RDV 2026-01-07 11:50:10 +01:00
e2eb764e2e RDV 2026-01-07 09:08:13 +01:00
6b86a61015 RDV 2026-01-06 16:42:13 +01:00
b1c46cd0f1 RDV 2026-01-06 16:29:08 +01:00
e7c3154c56 SCPN1-9905 2026-01-06 14:53:53 +01:00
706c73a530 RDV 2026-01-06 14:37:00 +01:00
955928a754 RDV 2026-01-05 17:23:25 +01:00
ec76673e95 RDV 2026-01-05 16:40:32 +01:00
e6cd04b6bf RDV 2026-01-05 16:37:45 +01:00
2e3cd66843 RDV 2026-01-05 16:05:59 +01:00
2987a4fb38 RDV 2026-01-05 15:58:24 +01:00
d4a389737e RDV 2026-01-05 15:44:34 +01:00
3a14a46b18 RDV 2026-01-05 15:41:23 +01:00
808b2072ce RDV 2026-01-05 14:55:37 +01:00
9c22f7786f RDV 2026-01-02 09:30:45 +01:00
dcbd037b22 RDV 2025-12-23 16:07:44 +01:00
44a4f5f0cc Release 2.0.15+2 2025-12-23 15:37:44 +01:00
03b2104500 Merge branch 'develop' into 'release/2.0'
Develop

See merge request r-d-technique/tiers/reflex-wms-connector!211
2025-12-23 14:35:48 +00:00
e1b1b8ad2d RDV 2025-12-23 15:23:43 +01:00
f66912121e RDV 2025-12-23 15:17:25 +01:00
b361f1fcf7 RDV 2025-12-23 14:54:53 +01:00
51b5fd7d17 RDV 2025-12-23 13:59:33 +01:00
e1d6e3ca3f RDV 2025-12-23 13:56:04 +01:00
861cd70eb9 RDV 2025-12-23 12:11:23 +01:00
b14e6c21ff RDV 2025-12-23 12:03:15 +01:00
c352775cd4 RDV 2025-12-23 11:54:02 +01:00
f1b0d1a5d4 RDV 2025-12-23 11:53:50 +01:00
fad0c31ae8 RDV 2025-12-23 11:52:49 +01:00
f81591371f RDV 2025-12-23 11:43:58 +01:00
7d0d4d5538 RDV 2025-12-23 11:38:32 +01:00
481bbcb1af RDV 2025-12-23 11:31:35 +01:00
6e4cc5549a RDV 2025-12-23 11:12:41 +01:00
ce415efc4e RDV 2025-12-23 10:30:55 +01:00
a6262045f4 RDV 2025-12-23 10:15:16 +01:00
3a7cfb555f RDV 2025-12-23 09:33:10 +01:00
249f9e3fbe RDV 2025-12-22 16:33:31 +01:00
3bd0cd26fd RDV 2025-12-22 16:27:11 +01:00
369a8b7e10 RDV 2025-12-22 16:23:47 +01:00
a3fc98c8d9 RDV 2025-12-22 16:07:50 +01:00
613cfcd377 RDV 2025-12-22 15:54:53 +01:00
c0bec9085b RDV 2025-12-22 15:50:33 +01:00
72143d38bd RDV 2025-12-22 15:48:26 +01:00
4faf7a3753 RDV 2025-12-22 15:35:21 +01:00
6ae403817f RDV 2025-12-22 15:28:42 +01:00
a661bcc5e6 RDV 2025-12-22 15:09:49 +01:00
82c4aea28e RDV 2025-12-22 11:30:31 +01:00
420d1cd0ef RDV 2025-12-22 10:28:09 +01:00
40 changed files with 491 additions and 240 deletions

View File

@@ -19,8 +19,8 @@
<#-- *********************************************** Action = Update ******************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign carrier_apt_status = JsonUtil.jsonToMap(dataRfx)>
<#if !carrier_apt_status.status??>
<#stop 'the updated appointment Status not initialized'>
<#if !carrier_apt_status.status?? || carrier_apt_status.appointment_year_number==0>
<#stop >
</#if>
[
{

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -8,7 +8,7 @@
<#if carrier_apt_status.appointment_reference?? && carrier_apt_status.appointment_reference !="">
"RefID": "${carrier_apt_status.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt_status.physical_depot?json_string}${carrier_apt_status.appointment_year_number?json_string}${carrier_apt_status.appointment_number?json_string}",
"RefID": "${carrier_apt_status.appointment_year_number?json_string}-${carrier_apt_status.appointment_number?json_string}",
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -23,19 +23,18 @@
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrCarrierApt_SiteForceBookAppointment.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentCarrierExpected>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrCarrierApt_AppointmentCarrierExpected.ftl">
},
}
<#if (carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "false" && (carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-") || carrier_apt.planned_unloading_end_datetime?starts_with("00") || carrier_apt.planned_unloading_end_datetime?contains("-00-"))) || (carrier_apt.unloading_appointment == "false" && carrier_apt.load_appointment == "true" && (carrier_apt.planned_load_start_datetime?starts_with("00") || carrier_apt.planned_load_start_datetime?contains("-00-") || carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-"))) || (carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true" && (carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-") || carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-")))>
<#stop "One of the datetime fields of appointment is not initialized" >
<#else>
,
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentCustomFieldsUpdated>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrCarrierApt_AppointmentCustomFieldsUpdated.ftl">
}
</#if>
]
<#break>
<#case "U">
@@ -120,15 +119,15 @@
}
]
<#else>
<#if carrier_apt.physical_receipt_list?? && (carrier_apt.physical_receipt_list?filter(l ->l??)?size != 0)>
[
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.SiteWMSUpdateAppointment>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrCarrierApt_UpdateAppointment.ftl">
}
]
<#if carrier_apt.physical_receipt_list?? && (carrier_apt.physical_receipt_list?filter(l ->l??)?size != 0) && ((carrier_apt.unloading_appointment =="true" && carrier_apt.load_appointment =="false") || (carrier_apt.unloading_appointment =="false" && carrier_apt.load_appointment =="true"))>
[
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.SiteWMSUpdateAppointment>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrCarrierApt_UpdateAppointment.ftl">
}
]
<#else>
[
{

View File

@@ -1,26 +0,0 @@
[
<#assign ref_datetime = RfxDateTimetoUTCWithTimezone(carrier_apt.metadata.creation_datetime,time_zone_rfx) />
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"RefID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"
}
},
"Payload":{
"ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}"
}
}
]

View File

@@ -5,14 +5,18 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"RefID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
</#if>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"RefID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"RefID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"RefID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",

View File

@@ -5,15 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"RefID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
</#if>
</#if>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
}
"Payload": {
"ActorID": "ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}",

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -4,13 +4,17 @@
"ProjectID": "${projectRP}"
},
"ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}",
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"TimeZone":"${time_zone_rfx}",
@@ -25,7 +29,7 @@
</#if>
<#else>
<#if carrier_apt.unloading_appointment == "false" && carrier_apt.load_appointment == "true" >
<#if carrier_apt.planned_load_start_datetime?starts_with("00") || carrier_apt.planned_load_start_datetime?contains("-00-") || carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-")>
<#if carrier_apt.planned_load_start_datetime?starts_with("00") || carrier_apt.planned_load_start_datetime?contains("-00-") || carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-")>
<#stop "planned_load_start_datetime or planned_load_end_datetime field of appointmend is not initialized" >
</#if>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_LOADING>
@@ -35,10 +39,17 @@
</#if>
<#else>
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#stop "Not managed">
<#if carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-") || carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-") >
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend is not initialized" >
</#if>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNLOADING>
<#assign duration = DurationBetweenTwoDatetimeInSeconds(carrier_apt.planned_unloading_start_datetime?datetime.iso,carrier_apt.planned_load_end_datetime?datetime.iso) />
<#if (duration <= 0)>
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend are not valid" >
</#if>
<#else>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN>
<#assign duration = 0 /> <#-- à confirmer -->
<#assign duration = 0 />
</#if>
</#if>
</#if>
@@ -93,10 +104,18 @@
<#include "RFXtoRP_HsrCarrierApt_Quantities.ftl">
}
],
<#if carrier_apt.appointment_designation?? && carrier_apt.appointment_designation!="">
"Reason": "${carrier_apt.appointment_designation?json_string}",
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
"Reason": "UNLOADING AND LOADING / ${carrier_apt.appointment_designation?json_string}",
<#else>
"Reason": "No commission",
<#if carrier_apt.appointment_designation?? && carrier_apt.appointment_designation!="">
"Reason": "${carrier_apt.appointment_designation?json_string}",
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"Reason": "${carrier_apt.appointment_reference?json_string}",
<#else>
"Reason": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
</#if>
</#if>
"Slots": [{
@@ -106,7 +125,6 @@
<#if carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-")>
<#stop "planned_unloading_start_datetime field of appointmend is not initialized" >
</#if>
"StartDateTime": "${carrier_apt.planned_unloading_start_datetime}"
<#else>
<#if carrier_apt.unloading_appointment == "false" && carrier_apt.load_appointment == "true">
@@ -115,7 +133,12 @@
</#if>
"StartDateTime": "${carrier_apt.planned_load_start_datetime}"
<#else>
<#stop "Not managed">
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#if carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-")>
<#stop "planned_unloading_start_datetime field of appointmend is not initialized" >
</#if>
"StartDateTime": "${carrier_apt.planned_unloading_start_datetime}"
</#if>
</#if>
</#if>
}]

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -5,11 +5,19 @@
"ProjectID": "${projectRP}"
},
"ID": {
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference !="">
"RefID": "${carrier_apt.appointment_reference?json_string}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
"RefID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number?json_string}${carrier_apt.appointment_number?json_string}",
</#if>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${ref_datetime}",
"AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -5,13 +5,17 @@
"Header":{
"ProjectID": "${projectRP}"
},
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "false">
@@ -35,14 +39,24 @@
</#if>
<#else>
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#stop "Not managed">
<#else>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN>
<#assign duration = 0 /> <#-- à confirmer -->
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#if carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-") || carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-") >
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend is not initialized" >
</#if>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNLOADING>
<#assign duration = DurationBetweenTwoDatetimeInSeconds(carrier_apt.planned_unloading_start_datetime?datetime.iso,carrier_apt.planned_load_end_datetime?datetime.iso) />
<#if (duration <= 0)>
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend are not valid" >
</#if>
<#else>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN>
<#assign duration = 0 /> <#-- à confirmer -->
</#if>
</#if>
</#if>
</#if>
"ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}",
"TimeZone":"${time_zone_rfx}",
"CustomFields": [
{
"Key": "depot",
@@ -81,7 +95,26 @@
</#list>
],
<#else>
<#stop>
"Commissions": [
{
"ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}",
"ProjectID": "${projectRP}",
<#include "RFXtoRP_HsrCarrierApt_Quantities.ftl">
}
],
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
"Reason": "UNLOADING AND LOADING / ${carrier_apt.appointment_designation?json_string}",
<#else>
<#if carrier_apt.appointment_designation?? && carrier_apt.appointment_designation!="">
"Reason": "${carrier_apt.appointment_designation?json_string}",
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"Reason": "${carrier_apt.appointment_reference?json_string}",
<#else>
"Reason": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
</#if>
</#if>
"Slots": [{
<#-- calcul de de la durée en fonction des start et end time-->

View File

@@ -4,13 +4,17 @@
"Header":{
"ProjectID": "${projectRP}"
},
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
<#if carrier_apt.constant_appointment?? && carrier_apt.constant_appointment== "true">
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}-${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
<#else>
"AppointmentID": "${carrier_apt.physical_depot?json_string}${carrier_apt.year_number}${carrier_apt.appointment_number}",
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}", <#-- pour les RDV récurrents, aligner les statuts quand la balise sera dispo -->
</#if>
<#else>
<#if carrier_apt.appointment_reference?? && carrier_apt.appointment_reference!="">
"AppointmentID": "${carrier_apt.appointment_reference?json_string}",
<#else>
"AppointmentID": "${carrier_apt.year_number}-${carrier_apt.appointment_number}",
</#if>
</#if>
"ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}",
@@ -35,7 +39,14 @@
</#if>
<#else>
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#stop "Not managed">
<#if carrier_apt.planned_load_end_datetime?starts_with("00") || carrier_apt.planned_load_end_datetime?contains("-00-") || carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-") >
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend is not initialized" >
</#if>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNLOADING>
<#assign duration = DurationBetweenTwoDatetimeInSeconds(carrier_apt.planned_unloading_start_datetime?datetime.iso,carrier_apt.planned_load_end_datetime?datetime.iso) />
<#if (duration <= 0)>
<#stop "planned_unloading_start_datetime or planned_load_end_datetime field of appointmend are not valid" >
</#if>
<#else>
<#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN>
<#assign duration = 0 /> <#-- à confirmer -->
@@ -58,7 +69,10 @@
"StartDateTime": "${carrier_apt.planned_load_start_datetime}"
<#else>
<#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true">
<#stop "Not managed">
<#if carrier_apt.planned_unloading_start_datetime?starts_with("00") || carrier_apt.planned_unloading_start_datetime?contains("-00-")>
<#stop "planned_unloading_start_datetime field of appointmend is not initialized" >
</#if>
"StartDateTime": "${carrier_apt.planned_unloading_start_datetime}"
</#if>
</#if>
</#if>

View File

@@ -27,14 +27,13 @@
"datas" :
<#include "RFXtoRP_HsrPrepa_HandlingunitGoodsPrepared.ftl">
},
<#include "RFXtoRP_HsrPrepa_ExecutionflowMetadataUpdated.ftl">
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrPrepa_HandlingUnitDispatched.ftl">
}
<#if preparationOrder.load_data?? && preparationOrder.load_data.carrier_code?? && preparationOrder.load_data.carrier_code!="">
,
{

View File

@@ -0,0 +1,27 @@
<#--
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID":{
"RefID": "${Your_Object_ID}"
},
"Payload":{
"MetaData": [
{
"Key": "string",
"Value": {
"Bool": "true / false",
"Float": 3.1415,
"Int": 42,
"String": "Hello World !",
"Timestamp": {
"AuthorTimeZone": "Europe/Paris",
"DateTime": "2023-01-01T00:00:00Z"
}
}
}
]
}
}
-->

View File

@@ -0,0 +1,10 @@
<#-- A décommenter si besoin de les utiliser-->
<#-- Uncomment if you need to use them-->
<#--
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowMetaDataUpdated>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsrPrepa_ExecutionflowMetaDataUpdatedToConfigure.ftl">
},
-->

View File

@@ -212,10 +212,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
<#break>
@@ -239,10 +239,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#if>
@@ -261,10 +261,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#switch>
@@ -287,10 +287,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
<#break>
@@ -314,10 +314,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#if>
@@ -336,10 +336,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#switch>
@@ -362,10 +362,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
<#break>
@@ -389,10 +389,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#if>
@@ -411,10 +411,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#switch>
@@ -422,6 +422,8 @@
<#-- *********************************************** ApiRestID = appointment_post_physical_receipt_associations ******************** -->
<#case "appointment_post_physical_receipt_associations_by_ref">
<#case "appointment_post_physical_receipt_associations_by_number">
<#case "appointment_post_physical_receipt_dissociations_by_ref">
<#case "appointment_post_physical_receipt_dissociations_by_number">
<#switch restResponsetMsg.status!no_status>
<#case no_status>
[
@@ -437,10 +439,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
<#break>
@@ -464,10 +466,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#if>
@@ -486,10 +488,10 @@
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
<#assign apiReflexPlatformID = ApiReflexPlatformID.AppointmentAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
<#include "RFXtoRP_RestResponseAppointmentAllocationError.ftl">
}
]
</#switch>

View File

@@ -0,0 +1,22 @@
<#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
"RefID": "${id.refid!"no RefID"?trim?json_string}",
"RefDate": {
"DateTime": "${aDateTime?iso_utc}",
"AuthorTimeZone": "${time_zone_rfx}"
}
},
"Payload": {
"ActorID":"${RFXtoRPprefixDepot(id.actorID)?trim?json_string}"
}
}
]

View File

@@ -26,21 +26,43 @@
<#-- *********************************************** Action = CommissionsUpdated ******************** -->
<#case "CommissionsUpdated">
<#assign appointment = eventRP.data />
[
<#if eventRP.appointmentCustomFields?has_content>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_associations_by_number>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptAssociationByNumber.ftl">
}
[ <#if appointment.AppointmentType == "APPOINTMENT_TYPE_UNLOADING">
<#if eventRP.addedCommissions?? && eventRP.addedCommissions!="">
<#if eventRP.appointmentCustomFields?has_content>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_associations_by_number>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptAssociationByNumber.ftl">
}
<#else>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_associations_by_ref>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptAssociationByRef.ftl">
}
</#if>
</#if>
<#if eventRP.removedCommissions?? && eventRP.removedCommissions!="">
<#if eventRP.appointmentCustomFields?has_content>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_dissociations_by_number>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptDissociationByNumber.ftl">
}
<#else>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_dissociations_by_ref>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptDissociationByRef.ftl">
}
</#if>
</#if>
<#else>
{
<#assign apiRestReflexID = ApiRestReflexID.appointment_post_physical_receipt_associations_by_ref>
"apiRestReflexID" : "${apiRestReflexID}",
"datas" :
<#include "RPtoRFX_CarrierAppointmentPhysicalReceiptAssociationByRef.ftl">
}
<#stop "Unsupported Appointment Type for Commissions Update">
</#if>
]
<#break>

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/appointment_years/{appointment_year}/appointment_numbers/{appointment_number}/status",
"method" : "PUT",
"uri_substitutions": {

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/carrier_appointments/{appointment_reference}/status",
"method" : "PUT",
"uri_substitutions": {

View File

@@ -1,2 +1,2 @@
<#-- To custom with cancellation reason code-->
<#-- To custom with cancellation reason code, the reason code must be cancellation type-->
"cancellation_reason_code": ""

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/carrier_appointments",
"method" : "POST",
"uri_substitutions": {
@@ -12,15 +12,25 @@
<#case "APPOINTMENT_TYPE_LOADING">
"unloading_appointment" : "false",
"load_appointment" : "true",
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#break>
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#case "APPOINTMENT_TYPE_UNLOADING">
"unloading_appointment" : "true",
"load_appointment" : "false",
"planned_unloading_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#break>
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#default>
<#stop "appointment.AppointmentType not implemented" >
</#switch>
@@ -46,11 +56,7 @@
</#if>
<#else>
<#if appointment.AppointmentType == "APPOINTMENT_TYPE_LOADING">
<#if appointment.Commissions[0].OrderID ?? && appointment.Commissions[0].OrderID!="">
"appointment_designation":"LOADING",
<#else>
"appointment_designation":"${(appointment.Reason!"")?json_string}",
</#if>
</#if>
</#if>
</#if>

View File

@@ -2,8 +2,15 @@
<#-- Note : you can use Order Line Segmentation keys, using the define map : SegmentationKeys_Map -->
<#-- How to use MD or SK map
Example :
<#assign owner_code = SegmentationKeys_Map["Owner"].String!""/>
<#if appointment.CarrierInformation??>
<#assign CarrierInformation_Map = JsonUtil.sequenceToMap(appointment.CarrierInformation, "Key", "Value") />
<#if CarrierInformation_Map["Immatriculation"]??>
<#assign registration_number1 = CarrierInformation_Map["Immatriculation"].String!""/>
"registration_number":"${registration_number1}",
<#else>
"registration_number":"no plate number",
</#if>
</#if>
If your SK is :
Boolean : .Bool

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/appointment_years/{appointment_year}/appointment_numbers/{appointment_number}/physical_receipt_associations",
"method" : "POST",
"uri_substitutions": {
@@ -9,25 +9,18 @@
},
"payload" :
{
<#if appointment.Commissions??>
<#if appointment.AppointmentType == "APPOINTMENT_TYPE_UNLOADING">
"physical_receipt_list": [
<#list eventRP.executionflowCustomFields.entrySet()?filter(l ->l.value?? && l.value?has_content) as custom>
{
"receipt_activity": "${custom.value.activity_code?json_string}",
"originator_code": "${custom.value.originator_code?json_string}",
"physical_receipt_reference": "${custom.value.reference?json_string}",
"receipt_year": "${custom.value.order_year?json_string}",
"receipt_number": "${custom.value.order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
<#else>
<#if appointment.AppointmentType == "APPOINTMENT_TYPE_LOADING">
"appointment_designation":"LOADING"
</#if>
</#if>
</#if>
<#assign executionflowCustomFields = eventRP.executionflowCustomFields >
"physical_receipt_list": [
<#list eventRP.addedCommissions as addedCommission>
{
"receipt_activity": "${executionflowCustomFields[addedCommission.ExecutionflowID].activity_code?json_string}",
"originator_code": "${executionflowCustomFields[addedCommission.ExecutionflowID].originator_code?json_string}",
"physical_receipt_reference": "${executionflowCustomFields[addedCommission.ExecutionflowID].reference?json_string}",
"receipt_year": "${executionflowCustomFields[addedCommission.ExecutionflowID].order_year?json_string}",
"receipt_number": "${executionflowCustomFields[addedCommission.ExecutionflowID].order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
}
}

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/carrier_appointments/{appointment_reference}/physical_receipt_associations",
"method" : "POST",
"uri_substitutions": {
@@ -8,25 +8,18 @@
},
"payload" :
{
<#if appointment.Commissions??>
<#if appointment.AppointmentType == "APPOINTMENT_TYPE_UNLOADING">
"physical_receipt_list": [
<#list eventRP.executionflowCustomFields.entrySet()?filter(l ->l.value?? && l.value?has_content) as custom>
{
"receipt_activity": "${custom.value.activity_code?json_string}",
"originator_code": "${custom.value.originator_code?json_string}",
"physical_receipt_reference": "${custom.value.reference?json_string}",
"receipt_year": "${custom.value.order_year?json_string}",
"receipt_number": "${custom.value.order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
<#else>
<#if appointment.AppointmentType == "APPOINTMENT_TYPE_LOADING">
"appointment_designation":"LOADING"
</#if>
</#if>
</#if>
<#assign executionflowCustomFields = eventRP.executionflowCustomFields >
"physical_receipt_list": [
<#list eventRP.addedCommissions as addedCommission>
{
"receipt_activity": "${executionflowCustomFields[addedCommission.ExecutionflowID].activity_code?json_string}",
"originator_code": "${executionflowCustomFields[addedCommission.ExecutionflowID].originator_code?json_string}",
"physical_receipt_reference": "${executionflowCustomFields[addedCommission.ExecutionflowID].reference?json_string}",
"receipt_year": "${executionflowCustomFields[addedCommission.ExecutionflowID].order_year?json_string}",
"receipt_number": "${executionflowCustomFields[addedCommission.ExecutionflowID].order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
}
}

View File

@@ -0,0 +1,26 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/appointment_years/{appointment_year}/appointment_numbers/{appointment_number}/physical_receipt_dissociations",
"method" : "POST",
"uri_substitutions": {
"physical_depot_code": "${RPtoRFXprefixDepot(eventRP.actor)}",
"appointment_year":"${eventRP.appointmentCustomFields.year?json_string}",
"appointment_number":"${eventRP.appointmentCustomFields.number?json_string}"
},
"payload" :
{
<#assign executionflowCustomFields = eventRP.executionflowCustomFields >
"physical_receipt_list": [
<#list eventRP.removedCommissions as removedCommission>
{
"receipt_activity": "${executionflowCustomFields[removedCommission.ExecutionflowID].activity_code?json_string}",
"originator_code": "${executionflowCustomFields[removedCommission.ExecutionflowID].originator_code?json_string}",
"physical_receipt_reference": "${executionflowCustomFields[removedCommission.ExecutionflowID].reference?json_string}",
"receipt_year": "${executionflowCustomFields[removedCommission.ExecutionflowID].order_year?json_string}",
"receipt_number": "${executionflowCustomFields[removedCommission.ExecutionflowID].order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
}
}

View File

@@ -0,0 +1,25 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/carrier_appointments/{appointment_reference}/physical_receipt_dissociations",
"method" : "POST",
"uri_substitutions": {
"physical_depot_code": "${RPtoRFXprefixDepot(eventRP.actor)}",
"appointment_reference":"${eventRP.refid?json_string}"
},
"payload" :
{
<#assign executionflowCustomFields = eventRP.executionflowCustomFields >
"physical_receipt_list": [
<#list eventRP.removedCommissions as removedCommission>
{
"receipt_activity": "${executionflowCustomFields[removedCommission.ExecutionflowID].activity_code?json_string}",
"originator_code": "${executionflowCustomFields[removedCommission.ExecutionflowID].originator_code?json_string}",
"physical_receipt_reference": "${executionflowCustomFields[removedCommission.ExecutionflowID].reference?json_string}",
"receipt_year": "${executionflowCustomFields[removedCommission.ExecutionflowID].order_year?json_string}",
"receipt_number": "${executionflowCustomFields[removedCommission.ExecutionflowID].order_number?json_string}"
}
<#sep>,</#sep>
</#list>
]
}
}

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/appointment_years/{appointment_year}/appointment_numbers/{appointment_number}",
"method" : "PUT",
"uri_substitutions": {
@@ -13,15 +13,25 @@
<#case "APPOINTMENT_TYPE_LOADING">
"unloading_appointment" : "false",
"load_appointment" : "true",
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#case "APPOINTMENT_TYPE_UNLOADING">
"unloading_appointment" : "true",
"load_appointment" : "false",
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#break>
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#default>
<#stop "appointment.AppointmentType not implemented" >
</#switch>

View File

@@ -1,5 +1,5 @@
{
"id" : {"refid" : "${eventRP.refid?json_string}"},
"id" : {"refid" : "${eventRP.refid?json_string}","actorID":"${RPtoRFXprefixDepot(eventRP.actor)}"},
"route" : "rest/public/v1/physical_depots/{physical_depot_code}/carrier_appointments/{appointment_reference}",
"method" : "PUT",
"uri_substitutions": {
@@ -12,15 +12,25 @@
<#case "APPOINTMENT_TYPE_LOADING">
"unloading_appointment" : "false",
"load_appointment" : "true",
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#break>
<#case "APPOINTMENT_TYPE_UNLOADING">
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_load_start_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_load_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#case "APPOINTMENT_TYPE_UNLOADING">
"unloading_appointment" : "true",
"load_appointment" : "false",
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_unloading_end_datetime": "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#break>
<#if appointment.TimeZone?? && appointment.TimeZone!="">
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,appointment.TimeZone),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,appointment.TimeZone),time_zone_rfx)}",
<#else>
"planned_unloading_start_datetime":"${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.StartDateTime,time_zone_rfx),time_zone_rfx)}",
"planned_unloading_end_datetime" : "${DateTimeUTCtoRfxLocale(RfxDateTimetoUTCWithTimezone(appointment.Slot.EndDateTime,time_zone_rfx),time_zone_rfx)}",
</#if>
<#break>
<#default>
<#stop "appointment.AppointmentType not implemented" >
</#switch>

View File

@@ -16,14 +16,14 @@
<#assign timeInMilliseconds = (1000 * seconds) >
<#assign aDate = date?long + timeInMilliseconds>
<#return aDate?number_to_datetime>
</#function>
</#function>
<#-- -------------------------------------------------------------------------------------------- -->
<#-- Duration between two datetimes in second -->
<#-- -------------------------------------------------------------------------------------------- -->
<#function DurationBetweenTwoDatetimeInSeconds startDate endDate>
<#return (endDate?long - startDate?long) / 1000 >
</#function>
</#function>
<#-- --------------------------------------------------------------------------------------- -->
<#-- Split email HARDIS WMS into json array string -->

View File

@@ -1 +1 @@
2.0.15+1
2.0.17+1