You've already forked reflex-wms-connector
Compare commits
386 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b29f28997a | |||
| fc18c04521 | |||
| f4b0561643 | |||
| 12e157078c | |||
| ac7936a675 | |||
| 36804fef81 | |||
| c1023741bb | |||
| db40be98f4 | |||
| 6b7592559b | |||
| 9db774f2b1 | |||
| 8cb5f4d0b5 | |||
| 75f791bf62 | |||
| aab63ed3ee | |||
| 3c579500ef | |||
| c04c8c581f | |||
| 7cdacb981b | |||
| 18adbf609d | |||
| 9a456ac412 | |||
| cb8f9d84b2 | |||
| f6fb052e8c | |||
| 828fe74f5b | |||
| fa59170f4d | |||
| db7d673b07 | |||
| 92b4f80170 | |||
| 5063703e56 | |||
| 544cecb4f2 | |||
| 06bd2c2520 | |||
| c4d328235f | |||
| 6adc190531 | |||
| 4419794595 | |||
| 2544ee3983 | |||
| 3e978f8d75 | |||
| bef91763b1 | |||
| f7ff9071af | |||
| 0f5052308b | |||
| 842bdac857 | |||
| 974cb0a3d4 | |||
| 3d2670b9a2 | |||
| 43855289ed | |||
| 25044dca56 | |||
| 7f6442450b | |||
| 9d6fabef0b | |||
| 577d5272e9 | |||
| 42fd531289 | |||
| bc7b677ada | |||
| f829fa6310 | |||
| d9445d9ad5 | |||
| 6f361e1ffe | |||
| 43e0a5ad0d | |||
| a605e98ccd | |||
| 804ceb25f3 | |||
| 17184ed314 | |||
| 2a036decc0 | |||
| 70b437619a | |||
| a60c20d707 | |||
| da69788478 | |||
| 5d7427b0a0 | |||
| 94e988ac56 | |||
| a5e4cad965 | |||
| c33c54ed92 | |||
| 03ca7d0ef7 | |||
| 4ffaf0ec73 | |||
| bcd2d995c2 | |||
| 578afb23ef | |||
| a85eb86c99 | |||
| fb329894cc | |||
| f5971a6b06 | |||
| 4256228eb1 | |||
| a610e0b077 | |||
| 6fb9fd6685 | |||
| b40bde6d19 | |||
| cfc2c35e4f | |||
| bdc59a2c20 | |||
| 706d1d057a | |||
| af99f0d11f | |||
| 645a1cda86 | |||
| 18cecd64aa | |||
| 93db70c433 | |||
| 0e9d31ea17 | |||
| 9c27dbf768 | |||
| 877e31529a | |||
| 6ebda9ab09 | |||
| 54d0fc4575 | |||
| 8d74d8f085 | |||
| 53640ab313 | |||
| 8d9072da4a | |||
| fa17314de3 | |||
| b01ba5205b | |||
| 2abe538825 | |||
| f1ef756198 | |||
| ab6aef0026 | |||
| 122122db8c | |||
| 14b8a9a534 | |||
| 372f5d2239 | |||
| 4c3d6fbea6 | |||
| 5e4bcbccbe | |||
| 72ec763cc5 | |||
| a17bfd876c | |||
| bbe97fba7f | |||
| 44830bcd10 | |||
| a6a42f79a6 | |||
| 1be3af7cf1 | |||
| 44e8afd18c | |||
| 236dc49de2 | |||
| 3f916b564d | |||
| 5b74e7f1d3 | |||
| c3163e39d3 | |||
| 34beb5fddf | |||
| 1d6222e6cc | |||
| 40f4396dfa | |||
| 8d453bd599 | |||
| 6e855c31dd | |||
| 2e68e1e839 | |||
| 8ea0c3a1c2 | |||
| 6823a0aeb1 | |||
| fcc7d30336 | |||
| ca36d6688e | |||
| 20404a16df | |||
| 7d4a28d5bb | |||
| 78642ec0d6 | |||
| 9a7f669192 | |||
| 425bf5cb16 | |||
| e7a39a2c5d | |||
| d87942900b | |||
| b0e7dc18d7 | |||
| 6b1d598a75 | |||
| 871648ca6d | |||
| 003a4e1e59 | |||
| b7743f00fb | |||
| ffad895309 | |||
| c7bce6018b | |||
| 362f34f2be | |||
| 1ced677ec6 | |||
| cd1fcf8876 | |||
| 06ebe4b5e0 | |||
| a33210827a | |||
| 7b054e1f57 | |||
| 2752e5b26e | |||
| 6b0a3f0b24 | |||
| c4f2161edb | |||
| a1c4b8a4ac | |||
| 80736c4a30 | |||
| 269c22e434 | |||
| 9cadf3329e | |||
| 4502df6fb0 | |||
| 3ca4b61e3b | |||
| 4a26fd9249 | |||
| 4624bab7ad | |||
| b72199c8b2 | |||
| c754edaafb | |||
| adff1396c1 | |||
| 0b70c90257 | |||
| 2828c01cc4 | |||
| 4553507e3b | |||
| 830db1493b | |||
| 79ad7f53e8 | |||
| c280b2c83a | |||
| 3a0bbdc479 | |||
| 1e9ce7cdc4 | |||
| eefc7070ac | |||
| f9c62d5ee4 | |||
| bcf77601b9 | |||
| 2cae8c7a7c | |||
| 1670a22218 | |||
| cdc78d71b1 | |||
| 6b840c0ce7 | |||
| 8ee7527ba4 | |||
| 1be67f65b2 | |||
| dec9a4b17f | |||
| 04ce7e61f8 | |||
| eb6182c337 | |||
| 9f63f0ee62 | |||
| 5b3de10184 | |||
| 8cfd636c72 | |||
| 18808b6033 | |||
| a849b1c92e | |||
| 810e0eaa89 | |||
| 1dc77965ce | |||
| 9aee7a9448 | |||
| d4765890e5 | |||
| 707078c27c | |||
| 58bcf838bd | |||
| 24f17f434e | |||
| c16c48b270 | |||
| 8257084a45 | |||
| 29e16f12cc | |||
| c74470b780 | |||
| fab2238278 | |||
| 23149a2bfe | |||
| 432cca8ec9 | |||
| 6857ee0697 | |||
| 08e4b04f7f | |||
| bf0ae15a50 | |||
| 3f7cd7a245 | |||
| 173deec755 | |||
| a8ede37b09 | |||
| 85bfe55af7 | |||
| 730750b898 | |||
| d85abf8235 | |||
| 41195c4b84 | |||
| 46a9a82e12 | |||
| ae0b82b6e4 | |||
| 5fc26e6015 | |||
| 640c0f119a | |||
| 236c2d754c | |||
| 5499e3059f | |||
| cae9bf80bb | |||
| b745622d48 | |||
| ed0141584b | |||
| c017ca670c | |||
| e6a27c2ba2 | |||
| 0a26159dc9 | |||
| a4f3bf8151 | |||
| 867fdc5743 | |||
| 7b22eea31d | |||
| b69bfa50ba | |||
| 834abe1b78 | |||
| 3d29596c22 | |||
| e190a16ddc | |||
| e63b14d0ff | |||
| 6c52bee18a | |||
| 04bc005cda | |||
| 6e46d30221 | |||
| 1f2d3ab212 | |||
| a44ebe1430 | |||
| 771915ad19 | |||
| 4a1fe56381 | |||
| a9a357d4ed | |||
| 2beeac8a8a | |||
| 0e3e60b45a | |||
| f0e27a6f88 | |||
| f72bcc2537 | |||
| 9700548214 | |||
| 96aec6555c | |||
| 54511c55f1 | |||
| de828ed606 | |||
| 5b7f1808af | |||
| eaa7ef1b9b | |||
| 16b439d07c | |||
| 4c84e4195b | |||
| 113c94f100 | |||
| 7963b351aa | |||
| 03cbf4c93f | |||
| 8425747b42 | |||
| 03e20e7aed | |||
| 04b7974c77 | |||
| 156b06dc3b | |||
| 087346139d | |||
| 4a6998f885 | |||
| 0a4263d551 | |||
| b00302c8e3 | |||
| 55b7b54b44 | |||
| 26003c24f2 | |||
| 4cc36121ec | |||
| 0468700574 | |||
| fe35481144 | |||
| d21204a949 | |||
| 8c8d20a6d5 | |||
| 46421972a8 | |||
| ccca6d1592 | |||
| cb262cfe37 | |||
| 68622896f0 | |||
| 1f4903ea3c | |||
| fea5691ddd | |||
| 2fb5dcd103 | |||
| 04253d939f | |||
| 562928a7cc | |||
| b80623e631 | |||
| da5513612b | |||
| 23a87c1995 | |||
| a3a2fa3b23 | |||
| 22b26ac7d3 | |||
| 0b3f07add9 | |||
| 28659b1157 | |||
| 3de6a2f6a9 | |||
| 4afc7fa50c | |||
| 6910fb80a8 | |||
| 1052849c12 | |||
| 24ae26673f | |||
| 24a94caf29 | |||
| 513a5c2c3e | |||
| b290285e74 | |||
| 011540fc51 | |||
| 5e9804db40 | |||
| e344cca043 | |||
| b0b4714df9 | |||
| 3f3253c58b | |||
| 15bd095feb | |||
| c0dd029d1f | |||
| 2e0d61310b | |||
| fdb7cf7d2c | |||
| f62ccadba5 | |||
| 2c29166ccb | |||
| 4534155f2e | |||
| 5b18bb79d9 | |||
| 5948467818 | |||
| 2e95864d6f | |||
| c63e4ff5c8 | |||
| 457cfc85c2 | |||
| 6809b32410 | |||
| 01439a2f5f | |||
| 37a5e64e83 | |||
| 2f31833bc3 | |||
| cff0f18d8a | |||
| 1145f22401 | |||
| 22b78b4ffe | |||
| 25bf3110e9 | |||
| 0a32ead29a | |||
| 3cad254046 | |||
| 46a9dc8996 | |||
| 1eb262c91c | |||
| 2588fda3a8 | |||
| 0b36faa2ae | |||
| d060d3eb10 | |||
| 28e99e9a2b | |||
| 78b0b467a3 | |||
| 6f287e878a | |||
| c3a23254b1 | |||
| c47672b8cc | |||
| 9cdcd2784d | |||
| cfe6bddf8d | |||
| 0cb3cc7dd0 | |||
| 6b633663e9 | |||
| c801c574ab | |||
| 6282266c6d | |||
| cb9d61bfe9 | |||
| 60c6f812d1 | |||
| c2f6537e0c | |||
| f5970127b0 | |||
| 33c7ab08a7 | |||
| fb8f9ca651 | |||
| 16c7d6b686 | |||
| fc919c2199 | |||
| 295731a1c1 | |||
| 3365a94098 | |||
| e055eab522 | |||
| c95bdc7f00 | |||
| 319cb6cc51 | |||
| 1f289e229c | |||
| fba36b5d77 | |||
| 892812e85e | |||
| cc5a3521d3 | |||
| a512e4c23a | |||
| 884ad540fe | |||
| 3a9620e3ee | |||
| d5573b6dba | |||
| 162b73e75f | |||
| bb4315bba1 | |||
| 4f102c94be | |||
| c4910785e0 | |||
| 5688244be2 | |||
| de5e94be3c | |||
| 646256d879 | |||
| 60355d1ba5 | |||
| 737763dc7f | |||
| 098b2d4e1d | |||
| 7b55a4bcd0 | |||
| b369dd8adf | |||
| fd1cfcc2c5 | |||
| 9fc489a1ac | |||
| fc8290648f | |||
| 378c1ba75f | |||
| d94a74d399 | |||
| ac18cc3db9 | |||
| a882ac4b86 | |||
| d2d9443fc7 | |||
| b0b4a1a953 | |||
| 30ae93b9e7 | |||
| 9e398a0ea6 | |||
| 64e03640d1 | |||
| 270f90a9b3 | |||
| b5c85220b5 | |||
| 2409cf3a01 | |||
| 957df51487 | |||
| d09fa33577 | |||
| 3bcdec1d5d | |||
| b4ea1e7798 | |||
| 80aecb3aa7 | |||
| e02218f7b1 | |||
| d66baafc55 | |||
| 6270992346 | |||
| 0da464c8b9 | |||
| a544f6700d | |||
| 8ea7fcca53 | |||
| 04ec57377a | |||
| b209e8b5e1 |
15
README.md
15
README.md
@@ -1,11 +1,20 @@
|
|||||||
# Reflex Platform Core FTLs
|
# Reflex Platform Core FTLs
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
The **Reflex WMS Connector** is a set of **FreeMarker templates (FTL)** designed to transform **outgoing JSON flows from Reflex WMS** into **flows compatible with Reflex Platform**.
|
||||||
|
|
||||||
These FTL core files aim to translate data flow from Reflex WMS into Reflex platform API.
|
This connector does not contain any standalone executable code: it is intended to be used by **Reflex integration engines** or **data exchange pipelines**, where it applies the mapping rules defined in the `.ftl` files.
|
||||||
|
|
||||||
|
## Role of the FTL Files
|
||||||
|
|
||||||
|
- Each `.ftl` file corresponds to a **flow type** (order, stock, receipt, shipment, etc.).
|
||||||
|
- These templates use the **FreeMarker** syntax to:
|
||||||
|
- Extract the required fields from the WMS source flow.
|
||||||
|
- Apply transformation rules (mapping, conversions, enrichments).
|
||||||
|
- Generate a **final structured JSON** for Reflex Platform.
|
||||||
|
|
||||||
You can find more info about those files in the Reflex platform documentation center : https://docs.viz.reflex-platform.com/connectivity/partnerapp/reflex-wms-connector/
|
## Useful Resources
|
||||||
|
|
||||||
|
|
||||||
|
- [FreeMarker Documentation](https://freemarker.apache.org/docs/index.html)
|
||||||
|
- [Reflex Platform](https://auth.reflex-platform.com/)
|
||||||
|
|||||||
31
RFXtoRP_HliPrepaL.ftl
Normal file
31
RFXtoRP_HliPrepaL.ftl
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
<#-- **** input parameters ***** -->
|
||||||
|
<#-- input : message RFX -->
|
||||||
|
<#-- project : projectId in ReflexPlatform -->
|
||||||
|
<#-- organisation : organisationtId in ReflexPlatform -->
|
||||||
|
<#include "ReflexUtils.ftl">
|
||||||
|
<#assign cloudEventMsg = JsonUtil.jsonToMap(input)>
|
||||||
|
<#assign projectRP = project>
|
||||||
|
<#assign organisationRP = organisation>
|
||||||
|
<#include "RFX_PartnerAPP_Settings.ftl">
|
||||||
|
|
||||||
|
<#assign aDateTime = .now>
|
||||||
|
|
||||||
|
<#switch cloudEventMsg.action>
|
||||||
|
<#case "C">
|
||||||
|
<#--<#case "U">
|
||||||
|
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign preparationOrderLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
<#stop "no generic FTL file available yet for preparationOrderLines">
|
||||||
|
<#break>
|
||||||
|
<#case "D">
|
||||||
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign preparationOrderLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
<#stop "no generic FTL file available yet for preparationOrderLines">
|
||||||
|
<#break>
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#default>
|
||||||
|
<#stop>
|
||||||
|
</#switch>
|
||||||
34
RFXtoRP_HliReceiptLr.ftl
Normal file
34
RFXtoRP_HliReceiptLr.ftl
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<#-- **** input parameters ***** -->
|
||||||
|
<#-- input : message RFX -->
|
||||||
|
<#-- project : projectId in ReflexPlatform -->
|
||||||
|
<#-- organisation : organisationtId in ReflexPlatform -->
|
||||||
|
|
||||||
|
<#assign cloudEventMsg = JsonUtil.jsonToMap(input)>
|
||||||
|
<#assign projectRP = project>
|
||||||
|
<#assign organisationRP = organisation>
|
||||||
|
|
||||||
|
<#assign aDateTime = .now>
|
||||||
|
|
||||||
|
<#switch cloudEventMsg.action>
|
||||||
|
<#case "C">
|
||||||
|
<#case "U">
|
||||||
|
<#-- *********************************************** Action = CREATE ******************** -->
|
||||||
|
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign receiptLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for receiptLines">
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#case "D">
|
||||||
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign receiptLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for receiptLines">
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#default>
|
||||||
|
<#stop >
|
||||||
|
</#switch>
|
||||||
|
|
||||||
32
RFXtoRP_HlrProL.ftl
Normal file
32
RFXtoRP_HlrProL.ftl
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<#-- **** input parameters ***** -->
|
||||||
|
<#-- input : message RFX -->
|
||||||
|
<#-- project : projectId in ReflexPlatform -->
|
||||||
|
<#-- organisation : organisationtId in ReflexPlatform -->
|
||||||
|
|
||||||
|
<#assign cloudEventMsg = JsonUtil.jsonToMap(input)>
|
||||||
|
<#assign projectRP = project>
|
||||||
|
<#assign organisationRP = organisation>
|
||||||
|
|
||||||
|
<#assign aDateTime = .now>
|
||||||
|
|
||||||
|
<#switch cloudEventMsg.action>
|
||||||
|
<#case "C">
|
||||||
|
<#case "U">
|
||||||
|
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign preparationOrderLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for preparationOrderLines">
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#case "D">
|
||||||
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign preparationOrderLines = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for preparationOrderLines">
|
||||||
|
<#break>
|
||||||
|
<#default>
|
||||||
|
<#stop >
|
||||||
|
</#switch>
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
"${actor.address.other_number?json_string}"
|
"${actor.address.other_number?json_string}"
|
||||||
],
|
],
|
||||||
</#if>
|
</#if>
|
||||||
"Typology": "TYPOLOGY_WAREHOUSE"
|
"Typology": "TYPOLOGY_UNKNOWN"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -17,7 +17,6 @@
|
|||||||
<#assign dispute = JsonUtil.jsonToMap(dataRfx)>
|
<#assign dispute = JsonUtil.jsonToMap(dataRfx)>
|
||||||
[
|
[
|
||||||
<#if dispute.dispute_closed == true >
|
<#if dispute.dispute_closed == true >
|
||||||
<#if ((dispute.dispute_type_code=="030" || dispute.dispute_type_code=="070") && dispute.dispute_reception?? && dispute.dispute_reception.reception_reference!="") || (dispute.dispute_type_code=="050" && dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string!="")>
|
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ClaimCreated>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ClaimCreated>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
@@ -35,9 +34,6 @@
|
|||||||
<#else>
|
<#else>
|
||||||
<#stop>
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
<#else>
|
|
||||||
<#stop "Reference is empty">
|
|
||||||
</#if>
|
|
||||||
</#if>
|
</#if>
|
||||||
]
|
]
|
||||||
<#break>
|
<#break>
|
||||||
|
|||||||
4
RFXtoRP_HsaDispute_ClaimMetadata.ftl
Normal file
4
RFXtoRP_HsaDispute_ClaimMetadata.ftl
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<#-- use protobuf of class HsaDispute to find Reflex Wms fields names -->
|
||||||
|
|
||||||
|
|
||||||
|
"MetaData": [ ]
|
||||||
@@ -39,19 +39,36 @@
|
|||||||
</#if>
|
</#if>
|
||||||
"Value": "${dispute.dispute_amount}"
|
"Value": "${dispute.dispute_amount}"
|
||||||
},
|
},
|
||||||
|
<#-- Claim metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsaDispute_ClaimMetadata.ftl">,
|
||||||
<#-- To configure -->
|
<#-- To configure -->
|
||||||
<#include "RFXtoRP_HsaDispute_TableReasonCodeToClaimTypeID.ftl">
|
<#include "RFXtoRP_HsaDispute_TableReasonCodeToClaimTypeID.ftl">
|
||||||
<#if dispute.dispute_type_code=="050" >
|
<#if dispute.dispute_type_code=="050" > <#-- Preparation -->
|
||||||
"EntityID":"${dispute.dispute_preparation.preparation_order_list[0].preparation_order_physical_depot_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_activity_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string}",
|
<#if dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?? && dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference!="">
|
||||||
"DisplayID":"${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string}",
|
"EntityID":"${dispute.dispute_preparation.preparation_order_list[0].preparation_order_physical_depot_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_activity_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string}",
|
||||||
|
"DisplayID":"${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"EntityID":"O${dispute.dispute_preparation.preparation_order_list[0].preparation_order_physical_depot_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_activity_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_year_number?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_number?trim?json_string}",
|
||||||
|
"DisplayID":"O${dispute.dispute_preparation.preparation_order_list[0].preparation_order_physical_depot_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_activity_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_year_number?trim?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_number?trim?json_string}",
|
||||||
|
</#if>
|
||||||
<#else>
|
<#else>
|
||||||
<#if dispute.dispute_type_code=="030" || dispute.dispute_type_code=="070" >
|
<#if dispute.dispute_type_code=="030" || dispute.dispute_type_code=="070" >
|
||||||
<#if dispute.dispute_reception.reception_type_code=="030">
|
<#if dispute.dispute_reception.reception_type_code=="030"> <#-- Receipt transfer type -->
|
||||||
"EntityID":"${dispute.dispute_reception.reception_supplier.supplier_transfer_physical_depot?json_string}${dispute.dispute_reception.reception_supplier.supplier_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_reference?json_string}",
|
<#if dispute.dispute_reception.reception_supplier.supplier_transfer_physical_depot?? && dispute.dispute_reception.reception_supplier.supplier_transfer_physical_depot!="" >
|
||||||
"DisplayID":"${dispute.dispute_reception.reception_reference?json_string}",
|
"EntityID":"${dispute.dispute_reception.reception_supplier.supplier_transfer_physical_depot?json_string}${dispute.dispute_reception.reception_supplier.supplier_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_reference?json_string}",
|
||||||
|
"DisplayID":"${dispute.dispute_reception.reception_reference?json_string}",
|
||||||
|
<#else>
|
||||||
|
<#if dispute.dispute_reception.reception_reference?? && dispute.dispute_reception.reception_reference!="">
|
||||||
|
"EntityID":"R${dispute.dispute_reception.reception_physical_depot_code?json_string}${dispute.dispute_reception.reception_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_year_number?json_string}${dispute.dispute_reception.reception_number?json_string}",
|
||||||
|
"DisplayID":"${dispute.dispute_reception.reception_reference?json_string}",
|
||||||
|
<#else>
|
||||||
|
"EntityID":"R${dispute.dispute_reception.reception_physical_depot_code?json_string}${dispute.dispute_reception.reception_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_year_number?json_string}${dispute.dispute_reception.reception_number?json_string}",
|
||||||
|
"DisplayID":"R${dispute.dispute_reception.reception_physical_depot_code?json_string}${dispute.dispute_reception.reception_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_year_number?json_string}${dispute.dispute_reception.reception_number?json_string}",
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
<#else>
|
<#else>
|
||||||
<#if dispute.dispute_reception.reception_type_code=="010" || dispute.dispute_reception.reception_type_code=="020" >
|
<#if dispute.dispute_reception.reception_type_code=="010" || dispute.dispute_reception.reception_type_code=="020" >
|
||||||
"EntityID":"${dispute.dispute_reception.reception_physical_depot_code?json_string}${dispute.dispute_reception.reception_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_reference?json_string}",
|
"EntityID":"R${dispute.dispute_reception.reception_physical_depot_code?json_string}${dispute.dispute_reception.reception_activity_code?json_string}${dispute.dispute_reception.reception_contractor_code?json_string}${dispute.dispute_reception.reception_year_number?json_string}${dispute.dispute_reception.reception_number?json_string}",
|
||||||
"DisplayID":"${dispute.dispute_reception.reception_reference?json_string}",
|
"DisplayID":"${dispute.dispute_reception.reception_reference?json_string}",
|
||||||
<#else>
|
<#else>
|
||||||
<#stop "WMS type code not supported">
|
<#stop "WMS type code not supported">
|
||||||
|
|||||||
@@ -47,7 +47,6 @@
|
|||||||
<#if (reflexMvtStockInterface.ipg_move_type == "100" ||
|
<#if (reflexMvtStockInterface.ipg_move_type == "100" ||
|
||||||
reflexMvtStockInterface.ipg_move_type == "110" ||
|
reflexMvtStockInterface.ipg_move_type == "110" ||
|
||||||
reflexMvtStockInterface.ipg_move_type == "120") >
|
reflexMvtStockInterface.ipg_move_type == "120") >
|
||||||
<#if reflexMvtStockInterface.receipt_reference?? && reflexMvtStockInterface.receipt_reference!="">
|
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsReceived>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsReceived>
|
||||||
@@ -56,10 +55,6 @@
|
|||||||
<#include "RFXtoRP_HsaIpgMove_GoodsReceived.ftl">
|
<#include "RFXtoRP_HsaIpgMove_GoodsReceived.ftl">
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
<#else>
|
|
||||||
<#-- Case of IPG move type volontarilly ignored-->
|
|
||||||
<#stop " Reference receipt is empty">
|
|
||||||
</#if>
|
|
||||||
<#else>
|
<#else>
|
||||||
<#stop>
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
|
|||||||
@@ -26,19 +26,36 @@
|
|||||||
<#else>
|
<#else>
|
||||||
"PriorityDate": "1970-01-01T00:00:00Z",
|
"PriorityDate": "1970-01-01T00:00:00Z",
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
<#-- Goods received Segmentation Keys inclusion -->
|
<#-- Goods received Segmentation Keys inclusion -->
|
||||||
<#include "RFXtoRP_HsaIpgMove_GoodsReceived_SegmentationKeys.ftl">
|
<#include "RFXtoRP_HsaIpgMove_GoodsReceived_SegmentationKeys.ftl">
|
||||||
},
|
},
|
||||||
|
<#if reflexMvtStockInterface.ipg_move_type?? & reflexMvtStockInterface.ipg_move_type=="120"> <#-- if it is a transfer-type movement -->
|
||||||
<#if reflexMvtStockInterface.receipt_reference!="">
|
<#if reflexMvtStockInterface.origin_order_line_reference?? && reflexMvtStockInterface.origin_order_line_reference!="">
|
||||||
"ExecutionflowID": "${reflexMvtStockInterface.original_receipt_physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_reference?trim?json_string}",
|
"ExecutionflowID": "${reflexMvtStockInterface.original_receipt_physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.origin_order_line_reference?trim?json_string}",
|
||||||
"OrderID": "${reflexMvtStockInterface.receipt_reference?trim?json_string}",
|
"OrderID": "${reflexMvtStockInterface.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
<#if reflexMvtStockInterface.receipt_reference?? && reflexMvtStockInterface.receipt_reference!="">
|
||||||
|
"ExecutionflowID": "${reflexMvtStockInterface.original_receipt_physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_reference?trim?json_string}",
|
||||||
|
"OrderID": "${reflexMvtStockInterface.receipt_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"ExecutionflowID": "R${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_year_number}${reflexMvtStockInterface.receipt_number}",
|
||||||
|
"OrderID": "R${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_year_number}${reflexMvtStockInterface.receipt_number}",
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
<#else>
|
<#else>
|
||||||
"ExecutionflowID": "${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.ipg_move_year_number}${reflexMvtStockInterface.extended_ipg_move_number}",
|
<#if reflexMvtStockInterface.receipt_reference?? && reflexMvtStockInterface.receipt_reference!="">
|
||||||
"OrderID": "${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.ipg_move_year_number}${reflexMvtStockInterface.extended_ipg_move_number}",
|
"ExecutionflowID": "R${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_year_number}${reflexMvtStockInterface.receipt_number}",
|
||||||
|
"OrderID": "${reflexMvtStockInterface.receipt_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"ExecutionflowID": "R${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_year_number}${reflexMvtStockInterface.receipt_number}",
|
||||||
|
"OrderID": "R${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.originator_code}${reflexMvtStockInterface.receipt_year_number}${reflexMvtStockInterface.receipt_number}",
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
<#if reflexMvtStockInterface.origin_order_line_number_reference?? && reflexMvtStockInterface.origin_order_line_number_reference!=0>
|
||||||
|
"LineID": "${reflexMvtStockInterface.origin_order_line_number_reference}",
|
||||||
|
<#else>
|
||||||
|
"LineID": "${reflexMvtStockInterface.receipt_line_number}",
|
||||||
</#if>
|
</#if>
|
||||||
"LineID": "${reflexMvtStockInterface.receipt_line_number}",
|
|
||||||
"ActorID": "${RFXtoRPprefixDepot(reflexMvtStockInterface.physical_depot_code?trim?json_string)}",
|
"ActorID": "${RFXtoRPprefixDepot(reflexMvtStockInterface.physical_depot_code?trim?json_string)}",
|
||||||
"Quantity": {
|
"Quantity": {
|
||||||
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
||||||
|
|||||||
@@ -18,13 +18,14 @@
|
|||||||
<#assign item = JsonUtil.jsonToMap(dataRfx)>
|
<#assign item = JsonUtil.jsonToMap(dataRfx)>
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
<#if item.logistical_variant_list?? >
|
<#if item.logistical_variant_list?? && (item.logistical_variant_list?size == item.logistical_variant_list?filter(l ->l??)?size)>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ItemCreated>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ItemCreated>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsaItm_ItemCreated.ftl">
|
<#include "RFXtoRP_HsaItm_ItemCreated.ftl">
|
||||||
<#else>
|
<#else>
|
||||||
<#stop "no LV for the item">
|
<#-- "no LV for the item"-->
|
||||||
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
{
|
{
|
||||||
"LVID": "${lv.logistical_variant_code?json_string}",
|
"LVID": "${lv.logistical_variant_code?json_string}",
|
||||||
"Name" : "${lv.lv_type_code?json_string}",
|
"Name" : "${lv.lv_type_code?json_string}",
|
||||||
<#if lv.id_list??>
|
<#if lv.id_list?? && (lv.id_list?size == lv.id_list?filter(l ->l??)?size)>
|
||||||
"Codes": [
|
"Codes": [
|
||||||
<#list lv.id_list as id>
|
<#list lv.id_list as id>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
"LVID": "${logistical_variant.logistical_variant_code?json_string}",
|
"LVID": "${logistical_variant.logistical_variant_code?json_string}",
|
||||||
"Name" : "${logistical_variant.lv_type_code?json_string}",
|
"Name" : "${logistical_variant.lv_type_code?json_string}",
|
||||||
|
|
||||||
<#if logistical_variant.id_list??>
|
<#if logistical_variant.id_list?? && (logistical_variant.id_list?size == logistical_variant.id_list?filter(l ->l??)?size)>
|
||||||
"Codes": [
|
"Codes": [
|
||||||
<#list logistical_variant.id_list as id>
|
<#list logistical_variant.id_list as id>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -17,7 +17,6 @@
|
|||||||
<#assign preparationStatusInterface = JsonUtil.jsonToMap(dataRfx) />
|
<#assign preparationStatusInterface = JsonUtil.jsonToMap(dataRfx) />
|
||||||
[
|
[
|
||||||
<#--**Pick batch runned (200) **-->
|
<#--**Pick batch runned (200) **-->
|
||||||
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
|
||||||
<#if preparationStatusInterface.preparation_status_type == "100" && preparationStatusInterface.preparation_status_code == "200" >
|
<#if preparationStatusInterface.preparation_status_type == "100" && preparationStatusInterface.preparation_status_code == "200" >
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowPreparationExpected>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowPreparationExpected>
|
||||||
@@ -64,9 +63,6 @@
|
|||||||
</#if>
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
<#else>
|
|
||||||
<#stop "PRO reference is empty">
|
|
||||||
</#if>
|
|
||||||
]
|
]
|
||||||
<#break>
|
<#break>
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
||||||
|
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_year}${preparationStatusInterface.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -7,7 +7,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
||||||
|
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_year}${preparationStatusInterface.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -7,7 +7,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
||||||
|
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_year}${preparationStatusInterface.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -7,7 +7,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
||||||
|
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_year}${preparationStatusInterface.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -7,7 +7,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
<#if preparationStatusInterface.preparation_order_originator_reference?? && preparationStatusInterface.preparation_order_originator_reference!="">
|
||||||
|
"RefID": "${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparationStatusInterface.physical_depot_code?trim?json_string}${preparationStatusInterface.activity_code?trim?json_string}${preparationStatusInterface.preparation_order_originator_code?trim?json_string}${preparationStatusInterface.preparation_order_year}${preparationStatusInterface.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
32
RFXtoRP_HsrPackBranch.ftl
Normal file
32
RFXtoRP_HsrPackBranch.ftl
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<#-- **** input parameters ***** -->
|
||||||
|
<#-- input : message RFX -->
|
||||||
|
<#-- project : projectId in ReflexPlatform -->
|
||||||
|
<#-- organisation : organisationtId in ReflexPlatform -->
|
||||||
|
|
||||||
|
<#assign cloudEventMsg = JsonUtil.jsonToMap(input)>
|
||||||
|
<#assign projectRP = project>
|
||||||
|
<#assign organisationRP = organisation>
|
||||||
|
|
||||||
|
<#assign aDateTime = .now>
|
||||||
|
|
||||||
|
<#switch cloudEventMsg.action>
|
||||||
|
<#case "C">
|
||||||
|
<#case "U">
|
||||||
|
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign packBranch = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for Pack Branch">
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#case "D">
|
||||||
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign packBranch = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for Pack Branch">
|
||||||
|
<#break>
|
||||||
|
<#default>
|
||||||
|
<#stop >
|
||||||
|
</#switch>
|
||||||
|
|
||||||
32
RFXtoRP_HsrPackOrder.ftl
Normal file
32
RFXtoRP_HsrPackOrder.ftl
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<#-- **** input parameters ***** -->
|
||||||
|
<#-- input : message RFX -->
|
||||||
|
<#-- project : projectId in ReflexPlatform -->
|
||||||
|
<#-- organisation : organisationtId in ReflexPlatform -->
|
||||||
|
|
||||||
|
<#assign cloudEventMsg = JsonUtil.jsonToMap(input)>
|
||||||
|
<#assign projectRP = project>
|
||||||
|
<#assign organisationRP = organisation>
|
||||||
|
|
||||||
|
<#assign aDateTime = .now>
|
||||||
|
|
||||||
|
<#switch cloudEventMsg.action>
|
||||||
|
<#case "C">
|
||||||
|
<#case "U">
|
||||||
|
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign packOrder = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for Pack Order">
|
||||||
|
<#break>
|
||||||
|
|
||||||
|
<#case "D">
|
||||||
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
|
<#assign packOrder = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
|
<#stop "no generic FTL file available yet for Pack Order">
|
||||||
|
<#break>
|
||||||
|
<#default>
|
||||||
|
<#stop >
|
||||||
|
</#switch>
|
||||||
|
|
||||||
@@ -17,80 +17,90 @@
|
|||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign preparationOrder = JsonUtil.jsonToMap(dataRfx)>
|
<#assign preparationOrder = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
|
||||||
<#if preparationOrder.total_lv_validated !=0>
|
<#if preparationOrder.total_lv_validated?? && preparationOrder.total_lv_validated !=0>
|
||||||
[
|
<#if preparationOrder.preparation_type_code=="010" || preparationOrder.preparation_type_code=="030">
|
||||||
{
|
<#if preparationOrder.preparation_line_lst??>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsPrepared>
|
[
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
|
||||||
"datas" :
|
|
||||||
<#include "RFXtoRP_HsrPrepa_HandlingunitGoodsPrepared.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!="">
|
|
||||||
,
|
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCarrierUpdated>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsPrepared>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrPrepa_CarrierUpdated.ftl">
|
<#include "RFXtoRP_HsrPrepa_HandlingunitGoodsPrepared.ftl">
|
||||||
}
|
|
||||||
</#if>
|
|
||||||
|
|
||||||
<#assign refIDHmap ={}>
|
|
||||||
<#assign hd_numberHmap ={}>
|
|
||||||
<#assign hd_numberHmapHUadded ={}>
|
|
||||||
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.preparation_order_originator_reference!="") as preparation_line>
|
|
||||||
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
|
||||||
<#assign HUadded_packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
|
|
||||||
<#if !hd_numberHmap[despatched_ipg.hd_number]?? && (trackingNumberSource==2 || trackingNumberSource==3 || (despatched_ipg.consignment_unit_id!="" && trackingNumberSource==1))>
|
|
||||||
<#assign hd_numberHmap += {despatched_ipg.hd_number,despatched_ipg.hd_number}>
|
|
||||||
,
|
|
||||||
{
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled>
|
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
|
||||||
"datas" :
|
|
||||||
<#include "RFXtoRP_HsrPrepa_TrackingHuLabelled.ftl">
|
|
||||||
}
|
|
||||||
</#if>
|
|
||||||
<#if despatched_ipg.carton_number != "000000000000000000" && despatched_ipg.carton_number!=despatched_ipg.hd_number >
|
|
||||||
,
|
|
||||||
{
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitHUsAdded>
|
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
|
||||||
"datas" :
|
|
||||||
<#include "RFXtoRP_HsrPrepa_HandlingunitHUsAdded.ftl">
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrPrepa_HUsAdded_HandlingUnitDispatched.ftl">
|
<#include "RFXtoRP_HsrPrepa_HandlingUnitDispatched.ftl">
|
||||||
}
|
}
|
||||||
<#if !hd_numberHmapHUadded[despatched_ipg.hd_number]?? && (trackingNumberSource==2 || trackingNumberSource==3 )>
|
|
||||||
<#assign hd_numberHmapHUadded += {despatched_ipg.hd_number,despatched_ipg.hd_number}>
|
|
||||||
,
|
|
||||||
{
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled>
|
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
|
||||||
"datas" :
|
|
||||||
<#include "RFXtoRP_HsrPrepa_HUsAdded_TrackingHuLabelled.ftl">
|
|
||||||
}
|
|
||||||
</#if>
|
|
||||||
|
|
||||||
</#if>
|
<#if preparationOrder.load_data?? && preparationOrder.load_data.carrier_code?? && preparationOrder.load_data.carrier_code!="">
|
||||||
|
,
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCarrierUpdated>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrPrepa_CarrierUpdated.ftl">
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
|
||||||
|
<#assign refIDHmap ={}>
|
||||||
|
<#assign hd_numberHmap ={}>
|
||||||
|
<#assign hd_numberHmapHUadded ={}>
|
||||||
|
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? ) as preparation_line>
|
||||||
|
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
||||||
|
<#assign HUadded_packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
|
||||||
|
<#if (!hd_numberHmap[despatched_ipg.hd_number]?? || !hd_numberHmap[despatched_ipg.carton_number]??) && (trackingNumberSource==2 || trackingNumberSource==3 || (despatched_ipg.consignment_unit_id!="" && trackingNumberSource==1))>
|
||||||
|
,
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrPrepa_TrackingHuLabelled.ftl">
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
<#if despatched_ipg.carton_number != "000000000000000000" && despatched_ipg.carton_number!=despatched_ipg.hd_number >
|
||||||
|
,
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitHUsAdded>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrPrepa_HandlingunitHUsAdded.ftl">
|
||||||
|
},
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrPrepa_HUsAdded_HandlingUnitDispatched.ftl">
|
||||||
|
}
|
||||||
|
<#if !hd_numberHmapHUadded[despatched_ipg.hd_number]?? && (trackingNumberSource==2 || trackingNumberSource==3 )>
|
||||||
|
<#assign hd_numberHmapHUadded += {despatched_ipg.hd_number,despatched_ipg.hd_number}>
|
||||||
|
,
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrPrepa_HUsAdded_TrackingHuLabelled.ftl">
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
|
||||||
|
</#if>
|
||||||
|
</#list>
|
||||||
</#list>
|
</#list>
|
||||||
</#list>
|
<#assign refIDHmap ={}>
|
||||||
<#assign refIDHmap ={}>
|
]
|
||||||
]
|
<#else>
|
||||||
|
<#-- No line-->
|
||||||
|
<#stop>
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
<#-- Preparation Type not supported-->
|
||||||
|
<#stop>
|
||||||
|
</#if>
|
||||||
<#else>
|
<#else>
|
||||||
<#stop "no confirmed quantity for the preparation - preparation closed">
|
<#-- no confirmed quantity for the preparation - preparation closed-->
|
||||||
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,8 +3,12 @@
|
|||||||
<#include "ActorPrefix.ftl">
|
<#include "ActorPrefix.ftl">
|
||||||
[
|
[
|
||||||
<#assign refIDHmap_local ={}>
|
<#assign refIDHmap_local ={}>
|
||||||
<#list preparationOrder.preparation_line_lst?filter(l ->l.preparation_order_originator_reference!="") as preparation_line>
|
<#list preparationOrder.preparation_line_lst as preparation_line>
|
||||||
<#assign OrderOriginReference = preparation_line.preparation_order_originator_reference?trim?json_string>
|
<#if preparation_line.preparation_order_originator_reference?? && preparation_line.preparation_order_originator_reference!="">
|
||||||
|
<#assign OrderOriginReference = "${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.preparation_order_originator_reference?trim?json_string}">
|
||||||
|
<#else>
|
||||||
|
<#assign OrderOriginReference = "O${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.pro_year}${preparation_line.pro_number}">
|
||||||
|
</#if>
|
||||||
<#if !refIDHmap_local[OrderOriginReference]?? >
|
<#if !refIDHmap_local[OrderOriginReference]?? >
|
||||||
<#if refIDHmap_local?size != 0 >
|
<#if refIDHmap_local?size != 0 >
|
||||||
,
|
,
|
||||||
@@ -15,7 +19,7 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID":{
|
"ID":{
|
||||||
"RefID": "${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.preparation_order_originator_reference?trim?json_string}"
|
"RefID": "${OrderOriginReference}"
|
||||||
},
|
},
|
||||||
"Payload":{
|
"Payload":{
|
||||||
"Carrier": {
|
"Carrier": {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
[
|
[
|
||||||
<#assign dispatched_datetime = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
|
<#assign dispatched_datetime = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
|
||||||
<#assign refIDHmap_local ={}>
|
<#assign refIDHmap_local ={}>
|
||||||
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.despatched_ipg_list?size != 0 && l.preparation_order_originator_reference!="") as preparation_line>
|
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.despatched_ipg_list?size != 0) as preparation_line>
|
||||||
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
||||||
<#if !refIDHmap_local[despatched_ipg.hd_number]?? >
|
<#if !refIDHmap_local[despatched_ipg.hd_number]?? >
|
||||||
<#if refIDHmap_local?size != 0 >
|
<#if refIDHmap_local?size != 0 >
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<#include "HfRpConfig.ftl">
|
<#include "HfRpConfig.ftl">
|
||||||
<#include "ActorPrefix.ftl">
|
<#include "ActorPrefix.ftl">
|
||||||
[
|
[
|
||||||
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.despatched_ipg_list?size != 0 && l.preparation_order_originator_reference!="") as preparation_line>
|
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.despatched_ipg_list?size != 0 ) as preparation_line>
|
||||||
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
<#list preparation_line.despatched_ipg_list as despatched_ipg>
|
||||||
<#assign packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
|
<#assign packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
|
||||||
{
|
{
|
||||||
@@ -112,8 +112,14 @@
|
|||||||
<#-- Segmentation Keys inclusion -->
|
<#-- Segmentation Keys inclusion -->
|
||||||
<#include "RFXtoRP_HsrPrepa_GoodsPrepared_SegmentationKeys.ftl">
|
<#include "RFXtoRP_HsrPrepa_GoodsPrepared_SegmentationKeys.ftl">
|
||||||
},
|
},
|
||||||
"OrderID": "${preparation_line.preparation_order_originator_reference?trim?json_string}",
|
<#if preparation_line.preparation_order_originator_reference?? && preparation_line.preparation_order_originator_reference!="">
|
||||||
"ExecutionflowID": "${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.preparation_order_originator_reference?trim?json_string}",
|
"OrderID": "${preparation_line.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
"ExecutionflowID": "${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.preparation_order_originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"OrderID": "O${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.pro_year}${preparation_line.pro_number}",
|
||||||
|
"ExecutionflowID": "O${preparation_line.pro_physical_depot_code?trim?json_string}${preparationOrder.activity_code?trim?json_string}${preparation_line.pro_originator_code?trim?json_string}${preparation_line.pro_year}${preparation_line.pro_number}",
|
||||||
|
</#if>
|
||||||
|
|
||||||
<#if (preparation_line.pro_originator_reference_line_number!0) != 0>
|
<#if (preparation_line.pro_originator_reference_line_number!0) != 0>
|
||||||
"LineID": "${preparation_line.pro_originator_reference_line_number}",
|
"LineID": "${preparation_line.pro_originator_reference_line_number}",
|
||||||
<#else>
|
<#else>
|
||||||
|
|||||||
@@ -34,15 +34,15 @@
|
|||||||
</#if>
|
</#if>
|
||||||
<#break>
|
<#break>
|
||||||
<#default>
|
<#default>
|
||||||
<#if despatched_ipg.consignment_unit_id!="">
|
<#if despatched_ipg.consignment_unit_id!="">
|
||||||
"RefID": "${despatched_ipg.consignment_unit_id?trim?json_string}",
|
"RefID": "${despatched_ipg.consignment_unit_id?trim?json_string}",
|
||||||
<#else>
|
<#else>
|
||||||
<#if despatched_ipg.carton_number != "000000000000000000">
|
<#if despatched_ipg.carton_number != "000000000000000000">
|
||||||
"RefID":"${despatched_ipg.carton_number}",
|
"RefID":"${despatched_ipg.carton_number}",
|
||||||
<#else>
|
<#else>
|
||||||
"RefID":"${despatched_ipg.hd_number}",
|
"RefID":"${despatched_ipg.hd_number}",
|
||||||
</#if>
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
</#switch>
|
</#switch>
|
||||||
|
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
@@ -53,8 +53,10 @@
|
|||||||
"Payload": {
|
"Payload": {
|
||||||
<#if despatched_ipg.carton_number != "000000000000000000">
|
<#if despatched_ipg.carton_number != "000000000000000000">
|
||||||
"HandlingunitID": "${despatched_ipg.carton_number}"
|
"HandlingunitID": "${despatched_ipg.carton_number}"
|
||||||
|
<#assign hd_numberHmap += {despatched_ipg.carton_number,despatched_ipg.carton_number}>
|
||||||
<#else>
|
<#else>
|
||||||
"HandlingunitID": "${despatched_ipg.hd_number}"
|
"HandlingunitID": "${despatched_ipg.hd_number}"
|
||||||
|
<#assign hd_numberHmap += {despatched_ipg.hd_number,despatched_ipg.hd_number}>
|
||||||
</#if>
|
</#if>
|
||||||
<#if preparationOrder.load_data?? && preparationOrder.load_data.carrier_code?? && preparationOrder.load_data.carrier_code!="" >
|
<#if preparationOrder.load_data?? && preparationOrder.load_data.carrier_code?? && preparationOrder.load_data.carrier_code!="" >
|
||||||
,
|
,
|
||||||
|
|||||||
@@ -16,30 +16,23 @@
|
|||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign preparation_order = JsonUtil.jsonToMap(dataRfx)>
|
<#assign preparation_order = JsonUtil.jsonToMap(dataRfx)>
|
||||||
[
|
[
|
||||||
|
|
||||||
<#if preparation_order.originator_reference?? && preparation_order.originator_reference!="">
|
|
||||||
<#-- check preparation type code (internal order and reservation are ignored) -->
|
<#-- check preparation type code (internal order and reservation are ignored) -->
|
||||||
<#if preparation_order.preparation_type_code == "010" || preparation_order.preparation_type_code == "030">
|
<#if preparation_order.preparation_type_code == "010" || preparation_order.preparation_type_code == "030">
|
||||||
<#-- Only if preparation order not confirmed -->
|
<#if preparation_order.line_list??>
|
||||||
<#if preparation_order.preparation_order_confirmed == "false" >
|
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrPro_ExecutionflowDetected.ftl">
|
<#include "RFXtoRP_HsrPro_ExecutionflowDetected.ftl">
|
||||||
}
|
}
|
||||||
<#else>
|
<#else>
|
||||||
<#-- preparation order already confirmed -->
|
<#-- No line -->
|
||||||
<#stop>
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
<#else>
|
<#else>
|
||||||
<#-- preparation order type not supported -->
|
<#-- Preparation order type not supported -->
|
||||||
<#stop>
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
<#else>
|
|
||||||
<#stop "PRO reference is empty">
|
|
||||||
</#if>
|
|
||||||
]
|
]
|
||||||
<#break>
|
<#break>
|
||||||
|
|
||||||
@@ -48,20 +41,24 @@
|
|||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign preparation_order = JsonUtil.jsonToMap(dataRfx)>
|
<#assign preparation_order = JsonUtil.jsonToMap(dataRfx)>
|
||||||
[
|
[
|
||||||
<#if preparation_order.originator_reference?? && preparation_order.originator_reference!="">
|
<#if preparation_order.preparation_type_code == "010" || preparation_order.preparation_type_code == "030" >
|
||||||
{
|
<#if preparation_order.line_list??>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
{
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
||||||
"datas" :
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
<#include "RFXtoRP_HsrPro_ExecutionflowCancelled.ftl">
|
"datas" :
|
||||||
}
|
<#include "RFXtoRP_HsrPro_ExecutionflowCancelled.ftl">
|
||||||
|
}
|
||||||
|
<#else>
|
||||||
|
<#-- No line -->
|
||||||
|
<#stop>
|
||||||
|
</#if>
|
||||||
<#else>
|
<#else>
|
||||||
<#stop "PRO reference is empty">
|
<#-- Preparation order type not supported -->
|
||||||
|
<#stop>
|
||||||
</#if>
|
</#if>
|
||||||
]
|
]
|
||||||
<#break>
|
<#break>
|
||||||
|
|
||||||
|
|
||||||
<#default>
|
<#default>
|
||||||
<#stop >
|
<#stop >
|
||||||
</#switch>
|
</#switch>
|
||||||
|
|||||||
@@ -7,7 +7,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.originator_reference?trim?json_string}",
|
<#if preparation_order.originator_reference?? && preparation_order.originator_reference!="">
|
||||||
|
"RefID": "${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.preparation_order_year}${preparation_order.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${preparation_status_datetime}",
|
"DateTime": "${preparation_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -9,7 +9,11 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.originator_reference?trim?json_string}",
|
<#if preparation_order.originator_reference?? && preparation_order.originator_reference!="">
|
||||||
|
"RefID": "${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "O${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.preparation_order_year}${preparation_order.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${pro_creation_datetime}",
|
"DateTime": "${pro_creation_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
@@ -31,43 +35,51 @@
|
|||||||
},
|
},
|
||||||
"ShipFromAcked": true,
|
"ShipFromAcked": true,
|
||||||
"ShipTo": {
|
"ShipTo": {
|
||||||
<#if preparation_order.intermediate_consignee_code?? && preparation_order.intermediate_consignee_code!="">
|
<#if preparation_order.preparation_type_code == "030" && preparation_order.optional_attributes.intermediate_consignee_transfer_physical_depot?? && preparation_order.optional_attributes.intermediate_consignee_transfer_physical_depot!="" && preparation_order.optional_attributes.transfer_intermediate_consignee=="true">
|
||||||
"ActorID": "${RFXtoRPprefixDepot(preparation_order.intermediate_consignee_code?json_string)}"
|
"ActorID": "${RFXtoRPprefixDepot(preparation_order.optional_attributes.intermediate_consignee_transfer_physical_depot?json_string)}"
|
||||||
<#else>
|
<#else>
|
||||||
<#if preparation_order.address.address_type_code == "" &&
|
<#if preparation_order.preparation_type_code == "030">
|
||||||
preparation_order.address.name_or_company_name == "" &&
|
"ActorID": "${RFXtoRPprefixDepot(preparation_order.end_consignee_code?json_string)}"
|
||||||
preparation_order.address.additional_address_data_1 == "" &&
|
|
||||||
preparation_order.address.additional_address_data_2 == "" &&
|
|
||||||
preparation_order.address.post_code_area_name == "" &&
|
|
||||||
preparation_order.address.territorial_division_code == "" &&
|
|
||||||
preparation_order.address.postal_code == "" &&
|
|
||||||
preparation_order.address.iso_country_code == "">
|
|
||||||
"ActorID": "${RFXtoRPprefixConsignee(preparation_order.end_consignee_code?json_string)}"
|
|
||||||
<#else>
|
<#else>
|
||||||
"Actor":
|
<#if preparation_order.address.address_type_code == "" &&
|
||||||
{
|
preparation_order.address.name_or_company_name == "" &&
|
||||||
"Name" : "${(preparation_order.address.name_or_company_name!"")?json_string}",
|
preparation_order.address.additional_address_data_1 == "" &&
|
||||||
"Address" :
|
preparation_order.address.additional_address_data_2 == "" &&
|
||||||
{
|
preparation_order.address.post_code_area_name == "" &&
|
||||||
"City" : "${(preparation_order.address.post_code_area_name!"")?json_string}",
|
preparation_order.address.territorial_division_code == "" &&
|
||||||
"CountryCode" : "${preparation_order.address.iso_country_code!""}",
|
preparation_order.address.postal_code == "" &&
|
||||||
"PostalCode" : "${preparation_order.address.postal_code!""}",
|
preparation_order.address.iso_country_code == "">
|
||||||
"StreetAddressOne" : "${(preparation_order.address.street_and_number_and_po_box!"")?json_string}",
|
"ActorID": "${RFXtoRPprefixConsignee(preparation_order.end_consignee_code?json_string)}"
|
||||||
"StreetAddressTwo" : "${(preparation_order.address.additional_address_data_1!"")?json_string}",
|
<#else>
|
||||||
"StreetAddressThree" : "${(preparation_order.address.additional_address_data_2!"")?json_string}"
|
"Actor":
|
||||||
}
|
{
|
||||||
},
|
"Name" : "${(preparation_order.address.name_or_company_name!"")?json_string}",
|
||||||
"Contact" :
|
"Address" :
|
||||||
{
|
{
|
||||||
"FirstName" : "${(preparation_order.address.first_name!"")?json_string}",
|
"City" : "${(preparation_order.address.post_code_area_name!"")?json_string}",
|
||||||
"LastName" : "${(preparation_order.address.last_name!"")?json_string}",
|
"CountryCode" : "${preparation_order.address.iso_country_code!""}",
|
||||||
"Emails" : ${splitEmailsIntoArray((preparation_order.address.mail_address!"")?json_string)},
|
"PostalCode" : "${preparation_order.address.postal_code!""}",
|
||||||
"Phones" : ["${(preparation_order.address.mobile_phone_number!"")?json_string}","${(preparation_order.address.land_line_phone_number!"")?json_string}", "${(preparation_order.address.fax_number!"")?json_string}" ]
|
"StreetAddressOne" : "${(preparation_order.address.street_and_number_and_po_box!"")?json_string}",
|
||||||
}
|
"StreetAddressTwo" : "${(preparation_order.address.additional_address_data_1!"")?json_string}",
|
||||||
|
"StreetAddressThree" : "${(preparation_order.address.additional_address_data_2!"")?json_string}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Contact" :
|
||||||
|
{
|
||||||
|
"FirstName" : "${(preparation_order.address.first_name!"")?json_string}",
|
||||||
|
"LastName" : "${(preparation_order.address.last_name!"")?json_string}",
|
||||||
|
"Emails" : ${splitEmailsIntoArray((preparation_order.address.mail_address!"")?json_string)},
|
||||||
|
"Phones" : ["${(preparation_order.address.mobile_phone_number!"")?json_string}","${(preparation_order.address.land_line_phone_number!"")?json_string}", "${(preparation_order.address.fax_number!"")?json_string}" ]
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
},
|
},
|
||||||
"OrderID":"${preparation_order.originator_reference?trim?json_string}",
|
<#if preparation_order.originator_reference?? && preparation_order.originator_reference!="">
|
||||||
|
"OrderID": "${preparation_order.originator_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"OrderID": "O${preparation_order.physical_depot_code?trim?json_string}${preparation_order.activity_code?trim?json_string}${preparation_order.originator_code?trim?json_string}${preparation_order.preparation_order_year}${preparation_order.preparation_order_number}",
|
||||||
|
</#if>
|
||||||
<#if preparation_order.line_list??>
|
<#if preparation_order.line_list??>
|
||||||
"Lines" : [
|
"Lines" : [
|
||||||
<#list preparation_order.line_list as preparation_order_line >
|
<#list preparation_order.line_list as preparation_order_line >
|
||||||
|
|||||||
@@ -15,85 +15,126 @@
|
|||||||
|
|
||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
||||||
<#if receipt.receipt_reference ?? && receipt.receipt_reference!="">
|
<#if receipt.receipt_type?? && receipt.receipt_type = "030" && receipt.line_list??> <#-- if reception is a transfer type -->
|
||||||
<#if receipt.receipt_type = "030">
|
[
|
||||||
[
|
{
|
||||||
{
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"datas" :
|
||||||
"datas" :
|
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowDetected.ftl">
|
||||||
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowDetected.ftl">
|
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_TransfertReceiptExpected.ftl">
|
<#include "RFXtoRP_HsrReceiptList_TransfertReceiptExpected.ftl">
|
||||||
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
<#else>
|
<#else>
|
||||||
|
<#if receipt.line_list ??>
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected.ftl">
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected.ftl">
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_ReceiptExpected.ftl">
|
<#include "RFXtoRP_HsrReceiptList_ReceiptExpected.ftl">
|
||||||
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
<#else>
|
||||||
|
<#stop>
|
||||||
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
<#else>
|
|
||||||
<#stop "Receipt reference is empty">
|
|
||||||
</#if>
|
|
||||||
<#break>
|
<#break>
|
||||||
<#case "U">
|
<#case "U">
|
||||||
<#-- *********************************************** Action = UPDATE ******************** -->
|
<#-- *********************************************** Action = UPDATE ******************** -->
|
||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
||||||
[
|
[
|
||||||
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
<#if receipt.receipt_type?? && receipt.receipt_type == "030" && receipt.receipt_confirmed == "true" && receipt.confirmation_total_level_1==0 && receipt.confirmation_total_level_2==0 && receipt.confirmation_total_level_3==0>
|
||||||
<#if receipt.receipt_type = "030" && receipt.receipt_confirmed == "true" >
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowCancelled.ftl">
|
||||||
|
}
|
||||||
|
<#else>
|
||||||
|
<#if receipt.receipt_type?? && receipt.receipt_type == "030" && receipt.receipt_confirmed == "true">
|
||||||
{
|
{
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptCompleted>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptCompleted>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowReceiptCompleted.ftl">
|
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowReceiptCompleted.ftl">
|
||||||
}
|
}
|
||||||
<#else>
|
|
||||||
<#if receipt.receipt_confirmed == "true">
|
|
||||||
{
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptCompleted>
|
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
|
||||||
"datas" :
|
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowReceiptCompleted.ftl">
|
|
||||||
}
|
|
||||||
<#else>
|
<#else>
|
||||||
{
|
<#if receipt.receipt_confirmed?? && receipt.receipt_confirmed == "true" && receipt.confirmation_total_level_1==0 && receipt.confirmation_total_level_2==0 && receipt.confirmation_total_level_3==0>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected.ftl">
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowCancelled.ftl">
|
||||||
},
|
}
|
||||||
{
|
<#else>
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
<#if receipt.receipt_confirmed ?? && receipt.receipt_confirmed == "true" >
|
||||||
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
{
|
||||||
"datas" :
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptCompleted>
|
||||||
<#include "RFXtoRP_HsrReceiptList_ReceiptExpected.ftl">
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
}
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowReceiptCompleted.ftl">
|
||||||
|
}
|
||||||
|
<#else>
|
||||||
|
<#if receipt.receipt_type?? && receipt.receipt_type == "030" && receipt.receipt_confirmed == "false" && receipt.line_list??>
|
||||||
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
|
[
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_TransfertExecutionflowDetected.ftl">
|
||||||
|
|
||||||
|
},
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_TransfertReceiptExpected.ftl">
|
||||||
|
|
||||||
|
}
|
||||||
|
]
|
||||||
|
<#else>
|
||||||
|
<#stop> <#-- Receipt reference for transfer is empty-->
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
<#if receipt.line_list ??>
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowDetected>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected.ftl">
|
||||||
|
},
|
||||||
|
{
|
||||||
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowReceiptExpected>
|
||||||
|
"apiReflexPlatformID" : "${apiReflexPlatformID}",
|
||||||
|
"datas" :
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ReceiptExpected.ftl">
|
||||||
|
}
|
||||||
|
<#else>
|
||||||
|
<#stop>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
<#else>
|
|
||||||
<#stop "Receipt reference is empty">
|
|
||||||
</#if>
|
|
||||||
]
|
]
|
||||||
<#break>
|
<#break>
|
||||||
|
|
||||||
@@ -101,8 +142,8 @@
|
|||||||
<#-- *********************************************** Action = DELETE ******************** -->
|
<#-- *********************************************** Action = DELETE ******************** -->
|
||||||
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
|
||||||
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
<#assign receipt = JsonUtil.jsonToMap(dataRfx)>
|
||||||
|
<#if receipt.line_list ??>
|
||||||
[
|
[
|
||||||
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
|
||||||
{
|
{
|
||||||
|
|
||||||
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowCancelled>
|
||||||
@@ -110,10 +151,10 @@
|
|||||||
"datas" :
|
"datas" :
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowCancelled.ftl">
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowCancelled.ftl">
|
||||||
}
|
}
|
||||||
<#else>
|
|
||||||
<#stop "Receipt reference is empty">
|
|
||||||
</#if>
|
|
||||||
]
|
]
|
||||||
|
<#else>
|
||||||
|
<#stop> <#-- No line-->
|
||||||
|
</#if>
|
||||||
<#break>
|
<#break>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"DateTime": "${receipt_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${receipt_creation_datetime}",
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
@@ -26,15 +26,22 @@
|
|||||||
|
|
||||||
"ShipFrom":
|
"ShipFrom":
|
||||||
{
|
{
|
||||||
|
<#if receipt.receipt_type == '020'>
|
||||||
|
"ActorID": "${RFXtoRPprefixConsignee(receipt.original_code?trim?json_string)}"
|
||||||
|
<#else>
|
||||||
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
||||||
|
</#if>
|
||||||
},
|
},
|
||||||
"ShipTo" :
|
"ShipTo" :
|
||||||
{
|
{
|
||||||
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
||||||
},
|
},
|
||||||
"ShipToAcked": true,
|
"ShipToAcked": true,
|
||||||
"OrderID":"${receipt.receipt_reference?trim?json_string}",
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
|
"OrderID":"${receipt.receipt_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"OrderID":"R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
|
</#if>
|
||||||
<#if receipt.carrier_informations.carrier_code != "">
|
<#if receipt.carrier_informations.carrier_code != "">
|
||||||
"Carrier":
|
"Carrier":
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"DateTime": "${receipt_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
"ProjectID": "${projectRP}"
|
"ProjectID": "${projectRP}"
|
||||||
},
|
},
|
||||||
"ID": {
|
"ID": {
|
||||||
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
"RefDate": {
|
"RefDate": {
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"DateTime": "${receipt_status_datetime}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,20 +1,67 @@
|
|||||||
<#include "HfRpConfig.ftl">
|
<#include "HfRpConfig.ftl">
|
||||||
<#include "ReflexUtils.ftl">
|
<#include "ReflexUtils.ftl">
|
||||||
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.modification_datetime,time_zone_rfx) />
|
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.modification_datetime,time_zone_rfx) />
|
||||||
|
<#assign refIDHmap_local ={}>
|
||||||
[
|
[
|
||||||
{
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
"Header": {
|
{
|
||||||
"ProjectID": "${projectRP}"
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
},
|
"ID": {
|
||||||
"ID": {
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
"RefID": "${receipt.receipt_reference?trim?json_string}",
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"RefDate": {
|
<#else>
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"Payload": {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
<#else>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
<#list receipt.line_list as receipt_line >
|
||||||
|
<#if receipt_line.origin_order_line_reference?? && receipt_line.origin_order_line_reference!="">
|
||||||
|
<#if !refIDHmap_local[receipt_line.origin_order_line_reference]?? >
|
||||||
|
<#if refIDHmap_local?size != 0 >
|
||||||
|
,
|
||||||
|
</#if>
|
||||||
|
<#assign refIDHmap_local +={receipt_line.origin_order_line_reference,receipt_line.origin_order_line_reference}>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year?trim?json_string}${receipt.receipt_number?trim?json_string}",
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#break>
|
||||||
|
</#if>
|
||||||
|
</#list>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -1,94 +1,277 @@
|
|||||||
<#include "HfRpConfig.ftl">
|
<#include "HfRpConfig.ftl">
|
||||||
<#include "ReflexUtils.ftl">
|
<#include "ReflexUtils.ftl">
|
||||||
<#include "ActorPrefix.ftl">
|
<#include "ActorPrefix.ftl">
|
||||||
|
<#assign receipt_datetime = RfxDateTimetoUTCWithTimezone(receipt.receipt_datetime,time_zone_rfx) />
|
||||||
|
<#assign receipt_creation_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
|
||||||
|
<#assign refIDHmap_local ={}>
|
||||||
[
|
[
|
||||||
{
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
<#assign receipt_datetime = RfxDateTimetoUTCWithTimezone(receipt.receipt_datetime,time_zone_rfx) />
|
{
|
||||||
<#assign receipt_creation_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
"Header": {
|
"ID": {
|
||||||
"ProjectID": "${projectRP}"
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
},
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"ID": {
|
<#else>
|
||||||
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
"RefDate": {
|
</#if>
|
||||||
"DateTime": "${receipt_creation_datetime}",
|
"RefDate": {
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
}
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
},
|
}
|
||||||
"Payload": {
|
|
||||||
"CreationDateTime": {
|
|
||||||
"DateTime": "${receipt_creation_datetime}",
|
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
|
||||||
},
|
|
||||||
"OrderID":"${receipt.receipt_reference?trim?json_string}",
|
|
||||||
<#-- Header Metadata inclusion -->
|
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_HeaderMetadata.ftl">,
|
|
||||||
|
|
||||||
"ShipFrom":
|
|
||||||
{
|
|
||||||
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
|
||||||
},
|
},
|
||||||
"ShipTo" :
|
"Payload": {
|
||||||
{
|
"CreationDateTime": {
|
||||||
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
},
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
"ShipToAcked": true,
|
},
|
||||||
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
<#if receipt.carrier_informations.carrier_code != "">
|
"OrderID": "${receipt.receipt_reference?trim?json_string}",
|
||||||
"Carrier":
|
<#else>
|
||||||
|
"OrderID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year}${receipt.receipt_number}",
|
||||||
|
</#if>
|
||||||
|
<#-- Header Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_HeaderMetadata.ftl">,
|
||||||
|
"ShipFrom":
|
||||||
{
|
{
|
||||||
"ActorID":"${RFXtoRPprefixCarrier(receipt.carrier_informations.carrier_code?trim?json_string)}"
|
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
||||||
},
|
},
|
||||||
</#if>
|
"ShipTo" :
|
||||||
|
|
||||||
<#if receipt.line_list??>
|
|
||||||
"Lines" : [
|
|
||||||
<#list receipt.line_list as line>
|
|
||||||
{
|
{
|
||||||
"LineID": "${line.receipt_line_number}",
|
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
||||||
<#-- Line Metadata inclusion -->
|
},
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_LineMetadata.ftl">,
|
"ShipToAcked": true,
|
||||||
"RequestedContent":
|
<#if receipt.carrier_informations.carrier_code != "">
|
||||||
|
"Carrier":
|
||||||
{
|
{
|
||||||
"Goods":
|
"ActorID":"${RFXtoRPprefixCarrier(receipt.carrier_informations.carrier_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
</#if>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
"Lines" : [
|
||||||
|
<#list receipt.line_list as line>
|
||||||
|
{
|
||||||
|
"LineID": "${line.receipt_line_number}",
|
||||||
|
<#-- Line Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_LineMetadata.ftl">,
|
||||||
|
"RequestedContent":
|
||||||
{
|
{
|
||||||
"ItemID": "${line.item_code?trim?json_string!"0"}",
|
"Goods":
|
||||||
"LVBranchID": "${line.item_lv_code?json_string!"0"}",
|
{
|
||||||
<#if (line.line_without_detail?? && line.line_without_detail.priority_date?length != 0) && (line.line_without_detail.priority_date?starts_with("00") == false)>
|
"ItemID": "${line.item_code?trim?json_string!"0"}",
|
||||||
<#assign line_without_detail_priority_date = line.line_without_detail.priority_date?datetime(rfx_date_format_default)?iso_utc />
|
"LVBranchID": "${line.item_lv_code?json_string!"0"}",
|
||||||
"PriorityDate": "${line_without_detail_priority_date}",
|
<#if (line.line_without_detail?? && line.line_without_detail.priority_date?length != 0) && (line.line_without_detail.priority_date?starts_with("00") == false)>
|
||||||
<#else>
|
<#assign line_without_detail_priority_date = line.line_without_detail.priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
<#if (line.line_detail?? && line.line_detail?size == 1 && line.line_detail[0].priority_date?length != 0) && (line.line_detail[0].priority_date?starts_with("00") == false)>
|
"PriorityDate": "${line_without_detail_priority_date}",
|
||||||
<#assign line_detail_priority_date = line.line_detail[0].priority_date?datetime(rfx_date_format_default)?iso_utc />
|
|
||||||
"PriorityDate": "${line_detail_priority_date}",
|
|
||||||
<#else>
|
<#else>
|
||||||
"PriorityDate": "1970-01-01T00:00:00Z",
|
<#if (line.line_detail?? && line.line_detail?size == 1 && line.line_detail[0].priority_date?length != 0) && (line.line_detail[0].priority_date?starts_with("00") == false)>
|
||||||
|
<#assign line_detail_priority_date = line.line_detail[0].priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
|
"PriorityDate": "${line_detail_priority_date}",
|
||||||
|
<#else>
|
||||||
|
"PriorityDate": "1970-01-01T00:00:00Z",
|
||||||
|
</#if>
|
||||||
</#if>
|
</#if>
|
||||||
</#if>
|
<#-- Segmentation Keys inclusion -->
|
||||||
<#-- Segmentation Keys inclusion -->
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl">
|
||||||
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl">
|
},
|
||||||
},
|
"Quantity" :
|
||||||
"Quantity" :
|
{
|
||||||
{
|
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
||||||
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
"Value": "${line.order_quantity_in_lv!0}"
|
||||||
"Value": "${line.order_quantity_in_lv!0}"
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
<#sep>,</#sep>
|
||||||
}
|
</#list>
|
||||||
<#sep>,</#sep>
|
],
|
||||||
</#list>
|
</#if>
|
||||||
],
|
"RequestedMilestones" :
|
||||||
</#if>
|
{
|
||||||
|
"RequestedDeliveryDateTime" :
|
||||||
"RequestedMilestones" :
|
{
|
||||||
{
|
"DateTime": "${receipt_datetime}",
|
||||||
"RequestedDeliveryDateTime" :
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
{
|
}
|
||||||
"DateTime": "${receipt_datetime}",
|
}
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
<#else>
|
||||||
]
|
<#if receipt.line_list??>
|
||||||
|
<#list receipt.line_list as receipt_line >
|
||||||
|
<#if receipt_line.origin_order_line_reference!="">
|
||||||
|
<#if !refIDHmap_local[receipt_line.origin_order_line_reference]?? >
|
||||||
|
<#if refIDHmap_local?size != 0 >
|
||||||
|
,
|
||||||
|
</#if>
|
||||||
|
<#assign refIDHmap_local +={receipt_line.origin_order_line_reference,receipt_line.origin_order_line_reference}>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
"CreationDateTime": {
|
||||||
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
},
|
||||||
|
"OrderID":"${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#-- Header Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_HeaderMetadata.ftl">,
|
||||||
|
"ShipFrom":
|
||||||
|
{
|
||||||
|
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
"ShipTo" :
|
||||||
|
{
|
||||||
|
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
"ShipToAcked": true,
|
||||||
|
<#if receipt.carrier_informations.carrier_code != "">
|
||||||
|
"Carrier":
|
||||||
|
{
|
||||||
|
"ActorID":"${RFXtoRPprefixCarrier(receipt.carrier_informations.carrier_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
</#if>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
"Lines" : [
|
||||||
|
<#list receipt.line_list as line>
|
||||||
|
{
|
||||||
|
"LineID": "${line.receipt_line_number}",
|
||||||
|
<#-- Line Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_LineMetadata.ftl">,
|
||||||
|
"RequestedContent":
|
||||||
|
{
|
||||||
|
"Goods":
|
||||||
|
{
|
||||||
|
"ItemID": "${line.item_code?trim?json_string!"0"}",
|
||||||
|
"LVBranchID": "${line.item_lv_code?json_string!"0"}",
|
||||||
|
<#if (line.line_without_detail?? && line.line_without_detail.priority_date?length != 0) && (line.line_without_detail.priority_date?starts_with("00") == false)>
|
||||||
|
<#assign line_without_detail_priority_date = line.line_without_detail.priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
|
"PriorityDate": "${line_without_detail_priority_date}",
|
||||||
|
<#else>
|
||||||
|
<#if (line.line_detail?? && line.line_detail?size == 1 && line.line_detail[0].priority_date?length != 0) && (line.line_detail[0].priority_date?starts_with("00") == false)>
|
||||||
|
<#assign line_detail_priority_date = line.line_detail[0].priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
|
"PriorityDate": "${line_detail_priority_date}",
|
||||||
|
<#else>
|
||||||
|
"PriorityDate": "1970-01-01T00:00:00Z",
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
<#-- Segmentation Keys inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl">
|
||||||
|
},
|
||||||
|
"Quantity" :
|
||||||
|
{
|
||||||
|
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
||||||
|
"Value": "${line.order_quantity_in_lv!0}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#sep>,</#sep>
|
||||||
|
</#list>
|
||||||
|
],
|
||||||
|
</#if>
|
||||||
|
"RequestedMilestones" :
|
||||||
|
{
|
||||||
|
"RequestedDeliveryDateTime" :
|
||||||
|
{
|
||||||
|
"DateTime": "${receipt_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year?trim?json_string}${receipt.receipt_number?trim?json_string}",
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
"CreationDateTime": {
|
||||||
|
"DateTime": "${receipt_creation_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
},
|
||||||
|
"OrderID":"${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year?trim?json_string}${receipt.receipt_number?trim?json_string}",
|
||||||
|
<#-- Header Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_HeaderMetadata.ftl">,
|
||||||
|
"ShipFrom":
|
||||||
|
{
|
||||||
|
"ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
"ShipTo" :
|
||||||
|
{
|
||||||
|
"ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
"ShipToAcked": true,
|
||||||
|
<#if receipt.carrier_informations.carrier_code != "">
|
||||||
|
"Carrier":
|
||||||
|
{
|
||||||
|
"ActorID":"${RFXtoRPprefixCarrier(receipt.carrier_informations.carrier_code?trim?json_string)}"
|
||||||
|
},
|
||||||
|
</#if>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
"Lines" : [
|
||||||
|
<#list receipt.line_list as line>
|
||||||
|
{
|
||||||
|
"LineID": "${line.receipt_line_number}",
|
||||||
|
<#-- Line Metadata inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_LineMetadata.ftl">,
|
||||||
|
"RequestedContent":
|
||||||
|
{
|
||||||
|
"Goods":
|
||||||
|
{
|
||||||
|
"ItemID": "${line.item_code?trim?json_string!"0"}",
|
||||||
|
"LVBranchID": "${line.item_lv_code?json_string!"0"}",
|
||||||
|
<#if (line.line_without_detail?? && line.line_without_detail.priority_date?length != 0) && (line.line_without_detail.priority_date?starts_with("00") == false)>
|
||||||
|
<#assign line_without_detail_priority_date = line.line_without_detail.priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
|
"PriorityDate": "${line_without_detail_priority_date}",
|
||||||
|
<#else>
|
||||||
|
<#if (line.line_detail?? && line.line_detail?size == 1 && line.line_detail[0].priority_date?length != 0) && (line.line_detail[0].priority_date?starts_with("00") == false)>
|
||||||
|
<#assign line_detail_priority_date = line.line_detail[0].priority_date?datetime(rfx_date_format_default)?iso_utc />
|
||||||
|
"PriorityDate": "${line_detail_priority_date}",
|
||||||
|
<#else>
|
||||||
|
"PriorityDate": "1970-01-01T00:00:00Z",
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
<#-- Segmentation Keys inclusion -->
|
||||||
|
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl">
|
||||||
|
},
|
||||||
|
"Quantity" :
|
||||||
|
{
|
||||||
|
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
||||||
|
"Value": "${line.order_quantity_in_lv!0}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#sep>,</#sep>
|
||||||
|
</#list>
|
||||||
|
],
|
||||||
|
</#if>
|
||||||
|
"RequestedMilestones" :
|
||||||
|
{
|
||||||
|
"RequestedDeliveryDateTime" :
|
||||||
|
{
|
||||||
|
"DateTime": "${receipt_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#break>
|
||||||
|
</#if>
|
||||||
|
</#list>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
|
]
|
||||||
|
|||||||
@@ -1,19 +1,67 @@
|
|||||||
<#include "HfRpConfig.ftl">
|
<#include "HfRpConfig.ftl">
|
||||||
<#include "ReflexUtils.ftl">
|
<#include "ReflexUtils.ftl">
|
||||||
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.confirmation_datetime,time_zone_rfx) />
|
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.confirmation_datetime,time_zone_rfx) />
|
||||||
|
<#assign refIDHmap_local ={}>
|
||||||
[
|
[
|
||||||
{
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
"Header": {
|
{
|
||||||
"ProjectID": "${projectRP}"
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
},
|
"ID": {
|
||||||
"ID": {
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"RefDate": {
|
<#else>
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"Payload": {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
<#else>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
<#list receipt.line_list as receipt_line >
|
||||||
|
<#if receipt_line.origin_order_line_reference?? && receipt_line.origin_order_line_reference!="">
|
||||||
|
<#if !refIDHmap_local[receipt_line.origin_order_line_reference]?? >
|
||||||
|
<#if refIDHmap_local?size != 0 >
|
||||||
|
,
|
||||||
|
</#if>
|
||||||
|
<#assign refIDHmap_local +={receipt_line.origin_order_line_reference,receipt_line.origin_order_line_reference}>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year?trim?json_string}${receipt.receipt_number?trim?json_string}",
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#break>
|
||||||
|
</#if>
|
||||||
|
</#list>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
]
|
]
|
||||||
@@ -1,21 +1,67 @@
|
|||||||
<#include "HfRpConfig.ftl">
|
<#include "HfRpConfig.ftl">
|
||||||
<#include "ReflexUtils.ftl">
|
<#include "ReflexUtils.ftl">
|
||||||
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
|
<#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
|
||||||
|
<#assign refIDHmap_local ={}>
|
||||||
[
|
[
|
||||||
{
|
<#if receipt.receipt_reference?? && receipt.receipt_reference!="">
|
||||||
"Header": {
|
{
|
||||||
"ProjectID": "${projectRP}"
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
},
|
"ID": {
|
||||||
"ID": {
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"RefDate": {
|
<#else>
|
||||||
"DateTime": "${receipt_status_datetime}",
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_reference?trim?json_string}",
|
||||||
"AuthorTimeZone": "${time_zone_rfx}"
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
}
|
}
|
||||||
},
|
|
||||||
|
|
||||||
"Payload": {}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
<#else>
|
||||||
|
<#if receipt.line_list??>
|
||||||
|
<#list receipt.line_list as receipt_line >
|
||||||
|
<#if receipt_line.origin_order_line_reference?? && receipt_line.origin_order_line_reference!="">
|
||||||
|
<#if !refIDHmap_local[receipt_line.origin_order_line_reference]?? >
|
||||||
|
<#if refIDHmap_local?size != 0 >
|
||||||
|
,
|
||||||
|
</#if>
|
||||||
|
<#assign refIDHmap_local +={receipt_line.origin_order_line_reference,receipt_line.origin_order_line_reference}>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
<#if receipt.origin_order_line_depot?? && receipt.origin_order_line_depot!="">
|
||||||
|
"RefID": "${receipt.origin_order_line_depot?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
<#else>
|
||||||
|
"RefID": "${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt_line.origin_order_line_reference?trim?json_string}",
|
||||||
|
</#if>
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
{
|
||||||
|
"Header": {"ProjectID": "${projectRP}"},
|
||||||
|
"ID": {
|
||||||
|
"RefID": "R${receipt.physical_depot_code?trim?json_string}${receipt.activity_code?trim?json_string}${receipt.originator_code?trim?json_string}${receipt.receipt_year?trim?json_string}${receipt.receipt_number?trim?json_string}",
|
||||||
|
"RefDate": {
|
||||||
|
"DateTime": "${receipt_status_datetime}",
|
||||||
|
"AuthorTimeZone": "${time_zone_rfx}"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Payload": {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
<#break>
|
||||||
|
</#if>
|
||||||
|
</#list>
|
||||||
|
</#if>
|
||||||
|
</#if>
|
||||||
]
|
]
|
||||||
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
<#switch eventRP.event>
|
<#switch eventRP.event>
|
||||||
<#case "Created">
|
<#case "Created">
|
||||||
|
<#case "Renotified">
|
||||||
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
|
||||||
<#assign executionflow = eventRP.data />
|
<#assign executionflow = eventRP.data />
|
||||||
|
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
},
|
},
|
||||||
"payload" :
|
"payload" :
|
||||||
{
|
{
|
||||||
|
<#include "RPtoRFX_PrepOrder_HeaderMetadata.ftl">
|
||||||
"originator_reference": "${executionflow.OrderID?json_string}",
|
"originator_reference": "${executionflow.OrderID?json_string}",
|
||||||
"preparation_type_code": "${preparation_type_code}",
|
"preparation_type_code": "${preparation_type_code}",
|
||||||
"end_consignee_code": "${actorID}",
|
"end_consignee_code": "${actorID}",
|
||||||
@@ -43,6 +44,7 @@
|
|||||||
"automatic_generation": "${automatic_generation_flag}",
|
"automatic_generation": "${automatic_generation_flag}",
|
||||||
"deactivate": "false",
|
"deactivate": "false",
|
||||||
"optional_attributes": {
|
"optional_attributes": {
|
||||||
|
<#include "RPtoRFX_PrepOrder_OptionalAttributes.ftl">
|
||||||
"apt_with_end_consignee": "${apt_with_end_consignee_flag}",
|
"apt_with_end_consignee": "${apt_with_end_consignee_flag}",
|
||||||
"apt_with_intermediate": "false",
|
"apt_with_intermediate": "false",
|
||||||
"load_grouping": "${load_grouping}"
|
"load_grouping": "${load_grouping}"
|
||||||
@@ -82,12 +84,17 @@
|
|||||||
<#-- ******* line MetaData and Segmentationkeys to maps ******** -->
|
<#-- ******* line MetaData and Segmentationkeys to maps ******** -->
|
||||||
<#if line.MetaData??>
|
<#if line.MetaData??>
|
||||||
<#assign Line_MetaData_Map = JsonUtil.sequenceToMap(line.MetaData, "Key", "Value") />
|
<#assign Line_MetaData_Map = JsonUtil.sequenceToMap(line.MetaData, "Key", "Value") />
|
||||||
|
<#else>
|
||||||
|
<#assign Line_MetaData_Map = {} />
|
||||||
</#if>
|
</#if>
|
||||||
<#if line.RequestedContent.Goods.SegmentationKeys??>
|
<#if line.RequestedContent.Goods.SegmentationKeys??>
|
||||||
<#assign SegmentationKeys_Map = JsonUtil.sequenceToMap(line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
|
<#assign SegmentationKeys_Map = JsonUtil.sequenceToMap(line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
|
||||||
|
<#else>
|
||||||
|
<#assign SegmentationKeys_Map = {} />
|
||||||
</#if>
|
</#if>
|
||||||
<#include "RPtoRFX_PrepOrder_DefaultLineData.ftl">
|
<#include "RPtoRFX_PrepOrder_DefaultLineData.ftl">
|
||||||
{
|
{
|
||||||
|
<#include "RPtoRFX_PrepOrder_LineMetadata.ftl">
|
||||||
"originator_reference_line_number": ${line.LineID?number},
|
"originator_reference_line_number": ${line.LineID?number},
|
||||||
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
|
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
|
||||||
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
|
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
|
||||||
@@ -98,13 +105,6 @@
|
|||||||
"batch_1": "${batch_1?json_string}",
|
"batch_1": "${batch_1?json_string}",
|
||||||
"base_lv_quantity": "true",
|
"base_lv_quantity": "true",
|
||||||
"any_lv": "false"
|
"any_lv": "false"
|
||||||
<#--
|
|
||||||
"stock_reservation": "false",
|
|
||||||
"forced_priority_date_min_lead_time": "false",
|
|
||||||
"temp_substitution_possible": "false",
|
|
||||||
"substitution_possible": "false"
|
|
||||||
-->
|
|
||||||
|
|
||||||
}
|
}
|
||||||
<#sep>,</#sep>
|
<#sep>,</#sep>
|
||||||
</#list>
|
</#list>
|
||||||
|
|||||||
17
RPtoRFX_PrepOrder_HeaderMetadata.ftl
Normal file
17
RPtoRFX_PrepOrder_HeaderMetadata.ftl
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<#-- Vous pouvez mapper les métadonnées avec des informations complémentaires, des commentaires... -->
|
||||||
|
<#-- You can map metadata with additional information,comments... -->
|
||||||
|
|
||||||
|
<#--
|
||||||
|
<#if Header_MetaData_Map["Color"]??>
|
||||||
|
<#assign COLOR = Header_MetaData_Map["Color"].String/>
|
||||||
|
<#if COLOR??>
|
||||||
|
,
|
||||||
|
"additional_data_value_list":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"code": "Color",
|
||||||
|
"value": "${COLOR}"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
</#if>,
|
||||||
|
-->
|
||||||
17
RPtoRFX_PrepOrder_LineMetadata.ftl
Normal file
17
RPtoRFX_PrepOrder_LineMetadata.ftl
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<#-- Vous pouvez mapper les métadonnées avec des informations complémentaires, des commentaires... -->
|
||||||
|
<#-- You can map metadata with additional information,comments... -->
|
||||||
|
|
||||||
|
<#--
|
||||||
|
<#if Header_MetaData_Map["Color"]??>
|
||||||
|
<#assign COLOR = Header_MetaData_Map["Color"].String/>
|
||||||
|
<#if COLOR??>
|
||||||
|
,
|
||||||
|
"additional_data_value_list":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"code": "Color",
|
||||||
|
"value": "${COLOR}"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
</#if>,
|
||||||
|
-->
|
||||||
8
RPtoRFX_PrepOrder_OptionalAttributes.ftl
Normal file
8
RPtoRFX_PrepOrder_OptionalAttributes.ftl
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<#-- Here are the fields that can be added
|
||||||
|
"end_consignee_apt_start_datetime": "0000-00-00T00:00:00",
|
||||||
|
"end_consignee_apt_end_datetime": "0000-00-00T00:00:00",
|
||||||
|
"reason_code": "str",
|
||||||
|
"planned_preparation_date": "0000-00-00",
|
||||||
|
"despatch_grouping": "string",
|
||||||
|
"reservation_end_datetime": "0000-00-00T00:00:00",
|
||||||
|
-->
|
||||||
@@ -13,6 +13,7 @@
|
|||||||
},
|
},
|
||||||
"payload" :
|
"payload" :
|
||||||
{
|
{
|
||||||
|
<#include "RPtoRFX_Receipt_HeaderMetadata.ftl">
|
||||||
"receipt_reference": "${executionflow.OrderID?json_string}",
|
"receipt_reference": "${executionflow.OrderID?json_string}",
|
||||||
"receipt_type": "${receipt_type}",
|
"receipt_type": "${receipt_type}",
|
||||||
"receipt_reason_code": "${receipt_reason_code}",
|
"receipt_reason_code": "${receipt_reason_code}",
|
||||||
@@ -37,12 +38,17 @@
|
|||||||
<#-- ******* line MetaData and Segmentationkeys to maps ******** -->
|
<#-- ******* line MetaData and Segmentationkeys to maps ******** -->
|
||||||
<#if line.MetaData??>
|
<#if line.MetaData??>
|
||||||
<#assign Line_MetaData_Map = JsonUtil.sequenceToMap(line.MetaData, "Key", "Value") />
|
<#assign Line_MetaData_Map = JsonUtil.sequenceToMap(line.MetaData, "Key", "Value") />
|
||||||
|
<#else>
|
||||||
|
<#assign Line_MetaData_Map = {} />
|
||||||
</#if>
|
</#if>
|
||||||
<#if line.RequestedContent.Goods.SegmentationKeys??>
|
<#if line.RequestedContent.Goods.SegmentationKeys??>
|
||||||
<#assign SegmentationKeys_Map = JsonUtil.sequenceToMap(line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
|
<#assign SegmentationKeys_Map = JsonUtil.sequenceToMap(line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
|
||||||
|
<#else>
|
||||||
|
<#assign SegmentationKeys_Map = {} />
|
||||||
</#if>
|
</#if>
|
||||||
<#include "RPtoRFX_Receipt_DefaultLineData.ftl">
|
<#include "RPtoRFX_Receipt_DefaultLineData.ftl">
|
||||||
{
|
{
|
||||||
|
<#include "RPtoRFX_Receipt_LineMetadata.ftl">
|
||||||
"receipt_reference_line_no": ${line.LineID?number},
|
"receipt_reference_line_no": ${line.LineID?number},
|
||||||
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
|
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
|
||||||
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
|
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
|
||||||
@@ -51,15 +57,9 @@
|
|||||||
"grade_code": "${grade_code}",
|
"grade_code": "${grade_code}",
|
||||||
"batch_1": "${batch_1?json_string!""}",
|
"batch_1": "${batch_1?json_string!""}",
|
||||||
"optional_attributes": {
|
"optional_attributes": {
|
||||||
<#--"held_for_check": "false",
|
<#include "RPtoRFX_Receipt_OptionalAttributes.ftl">
|
||||||
"hold_code": "false", -->
|
|
||||||
"hold_for_specific_code": "false"
|
"hold_for_specific_code": "false"
|
||||||
}
|
}
|
||||||
<#--"quality_control_attributes": {
|
|
||||||
"qcf_to_create_for_receipt_line": "false",
|
|
||||||
"exclude_item_from_inspection": "false"
|
|
||||||
} -->
|
|
||||||
|
|
||||||
}<#sep>,</#sep>
|
}<#sep>,</#sep>
|
||||||
</#list>
|
</#list>
|
||||||
]
|
]
|
||||||
|
|||||||
17
RPtoRFX_Receipt_HeaderMetadata.ftl
Normal file
17
RPtoRFX_Receipt_HeaderMetadata.ftl
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<#-- Vous pouvez mapper les métadonnées avec des informations complémentaires, des commentaires... -->
|
||||||
|
<#-- You can map metadata with additional information,comments... -->
|
||||||
|
|
||||||
|
<#--
|
||||||
|
<#if Header_MetaData_Map["Color"]??>
|
||||||
|
<#assign COLOR = Header_MetaData_Map["Color"].String/>
|
||||||
|
<#if COLOR??>
|
||||||
|
,
|
||||||
|
"additional_data_value_list":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"code": "Color",
|
||||||
|
"value": "${COLOR}"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
</#if>,
|
||||||
|
-->
|
||||||
17
RPtoRFX_Receipt_LineMetadata.ftl
Normal file
17
RPtoRFX_Receipt_LineMetadata.ftl
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
<#-- Vous pouvez mapper les métadonnées avec des informations complémentaires, des commentaires... -->
|
||||||
|
<#-- You can map metadata with additional information,comments... -->
|
||||||
|
|
||||||
|
<#--
|
||||||
|
<#if Header_MetaData_Map["Color"]??>
|
||||||
|
<#assign COLOR = Header_MetaData_Map["Color"].String/>
|
||||||
|
<#if COLOR??>
|
||||||
|
,
|
||||||
|
"additional_data_value_list":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"code": "Color",
|
||||||
|
"value": "${COLOR}"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
</#if>,
|
||||||
|
-->
|
||||||
16
RPtoRFX_Receipt_OptionalAttributes.ftl
Normal file
16
RPtoRFX_Receipt_OptionalAttributes.ftl
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<#-- Here are the fields that can be added
|
||||||
|
"batch_2": "string",
|
||||||
|
"batch_3": "string",
|
||||||
|
"anticipated_receipt_line_activity_code": "str",
|
||||||
|
"anticipated_receipt_line_physical_depot_code": "str",
|
||||||
|
"anticipated_receipt_line_originator_code": "string",
|
||||||
|
"anticipated_receipt_reference": "string",
|
||||||
|
"anticipated_receipt_planned_date": "0000-00-00",
|
||||||
|
"anticipated_receipt_reference_line_no": 999999,
|
||||||
|
"reservation_consignee_code": "string",
|
||||||
|
"reservation_consignee_group_code": "string",
|
||||||
|
"pro_reservation_reference": "string",
|
||||||
|
"held_for_check": "false",
|
||||||
|
"held_for_repacking": "false",
|
||||||
|
"hold_code": "str"
|
||||||
|
-->
|
||||||
Reference in New Issue
Block a user