RP to RFX receipt post

This commit is contained in:
2023-10-18 10:48:09 +02:00
parent d067be597b
commit 5401e416a3
6 changed files with 92 additions and 52 deletions

View File

@@ -1,4 +1,4 @@
<#include "RPtoRFX_Receipt_DefaultData.ftl">
<#include "RPtoRFX_Receipt_DefaultHeaderData.ftl">
<#assign aDateTime = .now>
{
"id" : {"refid" : "${executionflow.OrderID}"},
@@ -6,55 +6,69 @@
"method" : "POST",
"uri_substitutions": {
"activity_code": "${activity_code}",
"physical_depot_code": "${ActorID_RPtoRFX[executionflow.ShipTo.ActorID]!executionflow.ShipTo.ActorID}",
"originator_code": "${Reflex_Originator}"
"physical_depot_code": "${executionflow.ShipTo.ActorID!""}",
"originator_code": "${originator_code}"
},
"payload" :
{
"receipt_reference": "${executionflow.OrderID}",
"receipt_type": "${receipt_type}",
"receipt_reason_code": "${receipt_reason_code}",
"work_mode_code" : "${work_mode_code}",
"original_code" : "${ActorID_RPtoRFX[executionflow.ShipFrom.ActorID]!executionflow.ShipFrom.ActorID}",
"carrier_code" : "${ActorID_RPtoRFX[executionflow.Carrier.ActorID]!executionflow.Carrier.ActorID}",
<#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??>
"carrier_appointment_start_datetime": "${executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime}",
<#else>
"carrier_appointment_start_datetime": "${aDateTime?iso_utc}",
</#if>
"receipt_reference": "${executionflow.OrderID}",
"receipt_type": "${receipt_type}",
"receipt_reason_code": "${receipt_reason_code}",
"work_mode_code" : "${work_mode_code}",
"original_code" : "${executionflow.ShipFrom.ActorID}",
"carrier_code" : "${executionflow.Carrier.ActorID!""}",
<#if executionflow.RequestedMilestones?? && executionflow.RequestedMilestones.RequestedDeliveryDateTime??>
"receipt_datetime": "${executionflow.RequestedMilestones.RequestedDeliveryDateTime.DateTime}",
<#else>
"receipt_datetime": "${aDateTime?iso_utc}",
</#if>
<#--
"carrier_appointment_made": "false",
"receipt_in_cross_docking": "false",
"dock_occupation_duration": 10,
-->
<#if executionflow.Lines??>
"line_list": [
<#list executionflow.Lines as line>
{
<#if executionflow.Lines??>
"line_list": [
<#list executionflow.Lines as line>
<#if line.RequestedContent.Goods.SegmentationKeys??>
<#assign ic_map = JsonUtil.sequenceToMap(line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
"owner_code": "${ic_map.Owner.String!"${Default_Value_Owner_SegmentationKey}"}",
"grade_code": "${SegmentationKeys_RPtoRFX[ic_map.Grade.String!""]!"${Default_Value_Grade_SegmentationKey}"}",
"batch_1": "${ic_map.BatchNumber!""}",
</#if>
"receipt_reference_line_no": ${line.LineID?number},
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
"level_1_quantity": ${line.RequestedMetrics.QuantityInBaseLV.Value!0}
}<#sep>,</#sep>
</#list>
],
<#-- ******* line MetaData and Segmentationkeys to maps ******** -->
<#if executionflow.line.MetaData??>
<#assign Line_MetaData_Map = JsonUtil.sequenceToMap(executionflow.line.MetaData, "Key", "Value") />
</#if>
"optional_attributes": {
"held_for_check": "false",
"held _for_repacking": "false",
"hold_for_specific_code": "false",
"hold_code": "false"
},
"quality_control_attributes": {
"qcf_to_create_for_receipt_line": "false",
"exclude_item_from_inspection": "false"
}
<#if executionflow.line.RequestedContent.Goods.SegmentationKeys??>
<#assign SegmentationKeys_Map = JsonUtil.sequenceToMap(execution.line.RequestedContent.Goods.SegmentationKeys, "Key", "Value") />
</#if>
<#include "RPtoRFX_Receipt_DefaultLineData.ftl">
{
"receipt_reference_line_no": ${line.LineID?number},
"item_code": "${line.RequestedContent.Goods.ItemID!""}",
"item_lv_code": "${line.RequestedContent.Goods.LVBranchID!""}",
"level_1_quantity": ${line.RequestedMetrics.QuantityInBaseLV.Value!0},
"owner_code": "${owner_code}",
"grade_code": "${grade_code}",
"batch_1": "${batch_1!""}",
<#--
"optional_attributes": {
"held_for_check": "false",
"held _for_repacking": "false",
"hold_for_specific_code": "false",
"hold_code": "false"
},
-->
"quality_control_attributes": {
<#--"qcf_to_create_for_receipt_line": "false",-->
"exclude_item_from_inspection": "false"
}
}<#sep>,</#sep>
</#list>
],
</#if>
}
}