125 lines
5.9 KiB
Java
125 lines
5.9 KiB
Java
<#include "HfRpConfig.ftl">
|
|
<#include "ReflexUtils.ftl">
|
|
[
|
|
{
|
|
<#assign planned_final_delivery_start_datetime = RfxDateTimetoUTC(preparation_order.planned_final_delivery_start_datetime,time_zone_offset_rfx) />
|
|
<#assign pro_creation_datetime = RfxDateTimetoUTC(preparation_order.creation_datetime,time_zone_offset_rfx) />
|
|
"Header": {
|
|
"ProjectID": "${projectRP}"
|
|
},
|
|
"ID": {
|
|
"RefID": "${preparation_order.originator_reference}",
|
|
"RefDate": {
|
|
"DateTime": "${pro_creation_datetime}",
|
|
"AuthorTimeZone": "${time_zone_rfx}"
|
|
}
|
|
},
|
|
"Payload": {
|
|
"CreationDateTime": {
|
|
"DateTime": "${pro_creation_datetime}",
|
|
"AuthorTimeZone": "${time_zone_rfx}"
|
|
},
|
|
<#-- Header Metadata inclusion -->
|
|
<#include "RFXtoRP_HsrPro_ExecutionflowDetected_HeaderMetadata.ftl">,
|
|
<#-- Add transport grade code
|
|
<#if preparation_order.transport_grade_code!="">
|
|
"CarrierService":"${preparation_order.transport_grade_code}",
|
|
</#if> -->
|
|
"ShipFrom": {
|
|
"ActorID": "${preparation_order.physical_depot_code}"
|
|
},
|
|
"ShipFromAcked": true,
|
|
"ShipTo": {
|
|
<#if
|
|
<#-- preparation_order.address.type_code == "" &&
|
|
preparation_order.address.title_code == "" &&
|
|
preparation_order.address.first_name == "" &&
|
|
preparation_order.address.last_name == "" &&
|
|
preparation_order.address.mail_address == "" &&
|
|
preparation_order.address.contact_type_code == "" &&
|
|
preparation_order.address.mobile_phone_number == "" &&
|
|
preparation_order.address.land_line_phone_number == "" &&
|
|
preparation_order.address.fax_number == "" && -->
|
|
preparation_order.address.address_type_code == "" &&
|
|
preparation_order.address.name_or_company_name == "" &&
|
|
preparation_order.address.additional_address_data_1 == "" &&
|
|
preparation_order.address.additional_address_data_2 == "" &&
|
|
preparation_order.address.post_code_area_name == "" &&
|
|
preparation_order.address.territorial_division_code == "" &&
|
|
preparation_order.address.postal_code == "" &&
|
|
preparation_order.address.iso_country_code == "">
|
|
"ActorID": "${preparation_order.end_consignee_code}"
|
|
<#else>
|
|
"Actor":
|
|
{
|
|
"Name" : "${preparation_order.address.name_or_company_name?json_string!""}",
|
|
"Address" :
|
|
{
|
|
"City" : "${preparation_order.address.post_code_area_name?json_string!""}",
|
|
"CountryCode" : "${preparation_order.address.iso_country_code!""}",
|
|
"PostalCode" : "${preparation_order.address.postal_code!""}",
|
|
"StreetAddressOne" : "${preparation_order.address.street_and_number_and_po_box?json_string!""}",
|
|
"StreetAddressTwo" : "${preparation_order.address.additional_address_data_1?json_string!""}",
|
|
"StreetAddressThree" : "${preparation_order.address.additional_address_data_2?json_string!""}"
|
|
}
|
|
},
|
|
"Contact" :
|
|
{
|
|
"FirstName" : "${preparation_order.address.first_name?json_string!""}",
|
|
"LastName" : "${preparation_order.address.last_name?json_string!""}",
|
|
"Emails" : ${splitEmailsIntoArray(preparation_order.address.mail_address?json_string!"")},
|
|
"Phones" : ["${preparation_order.address.mobile_phone_number!""}","${preparation_order.address.land_line_phone_number!""}", "${preparation_order.address.fax_number!""}" ]
|
|
}
|
|
</#if>
|
|
},
|
|
|
|
<#if preparation_order.line_list??>
|
|
"Lines" : [
|
|
<#list preparation_order.line_list as preparation_order_line >
|
|
{
|
|
<#if (preparation_order_line.originator_reference_line_number!0) != 0>
|
|
"LineID": "${preparation_order_line.originator_reference_line_number}",
|
|
<#else>
|
|
"LineID": "${preparation_order_line.preparation_order_line_number!0}",
|
|
</#if>
|
|
<#-- Line Metadata inclusion -->
|
|
<#include "RFXtoRP_HsrPro_ExecutionflowDetected_LineMetadata.ftl">,
|
|
|
|
"RequestedContent":
|
|
{
|
|
"Goods":
|
|
{
|
|
"ItemID": "${preparation_order_line.item_code!"0"}",
|
|
"LVBranchID": "${preparation_order_line.item_lv_code!"0"}",
|
|
<#if (preparation_order_line.optional_attributes.forced_priority_date?length != 0) && (preparation_order_line.optional_attributes.forced_priority_date?starts_with("00") == false)>
|
|
<#assign forced_priority_date = preparation_order_line.optional_attributes.forced_priority_date?datetime(rfx_date_format_default)?iso_utc />
|
|
"PriorityDate": "${forced_priority_date}",
|
|
</#if>
|
|
|
|
<#-- Segmentation Keys inclusion -->
|
|
<#include "RFXtoRP_HsrPro_ExecutionflowDetected_SegmentationKeys.ftl">
|
|
|
|
},
|
|
"Quantity" :
|
|
{
|
|
"LVID": "${quantity_in_base_lv_RP_Cst}",
|
|
"Value": "${preparation_order_line.base_lv_quantity_to_prepare!0}"
|
|
}
|
|
}
|
|
}<#sep>,</#sep>
|
|
</#list>
|
|
],
|
|
</#if>
|
|
|
|
"RequestedMilestones" :
|
|
{
|
|
"RequestedDeliveryDateTime" :
|
|
{
|
|
"DateTime": "${planned_final_delivery_start_datetime}",
|
|
"AuthorTimeZone": "${time_zone_rfx}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|