Skip to content

Commit

Permalink
Merge pull request #77 from hotwax/74-api-to-reject-an-order-from-rou…
Browse files Browse the repository at this point in the history
…ting-app

Added reject#OrderItems service
  • Loading branch information
dixitdeepak authored Jan 9, 2025
2 parents 0785a0a + d94fe3f commit d56e4cf
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 0 deletions.
31 changes: 31 additions & 0 deletions service/co/hotwax/order/routing/InventoryReservationServices.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,35 @@
<parameter name="orderId"/>
</in-parameters>
</service>
<service verb="reject" noun="OmsOrderItems" type="oms-rest" location="service/rejectOrderItems" method="post" transaction-timeout="120">
<in-parameters>
<parameter name="payload" type="Map" required="true">
<parameter name="orderId" required="true"/>
<parameter name="notify"/>
<parameter name="items" type="List">
<parameter name="item" type="Map">
<parameter name="facilityId"/>
<parameter name="shipmentMethodTypeId"/>
<parameter name="orderId"/>
<parameter name="quantity"/>
<parameter name="orderItemSeqId"/>
<parameter name="naFacilityId"/>
<parameter name="recordVariance"/>
<parameter name="rejectReason"/>
</parameter>
</parameter>
</parameter>
</in-parameters>
<out-parameters>
<parameter name="rejectedItemsList" type="List">
<parameter name="rejectedItem" type="Map">
<parameter name="orderId"/>
<parameter name="orderItemSeqId"/>
<parameter name="shipGroupSeqId"/>
<parameter name="shipmentMethodTypeId"/>
<parameter name="quantity"/>
</parameter>
</parameter>
</out-parameters>
</service>
</services>
59 changes: 59 additions & 0 deletions service/co/hotwax/order/routing/OrderRoutingServices.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1134,4 +1134,63 @@

</actions>
</service>

<!-- FIXME: This service should be part of oms -->
<service verb="reject" noun="OrderItems">
<in-parameters>
<parameter name="orderId" required="true"/>
<parameter name="notify" type="Boolean" default-value="false">
<description>If set to true, an email notification will be sent on rejection, provided it is configured.</description>
</parameter>
<parameter name="items" type="List" required="true">
<parameter name="item" type="Map">
<description>A map containing details of the items to be rejected or moved.</description>
<parameter name="facilityId">
<description>The facility ID of the order item's ship group.</description>
</parameter>
<parameter name="shipmentMethodTypeId">
<description>The shipment method of the order item's ship group.</description>
</parameter>
<parameter name="quantity" default-value="1">
<description>The quantity of the order item to be rejected. Defaults to 1.</description>
</parameter>
<parameter name="orderItemSeqId">
<description>The sequence ID of the order item.</description>
</parameter>
<parameter name="toFacilityId">
<description>The destination facility ID where the item will be moved after rejection.</description>
</parameter>
<parameter name="recordVariance">
<description>Set to true if a variance record needs to be created.</description>
</parameter>
<parameter name="rejectReason">
<description>The reason for rejecting the item.</description>
</parameter>
</parameter>
</parameter>
</in-parameters>
<out-parameters>
<parameter name="rejectedItemsList" type="List">
<parameter name="rejectedItem" type="Map">
<parameter name="orderId"/>
<parameter name="orderItemSeqId"/>
<parameter name="shipGroupSeqId"/>
<parameter name="shipmentMethodTypeId"/>
<parameter name="quantity"/>
</parameter>
</parameter>
</out-parameters>
<actions>
<set field="payload" from="[orderId: orderId]"/>
<set field="rejectedItems" from="[]"/>
<iterate list="items" entry="item">
<set field="item.orderId" from="orderId"/>
<set field="item.naFacilityId" from="item.toFacilityId"/>
</iterate>
<set field="payload" from="payload + [items: items, notify: notify] "/>

<service-call name="co.hotwax.order.routing.InventoryReservationServices.reject#OmsOrderItems" in-map="[payload: payload]" out-map="outResult"/>
<set field="rejectedItemsList" from="outResult.rejectedItemsList"/>
</actions>
</service>
</services>
9 changes: 9 additions & 0 deletions service/orderrouting.rest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -176,4 +176,13 @@
</resource>
</id>
</resource>
<resource name="orders">
<id name="orderId">
<resource name="reject">
<method type="post">
<service name="co.hotwax.order.routing.OrderRoutingServices.reject#OrderItems"/>
</method>
</resource>
</id>
</resource>
</resource>

0 comments on commit d56e4cf

Please sign in to comment.