From 5477fbd66a3c75592b8de8fffbc19e3107c701af Mon Sep 17 00:00:00 2001 From: Laurie Montant Date: Wed, 12 Nov 2025 16:30:59 +0100 Subject: [PATCH] SCPN1-8643 --- ...HsrCarrierApt_SiteForceBookAppointment.ftl | 47 +++++++++++++------ 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/RFXtoRP_HsrCarrierApt_SiteForceBookAppointment.ftl b/RFXtoRP_HsrCarrierApt_SiteForceBookAppointment.ftl index 1a08474..7e270ab 100644 --- a/RFXtoRP_HsrCarrierApt_SiteForceBookAppointment.ftl +++ b/RFXtoRP_HsrCarrierApt_SiteForceBookAppointment.ftl @@ -1,10 +1,7 @@ <#include "HfRpConfig.ftl"> <#include "ReflexUtils.ftl"> - - <#-- à quoi correspond ID du transporteur dans l'API a voir avec Vincent--> - [ { <#assign appointment_reception_start_datetime = RfxDateTimetoUTCWithTimezone(carrier_apt.planned_unloading_start_datetime,time_zone_rfx) /> @@ -14,10 +11,12 @@ "Header":{ "ProjectID": "${projectRP}" }, - "ActorID": "${carrier_apt.physical_depot}", + "ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}", + "AppointmentID": "${carrier_apt.appointment_reference?json_string}", + "TimeZone":"${time_zone_rfx}", <#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "false"> - <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_RECEPTION> - <#assign duration = RfxDurationBetweenTwoDateTimetoInSeconds(carrier_apt.planned_unloading_start_datetime,carrier_apt.planned_unloading_end_datetime,time_zone_rfx) /> + <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_RECEPTION> + <#assign duration = RfxDurationBetweenTwoDateTimetoInSeconds(carrier_apt.planned_unloading_start_datetime,carrier_apt.planned_unloading_end_datetime,time_zone_rfx) /> <#else> <#if carrier_apt.unloading_appointment == "false" && carrier_apt.load_appointment == "true" > <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_EXPEDITION> @@ -27,17 +26,37 @@ <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_BOTH> <#assign duration = 0 /> <#-- à confirmer --> <#else> - <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN> - <#assign duration = 0 /> <#-- à confirmer --> + <#assign appointmentType = AppointmentType.APPOINTMENT_TYPE_UNKNOWN> + <#assign duration = 0 /> <#-- à confirmer --> - "ProjectID": "${projectRP}", - "Emails": ["francis.reat@hardis-group.com"], <#-- à confirmer --> - "Reason": "no commission", <#-- à confirmer --> - "CarrierName": "${carrier_apt.planned_carrier}", "AppointmentType": "${appointmentType}", - "AppointmentID": "${carrier_apt.appointment_reference}", + "Emails": ["francis.reat@hardis-group.com"], <#-- à confirmer --> + + <#if carrier_apt.physical_receipt_list?? && (carrier_apt.physical_receipt_list?size == carrier_apt.physical_receipt_list?filter(l ->l??)?size)> + "Commissions": [ + <#list carrier_apt.physical_receipt_list as physical_receipt> + { + "ActorID": "${RFXtoRPprefixDepot(carrier_apt.physical_depot?json_string)}", + "OrderID": "${physical_receipt.physical_receipt_reference?json_string}", + "ProjectID": "${projectRP}", + "Quantities": [ + { + "UnitID": "PAL", <#-- à changer --> + "Value": 1 <#-- à changer --> + } + ] + }<#sep>, + + ] + <#else> + "ProjectID": "${projectRP}", + "Reason": "no commission", <#-- à confirmer --> + + <#if carrier_apt.planned_carrier?? && carrier_apt.planned_carrier!=""> + "CarrierName": "${carrier_apt.planned_carrier}", + "Slots": [{ <#-- calcul de de la durée en fonction des start et end time--> "DurationInSeconds": "${duration}", @@ -48,7 +67,7 @@ "StartDateTime": "${carrier_apt.planned_load_start_datetime}" <#else> <#assign duration = RfxDurationBetweenTwoDateTimetoInSeconds(carrier_apt.planned_unloading_start_datetime,carrier_apt.planned_load_start_datetime,time_zone_rfx) /> - <#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true"> + <#if carrier_apt.unloading_appointment == "true" && carrier_apt.load_appointment == "true"> <#if duration >= 0> "StartDateTime": "${carrier_apt.planned_unloading_start_datetime}" <#else>