From ee7e5bb8c94df6a854a13e8489b9b6818ff1295f Mon Sep 17 00:00:00 2001 From: Laurie Montant Date: Fri, 3 Apr 2026 16:22:31 +0200 Subject: [PATCH] SCPN1-10534 --- RFXtoRP_RestResponse.ftl | 68 +++++++++++++++++++--------------- RPtoRFX_ExecutionflowEvent.ftl | 6 +-- 2 files changed, 42 insertions(+), 32 deletions(-) diff --git a/RFXtoRP_RestResponse.ftl b/RFXtoRP_RestResponse.ftl index 4910c41..9ce70f5 100644 --- a/RFXtoRP_RestResponse.ftl +++ b/RFXtoRP_RestResponse.ftl @@ -8,12 +8,22 @@ <#assign projectRP = project> <#assign organisationRP = organisation> - <#assign aDateTime = .now> <#assign no_apiRestReflexID = "no apiRestReflexID"> <#assign no_status = -99999> <#assign event = "UNKNOW_EVENT" > +<#-- --------------------------------------------------------------------------------------- --> +<#-- DeleteEF est un paramètre qui permet de déterminer si l’exécution logistique doit être supprimée lors de la création d’une commande.--> +<#-- Attention : si vous choisissez de la supprimer, toutes les métadonnées associées à cette exécution logistique seront également supprimées. --> +<#-- Si DeleteEF_False = vrai, nous ne supprimons pas l'exécution logistique, Si DeleteEF_False = false, nous supprimons l'exécution logistique.--> +<#-- --------------------------------------------------------------------------------------- --> +<#-- DeleteEF is a parameter used to determine whether the logistics execution should be deleted when creating an order.--> +<#-- Warning: if deletion is selected, all metadata related to the logistics execution will also be removed. --> +<#-- If DeleteEF_False = true, we do not delete the logistics execution. If DeleteEF_False = false, we delete the logistics execution. --> +<#-- --------------------------------------------------------------------------------------- --> +<#assign DeleteEF_False = true> + <#switch id.apiRestReflexID!no_apiRestReflexID> <#case no_apiRestReflexID> [ @@ -59,17 +69,17 @@ <#case 201> <#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) /> <#assign preparationOrderPostResponse = JsonUtil.jsonToMap(restResponseBody)> - <#if preparationOrderPostResponse.status?? && preparationOrderPostResponse.status == "SUCCESS" > - [ - { - <#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDeleted> - "apiReflexPlatformID" : "${apiReflexPlatformID}", - "datas" : - <#include "RFXtoRP_ExecutionflowDeleted.ftl"> - } - ] - <#else> - <#if preparationOrderPostResponse.status?? && preparationOrderPostResponse.status == "WARN"> + <#if preparationOrderPostResponse.status?? && (preparationOrderPostResponse.status == "SUCCESS" || preparationOrderPostResponse.status == "WARN") > + <#if DeleteEF_False> + [ + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowShipFromAcked> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_PrepOrder_ShipFromAcked.ftl"> + } + ] + <#else> [ { <#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDeleted> @@ -78,24 +88,24 @@ <#include "RFXtoRP_ExecutionflowDeleted.ftl"> } ] - <#else> - [ - { - <#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) /> - <#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate> - "apiReflexPlatformID" : "${apiReflexPlatformID}", - "datas" : - <#assign event = "RP_EXECUTIONFLOW_EVENT"> - <#include "RFXtoRP_PlatformLogCreate.ftl"> - }, - { - <#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError> - "apiReflexPlatformID" : "${apiReflexPlatformID}", - "datas" : - <#include "RFXtoRP_RestResponseAllocationError.ftl"> - } - ] + <#else> + [ + { + <#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) /> + <#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#assign event = "RP_EXECUTIONFLOW_EVENT"> + <#include "RFXtoRP_PlatformLogCreate.ftl"> + }, + { + <#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError> + "apiReflexPlatformID" : "${apiReflexPlatformID}", + "datas" : + <#include "RFXtoRP_RestResponseAllocationError.ftl"> + } + ] <#break> <#default> diff --git a/RPtoRFX_ExecutionflowEvent.ftl b/RPtoRFX_ExecutionflowEvent.ftl index b959c1e..a6b8883 100644 --- a/RPtoRFX_ExecutionflowEvent.ftl +++ b/RPtoRFX_ExecutionflowEvent.ftl @@ -29,9 +29,9 @@ [ <#if eventRP.partnerAppRole == "ShipFrom" && executionflow.ShipFrom.ActorID != "" && executionflow.ShipFrom.Actor.IsShipFromConnected?? && executionflow.ShipFrom.Actor.IsShipFromConnected> { - <#assign apiRestReflexID = ApiRestReflexID.preparation_orders_post> - "apiRestReflexID" : "${apiRestReflexID}", - "datas" : + <#assign apiRestReflexID = ApiRestReflexID.preparation_orders_post> + "apiRestReflexID" : "${apiRestReflexID}", + "datas" : <#include "RPtoRFX_PrepOrder.ftl"> }