Compare commits

..

119 Commits

Author SHA1 Message Date
cdc78d71b1 Release 1.2.34+1 2025-03-19 11:16:37 +01:00
6b840c0ce7 Merge branch 'SCPN1-8483' into 'release/1.2'
SCPN1-8483

See merge request r-d-technique/tiers/reflex-wms-connector!93
2025-03-19 10:14:45 +00:00
8ee7527ba4 SCPN1-8483 2025-03-19 10:52:07 +01:00
eb6182c337 Release 1.2.33+3 2025-03-13 10:38:21 +01:00
5b3de10184 modif claim 2025-03-13 10:27:05 +01:00
8cfd636c72 Merge branch 'SCPN1-8401' into 'release/1.2'
SCPN1-8401

See merge request r-d-technique/tiers/reflex-wms-connector!91
2025-03-13 09:19:19 +00:00
18808b6033 modifs Claim_order 2025-03-13 10:01:06 +01:00
1dc77965ce SCPN1-8401 2025-03-07 14:14:28 +01:00
58bcf838bd Release 1.2.33+2 2025-02-25 17:42:12 +01:00
24f17f434e Merge branch 'SCPN1-8183' into 'release/1.2'
move 520

See merge request r-d-technique/tiers/reflex-wms-connector!88
2025-02-25 16:15:19 +00:00
c16c48b270 move 520
(cherry picked from commit df2332b17e)
2025-02-25 15:58:32 +01:00
29e16f12cc Release 1.2.33+1 2025-02-18 10:08:14 +01:00
c74470b780 Merge branch 'SCPN1-8183' into 'release/1.2'
SCPN1-8383

See merge request r-d-technique/tiers/reflex-wms-connector!87
2025-02-18 08:59:45 +00:00
fab2238278 SCPN1-8383 2025-02-18 09:35:16 +01:00
432cca8ec9 Release 1.2.32+1 2025-02-12 10:24:01 +01:00
08e4b04f7f Release 1.2.31+1 2024-12-13 15:34:11 +01:00
bf0ae15a50 Release 1.2.30+1 2024-12-04 09:05:53 +01:00
3f7cd7a245 Merge branch 'pour-1.9' into 'release/1.2'
pour 1.9

See merge request r-d-technique/tiers/reflex-wms-connector!81
2024-12-04 07:09:16 +00:00
173deec755 pour 1.9 2024-12-04 08:08:26 +01:00
85bfe55af7 Release 1.2.29+4 2024-11-19 11:47:55 +01:00
730750b898 Merge branch 'SCPN1-7609' into 'release/1.2'
Correction priority date SCPN1-7609

See merge request r-d-technique/tiers/reflex-wms-connector!78
2024-11-19 10:46:07 +00:00
d85abf8235 Correction priority date
(cherry picked from commit e41309e744)
2024-11-19 11:38:58 +01:00
46a9a82e12 Release 1.2.29+3 2024-11-18 11:44:58 +01:00
ae0b82b6e4 Merge branch 'SCPN1-7578' into 'release/1.2'
SCPN1-7578

See merge request r-d-technique/tiers/reflex-wms-connector!76
2024-11-18 10:41:23 +00:00
5fc26e6015 SCPN1-7578 2024-11-18 11:36:01 +01:00
236c2d754c Release 1.2.29+2 2024-11-12 14:28:03 +01:00
5499e3059f Merge branch 'SCPN1-7528' into 'release/1.2'
json_string SCPN1-7528

See merge request r-d-technique/tiers/reflex-wms-connector!74
2024-11-12 13:21:27 +00:00
cae9bf80bb json_string
(cherry picked from commit 4d24367b58)
2024-11-12 14:13:28 +01:00
ed0141584b Release 1.2.29+1 2024-11-06 14:48:50 +01:00
e6a27c2ba2 Release 1.2.28+5 2024-11-05 11:31:06 +01:00
0a26159dc9 Merge branch 'SCPN1-7496' into 'release/1.2'
SCPN1-7496

See merge request r-d-technique/tiers/reflex-wms-connector!71
2024-11-05 10:29:16 +00:00
a4f3bf8151 SCPN1-7496 2024-11-05 11:28:00 +01:00
867fdc5743 SCPN1-7496 2024-11-05 11:10:04 +01:00
b69bfa50ba Release 1.2.28+4 2024-10-29 15:20:15 +01:00
834abe1b78 SCPN1-7418 2024-10-29 15:17:50 +01:00
e190a16ddc Release 1.2.28+3 2024-10-24 10:22:41 +02:00
e63b14d0ff SCPN1-7421 2024-10-24 10:05:02 +02:00
04bc005cda Release 1.2.28+2 2024-10-17 11:07:16 +02:00
6e46d30221 Merge branch 'SCPN1-6728' into 'release/1.2'
SCPN1-6728

See merge request r-d-technique/tiers/reflex-wms-connector!67
2024-10-17 09:04:24 +00:00
1f2d3ab212 SCPN1-6728 2024-10-17 10:36:14 +02:00
771915ad19 Release 1.2.28+1 2024-10-14 11:51:48 +02:00
4a1fe56381 Merge branch 'SCPN1-7341' into 'release/1.2'
SCPN1-7341

See merge request r-d-technique/tiers/reflex-wms-connector!65
2024-10-14 07:57:53 +00:00
a9a357d4ed SCPN1-7341 2024-10-14 09:56:41 +02:00
0e3e60b45a Release 1.2.27+2 2024-10-03 15:39:13 +02:00
f0e27a6f88 Merge branch 'SCPN1-7302' into 'release/1.2'
SCPN1-7302

See merge request r-d-technique/tiers/reflex-wms-connector!63
2024-10-03 13:31:09 +00:00
f72bcc2537 SCPN1-7302 2024-10-03 15:30:18 +02:00
9700548214 Merge branch 'SCPN1-7302' into 'release/1.2'
modifs

See merge request r-d-technique/tiers/reflex-wms-connector!62
2024-10-03 13:15:28 +00:00
96aec6555c SCPN1-7302 2024-10-03 15:08:49 +02:00
54511c55f1 modifs
(cherry picked from commit e2c0735dc7)
2024-10-03 15:06:18 +02:00
de828ed606 modifs
(cherry picked from commit 25011e68e6)
2024-10-03 15:05:45 +02:00
eaa7ef1b9b Release 1.2.27+1 2024-09-25 16:12:56 +02:00
4c84e4195b Release 1.2.26+1 2024-09-13 10:38:27 +02:00
113c94f100 Merge branch 'SCPN1-7155' into 'release/1.2'
SCPN1-7155

See merge request r-d-technique/tiers/reflex-wms-connector!59
2024-09-13 08:09:08 +00:00
7963b351aa SCPN1-7155 2024-09-12 14:11:04 +02:00
8425747b42 Release 1.2.25+2 2024-08-29 10:59:28 +02:00
03e20e7aed Merge branch 'SCPN1-7065' into 'release/1.2'
SCPN1-7065

See merge request r-d-technique/tiers/reflex-wms-connector!57
2024-08-29 08:48:06 +00:00
04b7974c77 SCPN1-7065
(cherry picked from commit ca33a85694)
2024-08-29 10:37:54 +02:00
087346139d Release 1.2.25+1 2024-08-08 16:55:33 +02:00
0a4263d551 Release 1.2.24+1 2024-08-07 12:23:46 +02:00
b00302c8e3 Release 1.2.23+2 2024-08-07 08:44:43 +02:00
55b7b54b44 Merge branch 'SCPN1-6998' into 'release/1.2'
SCPN1-6998

See merge request r-d-technique/tiers/reflex-wms-connector!54
2024-08-07 06:43:11 +00:00
26003c24f2 SCPN1-6998 2024-08-07 08:38:34 +02:00
0468700574 Release 1.2.23+1 2024-08-06 16:08:37 +02:00
fe35481144 Merge branch 'SCPN1-6998' into 'release/1.2'
SCPN1-6998

See merge request r-d-technique/tiers/reflex-wms-connector!52
2024-08-06 13:48:36 +00:00
d21204a949 SCPN1-6998 2024-08-06 15:41:22 +02:00
46421972a8 Release 1.2.22+1 2024-07-29 17:33:09 +02:00
ccca6d1592 Release 1.2.21+1 2024-07-29 17:32:32 +02:00
68622896f0 Release 1.2.20+1 2024-07-24 10:47:24 +02:00
fea5691ddd Release 1.2.19+1 2024-07-22 10:18:15 +02:00
2fb5dcd103 Merge branch 'SCPN1-6912' into 'release/1.2'
Merge branch 'SCPN1-6564' into 'release/1.2'

See merge request r-d-technique/tiers/reflex-wms-connector!48
2024-07-22 07:54:20 +00:00
04253d939f Merge branch 'develop' into SCPN1-6912 2024-07-19 11:24:12 +02:00
5c0b112c39 Modifs 170724 2024-07-17 11:07:36 +02:00
c3d1ceb0c5 ODP 2024-07-12 11:17:30 +02:00
b80623e631 Release 1.2.18+1 2024-07-12 10:51:31 +02:00
45e8c4fee2 ajout MD HuAdded 2024-07-05 10:40:55 +02:00
23a87c1995 Release 1.2.17+2 2024-06-28 15:12:20 +02:00
a3a2fa3b23 Merge branch '1.2.17+2' into 'release/1.2'
adjust json_string

See merge request r-d-technique/tiers/reflex-wms-connector!45
2024-06-27 08:27:17 +00:00
22b26ac7d3 adjust json_string
(cherry picked from commit af29a11b22)
2024-06-25 17:30:03 +02:00
af29a11b22 adjust json_string 2024-06-25 17:29:36 +02:00
74b976b367 adjust json_string 2024-06-24 16:20:09 +02:00
0b3f07add9 adjust json-string 2024-06-24 11:47:44 +02:00
28659b1157 Release 1.2.17+1 2024-06-24 10:54:19 +02:00
3de6a2f6a9 add json_string 2024-06-24 08:38:44 +02:00
4afc7fa50c securisation 2024-06-21 13:49:56 +02:00
6910fb80a8 SCPN1-6605 MovementCreated
(cherry picked from commit e8510d079c)
2024-06-21 13:32:56 +02:00
1052849c12 correction dans le cas où la commande n'a pas de ligne... 2024-06-21 13:30:15 +02:00
044fda9d16 correction dans le cas où la commande n'a pas de ligne... 2024-06-21 13:28:44 +02:00
e8510d079c SCPN1-6605 MovementCreated 2024-06-07 11:15:47 +02:00
24a94caf29 Release 1.2.16+5 2024-06-06 09:45:59 +02:00
aa19de32a5 Merge branch 'SCPN1-6692' into 'develop'
SCPN1-6692

Closes SCPN1-6692

See merge request r-d-technique/tiers/reflex-wms-connector!43
2024-06-06 07:44:29 +00:00
513a5c2c3e SCPN1-6692
(cherry picked from commit 2524859cd4)
2024-06-06 09:16:38 +02:00
2524859cd4 SCPN1-6692 2024-06-06 09:15:09 +02:00
011540fc51 Release 1.2.16+4 2024-05-30 17:20:55 +02:00
06147dd8d4 SCPN1-6642 SCPN1-6641 2024-05-30 17:18:16 +02:00
5e9804db40 Merge branch 'SCPN1-6641' into 'release/1.2'
SCPN1-6641 et SCPN1-6642

See merge request r-d-technique/tiers/reflex-wms-connector!42
2024-05-30 15:05:08 +00:00
e344cca043 SCPN1-6642 2024-05-30 16:30:59 +02:00
b0b4714df9 SCPN1-6641 2024-05-30 14:30:09 +02:00
9cbacc0ebc priority date 2024-05-17 11:00:25 +02:00
c31d6de4a2 Merge branch 'SCPN1-6564' into 'release/1.2'
SCPN1-6564

See merge request r-d-technique/tiers/reflex-wms-connector!38

(cherry picked from commit c0dd029d1f)
2024-05-17 10:57:10 +02:00
15bd095feb Release 1.2.16+3 2024-05-16 17:55:49 +02:00
c0dd029d1f Merge branch 'SCPN1-6564' into 'release/1.2'
SCPN1-6564

See merge request r-d-technique/tiers/reflex-wms-connector!38
2024-05-16 15:30:52 +00:00
2e0d61310b SCPN1-6564 2024-05-16 17:00:32 +02:00
f62ccadba5 Release 1.2.16+2 2024-05-13 17:07:22 +02:00
2c29166ccb Merge branch 'SCPN1-6535' into 'release/1.2'
modifs HUGP

See merge request r-d-technique/tiers/reflex-wms-connector!36
2024-05-13 15:05:20 +00:00
4534155f2e modifs HUGP
(cherry picked from commit b3da874dd3)
2024-05-13 16:42:15 +02:00
b3da874dd3 modifs HUGP 2024-05-13 16:00:46 +02:00
5948467818 Release 1.2.16+1 2024-05-02 10:21:58 +02:00
c63e4ff5c8 Release 1.2.15+8 2024-04-24 18:23:25 +02:00
457cfc85c2 Merge branch 'SCPN1-6461' into 'release/1.2'
SCPN1-6461

See merge request r-d-technique/tiers/reflex-wms-connector!33
2024-04-24 16:19:29 +00:00
6809b32410 Création de commande
(cherry picked from commit 82dfc05cdb)
2024-04-24 17:49:09 +02:00
82dfc05cdb Création de commande 2024-04-24 15:09:45 +02:00
eda5fe4e07 modifs hsrprepa 2024-04-15 10:16:14 +02:00
26654a9820 modifs 2024-04-12 09:37:03 +02:00
37a5e64e83 Release 1.2.15+7 2024-04-11 11:22:18 +02:00
2f31833bc3 Merge branch 'versio-1.2.15' into 'release/1.2'
Modifs RPtoRFX 1701240947 SCPN1-6379

See merge request r-d-technique/tiers/reflex-wms-connector!31
2024-04-11 09:21:32 +00:00
cff0f18d8a modifs ipgmove
(cherry picked from commit 6b6cef5332)
2024-04-11 11:12:11 +02:00
6b6cef5332 modifs ipgmove 2024-04-11 11:01:05 +02:00
d7c9c72762 modifs hsrpro 2024-04-10 16:25:27 +02:00
87efb21e64 modifs ipg 2024-04-09 16:53:34 +02:00
76 changed files with 1376 additions and 538 deletions

162
ActorPrefix.ftl Normal file
View File

@@ -0,0 +1,162 @@
<#-- --------------------------------------------------------------------------------------- -->
<#-- Actor Prefix 4 cars -->
<#-- --------------------------------------------------------------------------------------- -->
<#-- For Depot -->
<#function RFXtoRPprefixDepot depot>
<#if uniqueness >
<#local actor = depot>
<#else>
<#if text_language_rfx ="fr">
<#local actor = "DEP_"+depot>
<#else>
<#if text_language_rfx ="it">
<#local actor = "DEP_"+depot>
<#else>
<#if text_language_rfx ="es">
<#local actor = "DEP_"+depot>
<#else>
<#if text_language_rfx ="pl">
<#local actor = "MAG_"+depot>
<#else>
<#if text_language_rfx ="nl">
<#local actor = "DEP_"+depot>
<#else>
<#local actor = "DEP_"+depot>
</#if>
</#if>
</#if>
</#if>
</#if>
</#if>
<#return (actor)>
</#function>
<#function RPtoRFXprefixDepot actor>
<#if uniqueness>
<#local depot = actor>
<#else>
<#local depot = actor[4..]>
</#if>
<#return (depot)>
</#function>
<#-- For Supplier -->
<#function RFXtoRPprefixSupplier supplier>
<#if uniqueness>
<#local actor = supplier>
<#else>
<#if text_language_rfx ="fr">
<#local actor = "FOU_"+supplier>
<#else>
<#if text_language_rfx ="it">
<#local actor = "FOR_"+supplier>
<#else>
<#if text_language_rfx ="es">
<#local actor = "PRO_"+supplier>
<#else>
<#if text_language_rfx ="pl">
<#local actor = "DOS_"+supplier>
<#else>
<#if text_language_rfx ="nl">
<#local actor = "LEV_"+supplier>
<#else>
<#local actor = "SUP_"+supplier>
</#if>
</#if>
</#if>
</#if>
</#if>
</#if>
<#return (actor)>
</#function>
<#function RPtoRFXprefixSupplier actor>
<#if uniqueness>
<#local supplier = actor>
<#else>
<#local supplier = actor[4..]>
</#if>
<#return (supplier)>
</#function>
<#-- For Carrier -->
<#function RFXtoRPprefixCarrier carrier>
<#if uniqueness>
<#local actor = carrier>
<#else>
<#if text_language_rfx ="fr">
<#local actor = "TRA_"+carrier>
<#else>
<#if text_language_rfx ="it">
<#local actor = "VET_"+carrier>
<#else>
<#if text_language_rfx ="es">
<#local actor = "TRA_"+carrier>
<#else>
<#if text_language_rfx ="pl">
<#local actor = "PRZ_"+carrier>
<#else>
<#if text_language_rfx ="nl">
<#local actor = "VER_"+carrier>
<#else>
<#local actor = "CAR_"+carrier>
</#if>
</#if>
</#if>
</#if>
</#if>
</#if>
<#return (actor)>
</#function>
<#function RPtoRFXprefixCarrier actor>
<#if uniqueness>
<#local carrier = actor>
<#else>
<#local carrier = actor[4..]>
</#if>
<#return (carrier)>
</#function>
<#-- For Consignee -->
<#function RFXtoRPprefixConsignee consignee>
<#if uniqueness>
<#local actor = consignee>
<#else>
<#if text_language_rfx ="fr">
<#local actor = "DES_"+consignee>
<#else>
<#if text_language_rfx ="it">
<#local actor = "DES_"+consignee>
<#else>
<#if text_language_rfx ="es">
<#local actor = "DES_"+consignee>
<#else>
<#if text_language_rfx ="pl">
<#local actor = "ODB_"+consignee>
<#else>
<#if text_language_rfx ="nl">
<#local actor = "ONT_"+consignee>
<#else>
<#local actor = "CON_"+consignee>
</#if>
</#if>
</#if>
</#if>
</#if>
</#if>
<#return (actor)>
</#function>
<#function RPtoRFXprefixConsignee actor>
<#if uniqueness>
<#local consignee = actor>
<#else>
<#local consignee = actor[4..]>
</#if>
<#return (consignee)>
</#function>

View File

@@ -50,11 +50,11 @@
<#case "D"> <#case "D">
<#-- *********************************************** Action = DELETE ******************** --> <#-- *********************************************** Action = DELETE ******************** -->
<#stop "event not supported"> <#stop >
<#break> <#break>
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,4 +1,6 @@
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
<#list reflexStockPicturesInterface.detailled_stock_list as stock> <#list reflexStockPicturesInterface.detailled_stock_list as stock>
{ {
@@ -6,10 +8,10 @@
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${stock.physical_depot_code}" "RefID": "${RFXtoRPprefixDepot(stock.physical_depot_code)}"
}, },
"Payload": { "Payload": {
<#assign generation_date = RfxDateTimetoUTC(stock.generation_date,time_zone_offset_rfx) /> <#assign generation_date = RfxDateTimetoUTCWithTimezone(stock.generation_date,time_zone_rfx) />
"Snapshot": { "Snapshot": {
"EndDateTime": { "EndDateTime": {
"DateTime": "${generation_date}", "DateTime": "${generation_date}",

View File

@@ -1,4 +1,6 @@
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
<#list reflexStockPicturesInterface.detailled_stock_list as stock> <#list reflexStockPicturesInterface.detailled_stock_list as stock>
{ {
@@ -6,8 +8,8 @@
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"Payload": { "Payload": {
"ActorID": "${stock.physical_depot_code}", "ActorID": "${RFXtoRPprefixDepot(stock.physical_depot_code)}",
<#assign generation_date = RfxDateTimetoUTC(stock.generation_date,time_zone_offset_rfx) /> <#assign generation_date = RfxDateTimetoUTCWithTimezone(stock.generation_date,time_zone_rfx) />
"Snapshot": { "Snapshot": {
"DateTime": { "DateTime": {
"DateTime": "${generation_date}", "DateTime": "${generation_date}",

View File

@@ -25,7 +25,7 @@
}, },
{ {
<#assign manufacturing_datetime = RfxDateTimetoUTC(stock.Date_of_manufacture,time_zone_offset_rfx) /> <#assign manufacturing_datetime = RfxDateTimetoUTCWithTimezone(stock.Date_of_manufacture,time_zone_rfx) />
"Key": "ManufacturingDate", "Key": "ManufacturingDate",
"Value": "Timestamp": { "Value": "Timestamp": {
"AuthorTimeZone": "${time_zone_rfx}", "AuthorTimeZone": "${time_zone_rfx}",

View File

@@ -14,6 +14,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -16,6 +16,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -14,6 +14,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -28,6 +28,6 @@ those parameters are stored in FTL file HfRpConfig.ftl for later use in some of
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -41,6 +41,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${carrier.carrier_code?trim?json_string}" "RefID": "${RFXtoRPprefixCarrier(carrier.carrier_code?trim?json_string)}"
}, },
"Payload": { "Payload": {
"Name": "${carrier.carrier_designation?json_string}", "Name": "${carrier.carrier_designation?json_string}",
"ManagedStock": false, "ManagedStock": false,
@@ -14,10 +16,8 @@
<#-- ***Partner ID could be added here *** --> <#-- ***Partner ID could be added here *** -->
<#-- "PartnerID": "${}", --> <#-- "PartnerID": "${}", -->
<#--
<#include "RFXtoRP_HsaCarrier_ActorCreated_Metadata.ftl">,
-->
<#include "RFXtoRP_HsaCarrier_ActorCreated_Metadata.ftl">,
"Address": "Address":
{ {
@@ -29,7 +29,12 @@
"StreetAddressTwo" : "${carrier.carrier_structured_address.additionnal_data?json_string}", "StreetAddressTwo" : "${carrier.carrier_structured_address.additionnal_data?json_string}",
"PostalCode" : "${carrier.carrier_structured_address.postal_code?json_string}", "PostalCode" : "${carrier.carrier_structured_address.postal_code?json_string}",
"City" : "${carrier.carrier_structured_address.post_code_area_name?json_string}", "City" : "${carrier.carrier_structured_address.post_code_area_name?json_string}",
"CountryCode" : "${carrier.carrier_structured_address.country_code?json_string}", <#assign isCountryCode = JsonUtil.isCountryCode(carrier.carrier_structured_address.country_code?upper_case) />
<#if isCountryCode>
"CountryCode" : "${carrier.carrier_structured_address.country_code?upper_case?json_string}",
<#else>
"CountryCode" : "",
</#if>
"ProvinceCode": "${carrier.carrier_structured_address.territorial_div_code?json_string}", "ProvinceCode": "${carrier.carrier_structured_address.territorial_div_code?json_string}",
"State": "${carrier.carrier_structured_address.country_designation?json_string}" "State": "${carrier.carrier_structured_address.country_designation?json_string}"
@@ -39,7 +44,8 @@
"Name": "${carrier.address.company_name?json_string}", "Name": "${carrier.address.company_name?json_string}",
"StreetAddressOne" : "${carrier.address.address_1?json_string}", "StreetAddressOne" : "${carrier.address.address_1?json_string}",
"StreetAddressTwo" : "${carrier.address.address_2?json_string}", "StreetAddressTwo" : "${carrier.address.address_2?json_string}",
"StreetAddressThree" : "${carrier.address.address_3?json_string}" "StreetAddressThree" : "${carrier.address.address_3?json_string}",
"CountryCode" : ""
</#if> </#if>
</#if> </#if>
}, },

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${carrier.carrier_code?trim?json_string}" "RefID": "${RFXtoRPprefixCarrier(carrier.carrier_code?trim?json_string)}"
}, },
"Payload": {} "Payload": {}
} }
] ]

View File

@@ -41,6 +41,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${actor.code?trim?json_string}" "RefID": "${RFXtoRPprefixConsignee(actor.code?trim?json_string)}"
}, },
"Payload": { "Payload": {
"Name": "${actor.designation?json_string}", "Name": "${actor.designation?json_string}",
"ManagedStock": false, "ManagedStock": false,
@@ -14,9 +16,9 @@
<#-- ***Partner ID could be added here *** --> <#-- ***Partner ID could be added here *** -->
<#-- "PartnerID": "${}", --> <#-- "PartnerID": "${}", -->
<#--
<#include "RFXtoRP_HsaCons_ActorCreated_Metadata.ftl">, <#include "RFXtoRP_HsaCons_ActorCreated_Metadata.ftl">,
-->
"Address": "Address":
{ {
@@ -29,7 +31,12 @@
"StreetAddressTwo" : "${actor.consignee_structured_address.additionnal_data?json_string}", "StreetAddressTwo" : "${actor.consignee_structured_address.additionnal_data?json_string}",
"PostalCode" : "${actor.consignee_structured_address.postal_code?json_string}", "PostalCode" : "${actor.consignee_structured_address.postal_code?json_string}",
"City" : "${actor.consignee_structured_address.post_code_area_name?json_string}", "City" : "${actor.consignee_structured_address.post_code_area_name?json_string}",
"CountryCode" : "${actor.consignee_structured_address.country_code?json_string}", <#assign isCountryCode = JsonUtil.isCountryCode(actor.consignee_structured_address.country_code?upper_case) />
<#if isCountryCode>
"CountryCode" : "${actor.consignee_structured_address.country_code?upper_case?json_string}",
<#else>
"CountryCode" : "",
</#if>
"ProvinceCode": "${actor.consignee_structured_address.territorial_div_code?json_string}", "ProvinceCode": "${actor.consignee_structured_address.territorial_div_code?json_string}",
"State": "${actor.consignee_structured_address.country_designation?json_string}" "State": "${actor.consignee_structured_address.country_designation?json_string}"
@@ -40,7 +47,8 @@
"Name": "${actor.address.company_name?json_string}", "Name": "${actor.address.company_name?json_string}",
"StreetAddressOne" : "${actor.address.address_1?json_string}", "StreetAddressOne" : "${actor.address.address_1?json_string}",
"StreetAddressTwo" : "${actor.address.address_2?json_string}", "StreetAddressTwo" : "${actor.address.address_2?json_string}",
"StreetAddressThree" : "${actor.address.address_3?json_string}" "StreetAddressThree" : "${actor.address.address_3?json_string}",
"CountryCode" : ""
</#if> </#if>
</#if> </#if>
}, },

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${actor.code?trim?json_string}" "RefID": "${RFXtoRPprefixConsignee(actor.code?trim?json_string)}"
}, },
"Payload": {} "Payload": {}
} }
] ]

47
RFXtoRP_HsaDispute.ftl Normal file
View File

@@ -0,0 +1,47 @@
<#-- **** 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 dispute = JsonUtil.jsonToMap(dataRfx)>
[
<#if dispute.dispute_closed == true >
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ClaimCreated>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsaDispute_Created.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ClaimMessageSent>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_HsaDispute_MessageSent.ftl">
}
<#else>
<#stop>
</#if>
]
<#break>
<#case "D">
<#-- *********************************************** Action = DELETE ******************** -->
<#stop>
<#break>
<#default>
<#stop>
</#switch>

View File

@@ -0,0 +1,67 @@
<#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl">
<#include "Table.ftl">
[
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
<#if dispute.dispute_reference?? && dispute.dispute_reference!="">
"Title":"${dispute.dispute_reference?trim?json_string}",
<#else>
"Title":"",
</#if>
"Criticality":"${TableCriticality[dispute.dispute_criticity]}",
"Amount": {
<#assign isCurrencyCode = JsonUtil.isCurrencyCode(dispute.dispute_amount_unit?upper_case) />
<#if isCurrencyCode>
"Currency" : "${dispute.dispute_amount_unit?upper_case?json_string}",
<#else>
<#if TableAmount[dispute.dispute_amount_unit?json_string]??>
"Currency" : "${TableAmount[dispute.dispute_amount_unit?json_string]}",
<#else>
"Currency" : "XXX",
</#if>
</#if>
"Value": "${dispute.dispute_amount}"
},
<#if dispute.dispute_type_code=="050" >
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"EntityID":"${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_reference?trim?json_string}",
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_type_code=="070" || dispute.dispute_type_code=="030" >
"EntityID":"${dispute.dispute_reception.reception_reference?trim?json_string}",
<#else>
<#stop "Type not supported" >
</#if>
</#if>
<#-- To configure -->
<#include "RFXtoRP_HsaDispute_TableReasonCodeToClaimTypeID.ftl">
<#if TableReasonCode[dispute.dispute_reason_code]??>
"ClaimTypeID":"${TableReasonCode[dispute.dispute_reason_code]}"
<#else>
<#stop "Claim reason code not supported" >
</#if>
}
}
]

View File

@@ -0,0 +1,124 @@
<#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl">
[
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
<#if dispute.dispute_preparation??>
"Message": "${dispute.dispute_reference?trim?json_string}"
<#else>
<#if dispute.dispute_reception??>
"Message": "${dispute.dispute_reception.reception_reference?trim?json_string}"
</#if>
</#if>
}
},
<#if dispute.dispute_quantity!=0 && dispute.dispute_item??>
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
"Message": "${dispute.dispute_item.item_code?trim?json_string} - ${dispute.dispute_quantity}${dispute.dispute_quantity_unit}"
}
},
<#elseif dispute.dispute_item??>
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
"Message": "${dispute.dispute_item.item_code?trim?json_string}"
}
},
<#elseif dispute.dispute_quantity!=0>
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
"Message": "${dispute.dispute_quantity}${dispute.dispute_quantity_unit}"
}
},
</#if>
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
<#if dispute.dispute_preparation??>
<#if dispute.dispute_preparation.preparation_order_list?? && dispute.dispute_preparation.preparation_order_list?size != 0>
"RefID": "${dispute.dispute_preparation.preparation_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_activity_code?replace(" ","")?json_string}${dispute.dispute_preparation.preparation_order_list[0].preparation_order_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
<#else>
<#stop "preparation order list is empty" >
</#if>
<#else>
<#if dispute.dispute_reception??>
"RefID": "${dispute.dispute_reception.reception_physical_depot_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_activity_code?replace(" ","")?json_string}${dispute.dispute_reception.reception_contractor_code?replace(" ","")?json_string}${dispute.dispute_year_number?replace(" ","")?json_string}${dispute.dispute_number?replace(" ","")?json_string}"
</#if>
</#if>
},
"Payload": {
"Message": " ${dispute.dispute_description?trim?json_string}"
}
}
]

View File

@@ -0,0 +1,7 @@
<#-- Specify table for reason code -->
<#assign TableReasonCode = {}/>

View File

@@ -14,7 +14,6 @@
<#-- exclusion of the cases of an IPG move with quantity = 0 (weight modification) --> <#-- exclusion of the cases of an IPG move with quantity = 0 (weight modification) -->
<#if reflexMvtStockInterface.ipg_move_quantity_in_base_lvs != 0> <#if reflexMvtStockInterface.ipg_move_quantity_in_base_lvs != 0>
<#-- IPG moves translated into Stock moves --> <#-- IPG moves translated into Stock moves -->
<#if reflexMvtStockInterface.ipg_move_type == "130" || <#if reflexMvtStockInterface.ipg_move_type == "130" ||
reflexMvtStockInterface.ipg_move_type == "200" || reflexMvtStockInterface.ipg_move_type == "200" ||
@@ -25,13 +24,19 @@
reflexMvtStockInterface.ipg_move_type == "260" || reflexMvtStockInterface.ipg_move_type == "260" ||
reflexMvtStockInterface.ipg_move_type == "290" || reflexMvtStockInterface.ipg_move_type == "290" ||
reflexMvtStockInterface.ipg_move_type == "300" || reflexMvtStockInterface.ipg_move_type == "300" ||
reflexMvtStockInterface.ipg_move_type == "350" ||
reflexMvtStockInterface.ipg_move_type == "370" ||
reflexMvtStockInterface.ipg_move_type == "400" || reflexMvtStockInterface.ipg_move_type == "400" ||
reflexMvtStockInterface.ipg_move_type == "410" || reflexMvtStockInterface.ipg_move_type == "410" ||
reflexMvtStockInterface.ipg_move_type == "420" reflexMvtStockInterface.ipg_move_type == "420" ||
reflexMvtStockInterface.ipg_move_type == "455" ||
reflexMvtStockInterface.ipg_move_type == "460" ||
reflexMvtStockInterface.ipg_move_type == "465" ||
(reflexMvtStockInterface.ipg_move_type == "520" && reflexMvtStockInterface.ipg_move_creation_program == "HFST69")
> >
[ [
{ {
<#assign apiReflexPlatformID = ApiReflexPlatformID.StockMoved> <#assign apiReflexPlatformID = ApiReflexPlatformID.MovementCreated>
"apiReflexPlatformID" : "${apiReflexPlatformID}", "apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" : "datas" :
<#include "RFXtoRP_HsaIpgMove_StockMoved.ftl"> <#include "RFXtoRP_HsaIpgMove_StockMoved.ftl">
@@ -41,7 +46,8 @@
<#-- IPG moves translated into goods received (all type of receipt) --> <#-- IPG moves translated into goods received (all type of receipt) -->
<#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.receipt_reference?? && reflexMvtStockInterface.receipt_reference!=""> reflexMvtStockInterface.ipg_move_type == "120") >
<#if reflexMvtStockInterface.receipt_reference?? && reflexMvtStockInterface.receipt_reference!="">
[ [
{ {
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsReceived> <#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitGoodsReceived>
@@ -51,14 +57,13 @@
} }
] ]
<#else> <#else>
<#if reflexMvtStockInterface.receipt_reference?? && reflexMvtStockInterface.receipt_reference!="">
<#-- Case of IPG move type volontarilly ignored--> <#-- Case of IPG move type volontarilly ignored-->
<#stop " Reference receipt is empty"> <#stop " Reference receipt is empty">
</#if>
<#else> <#else>
<#stop> <#stop>
</#if> </#if>
</#if> </#if>
</#if>
<#else> <#else>
<#-- cases of an IPG move with quantity = 0 (weight modification)--> <#-- cases of an IPG move with quantity = 0 (weight modification)-->
<#stop> <#stop>
@@ -67,11 +72,11 @@
<#case "D"> <#case "D">
<#-- *********************************************** Action = DELETE ******************** --> <#-- *********************************************** Action = DELETE ******************** -->
<#stop "event not supported - Case D "> <#stop >
<#break> <#break>
<#default> <#default>
<#stop "event not supported"> <#stop>
</#switch> </#switch>

View File

@@ -1,7 +1,8 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
<#assign receipt_confirmation_datetime = RfxDateTimetoUTC(reflexMvtStockInterface.ipg_move_creation_datetime,time_zone_offset_rfx) /> <#assign receipt_confirmation_datetime = RfxDateTimetoUTCWithTimezone(reflexMvtStockInterface.ipg_move_creation_datetime,time_zone_rfx) />
<#assign priority_date = reflexMvtStockInterface.ipg_priority_date?datetime(rfx_date_format_default)?iso_utc /> <#assign priority_date = reflexMvtStockInterface.ipg_priority_date?datetime(rfx_date_format_default)?iso_utc />
{ {
"Header": { "Header": {
@@ -20,18 +21,23 @@
"Goods": { "Goods": {
"ItemID": "${reflexMvtStockInterface.item_code?trim?json_string}", "ItemID": "${reflexMvtStockInterface.item_code?trim?json_string}",
"LVBranchID": "${reflexMvtStockInterface.lv_code?json_string}", "LVBranchID": "${reflexMvtStockInterface.lv_code?json_string}",
<#if (reflexMvtStockInterface.ipg_priority_date!="") && (reflexMvtStockInterface.ipg_priority_date?starts_with("00")== false) >
"PriorityDate": "${priority_date}", "PriorityDate": "${priority_date}",
<#else>
"PriorityDate": "1970-01-01T00:00:00Z",
</#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.receipt_reference!=""> <#if reflexMvtStockInterface.receipt_reference!="">
"ExecutionflowID": "${reflexMvtStockInterface.receipt_reference?trim?json_string}", "ExecutionflowID": "${reflexMvtStockInterface.receipt_reference?trim?json_string}",
<#else> <#else>
"ExecutionflowID": "${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.ipg_move_year_number}${reflexMvtStockInterface.extended_ipg_move_number}", "ExecutionflowID": "${reflexMvtStockInterface.physical_depot_code}${reflexMvtStockInterface.activity_code}${reflexMvtStockInterface.ipg_move_year_number}${reflexMvtStockInterface.extended_ipg_move_number}",
</#if> </#if>
"LineID": "${reflexMvtStockInterface.receipt_line_number}", "LineID": "${reflexMvtStockInterface.receipt_line_number}",
"ActorID": "${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}",
"Value": ${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs} "Value": ${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs}

View File

@@ -1,5 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
<#assign MoveType_KV = {"130":"STOCK_MOVEMENT_TYPE_PRODUCTION", <#assign MoveType_KV = {"130":"STOCK_MOVEMENT_TYPE_PRODUCTION",
"200":"STOCK_MOVEMENT_TYPE_FIX", "200":"STOCK_MOVEMENT_TYPE_FIX",
@@ -10,12 +11,18 @@
"260":"STOCK_MOVEMENT_TYPE_REQUALIFICATION", "260":"STOCK_MOVEMENT_TYPE_REQUALIFICATION",
"290":"STOCK_MOVEMENT_TYPE_REQUALIFICATION", "290":"STOCK_MOVEMENT_TYPE_REQUALIFICATION",
"300":"STOCK_MOVEMENT_TYPE_REQUALIFICATION", "300":"STOCK_MOVEMENT_TYPE_REQUALIFICATION",
"350":"STOCK_MOVEMENT_TYPE_USE_OF_GOODS",
"370":"STOCK_MOVEMENT_TYPE_USE_OF_GOODS",
"400":"STOCK_MOVEMENT_TYPE_FIX", "400":"STOCK_MOVEMENT_TYPE_FIX",
"410":"STOCK_MOVEMENT_TYPE_FIX", "410":"STOCK_MOVEMENT_TYPE_FIX",
"420":"STOCK_MOVEMENT_TYPE_REQUALIFICATION"}> "420":"STOCK_MOVEMENT_TYPE_REQUALIFICATION",
<#assign generation_date = RfxDateTimetoUTC(reflexMvtStockInterface.ipg_move_creation_datetime,time_zone_offset_rfx) /> "455":"STOCK_MOVEMENT_TYPE_FIX",
"460":"STOCK_MOVEMENT_TYPE_FIX",
"465":"STOCK_MOVEMENT_TYPE_FIX",
"520":"STOCK_MOVEMENT_TYPE_OUTBOUND"
}>
<#assign generation_date = RfxDateTimetoUTCWithTimezone(reflexMvtStockInterface.ipg_move_creation_datetime,time_zone_rfx) />
<#assign ipg_priority_datetime = reflexMvtStockInterface.ipg_priority_date?datetime(rfx_date_format_default)?iso_utc /> <#assign ipg_priority_datetime = reflexMvtStockInterface.ipg_priority_date?datetime(rfx_date_format_default)?iso_utc />
[ [
{ {
"Header": { "Header": {
@@ -36,7 +43,7 @@
"LVBranchID": "${reflexMvtStockInterface.lv_code?json_string}" "LVBranchID": "${reflexMvtStockInterface.lv_code?json_string}"
}, },
"ActorID": "${reflexMvtStockInterface.physical_depot_code?trim?json_string}", "ActorID": "${RFXtoRPprefixDepot(reflexMvtStockInterface.physical_depot_code?trim?json_string)}",
"Movement": { "Movement": {
"DateTime": { "DateTime": {
@@ -46,7 +53,11 @@
"Author": "ReflexWMS-${reflexMvtStockInterface.ipg_move_creation_user_code?json_string}", "Author": "ReflexWMS-${reflexMvtStockInterface.ipg_move_creation_user_code?json_string}",
"ExternalMoveRef" : "${reflexMvtStockInterface.ipg_move_year_number} - ${reflexMvtStockInterface.ipg_move_number}", "ExternalMoveRef" : "${reflexMvtStockInterface.ipg_move_year_number} - ${reflexMvtStockInterface.ipg_move_number}",
"Type": "${MoveType_KV[reflexMvtStockInterface.ipg_move_type]!reflexMvtStockInterface.ipg_move_type}", "Type": "${MoveType_KV[reflexMvtStockInterface.ipg_move_type]!reflexMvtStockInterface.ipg_move_type}",
<#if reflexMvtStockInterface.ipg_move_type == "520" >
"Reason": " Transfert ${RFXtoRPprefixDepot(reflexMvtStockInterface.physical_depot_code?trim?json_string)} to ${RFXtoRPprefixDepot(reflexMvtStockInterface.transfer_consignee_physical_depot_code?trim?json_string)}",
<#else>
"Reason": "${reflexMvtStockInterface.miscellaneous_receipts_despatches_code?json_string}", "Reason": "${reflexMvtStockInterface.miscellaneous_receipts_despatches_code?json_string}",
</#if>
"ExternalInfo" : "${reflexMvtStockInterface.stock_move_reference?json_string}", "ExternalInfo" : "${reflexMvtStockInterface.stock_move_reference?json_string}",
<#if reflexMvtStockInterface.ipg_move_operation_year_number!= 0> <#if reflexMvtStockInterface.ipg_move_operation_year_number!= 0>
"OperationReference": "${reflexMvtStockInterface.ipg_move_operation_year_number} - ${reflexMvtStockInterface.ipg_move_operation_number}", "OperationReference": "${reflexMvtStockInterface.ipg_move_operation_year_number} - ${reflexMvtStockInterface.ipg_move_operation_number}",
@@ -55,7 +66,7 @@
"Quantity": "Quantity":
{ {
"LVID": "${quantity_in_base_lv_RP_Cst}", "LVID": "${quantity_in_base_lv_RP_Cst}",
<#if reflexMvtStockInterface.move_sign == "+"> <#if reflexMvtStockInterface.move_sign == "+" || reflexMvtStockInterface.ipg_move_quantity_in_base_lvs <= 0 >
"Value": ${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs} "Value": ${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs}
<#else> <#else>
"Value": -${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs} "Value": -${reflexMvtStockInterface.ipg_move_quantity_in_base_lvs}

View File

@@ -46,6 +46,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -40,6 +40,6 @@
] ]
<#break> <#break>
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -16,8 +16,8 @@
"Codes": [ "Codes": [
<#list lv.id_list as id> <#list lv.id_list as id>
{ {
"Key": "${id.logistical_variant_ID_type_code?json_string!""}", "Key": "${(id.logistical_variant_ID_type_code!"")?json_string}",
"Value": "${id.logistical_variant_ID_code?json_string!""}" "Value": "${(id.logistical_variant_ID_code!"")?json_string}"
}<#sep>,</#sep> }<#sep>,</#sep>
</#list> </#list>
], ],

View File

@@ -24,7 +24,9 @@
<#include "RFXtoRP_HsaItm_ItemCreated_ItemMetadata.ftl">, <#include "RFXtoRP_HsaItm_ItemCreated_ItemMetadata.ftl">,
<#-- Item Photo URI could be added here --> <#-- Item Photo URI could be added here -->
<#--"PhotoURI": " ", --> <#if item.url?? && item.url!="">
"PhotoURI": "${item.url?json_string}",
</#if>
<#-- Loop for the Logistical Variants - LV --> <#-- Loop for the Logistical Variants - LV -->
<#if item.logistical_variant_list??> <#if item.logistical_variant_list??>
@@ -39,8 +41,8 @@
"Codes": [ "Codes": [
<#list logistical_variant.id_list as id> <#list logistical_variant.id_list as id>
{ {
"Key": "${id.logistical_variant_ID_type_code?json_string!""}", "Key": "${(id.logistical_variant_ID_type_code!"")?json_string}",
"Value": "${id.logistical_variant_ID_code?json_string!""}" "Value": "${(id.logistical_variant_ID_code!"")?json_string}"
}<#sep>,</#sep> }<#sep>,</#sep>
</#list> </#list>
], ],

40
RFXtoRP_HsaLstCarSta.ftl Normal file
View File

@@ -0,0 +1,40 @@
<#-- **** 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>
<#stop>
<#switch cloudEventMsg.action>
<#case "C">
<#case "U">
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#case "D">
<#-- *********************************************** Action = DELETE *************************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#default>
<#stop >
</#switch>

View File

@@ -72,10 +72,10 @@
<#case "D"> <#case "D">
<#-- *********************************************** Action = DELETE ******************** --> <#-- *********************************************** Action = DELETE ******************** -->
<#stop "event not supported (case D)"> <#stop >
<#break> <#break>
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparationStatusInterface.preparation_status_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparationStatusInterface.preparation_status_datetime,time_zone_rfx) />
[ [
{ {

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparationStatusInterface.preparation_status_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparationStatusInterface.preparation_status_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparationStatusInterface.preparation_status_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparationStatusInterface.preparation_status_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparationStatusInterface.preparation_status_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparationStatusInterface.preparation_status_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparationStatusInterface.preparation_status_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparationStatusInterface.preparation_status_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -41,6 +41,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${actor.code?trim?json_string}" "RefID": "${RFXtoRPprefixSupplier(actor.code?trim?json_string)}"
}, },
"Payload": { "Payload": {
"Name": "${actor.designation?json_string}", "Name": "${actor.designation?json_string}",
"ManagedStock": false, "ManagedStock": false,
@@ -14,9 +16,7 @@
<#-- ***Partner ID could be added here *** --> <#-- ***Partner ID could be added here *** -->
<#-- "PartnerID": "${}", --> <#-- "PartnerID": "${}", -->
<#--
<#include "RFXtoRP_HsaSup_ActorCreated_Metadata.ftl">, <#include "RFXtoRP_HsaSup_ActorCreated_Metadata.ftl">,
-->
"Address": "Address":
{ {
@@ -28,7 +28,12 @@
"StreetAddressTwo" : "${actor.supplier_structured_address.additionnal_data?json_string}", "StreetAddressTwo" : "${actor.supplier_structured_address.additionnal_data?json_string}",
"PostalCode" : "${actor.supplier_structured_address.postal_code?json_string}", "PostalCode" : "${actor.supplier_structured_address.postal_code?json_string}",
"City" : "${actor.supplier_structured_address.post_code_area_name?json_string}", "City" : "${actor.supplier_structured_address.post_code_area_name?json_string}",
"CountryCode" : "${actor.supplier_structured_address.country_code?json_string}", <#assign isCountryCode = JsonUtil.isCountryCode(actor.supplier_structured_address.country_code?upper_case) />
<#if isCountryCode>
"CountryCode" : "${actor.supplier_structured_address.country_code?upper_case?json_string}",
<#else>
"CountryCode" : "",
</#if>
"ProvinceCode": "${actor.supplier_structured_address.territorial_div_code?json_string}", "ProvinceCode": "${actor.supplier_structured_address.territorial_div_code?json_string}",
"State": "${actor.supplier_structured_address.country_designation?json_string}" "State": "${actor.supplier_structured_address.country_designation?json_string}"
@@ -38,7 +43,8 @@
"Name": "${actor.optional_attributes.company_name?json_string}", "Name": "${actor.optional_attributes.company_name?json_string}",
"StreetAddressOne" : "${actor.optional_attributes.address_1?json_string}", "StreetAddressOne" : "${actor.optional_attributes.address_1?json_string}",
"StreetAddressTwo" : "${actor.optional_attributes.address_2?json_string}", "StreetAddressTwo" : "${actor.optional_attributes.address_2?json_string}",
"StreetAddressThree" : "${actor.optional_attributes.address_3?json_string}" "StreetAddressThree" : "${actor.optional_attributes.address_3?json_string}",
"CountryCode" : ""
</#if> </#if>
</#if> </#if>

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${actor.code?trim?json_string}" "RefID": "${RFXtoRPprefixSupplier(actor.code?trim?json_string)}"
}, },
"Payload": {} "Payload": {}
} }
] ]

40
RFXtoRP_HsrCarrierApt.ftl Normal file
View File

@@ -0,0 +1,40 @@
<#-- **** 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>
<#stop>
<#switch cloudEventMsg.action>
<#case "C">
<#case "U">
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#case "D">
<#-- *********************************************** Action = DELETE *************************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#default>
<#stop >
</#switch>

View File

@@ -41,6 +41,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${depot.physical_depot_code?trim?json_string}" "RefID": "${RFXtoRPprefixDepot(depot.physical_depot_code?trim?json_string)}"
}, },
"Payload": { "Payload": {
"Name": "${depot.physical_depot_designation?json_string}", "Name": "${depot.physical_depot_designation?json_string}",
"ManagedStock": true, "ManagedStock": true,
@@ -14,9 +16,9 @@
<#-- ***Partner ID could be added here *** --> <#-- ***Partner ID could be added here *** -->
<#-- "PartnerID": "${}", --> <#-- "PartnerID": "${}", -->
<#--
<#include "RFXtoRP_HsrDepot_ActorCreated_Metadata.ftl">, <#include "RFXtoRP_HsrDepot_ActorCreated_Metadata.ftl">,
-->
"Address": "Address":
{ {
@@ -28,22 +30,31 @@
"StreetAddressTwo" : "${depot.physical_depot_structured_address.additionnal_data?json_string}", "StreetAddressTwo" : "${depot.physical_depot_structured_address.additionnal_data?json_string}",
"PostalCode" : "${depot.physical_depot_structured_address.postal_code?json_string}", "PostalCode" : "${depot.physical_depot_structured_address.postal_code?json_string}",
"City" : "${depot.physical_depot_structured_address.post_code_area_name?json_string}", "City" : "${depot.physical_depot_structured_address.post_code_area_name?json_string}",
"CountryCode" : "${depot.physical_depot_structured_address.country_code?json_string}", <#assign isCountryCode = JsonUtil.isCountryCode(depot.physical_depot_structured_address.country_code?upper_case) />
<#if isCountryCode >
"CountryCode" : "${depot.physical_depot_structured_address.country_code?upper_case?json_string}",
<#else>
"CountryCode" : "",
</#if>
"ProvinceCode": "${depot.physical_depot_structured_address.territorial_div_code?json_string}", "ProvinceCode": "${depot.physical_depot_structured_address.territorial_div_code?json_string}",
"State": "${depot.physical_depot_structured_address.country_designation?json_string}" "State": "${depot.physical_depot_structured_address.country_designation?json_string}"
<#-- if Reflex WMS address is not structured --> <#-- if Reflex WMS address is not structured -->
<#else> <#else>
<#if depot.physical_depot_address??>
"Name": "${depot.physical_depot_address.company_name?json_string}", "Name": "${depot.physical_depot_address.company_name?json_string}",
"StreetAddressOne" : "${depot.physical_depot_address.address_1?json_string}", "StreetAddressOne" : "${depot.physical_depot_address.address_1?json_string}",
"StreetAddressTwo" : "${depot.physical_depot_address.address_2?json_string}", "StreetAddressTwo" : "${depot.physical_depot_address.address_2?json_string}",
"StreetAddressThree" : "${depot.physical_depot_address.address_3?json_string}" "StreetAddressThree" : "${depot.physical_depot_address.address_3?json_string}",
"CountryCode" : ""
</#if>
</#if> </#if>
}, },
<#if depot.physical_depot_address??>
"Phones": ["${depot.physical_depot_address.telephone?json_string}", "Phones": ["${depot.physical_depot_address.telephone?json_string}",
"${depot.physical_depot_address.other_number?json_string}" "${depot.physical_depot_address.other_number?json_string}"
], ],
</#if>
"Typology": "TYPOLOGY_UNKNOWN" "Typology": "TYPOLOGY_UNKNOWN"
} }
} }

View File

@@ -1,12 +1,14 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${depot.physical_depot_code?trim?json_string}" "RefID": "${RFXtoRPprefixDepot(depot.physical_depot_code?trim?json_string)}"
}, },
"Payload": {} "Payload": {}
} }
] ]

40
RFXtoRP_HsrLoadInfo.ftl Normal file
View File

@@ -0,0 +1,40 @@
<#-- **** 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>
<#stop>
<#switch cloudEventMsg.action>
<#case "C">
<#case "U">
<#-- *********************************************** Action = CREATE or UPDATE ******************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#case "D">
<#-- *********************************************** Action = DELETE *************************** -->
<#assign dataRfx = JsonUtil.decodeBase64(cloudEventMsg.data) />
<#assign depot = JsonUtil.jsonToMap(dataRfx)>
[
{
}
]
<#break>
<#default>
<#stop >
</#switch>

View File

@@ -25,6 +25,7 @@
<#include "RFXtoRP_HsrPrepa_HandlingunitGoodsPrepared.ftl"> <#include "RFXtoRP_HsrPrepa_HandlingunitGoodsPrepared.ftl">
}, },
{ {
<#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched> <#assign apiReflexPlatformID = ApiReflexPlatformID.HandlingunitDispatched>
"apiReflexPlatformID" : "${apiReflexPlatformID}", "apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" : "datas" :
@@ -47,10 +48,14 @@
} }
</#if> </#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 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> <#list preparation_line.despatched_ipg_list as despatched_ipg>
<#assign HUadded_packing_datetime = RfxDateTimetoUTC(preparation_line.confirmation_datetime,time_zone_offset_rfx) /> <#assign HUadded_packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
<#if despatched_ipg.consignment_unit_id!=""> <#if !hd_numberHmap[despatched_ipg.hd_number]?? >
<#assign hd_numberHmap += {despatched_ipg.hd_number,despatched_ipg.hd_number}>
, ,
{ {
<#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled> <#assign apiReflexPlatformID = ApiReflexPlatformID.TrackingHULabeled>
@@ -73,9 +78,21 @@
"datas" : "datas" :
<#include "RFXtoRP_HsrPrepa_HUsAdded_HandlingUnitDispatched.ftl"> <#include "RFXtoRP_HsrPrepa_HUsAdded_HandlingUnitDispatched.ftl">
} }
<#if !hd_numberHmapHUadded[despatched_ipg.hd_number]??>
<#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>
</#list> </#list>
</#list> </#list>
<#assign refIDHmap ={}>
] ]
<#else> <#else>
<#stop "no confirmed quantity for the preparation - preparation closed"> <#stop "no confirmed quantity for the preparation - preparation closed">
@@ -85,9 +102,9 @@
<#break> <#break>
<#case "D"> <#case "D">
<#-- *********************************************** Action = DELETE ******************** --> <#-- *********************************************** Action = DELETE ******************** -->
<#stop "event not supported (Case D)"> <#stop>
<#break> <#break>
<#default> <#default>
<#stop "event not supported"> <#stop>
</#switch> </#switch>

View File

@@ -1,8 +1,15 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
<#assign refIDHmap_local ={}>
<#list preparationOrder.preparation_line_lst?filter(l ->l.preparation_order_originator_reference!="") as preparation_line> <#list preparationOrder.preparation_line_lst?filter(l ->l.preparation_order_originator_reference!="") as preparation_line>
<#assign OrderOriginReference = preparation_line.preparation_order_originator_reference?trim?json_string> <#assign OrderOriginReference = preparation_line.preparation_order_originator_reference?trim?json_string>
<#if !refIDHmap_local[OrderOriginReference]?? >
<#if refIDHmap_local?size != 0 >
,
</#if>
<#assign refIDHmap_local +={OrderOriginReference,OrderOriginReference}>
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
@@ -12,7 +19,7 @@
}, },
"Payload":{ "Payload":{
"Carrier": { "Carrier": {
"ActorID":"${preparationOrder.load_data.carrier_code?trim?json_string}" "ActorID": "${RFXtoRPprefixCarrier(preparationOrder.load_data.carrier_code?trim?json_string)}"
} }
<#-- Add transport grade code <#-- Add transport grade code
<#if preparationOrder.transport_grade_code!=""> <#if preparationOrder.transport_grade_code!="">
@@ -21,6 +28,7 @@
</#if> --> </#if> -->
} }
} }
<#sep>,</#sep> </#if>
</#list> </#list>
<#assign refIDHmap_local ={}>
] ]

View File

@@ -2,8 +2,6 @@
<#-- <#--
"MetaData" :[ "MetaData" :[
] ]
--> -->
"MetaData": [ ] "MetaData": [ ]

View File

@@ -24,7 +24,6 @@
<#else> <#else>
"Value": { "Bool" : "False"} "Value": { "Bool" : "False"}
}, },
{ {
<#assign manufacturing_date = despatched_ipg.ipg_manufacture_date?datetime(rfx_date_format_default)?iso_utc /> <#assign manufacturing_date = despatched_ipg.ipg_manufacture_date?datetime(rfx_date_format_default)?iso_utc />
"Key": "ManufacturingDate", "Key": "ManufacturingDate",

View File

@@ -1,9 +1,15 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
[ [
<#assign dispatched3_datetime = RfxDateTimetoUTC(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_offset_rfx) /> <#assign dispatched3_datetime = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list??) as preparation_line3> <#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list??) as preparation_line3>
<#list preparation_line3.despatched_ipg_list?filter(j ->j.carton_number!="000000000000000000") as despatched_ipg3> <#list preparation_line3.despatched_ipg_list?filter(j ->j.carton_number!="000000000000000000") as despatched_ipg3>
<#if !refIDHmap[despatched_ipg3.carton_number]?? >
<#if refIDHmap?size != 0 >
,
</#if>
<#assign refIDHmap += {despatched_ipg3.carton_number,despatched_ipg3.carton_number}>
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
@@ -16,10 +22,8 @@
} }
}, },
"Payload": { } "Payload": { }
}<#sep>,</#sep> }
</#list>
<#if preparation_line3.despatched_ipg_list?filter(j ->j.carton_number!="000000000000000000")?size!=0 >
<#sep>,</#sep>
</#if> </#if>
</#list> </#list>
</#list>
] ]

View File

@@ -0,0 +1,9 @@
<#-- use protobuf of class HsrPrepa to find Reflex WMS fields names -->
<#--
"MetaData" :[
]
-->
"MetaData": [ ]

View File

@@ -0,0 +1,27 @@
<#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[
<#assign dispatched_datetime5 = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
{
"Header": {
"ProjectID": "${projectRP}"
},
"ID": {
"RefID":"${despatched_ipg.hd_number}",
"RefDate": {
"DateTime": "${dispatched_datetime5}",
"AuthorTimeZone": "${time_zone_rfx}"
}
},
"Payload": {
"HandlingunitID": "${despatched_ipg.hd_number}"
<#if preparationOrder.load_data?? && preparationOrder.load_data.carrier_code?? && preparationOrder.load_data.carrier_code!="" >
,
"HUCarrier":{
"ActorID": "${RFXtoRPprefixCarrier(preparationOrder.load_data.carrier_code?trim?json_string)}"
}
</#if>
}
}
]

View File

@@ -1,13 +1,17 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
[ [
<#assign dispatched_datetime = RfxDateTimetoUTC(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_offset_rfx) /> <#assign dispatched_datetime = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
<#assign refIDHmap_local ={}>
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.preparation_order_originator_reference!="") as preparation_line> <#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> <#list preparation_line.despatched_ipg_list as despatched_ipg>
<#if !refIDHmap_local[despatched_ipg.hd_number]?? >
<#if refIDHmap_local?size != 0 >
,
</#if>
<#assign refIDHmap_local +={despatched_ipg.hd_number,despatched_ipg.hd_number}>
{ {
"Header": { "Header": {"ProjectID": "${projectRP}"},
"ProjectID": "${projectRP}"
},
"ID": { "ID": {
"RefID": "${despatched_ipg.hd_number}", "RefID": "${despatched_ipg.hd_number}",
"RefDate": { "RefDate": {
@@ -16,8 +20,9 @@
} }
}, },
"Payload": { } "Payload": { }
}<#sep>,</#sep> }
</#if>
</#list> </#list>
<#sep>,</#sep>
</#list> </#list>
<#assign refIDHmap_local ={}>
] ]

View File

@@ -1,8 +1,10 @@
<#include "ReflexUtils.ftl">
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ActorPrefix.ftl">
[ [
<#list preparationOrder.preparation_line_lst?filter(l ->l.despatched_ipg_list?? && l.preparation_order_originator_reference!="") as preparation_line> <#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> <#list preparation_line.despatched_ipg_list as despatched_ipg>
<#assign packing_datetime = RfxDateTimetoUTC(preparation_line.confirmation_datetime,time_zone_offset_rfx) /> <#assign packing_datetime = RfxDateTimetoUTCWithTimezone(preparation_line.confirmation_datetime,time_zone_rfx) />
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
@@ -22,9 +24,9 @@
"Payload": { "Payload": {
"Information" :{ "Information" :{
<#if despatched_ipg.carton_number != "000000000000000000"> <#if despatched_ipg.carton_number != "000000000000000000">
"ContainerType": "${despatched_ipg.carton_type_code}" "ContainerType": "${despatched_ipg.carton_type_code?json_string}"
<#if preparation_line.despatched_cartons_list?? > <#if preparation_line.despatched_cartons_list?? >
<#list preparation_line.despatched_cartons_list?filter(l ->l.carton_number==despatched_ipg.carton_number) as dimensionCarton> <#list preparation_line.despatched_cartons_list?filter(l -> l?? && l.carton_number==despatched_ipg.carton_number) as dimensionCarton>
, ,
"Length": { "Length": {
"Unit": "${length_unit_rfx}", "Unit": "${length_unit_rfx}",
@@ -47,7 +49,7 @@
<#else> <#else>
"ContainerType": "${despatched_ipg.hd_type_code?json_string}" "ContainerType": "${despatched_ipg.hd_type_code?json_string}"
<#if preparation_line.despatched_hds_list??> <#if preparation_line.despatched_hds_list??>
<#list preparation_line.despatched_hds_list?filter(j ->j.handling_device_number==despatched_ipg.hd_number) as dimensionHU> <#list preparation_line.despatched_hds_list?filter(j -> j?? && j.handling_device_number==despatched_ipg.hd_number) as dimensionHU>
, ,
"Length": { "Length": {
"Unit": "${length_unit_rfx}", "Unit": "${length_unit_rfx}",
@@ -74,12 +76,9 @@
"Goods": { "Goods": {
"ItemID": "${preparation_line.item_code?trim?json_string}", "ItemID": "${preparation_line.item_code?trim?json_string}",
"LVBranchID": "${preparation_line.item_lv_code?json_string}", "LVBranchID": "${preparation_line.item_lv_code?json_string}",
<#if (despatched_ipg.ipg_manufacture_date?length != 0) && (despatched_ipg.ipg_manufacture_date?starts_with("00") == false)>
<#assign priority_date = despatched_ipg.ipg_manufacture_date?datetime(rfx_date_format_default)?iso_utc /> <#if (despatched_ipg.ipg_use_by_date?length != 0) && (despatched_ipg.ipg_use_by_date?starts_with("00")== false)>
"PriorityDate": "${priority_date}", <#assign priority_date = despatched_ipg.ipg_use_by_date?datetime(rfx_date_format_default)?iso_utc />
<#else>
<#if (despatched_ipg.ipg_receipt_date?length != 0) && (despatched_ipg.ipg_receipt_date?starts_with("00")== false)>
<#assign priority_date = despatched_ipg.ipg_receipt_date?datetime(rfx_date_format_default)?iso_utc />
"PriorityDate": "${priority_date}", "PriorityDate": "${priority_date}",
<#else> <#else>
<#if (despatched_ipg.ipg_best_before_date?length != 0) && (despatched_ipg.ipg_best_before_date?starts_with("00")== false)> <#if (despatched_ipg.ipg_best_before_date?length != 0) && (despatched_ipg.ipg_best_before_date?starts_with("00")== false)>
@@ -90,8 +89,12 @@
<#assign priority_date = despatched_ipg.ipg_sell_by_date?datetime(rfx_date_format_default)?iso_utc /> <#assign priority_date = despatched_ipg.ipg_sell_by_date?datetime(rfx_date_format_default)?iso_utc />
"PriorityDate": "${priority_date}", "PriorityDate": "${priority_date}",
<#else> <#else>
<#if (despatched_ipg.ipg_use_by_date?length != 0) && (despatched_ipg.ipg_use_by_date?starts_with("00")== false)> <#if (despatched_ipg.ipg_manufacture_date?length != 0) && (despatched_ipg.ipg_manufacture_date?starts_with("00") == false)>
<#assign priority_date = despatched_ipg.ipg_use_by_date?datetime(rfx_date_format_default)?iso_utc /> <#assign priority_date = despatched_ipg.ipg_manufacture_date?datetime(rfx_date_format_default)?iso_utc />
"PriorityDate": "${priority_date}",
<#else>
<#if (despatched_ipg.ipg_receipt_date?length != 0) && (despatched_ipg.ipg_receipt_date?starts_with("00")== false)>
<#assign priority_date = despatched_ipg.ipg_receipt_date?datetime(rfx_date_format_default)?iso_utc />
"PriorityDate": "${priority_date}", "PriorityDate": "${priority_date}",
<#else> <#else>
<#if (preparationOrder.stock_despatch_at_preparation_datetime?length != 0) && (preparationOrder.stock_despatch_at_preparation_datetime?starts_with("00")== false)> <#if (preparationOrder.stock_despatch_at_preparation_datetime?length != 0) && (preparationOrder.stock_despatch_at_preparation_datetime?starts_with("00")== false)>
@@ -115,7 +118,7 @@
<#else> <#else>
"LineID": "${preparation_line.pro_line_number!0}", "LineID": "${preparation_line.pro_line_number!0}",
</#if> </#if>
"ActorID": "${preparationOrder.physical_depot_code?trim?json_string}", "ActorID": "${RFXtoRPprefixDepot(preparationOrder.physical_depot_code?trim?json_string)}",
"Quantity": { "Quantity": {
"LVID": "${quantity_in_base_lv_RP_Cst}", "LVID": "${quantity_in_base_lv_RP_Cst}",
"Value": ${despatched_ipg.quantity_lvs} "Value": ${despatched_ipg.quantity_lvs}
@@ -124,7 +127,6 @@
} }
] ]
} }
}<#sep>,</#sep> }<#sep>,</#sep>
</#list> </#list>
<#sep>,</#sep> <#sep>,</#sep>

View File

@@ -16,7 +16,7 @@
"Payload": { "Payload": {
"IncludedHandlingunitIDs": [ "${despatched_ipg.carton_number}" ] "IncludedHandlingunitIDs": [ "${despatched_ipg.carton_number}" ]
<#if preparation_line.despatched_hds_list?? > <#if preparation_line.despatched_hds_list?? && preparation_line.despatched_hds_list[0]??>
, ,
"Information": { "Information": {
"ContainerType": "${preparation_line.despatched_hds_list[0].hd_type_code}", "ContainerType": "${preparation_line.despatched_hds_list[0].hd_type_code}",
@@ -33,7 +33,10 @@
"Value": ${preparation_line.despatched_hds_list[0].hd_type_width} "Value": ${preparation_line.despatched_hds_list[0].hd_type_width}
} }
} }
</#if> </#if>,
<#-- HU Metadata inclusin inclusion -->
<#include "RFXtoRP_HsrPrepa_HUsAdded_Metadata.ftl">
} }
} }

View File

@@ -1,8 +1,15 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
<#assign refIDHmap_local ={}>
<#list preparationOrder.preparation_line_lst?filter(l ->l.preparation_order_originator_reference!="") as preparation_line> <#list preparationOrder.preparation_line_lst?filter(l ->l.preparation_order_originator_reference!="") as preparation_line>
<#assign OrderOriginReference = preparation_line.preparation_order_originator_reference?trim?json_string> <#assign OrderOriginReference = preparation_line.preparation_order_originator_reference?trim?json_string>
<#if !refIDHmap_local[OrderOriginReference]?? >
<#if refIDHmap_local?size != 0 >
,
</#if>
<#assign refIDHmap_local +={OrderOriginReference,OrderOriginReference}>
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
@@ -12,10 +19,11 @@
}, },
"Payload":{ "Payload":{
"Carrier": { "Carrier": {
"ActorID":"${preparationOrder.load_data.carrier_code?trim?json_string}" "ActorID": "${RFXtoRPprefixCarrier(preparationOrder.load_data.carrier_code?trim?json_string)}"
} }
} }
} }
<#sep>,</#sep> </#if>
</#list> </#list>
<#assign refIDHmap_local ={}>
] ]

View File

@@ -1,13 +1,27 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
<#assign dispatched_datetime4 = RfxDateTimetoUTCWithTimezone(preparationOrder.stock_despatch_at_preparation_datetime,time_zone_rfx) />
{ {
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${despatched_ipg.consignment_unit_id?trim?json_string}" <#if despatched_ipg.consignment_unit_id!="">
"RefID": "${despatched_ipg.consignment_unit_id?trim?json_string}",
<#else>
<#if despatched_ipg.carton_number != "000000000000000000">
"RefID":"${despatched_ipg.carton_number}",
<#else>
"RefID":"${despatched_ipg.hd_number}",
</#if>
</#if>
"RefDate": {
"DateTime": "${dispatched_datetime4}",
"AuthorTimeZone": "${time_zone_rfx}"
}
}, },
"Payload": { "Payload": {
<#if despatched_ipg.carton_number != "000000000000000000"> <#if despatched_ipg.carton_number != "000000000000000000">
@@ -18,9 +32,8 @@
<#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!="" >
, ,
"HUCarrier":{ "HUCarrier":{
"ActorID": "${preparationOrder.load_data.carrier_code?json_string}" "ActorID": "${RFXtoRPprefixCarrier(preparationOrder.load_data.carrier_code?trim?json_string)}"
} }
</#if> </#if>
} }
} }

View File

@@ -29,17 +29,17 @@
<#include "RFXtoRP_HsrPro_ExecutionflowDetected.ftl"> <#include "RFXtoRP_HsrPro_ExecutionflowDetected.ftl">
} }
<#else> <#else>
<#stop "preparation order already confirmed"> <#-- preparation order already confirmed -->
<#stop>
</#if> </#if>
<#else> <#else>
<#stop "preparation order type not supported"> <#-- preparation order type not supported -->
<#stop>
</#if> </#if>
<#else> <#else>
<#stop "PRO reference is empty"> <#stop "PRO reference is empty">
</#if> </#if>
] ]
<#break> <#break>
@@ -63,6 +63,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign preparation_status_datetime = RfxDateTimetoUTC(preparation_order.modification_datetime,time_zone_offset_rfx) /> <#assign preparation_status_datetime = RfxDateTimetoUTCWithTimezone(preparation_order.modification_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -1,9 +1,10 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
<#assign planned_final_delivery_start_datetime = RfxDateTimetoUTC(preparation_order.planned_final_delivery_start_datetime,time_zone_offset_rfx) /> <#assign planned_final_delivery_start_datetime = RfxDateTimetoUTCWithTimezone(preparation_order.planned_final_delivery_start_datetime,time_zone_rfx) />
<#assign pro_creation_datetime = RfxDateTimetoUTC(preparation_order.creation_datetime,time_zone_offset_rfx) /> <#assign pro_creation_datetime = RfxDateTimetoUTCWithTimezone(preparation_order.creation_datetime,time_zone_rfx) />
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
@@ -26,7 +27,7 @@
"CarrierService":"${preparation_order.transport_grade_code?trim?json_string}", "CarrierService":"${preparation_order.transport_grade_code?trim?json_string}",
</#if> --> </#if> -->
"ShipFrom": { "ShipFrom": {
"ActorID": "${preparation_order.physical_depot_code?trim?json_string}" "ActorID": "${RFXtoRPprefixDepot(preparation_order.physical_depot_code?trim?json_string)}"
}, },
"ShipFromAcked": true, "ShipFromAcked": true,
"ShipTo": { "ShipTo": {
@@ -48,27 +49,32 @@
preparation_order.address.territorial_division_code == "" && preparation_order.address.territorial_division_code == "" &&
preparation_order.address.postal_code == "" && preparation_order.address.postal_code == "" &&
preparation_order.address.iso_country_code == ""> preparation_order.address.iso_country_code == "">
"ActorID": "${preparation_order.end_consignee_code}" "ActorID": "${RFXtoRPprefixConsignee(preparation_order.end_consignee_code?json_string)}"
<#else> <#else>
"Actor": "Actor":
{ {
"Name" : "${preparation_order.address.name_or_company_name?json_string!""}", "Name" : "${(preparation_order.address.name_or_company_name!"")?json_string}",
"Address" : "Address" :
{ {
"City" : "${preparation_order.address.post_code_area_name?json_string!""}", "City" : "${(preparation_order.address.post_code_area_name!"")?json_string}",
"CountryCode" : "${preparation_order.address.iso_country_code!""}", <#assign isCountryCode = JsonUtil.isCountryCode(preparation_order.address.iso_country_code?upper_case) />
"PostalCode" : "${preparation_order.address.postal_code!""}", <#if isCountryCode>
"StreetAddressOne" : "${preparation_order.address.street_and_number_and_po_box?json_string!""}", "CountryCode" : "${(preparation_order.address.iso_country_code!"")?json_string}",
"StreetAddressTwo" : "${preparation_order.address.additional_address_data_1?json_string!""}", <#else>
"StreetAddressThree" : "${preparation_order.address.additional_address_data_2?json_string!""}" "CountryCode" : "",
</#if>
"PostalCode" : "${(preparation_order.address.postal_code!"")?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" : "Contact" :
{ {
"FirstName" : "${preparation_order.address.first_name?json_string!""}", "FirstName" : "${(preparation_order.address.first_name!"")?json_string}",
"LastName" : "${preparation_order.address.last_name?json_string!""}", "LastName" : "${(preparation_order.address.last_name!"")?json_string}",
"Emails" : ${splitEmailsIntoArray(preparation_order.address.mail_address!""?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!""}" ] "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>
}, },
@@ -84,7 +90,6 @@
</#if> </#if>
<#-- Line Metadata inclusion --> <#-- Line Metadata inclusion -->
<#include "RFXtoRP_HsrPro_ExecutionflowDetected_LineMetadata.ftl">, <#include "RFXtoRP_HsrPro_ExecutionflowDetected_LineMetadata.ftl">,
"RequestedContent": "RequestedContent":
{ {
"Goods": "Goods":
@@ -95,10 +100,8 @@
<#assign forced_priority_date = preparation_order_line.optional_attributes.forced_priority_date?datetime(rfx_date_format_default)?iso_utc /> <#assign forced_priority_date = preparation_order_line.optional_attributes.forced_priority_date?datetime(rfx_date_format_default)?iso_utc />
"PriorityDate": "${forced_priority_date}", "PriorityDate": "${forced_priority_date}",
</#if> </#if>
<#-- Segmentation Keys inclusion --> <#-- Segmentation Keys inclusion -->
<#include "RFXtoRP_HsrPro_ExecutionflowDetected_SegmentationKeys.ftl"> <#include "RFXtoRP_HsrPro_ExecutionflowDetected_SegmentationKeys.ftl">
}, },
"Quantity" : "Quantity" :
{ {
@@ -110,7 +113,6 @@
</#list> </#list>
], ],
</#if> </#if>
"RequestedMilestones" : "RequestedMilestones" :
{ {
"RequestedDeliveryDateTime" : "RequestedDeliveryDateTime" :

View File

@@ -98,6 +98,6 @@
<#default> <#default>
<#stop "event not supported"> <#stop >
</#switch> </#switch>

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign receipt_status_datetime = RfxDateTimetoUTC(receipt.modification_datetime,time_zone_offset_rfx) /> <#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.modification_datetime,time_zone_rfx) />
[ [
{ {

View File

@@ -1,9 +1,10 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#include "ActorPrefix.ftl">
[ [
{ {
<#assign receipt_datetime = RfxDateTimetoUTC(receipt.receipt_datetime,time_zone_offset_rfx) /> <#assign receipt_datetime = RfxDateTimetoUTCWithTimezone(receipt.receipt_datetime,time_zone_rfx) />
<#assign receipt_creation_datetime = RfxDateTimetoUTC(receipt.creation_datetime,time_zone_offset_rfx) /> <#assign receipt_creation_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
"Header": { "Header": {
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
@@ -25,19 +26,21 @@
"ShipFrom": "ShipFrom":
{ {
"ActorID": "${receipt.original_code?trim?json_string}" "ActorID": "${RFXtoRPprefixSupplier(receipt.original_code?trim?json_string)}"
}, },
"ShipTo" : "ShipTo" :
{ {
"ActorID": "${receipt.physical_depot_code?trim?json_string}" "ActorID": "${RFXtoRPprefixDepot(receipt.physical_depot_code?trim?json_string)}"
}, },
"ShipToAcked": true, "ShipToAcked": true,
<#if receipt.carrier_informations.carrier_code != ""> <#if receipt.carrier_informations.carrier_code != "">
"Carrier" : {"ActorID": "${receipt.carrier_informations.carrier_code?trim?json_string}"}, "Carrier":
{
"ActorID":"${RFXtoRPprefixCarrier(receipt.carrier_informations.carrier_code?trim?json_string)}"
},
</#if> </#if>
<#if receipt.line_list??> <#if receipt.line_list??>
"Lines" : [ "Lines" : [
<#list receipt.line_list as line> <#list receipt.line_list as line>
@@ -51,13 +54,16 @@
{ {
"ItemID": "${line.item_code?trim?json_string!"0"}", "ItemID": "${line.item_code?trim?json_string!"0"}",
"LVBranchID": "${line.item_lv_code?json_string!"0"}", "LVBranchID": "${line.item_lv_code?json_string!"0"}",
<#if line.line_without_detail??> <#if (line.line_without_detail?? && line.line_without_detail.priority_date?length != 0) && (line.line_without_detail.priority_date?starts_with("00") == false)>
<#if (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 /> <#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}", "PriorityDate": "${line_without_detail_priority_date}",
</#if>
<#else> <#else>
<#stop > <#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>
<#-- Segmentation Keys inclusion --> <#-- Segmentation Keys inclusion -->
<#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl"> <#include "RFXtoRP_HsrReceiptList_ExecutionflowDetected_SegmentationKeys.ftl">

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign receipt_status_datetime = RfxDateTimetoUTC(receipt.confirmation_datetime,time_zone_offset_rfx) /> <#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.confirmation_datetime,time_zone_rfx) />
[ [
{ {
"Header": { "Header": {

View File

@@ -1,6 +1,6 @@
<#include "HfRpConfig.ftl"> <#include "HfRpConfig.ftl">
<#include "ReflexUtils.ftl"> <#include "ReflexUtils.ftl">
<#assign receipt_status_datetime = RfxDateTimetoUTC(receipt.creation_datetime,time_zone_offset_rfx) /> <#assign receipt_status_datetime = RfxDateTimetoUTCWithTimezone(receipt.creation_datetime,time_zone_rfx) />
[ [
{ {

View File

@@ -22,22 +22,21 @@
"AuthorTimeZone": "${time_zone_rfx}" "AuthorTimeZone": "${time_zone_rfx}"
}, },
"TechMessage": { "TechMessage": {
"Code": "${restResponsetMsg.status}", "Code": "${restResponsetMsg.status!"no Code"}",
"Label": ${strJsonBody} "Label": ${strJsonBody}
}, },
"UserMessage": { "UserMessage": {
"Code": "${restResponsetMsg.status}", "Code": "${restResponsetMsg.status!"no Code"}",
"Label": ${strJsonBody}, "Label": ${strJsonBody},
"Params": [] "Params": []
}, },
"DetailElements": [], "DetailElements": [],
"CorrelationID": "${id.correlationid}", "CorrelationID": "${id.correlationid!"no Correlationid"}",
"ContextPayload": "rfxresponse", "ContextPayload": ${strJsonBody},
"Type": "RP_EXECUTIONFLOW_EVENT", "Type": "RP_EXECUTIONFLOW_EVENT",
"Task": "${id.apiRestReflexID}", "Task": "${id.apiRestReflexID!"no Task"}",
"OriginalID": "${id.refid?trim?json_string}", "OriginalID": "${id.refid!"no OriginalID"?trim?json_string}",
"StackTrace": "" "StackTrace": ""
} }
} }
] ]

View File

@@ -4,7 +4,7 @@
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${id.refid}" "RefID": "${id.refid?json_string}"
}, },
"Payload": { "Payload": {

View File

@@ -4,7 +4,7 @@
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${id.refid}" "RefID": "${id.refid?json_string}"
}, },
"Payload": { "Payload": {

View File

@@ -4,16 +4,57 @@
<#-- organisation : organisationtId in ReflexPlatform --> <#-- organisation : organisationtId in ReflexPlatform -->
<#assign restResponsetMsg = JsonUtil.jsonToMap(input)> <#assign restResponsetMsg = JsonUtil.jsonToMap(input)>
<#assign id = JsonUtil.jsonToMap(restResponsetMsg.id)> <#assign id = JsonUtil.jsonToMap(restResponsetMsg.id!"{}")>
<#assign projectRP = project> <#assign projectRP = project>
<#assign organisationRP = organisation> <#assign organisationRP = organisation>
<#assign aDateTime = .now> <#assign aDateTime = .now>
<#assign no_apiRestReflexID = "no apiRestReflexID">
<#assign no_status = -99999>
<#switch id.apiRestReflexID!no_apiRestReflexID>
<#case no_apiRestReflexID>
[
{
<#if restResponsetMsg.body?? >
<#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) />
<#else>
<#assign restResponseBody = "${restResponsetMsg?trim?json_string}" />
</#if>
<#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_PlatformLogCreate.ftl">
}
]
<#break>
<#switch id.apiRestReflexID>
<#case "preparation_orders_post"> <#case "preparation_orders_post">
<#switch restResponsetMsg.status> <#switch restResponsetMsg.status!no_status>
<#case no_status>
[
{
<#if restResponsetMsg.body?? >
<#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) />
<#else>
<#assign restResponseBody = "${restResponsetMsg?trim?json_string}" />
</#if>
<#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
}
]
<#break>
<#case 200> <#case 200>
<#case 201> <#case 201>
<#-- *********************************************** ApiRestID = preparation_orders_post ******************** --> <#-- *********************************************** ApiRestID = preparation_orders_post ******************** -->
@@ -28,6 +69,16 @@
<#include "RFXtoRP_PrepOrder_ShipFromAcked.ftl"> <#include "RFXtoRP_PrepOrder_ShipFromAcked.ftl">
} }
] ]
<#else>
<#if preparationOrderPostResponse.status?? && preparationOrderPostResponse.status == "WARN">
[
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowShipFromAcked>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_PrepOrder_ShipFromAcked.ftl">
}
]
<#else> <#else>
[ [
{ {
@@ -45,6 +96,7 @@
} }
] ]
</#if> </#if>
</#if>
<#break> <#break>
<#default> <#default>
[ [
@@ -52,7 +104,7 @@
<#if restResponsetMsg.body?? > <#if restResponsetMsg.body?? >
<#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) /> <#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) />
<#else> <#else>
<#assign restResponseBody = "{}" /> <#assign restResponseBody = "${restResponsetMsg?trim?json_string}}" />
</#if> </#if>
<#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate> <#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate>
"apiReflexPlatformID" : "${apiReflexPlatformID}", "apiReflexPlatformID" : "${apiReflexPlatformID}",
@@ -70,7 +122,29 @@
<#break> <#break>
<#case "receipts_post"> <#case "receipts_post">
<#switch restResponsetMsg.status> <#switch restResponsetMsg.status!no_status>
<#case no_status>
[
{
<#if restResponsetMsg.body?? >
<#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) />
<#else>
<#assign restResponseBody = "${restResponsetMsg?trim?json_string}" />
</#if>
<#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_PlatformLogCreate.ftl">
},
{
<#assign apiReflexPlatformID = ApiReflexPlatformID.ExecutionflowAllocationError>
"apiReflexPlatformID" : "${apiReflexPlatformID}",
"datas" :
<#include "RFXtoRP_RestResponseAllocationError.ftl">
}
]
<#break>
<#case 200> <#case 200>
<#case 201> <#case 201>
<#-- *********************************************** ApiRestID = receipts_post ******************** --> <#-- *********************************************** ApiRestID = receipts_post ******************** -->
@@ -110,7 +184,7 @@
<#if restResponsetMsg.body?? > <#if restResponsetMsg.body?? >
<#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) /> <#assign restResponseBody = JsonUtil.decodeBase64(restResponsetMsg.body) />
<#else> <#else>
<#assign restResponseBody = "{}" /> <#assign restResponseBody = "${restResponsetMsg?trim?json_string}" />
</#if> </#if>
<#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate> <#assign apiReflexPlatformID = ApiReflexPlatformID.PlatformLogCreate>
"apiReflexPlatformID" : "${apiReflexPlatformID}", "apiReflexPlatformID" : "${apiReflexPlatformID}",
@@ -126,7 +200,6 @@
] ]
</#switch> </#switch>
<#break> <#break>
<#default> <#default>
<#stop> <#stop>
</#switch> </#switch>

View File

@@ -7,7 +7,7 @@
"ProjectID": "${projectRP}" "ProjectID": "${projectRP}"
}, },
"ID": { "ID": {
"RefID": "${id.refid?trim?json_string}", "RefID": "${id.refid!"no RefID"?trim?json_string}",
"RefDate": { "RefDate": {
"DateTime": "${aDateTime?iso_utc}", "DateTime": "${aDateTime?iso_utc}",
"AuthorTimeZone": "${time_zone_rfx}" "AuthorTimeZone": "${time_zone_rfx}"

View File

@@ -25,12 +25,19 @@
<#noparse><#assign time_zone_rfx = </#noparse>"${file.author_time_zone!"UTC"}<#noparse>"></#noparse> <#noparse><#assign time_zone_rfx = </#noparse>"${file.author_time_zone!"Europe/Paris"}<#noparse>"></#noparse>
<#noparse><#assign time_zone_offset_rfx = </#noparse>"${file.time_zone_offset!"+00:00"}<#noparse>"></#noparse> <#noparse><#assign time_zone_offset_rfx = </#noparse>"${file.time_zone_offset!"+01:00"}<#noparse>"></#noparse>
<#list file.reflex_platform_project_list?filter(l -> l.name == projectRP) as reflex_platform_project> <#list file.reflex_platform_project_list?filter(l -> l.name == projectRP) as reflex_platform_project>
<#noparse><#assign text_language_rfx = </#noparse>"${reflex_platform_project.text_language!"en"}<#noparse>"></#noparse> <#noparse><#assign text_language_rfx = </#noparse>"${reflex_platform_project.text_language!"en"}<#noparse>"></#noparse>
</#list> </#list>
<#list file.reflex_platform_project_list?filter(j -> j.name == projectRP) as reflex_platform_project_uniqueness>
<#if reflex_platform_project_uniqueness.site_code_unicity??>
<#noparse><#assign uniqueness = </#noparse>${reflex_platform_project_uniqueness.site_code_unicity?c}<#noparse>></#noparse>
<#else>
<#noparse><#assign uniqueness = </#noparse>false<#noparse>></#noparse>
</#if>
</#list>

View File

@@ -46,6 +46,6 @@
] ]
<#break> <#break>
<#default> <#default>
<#stop "Event not processed"> <#stop >
</#switch> </#switch>

View File

@@ -1,19 +1,35 @@
<#include "RPtoRFX_PrepOrder_DefaultHeaderData.ftl"> <#include "RPtoRFX_PrepOrder_DefaultHeaderData.ftl">
<#include "ActorPrefix.ftl">
<#include "HfRpConfig.ftl">
<#-- Valeurs par défaut Adresse -->
<#-- Default values -->
<#assign typecode ="010">
<#assign titlecode ="1">
<#assign contacttypecode ="010">
<#assign adresstypecode ="010">
<#-- Si vous utilisez des acteurs non référencés, il faudra créer un destinataire "VIZ" dans Reflex WMS pour utiliser cette fonctionnalité -->
<#-- If you are using unreferenced actors, you will need to create a "VIZ" consignee in Reflex WMS to use this feature -->
<#assign defaultactor ="VIZ">
<#if executionflow.ShipTo.ActorID?? && executionflow.ShipTo.ActorID!="">
<#assign actorID = "${RPtoRFXprefixConsignee(executionflow.ShipTo.ActorID)}" >
<#else>
<#assign actorID = defaultactor >
</#if>
{ {
"id" : {"refid" : "${executionflow.OrderID}"}, "id" : {"refid" : "${executionflow.OrderID?json_string}"},
"route" : "rest/public/v1/activities/{activity_code}/physical_depots/{physical_depot_code}/originators/{originator_code}/preparation_orders", "route" : "rest/public/v1/activities/{activity_code}/physical_depots/{physical_depot_code}/originators/{originator_code}/preparation_orders",
"method" : "POST", "method" : "POST",
"uri_substitutions": { "uri_substitutions": {
"activity_code": "${activity_code}", "activity_code": "${activity_code}",
"physical_depot_code": "${executionflow.ShipFrom.ActorID}", "physical_depot_code": "${RPtoRFXprefixDepot(executionflow.ShipFrom.ActorID)}",
"originator_code": "${originator_code}" "originator_code": "${originator_code}"
}, },
"payload" : "payload" :
{ {
"originator_reference": "${executionflow.OrderID}", "originator_reference": "${executionflow.OrderID?json_string}",
"preparation_type_code": "${preparation_type_code}", "preparation_type_code": "${preparation_type_code}",
"end_consignee_code": "${executionflow.ShipTo.ActorID!""}", "end_consignee_code": "${actorID}",
<#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??> <#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??>
"requested_delivery_start_datetime": "${DateTimeUTCtoRfxLocale(executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime,time_zone_rfx)}", "requested_delivery_start_datetime": "${DateTimeUTCtoRfxLocale(executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime,time_zone_rfx)}",
<#else> <#else>
@@ -30,21 +46,37 @@
"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}"
}, }
<#if executionflow.ShipTo.ActorID == ""> <#if actorID == defaultactor >
,
"address": { "address": {
"first_name": "${executionflow.ShipTo.Contact.FirstName!""?json_string}", "type_code": "${typecode}",
"last_name" :"${executionflow.ShipTo.Contact.Lastname!""?json_string}", "title_code" : "${titlecode}",
"mail_address": "${executionflow.ShipTo.Actor.Emails[0]!""}", "contact_type_code" : "${contacttypecode}",
"mobile_phone_number": "${executionflow.ShipTo.Actor.Phones[0]!""}", "address_type_code" : "${adresstypecode}",
"street_and_number_and_po_box": "${executionflow.ShipTo.Actor.Address.StreetAddressOne!""?json_string}", "first_name": "${(executionflow.ShipTo.Contact.FirstName!"")?json_string}",
"additional_address_data_1": "${executionflow.ShipTo.Actor.Address.StreetAddressTwo!""?json_string}", "last_name" :"${(executionflow.ShipTo.Contact.LastName!"")?json_string}",
"additional_address_data_2": "${executionflow.ShipTo.Actor.Address.StreetAddressThree!""?json_string}", <#if executionflow.ShipTo.Actor.Address.Name?? && executionflow.ShipTo.Actor.Address.Name!="">
"postal_code": "${executionflow.ShipTo.Actor.Address.PostalCode!""}", "name_or_company_name" : "${(executionflow.ShipTo.Actor.Address.Name!"")?json_string}",
"iso_country_code": "${executionflow.ShipTo.Actor.Address.CountryCode!""}" <#else>
}, "name_or_company_name" : "${(executionflow.ShipTo.Contact.FirstName!"")?json_string} ${(executionflow.ShipTo.Contact.LastName!"")?json_string}",
</#if>
<#if executionflow.ShipTo.Contact.Emails?? && executionflow.ShipTo.Contact.Emails[0]!="">
"mail_address": "${executionflow.ShipTo.Contact.Emails[0]?json_string}",
</#if>
<#if executionflow.ShipTo.Contact.Phones?? && executionflow.ShipTo.Contact.Phones[0]!="">
"mobile_phone_number": "${executionflow.ShipTo.Contact.Phones[0]?json_string}",
</#if>
"street_and_number_and_po_box": "${(executionflow.ShipTo.Actor.Address.StreetAddressOne!"")?json_string}",
"additional_address_data_1": "${(executionflow.ShipTo.Actor.Address.StreetAddressTwo!"")?json_string}",
"additional_address_data_2": "${(executionflow.ShipTo.Actor.Address.StreetAddressThree!"")?json_string}",
"postal_code": "${(executionflow.ShipTo.Actor.Address.PostalCode!"")?json_string}",
"post_code_area_name" : "${(executionflow.ShipTo.Actor.Address.City!"")?json_string}",
"iso_country_code": "${(executionflow.ShipTo.Actor.Address.CountryCode!"")?json_string}"
}
</#if> </#if>
<#if executionflow.Lines??> <#if executionflow.Lines??>
,
"line_list": [ "line_list": [
<#list executionflow.Lines as line> <#list executionflow.Lines as line>
<#-- ******* line MetaData and Segmentationkeys to maps ******** --> <#-- ******* line MetaData and Segmentationkeys to maps ******** -->
@@ -63,7 +95,7 @@
"owner_code_to_prepare" :"${owner_code_to_prepare}", "owner_code_to_prepare" :"${owner_code_to_prepare}",
"grade_code_to_prepare" :"${grade_code_to_prepare}", "grade_code_to_prepare" :"${grade_code_to_prepare}",
"input_order_data": "false", "input_order_data": "false",
"batch_1": "${batch_1}", "batch_1": "${batch_1?json_string}",
"base_lv_quantity": "true", "base_lv_quantity": "true",
"any_lv": "false" "any_lv": "false"
<#-- <#--
@@ -73,10 +105,11 @@
"substitution_possible": "false" "substitution_possible": "false"
--> -->
}<#sep>,</#sep> }
<#sep>,</#sep>
</#list> </#list>
</#if>
] ]
} </#if>
}
}
}

View File

@@ -23,8 +23,22 @@
<#assign protected_flag ="false"/> <#assign protected_flag ="false"/>
<#assign automatic_generation_flag ="false"/> <#assign automatic_generation_flag ="false"/>
<#assign apt_with_end_consignee_flag="false"/> <#assign apt_with_end_consignee_flag="false"/>
<#assign load_grouping = "DEFAUT"/>
<#-- A supprimer si utilisation de la table de correspondance-->
<#--To be deleted if using the correspondence table-->
<#assign load_grouping = "default">
<#-- Table de correspondance Transporteur/Code regroupement chargement,
affectation à un chargement si paramétrage regroupement chargement+plan de base distribution-->
<#--Carrier / Load Grouping Code Correspondence Table,
Assigning to a load if you set up Load Grouping+Distribution Master Plan-->
<#-- Example -->
<#--<#if executionflow.Carrier.ActorID == "TEST" >
<#assign load_grouping = "TEST">
<#else>
<#assign load_grouping = "default">
</#if>-->

View File

@@ -1,22 +1,24 @@
<#include "RPtoRFX_Receipt_DefaultHeaderData.ftl"> <#include "RPtoRFX_Receipt_DefaultHeaderData.ftl">
<#include "ActorPrefix.ftl">
<#include "HfRpConfig.ftl">
{ {
"id" : {"refid" : "${executionflow.OrderID}"}, "id" : {"refid" : "${executionflow.OrderID?json_string}"},
"route" : "rest/public/v1/activities/{activity_code}/physical_depots/{physical_depot_code}/originators/{originator_code}/receipts", "route" : "rest/public/v1/activities/{activity_code}/physical_depots/{physical_depot_code}/originators/{originator_code}/receipts",
"method" : "POST", "method" : "POST",
"uri_substitutions": { "uri_substitutions": {
"activity_code": "${activity_code}", "activity_code": "${activity_code}",
"physical_depot_code": "${executionflow.ShipTo.ActorID!""}", "physical_depot_code": "${RPtoRFXprefixDepot(executionflow.ShipTo.ActorID!"")}",
"originator_code": "${originator_code}" "originator_code": "${originator_code}"
}, },
"payload" : "payload" :
{ {
"receipt_reference": "${executionflow.OrderID}", "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}",
"work_mode_code" : "${work_mode_code}", "work_mode_code" : "${work_mode_code}",
"original_code" : "${executionflow.ShipFrom.ActorID}", "original_code" : "${RPtoRFXprefixSupplier(executionflow.ShipFrom.ActorID)}",
"carrier_code" : "${executionflow.Carrier.ActorID!""}", "carrier_code" : "${RPtoRFXprefixCarrier(executionflow.Carrier.ActorID!"")}",
<#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??> <#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??>
"receipt_datetime": "${DateTimeUTCtoRfxLocale(executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime,time_zone_rfx)}", "receipt_datetime": "${DateTimeUTCtoRfxLocale(executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime,time_zone_rfx)}",
@@ -25,9 +27,10 @@
</#if> </#if>
"carrier_appointment_made": "false", "carrier_appointment_made": "false",
"receipt_in_cross_docking": "false", "receipt_in_cross_docking": "false",
"dock_occupation_duration": 1, "dock_occupation_duration": 1
<#if executionflow.Lines??> <#if executionflow.Lines??>
,
"line_list": [ "line_list": [
<#list executionflow.Lines as line> <#list executionflow.Lines as line>
@@ -46,7 +49,7 @@
"level_1_quantity": ${line.RequestedMetrics.QuantityInBaseLV.Value!0}, "level_1_quantity": ${line.RequestedMetrics.QuantityInBaseLV.Value!0},
"owner_code": "${owner_code}", "owner_code": "${owner_code}",
"grade_code": "${grade_code}", "grade_code": "${grade_code}",
"batch_1": "${batch_1!""}", "batch_1": "${batch_1?json_string!""}",
"optional_attributes": { "optional_attributes": {
<#--"held_for_check": "false", <#--"held_for_check": "false",
"held _for_repacking": "false", "held _for_repacking": "false",
@@ -62,6 +65,5 @@
</#list> </#list>
] ]
</#if> </#if>
} }
} }

15
Table.ftl Normal file
View File

@@ -0,0 +1,15 @@
<#-- Table criticality -->
<#assign TableCriticality = {
"1": "CLAIM_CRITICALITY_LOW",
"2":"CLAIM_CRITICALITY_MEDIUM",
"3":"CLAIM_CRITICALITY_HIGH",
"4":"CLAIM_CRITICALITY_BLOCKING"
}>
<#-- Table Amount -->
<#assign TableAmount = {
"$": "USD",
"£":"GBP",
"DH":"MAD"
}>

View File

@@ -1 +1 @@
1.2.15+6 1.2.34+1