<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods-v2.xsd">
    <simple-method method-name="findOrdersToPickMove" short-description="Find Orders Ready to Pick or that need Stock Moves">
        <!-- filter on:
         + OrderHeader.orderType = SALES_ORDER
         + OrderHeader.statusId = ORDER_APPROVED
         + OrderHeader.isRushOrder = if Y then add to rush list, still leave in other lists
         + OrderItem.statusId = ITEM_APPROVED
         + total number of orders to pick: limit to X
         + ShipmentMethodType.sequenceNum = order display of methods by
         x OrderItemShipGroup.carrierPartyId = group by along with ship method?
         + OrderItemShipGroup.shipAfterDate is null or <= now
         + OrderItemShipGroup.maySplit = decide to include based on whether all items available or not
         x OrderItemShipGrpInvRes.reservedDatetime = sort by, or by order date?
         + OrderItemShipGrpInvRes.quantityNotAvailable = if not null and not 0, and maySplit is N, exclude whole order
         + PicklistItem = check to see if any exist, if so then already on a picklist
         + InventoryItem.facilityId = passed facilityId
         + FacilityLocation.locationTypeEnumId = FLT_PICKLOC, can be picked now
         + FacilityLocation.locationTypeEnumId = FLT_BULK, stock move needed, remove whole order from list to be picked, add to list needing stock move
         + User have options to select factors to group
         + group by : Shipping method, Warehouse area, Number of order items (one to two, three or more)
         -->
        <!-- data to create - in Map in List pickMoveInfoList
         + shipmentMethodType
         + orderReadyToPickInfoList
         + orderNeedsStockMoveInfoList
         + groupName, which is based on user selected options to group
         With each list containing a Map with:
         + orderHeader
         + orderItemShipGroup
         + orderItemAndShipGroupAssocList
         + orderItemShipGrpInvResList
         + orderItemShipGrpInvResInfoList
         Each entry in the orderItemShipGrpInvResInfoList is a Map with:
         + orderItemShipGrpInvRes
         + inventoryItem
         + facilityLocation (may be null)
         Also a Map called rushOrderInfo containing lists just as defined above, but containing only data for Orders where OrderHeader.isRushOrder = Y
         + orderReadyToPickInfoList
         + orderNeedsStockMoveInfoList
        -->

        <check-permission permission="FACILITY" action="_VIEW">
            <fail-property resource="ProductUiLabels" property="ProductFacilityViewPermissionError"/>
        </check-permission>
        <check-errors/>
        <set field="groupByShippingMethod" from-field="parameters.groupByShippingMethod"/>
        <set field="groupByNoOfOrderItems" from-field="parameters.groupByNoOfOrderItems"/>
        <set field="groupByWarehouseArea" from-field="parameters.groupByWarehouseArea"/>
        <now-timestamp field="nowTimestamp"/>
        <if-not-empty field="parameters.orderId">
            <entity-one entity-name="OrderHeader" value-field="orderHeader"/>
            <field-to-list field="orderHeader" list="orderHeaderList"/>
        <else>
            <if-empty field="parameters.orderHeaderList">
                <log level="info" message="No order header list found in parameters; finding orders to pick."/>
                <entity-condition entity-name="OrderHeader" list="orderHeaderList">
                    <condition-list combine="and">
                        <condition-expr field-name="orderTypeId" value="SALES_ORDER"/>
                        <condition-expr field-name="statusId" value="ORDER_APPROVED"/>
                        <condition-expr field-name="isRushOrder" from-field="parameters.isRushOrder" ignore-if-empty="true"/>
                    </condition-list>
                    <order-by field-name="+orderDate"/><!-- oldest first -->
                </entity-condition>
            <else>
                <set from-field="parameters.orderHeaderList" field="orderHeaderList"/>
                <log level="info" message="Found orderHeaderList in parameters; using: ${orderHeaderList}"/>
            </else>
            </if-empty>
        </else>
        </if-not-empty>
        <set field="maxNumberOfOrders" type="Long" from-field="parameters.maxNumberOfOrders" set-if-empty="true"/>
        <set field="numberSoFar" type="Long" value="0"/>
        <iterate entry="orderHeader" list="orderHeaderList">
            <log level="info" message="Checking order #${orderHeader.orderId} to add to picklist"/>
            <!-- get all ship groups, and iterate over them for each order -->
            <entity-and entity-name="OrderItemShipGroup" list="orderItemShipGroupList">
                <field-map field-name="orderId" from-field="orderHeader.orderId"/>
                <order-by field-name="shipGroupSeqId"/>
            </entity-and>
            <!-- get no. of order items for each order -->
            <entity-count entity-name="OrderItem" count-field="orderItemCount">
                <condition-expr field-name="orderId" from-field="orderHeader.orderId"/>
            </entity-count>

            <set field="groupName"/>
            <set field="groupName1"/> <!-- Group by Shipping Method -->
            <set field="groupName2"/> <!-- Group by Warehouse Area -->
            <set field="groupName3"/> <!-- Group by Number of Order Items -->

            <!-- If user does not select any grouping method, then skip the grouping part. This is the default behavior of the picking screen -->
            <if>
                <condition>
                    <and>
                        <if-empty field="groupByShippingMethod"/>
                        <if-empty field="groupByWarehouseArea"/>
                        <if-empty field="groupByNoOfOrderItems"/>
                    </and>
                </condition>
                <then>
                    <set field="groupName" from-field="orderHeader.orderId"/>
                </then>
            <else>
                <entity-condition entity-name="OrderHeaderAndItemFacilityLocation" list="OrderHeaderAndItemFacilityLocationList" distinct="true">
                    <condition-list combine="and">
                        <condition-expr field-name="orderId" from-field="orderHeader.orderId"/>
                        <condition-list combine="or">
                            <condition-expr field-name="locationTypeEnumId" operator="equals" value="FLT_PICKLOC"/>
                            <condition-expr field-name="locationTypeEnumId" operator="equals" from-field="nullField"/>
                        </condition-list>
                    </condition-list>
                    <select-field field-name="shipmentMethodTypeId"/>
                    <select-field field-name="areaId"/>
                    <use-iterator/>
                </entity-condition>
                <iterate list="OrderHeaderAndItemFacilityLocationList" entry="orderHeaderAndItemFacilityLocation">
                <!-- set groupName for order according to the options selected by the user -->

                    <if-compare field="groupByShippingMethod" operator="equals" value="Y">
                        <set field="groupName1" from-field="orderHeaderAndItemFacilityLocation.shipmentMethodTypeId"/>
                    </if-compare>

                    <if-compare field="groupByWarehouseArea" operator="equals" value="Y">
                        <!-- If warehouse area is not setup, then just mark the group name as not-applicable (N/A)
                             This way if the user has selected group by warehouse area alone or with other options then system can still group the orders with a dummy group i.e. N/A
                             and user will still be able to see the group details by clicking on the group name which was not possible if warehouse area is not setup.
                        -->
                        <set field="groupName2" from-field="orderHeaderAndItemFacilityLocation.areaId" default-value="N/A"/>
                        <set field="locationGroupName" from-field="orderHeaderAndItemFacilityLocation.areaId"/>
                    </if-compare>

                    <if>
                        <condition>
                            <and>
                                <if-compare field="groupByNoOfOrderItems" operator="equals" value="Y"/>
                                <if-compare  field="orderItemCount" operator="less" value="3" type="BigDecimal"/>
                            </and>
                        </condition>
                        <then>
                            <property-to-field property="FacilityNumberOfItemsLessThanThree" field="noOfOrderItems" resource="ProductUiLabels"/>
                            <set field="groupName3" value="Items_Less_Than_3"/>
                        </then>
                    <else-if>
                        <condition>
                            <and>
                                <if-compare field="groupByNoOfOrderItems" operator="equals" value="Y"/>
                                <if-compare  field="orderItemCount" operator="greater-equals" value="3" type="BigDecimal"/>
                            </and>
                        </condition>
                        <then>
                            <property-to-field property="FacilityNumberOfItemsThreeOrMore" field="noOfOrderItems" resource="ProductUiLabels"/>
                            <set field="groupName3" value="Items_Three_Or_More"/>
                        </then>
                    </else-if>
                    </if>

                    <set field="groupName" value="${groupName1}${groupName2}${groupName3}"/>

                    <if>
                        <condition>
                            <and>
                                <if-compare field="groupByWarehouseArea" operator="equals" value="Y"/>
                                <not><if-empty field="locationGroupName"></if-empty></not>
                                <not><if-compare-field field="locations" operator="contains" to-field="locationGroupName"/></not>
                            </and>
                        </condition>
                        <then>
                            <field-to-list field="locationGroupName" list="locations"/>
                        </then>
                    </if>
                </iterate>
                <!-- count no. of locations in location list -->
                <set field="locationCount" value="0"/>
                <if-not-empty field="locations">
                    <set field="locationCount" value="${util:size(locations)}" type="Long"/>
                </if-not-empty>

                <!-- If order items are picked from different locations of a facility, then create a new group called multiple locations. This order will now belong to this new group -->
                <if-compare field="locationCount" operator="greater" value="1" type="Long">
                    <set field="groupName2" value="MULTI_LOCATIONS"/>
                    <!-- update the composite group name with new location group name -->
                    <set field="groupName" value="${groupName1}${groupName2}${groupName3}"/>
                    <property-to-field property="FacilityMultipleLocations" field="groupName2" resource="ProductUiLabels"/>
                </if-compare>
                <clear-field field="locations"/>
                <clear-field field="locationCount"/>
            </else>
            </if>

            <iterate entry="orderItemShipGroup" list="orderItemShipGroupList">
                <!-- get the order items and the order item inventory res entries -->
                <if>
                    <condition>
                        <or>
                            <!-- only pick if now is after the shipAfterDate or the shipAfterDate is empty -->
                            <if-empty field="orderItemShipGroup.shipAfterDate"/>
                            <if-compare-field field="nowTimestamp" to-field="orderItemShipGroup.shipAfterDate" operator="greater-equals"/>
                        </or>
                    </condition>
                    <then>
                        <!-- get only for current OrderItemShipGroup -->
                        <entity-and entity-name="OrderItemShipGrpInvRes" list="orderItemShipGrpInvResList">
                            <field-map field-name="orderId" from-field="orderItemShipGroup.orderId"/>
                            <field-map field-name="shipGroupSeqId" from-field="orderItemShipGroup.shipGroupSeqId"/>
                        </entity-and>
                        <entity-and entity-name="OrderItemAndShipGroupAssoc" list="orderItemAndShipGroupAssocList">
                            <field-map field-name="orderId" from-field="orderItemShipGroup.orderId"/>
                            <field-map field-name="shipGroupSeqId" from-field="orderItemShipGroup.shipGroupSeqId"/>
                            <order-by field-name="+orderItemSeqId"/>
                        </entity-and>

                        <!-- only add to picklist if inventory is not available (quantityNotAvailable on OISGIR greater than 0) when maySplit is N (wait until all available to ship) -->
                        <set value="Y" field="pickThisOrder"/>
                        <set value="N" field="needsStockMove"/>
                        <set value="Y" field="allPickStarted"/>
                        <set value="N" field="hasStockToPick"/>
                        <iterate entry="orderItemShipGrpInvRes" list="orderItemShipGrpInvResList">
                            <get-related-one value-field="orderItemShipGrpInvRes" relation-name="OrderItem" to-value-field="orderItem"/>
                            <if-compare field="orderItem.statusId" value="ITEM_APPROVED" operator="not-equals">
                                <set value="N" field="pickThisOrder"/>
                            </if-compare>

                            <if-compare field="pickThisOrder" operator="equals" value="Y">
                                <get-related-one value-field="orderItemShipGrpInvRes" relation-name="InventoryItem" to-value-field="inventoryItem"/>
                                <!-- Look for other picklists which might include this order item ship group inventory reservation.  If it is on another picklist, then
                                    we should not include it again.  We screen out picklists which are either cancelled or already picked or packed, so that we can re-pick items if
                                    (1) the previous picklist was cancelled, or
                                    (2) the previous picklist was picked or packed, and there is still an OrderItemShipGrpInvRes, which means that some of the order item must not
                                    have shipped yet.  (OrderItemShipGrpInvRes is removed when an order item has been fully shipped.
                                    We are using entity-condition instead of get-related because we want to exclude some picklists by status.
                                    ** Calculate the total pick list items for this order and then subtracting it from the order item quantity 
                                    which is reserved while placing order results in remaining quantity of that order item which still has to be pick. -->
                                <entity-condition entity-name="PicklistAndBinAndItem" list="picklistItemList">
                                    <condition-list combine="and">
                                        <condition-expr field-name="orderId" from-field="orderItemShipGrpInvRes.orderId"/>
                                        <condition-expr field-name="shipGroupSeqId" from-field="orderItemShipGrpInvRes.shipGroupSeqId"/>
                                        <condition-expr field-name="orderItemSeqId" from-field="orderItemShipGrpInvRes.orderItemSeqId"/>
                                        <condition-expr field-name="inventoryItemId" from-field="orderItemShipGrpInvRes.inventoryItemId"/>
                                        <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
                                        <condition-expr field-name="itemStatusId" operator="not-equals" value="PICKITEM_CANCELLED"/>
                                    </condition-list>
                                </entity-condition>
                                <log level="info" message="Pick list ITEMS - ${picklistItemList}"/>
                                
                                <set field="pickedItemQuantity" value="0" type="BigDecimal"/>
                                <iterate list="picklistItemList" entry="picklistItem">
                                    <calculate field="pickedItemQuantity">
                                        <calcop operator="add" field="pickedItemQuantity">
                                            <calcop operator="get" field="picklistItem.quantity"/>
                                        </calcop>
                                    </calculate>
                                </iterate>
                                <calculate field="remainingQuantityToBePicked" type="BigDecimal">
                                    <calcop operator="subtract">
                                        <calcop operator="get" field="orderItemShipGrpInvRes.quantity"/>
                                        <calcop operator="get" field="pickedItemQuantity"/>
                                    </calcop>
                                </calculate>
                                
                                <!-- if the remaining quantity is greater than ZERO i.e. few quantity of the item is still not picked, then the
                                     order will get included in the list and only that item will get included which is having some quantity to 
                                     pick not other items which were already picked -->
                                <if-compare field="remainingQuantityToBePicked" operator="greater" value="0" type="BigDecimal">
                                    <set field="orderItemShipGrpInvRes.quantity" from-field="remainingQuantityToBePicked"/>
                                    <log level="info" message="The pick list item list is empty!"/>
                                    <!-- note that this is separate because we can't really use it as a break condition, must check all of them before any useful information is to be had -->
                                    <set value="N" field="allPickStarted"/>

                                    <if>
                                        <condition>
                                            <or>
                                                <!-- check all OISGIRs and if quantityNotAvailable is not empty and > 0 for any, don't pick order -->
                                                <and>
                                                    <if-compare field="orderItemShipGroup.maySplit" operator="equals" value="N"/>
                                                    <not><if-empty field="orderItemShipGrpInvRes.quantityNotAvailable"/></not>
                                                    <if-compare field="orderItemShipGrpInvRes.quantityNotAvailable" operator="greater" value="0" type="BigDecimal"/>
                                                </and>
                                                <!-- make sure the inventoryItem is in the specified facility -->
                                                <if-compare-field field="parameters.facilityId" to-field="inventoryItem.facilityId" operator="not-equals"/>
                                            </or>
                                        </condition>
                                        <then>
                                            <set value="N" field="pickThisOrder"/>
                                        </then>
                                        <else>
                                            <log level="info" message="Found item to pick: ${orderItemShipGrpInvRes}"/>
                                            <!-- see if there is stock to pick.  Items without stock (back ordered items) are not added to picklists. -->
                                            <if>
                                                <condition>
                                                    <or>
                                                        <if-empty field="orderItemShipGrpInvRes.quantityNotAvailable"/>
                                                        <if-compare field="orderItemShipGrpInvRes.quantityNotAvailable" operator="equals" value="0" type="BigDecimal"/>
                                                        <and>
                                                            <if-compare-field field="orderItemShipGrpInvRes.quantity" to-field="orderItemShipGrpInvRes.quantityNotAvailable" operator="greater" type="BigDecimal"/>
                                                            <if-compare field="orderItemShipGroup.maySplit" operator="equals" value="Y"/>
                                                        </and>
                                                    </or>
                                                </condition>
                                                <then>
                                                    <log level="info" message="Item has stock; flagging order (${orderItemShipGrpInvRes.orderId}) as OK"/>
                                                    <set value="Y" field="hasStockToPick"/>
                                                </then>
                                                <else>
                                                    <log level="info" message="Item ${orderitemShipGrpInvRes} does not have stock and will not be flagged as hasStockToPick"/>
                                                </else>
                                           </if>

                                            <!-- check InventoryItem->FacilityLocation (if exists), if it is of type FLT_BULK set needs stock move to true -->
                                            <get-related-one value-field="inventoryItem" relation-name="FacilityLocation" to-value-field="facilityLocation"/>
                                            <if-not-empty field="facilityLocation">
                                                <if-compare field="facilityLocation.locationTypeEnumId" operator="equals" value="FLT_BULK">
                                                    <set value="Y" field="needsStockMove"/>
                                                </if-compare>
                                            </if-not-empty>

                                            <!-- make the orderItemShipGrpInvResInfo and add it to the orderItemShipGrpInvResInfoList -->
                                            <set from-field="orderItemShipGrpInvRes" field="orderItemShipGrpInvResInfo.orderItemShipGrpInvRes"/>
                                            <set from-field="inventoryItem" field="orderItemShipGrpInvResInfo.inventoryItem"/>
                                            <set from-field="facilityLocation" field="orderItemShipGrpInvResInfo.facilityLocation"/>
                                            <field-to-list field="orderItemShipGrpInvResInfo" list="orderItemShipGrpInvResInfoList"/>
                                            <clear-field field="orderItemShipGrpInvResInfo"/>
                                            <field-to-list field="orderItemShipGrpInvRes" list="finalOrderItemShipGrpInvResList"/>
                                        </else>
                                    </if>
                                </if-compare>
                            </if-compare>
                        </iterate>

                        <!-- another check to see if we should pick this order -->
                        <if-compare field="hasStockToPick" operator="equals" value="N">
                            <set value="N" field="pickThisOrder"/>
                        </if-compare>

                        <if>
                            <condition>
                                <and>
                                    <not><if-empty field="parameters.maxNumberOfOrders"/></not>
                                    <if-compare-field field="numberSoFar" type="Long" to-field="maxNumberOfOrders" operator="greater-equals"/>
                                </and>
                            </condition>
                            <then>
                                <log level="info" message="We have passed the max number of orders!"/>
                                <set value="N" field="pickThisOrder"/>
                            </then>
                            <else>
                                <log level="info" message="We have not passed the max number of orders yet..."/>
                            </else>
                        </if>

                        <if>
                            <condition>
                                <and>
                                    <if-compare field="pickThisOrder" operator="equals" value="Y"/>
                                    <if-compare field="allPickStarted" operator="equals" value="N"/>
                                </and>
                            </condition>
                            <then>
                                <!-- make the info map for this orderHeader -->
                                <set from-field="orderHeader" field="orderHeaderInfo.orderHeader"/>
                                <set from-field="orderItemShipGroup" field="orderHeaderInfo.orderItemShipGroup"/>
                                <set from-field="orderItemAndShipGroupAssocList" field="orderHeaderInfo.orderItemAndShipGroupAssocList"/>
                                <set from-field="finalOrderItemShipGrpInvResList" field="orderHeaderInfo.orderItemShipGrpInvResList"/>
                                <set from-field="orderItemShipGrpInvResInfoList" field="orderHeaderInfo.orderItemShipGrpInvResInfoList"/>

                                <!-- pick now, or needs stock move first? -->
                                <!-- put in pick or move lists for the groupName prepared according to selected options by user -->
                                <if-empty field="pickMoveInfoMap[groupName][groupName]">
                                    <get-related-one value-field="orderItemShipGroup" relation-name="ShipmentMethodType" to-value-field="pickMoveInfoMap[groupName][groupName].shipmentMethodType"/>
                                </if-empty>
                                <if-compare field="needsStockMove" operator="equals" value="Y">
                                    <field-to-list field="orderHeaderInfo" list="pickMoveInfoMap[groupName].orderNeedsStockMoveInfoList"/>
                                    <if-compare field="orderHeader.isRushOrder" operator="equals" value="Y">
                                        <field-to-list field="orderHeaderInfo" list="rushOrderInfo.orderNeedsStockMoveInfoList"/>
                                    </if-compare>
                                <else>
                                    <field-to-list field="orderHeaderInfo" list="pickMoveInfoMap[groupName].orderReadyToPickInfoList"/>
                                    <if-compare field="orderHeader.isRushOrder" operator="equals" value="Y">
                                        <field-to-list field="orderHeaderInfo" list="rushOrderInfo.orderReadyToPickInfoList"/>
                                    </if-compare>
                                </else>
                                </if-compare>
                                <clear-field field="orderHeaderInfo"/>

                                <calculate field="numberSoFar" type="Long">
                                    <calcop field="numberSoFar" operator="add"><number value="1"/></calcop>
                                </calculate>
                                <log level="info" message="Added order #${orderHeader.orderId} to pick list [${numberSoFar} of ${parameters.maxNumberOfOrders}] - ${pickThisOrder} / ${allPickStarted}"/>
                                <set field="pickMoveInfoMap[groupName].groupName" from-field="groupName"/>
                                <set field="pickMoveInfoMap[groupName].groupName1" from-field="groupName1"/>
                                <set field="pickMoveInfoMap[groupName].groupName2" from-field="groupName2"/>
                                <set field="pickMoveInfoMap[groupName].groupName3" from-field="noOfOrderItems"/>
                            </then>
                            <else>
                                <log level="info" message="Order #${orderHeader.orderId} was not added to pick list [${numberSoFar} of ${parameters.maxNumberOfOrders}] - ${pickThisOrder} / ${allPickStarted}"/>
                            </else>
                        </if>

                        <clear-field field="orderItemAndShipGroupAssocList"/>
                        <clear-field field="orderItemShipGrpInvResInfoList"/>
                        <clear-field field="finalOrderItemShipGrpInvResList"/>
                    </then>
                    <else>
                        <log level="info" message="Order is not a member of the requested shipment method: ${parameters.shipmentMethodTypeId}"/>
                    </else>
                </if>
            </iterate>

            <!-- prepare a list of group names -->
            <if>
                <condition>
                    <not><if-compare-field field="groupNames" operator="contains" to-field="groupName"/></not>
                </condition>
                <then>
                    <field-to-list field="groupName" list="groupNames"/>
                </then>
            </if>

            <clear-field field="orderHeaderInfo"/>
            <clear-field field="orderItemShipGroupList"/>
            <clear-field field="orderItemShipGrpInvResList"/>
            <if>
              <condition>
                <and>
                  <not><if-empty field="maxNumberOfOrders"/></not>
                  <if-compare-field field="numberSoFar" type="Long" to-field="maxNumberOfOrders" operator="greater-equals"/>
                </and>
              </condition>
              <then>
                <break/>
              </then>
            </if>
        </iterate>

        <!-- find all groupName, for each one get the value from the pickMoveInfoMap and add it to the pickMoveInfoList -->
        <iterate list="groupNames" entry="groupName">
            <if-not-empty field="pickMoveInfoMap[groupName]">
                <field-to-list field="pickMoveInfoMap[groupName]" list="pickMoveInfoList"/>
            </if-not-empty>
        </iterate>
        <clear-field field="groupNames"/>
        <field-to-result field="pickMoveInfoList"/>
        <field-to-result field="rushOrderInfo"/>

    </simple-method>

    <simple-method method-name="assembleOrderHeaderInfoInline" short-description="assembleOrderHeaderInfoInline">
        <!-- This uses pickMoveInfoList from the findOrdersToPickMove -->
        <!-- This creates orderHeaderInfoList, wrongQuantityReservedList, insufficientQohList and inventoryItems, inventoryItemOrderItems, inventoryItemQuantities -->

        <!-- if maxNumberOfOrders is passed, get at most that many orders and go over them -->
        <!-- moved above in findOrdersToPickMove
        <calculate field="numberSoFar" type="Long"><number value="0"/></calculate>
        <iterate entry="pickMoveInfo" list="pickMoveInfoList">
            <if>
                <condition>
                    <or>
                        <if-empty field="parameters.maxNumberOfOrders"/>
                        <if-compare-field field="numberSoFar" to-field="parameters.maxNumberOfOrders" operator="less"></if-compare-field>
                    </or>
                </condition>
                <then>
                    <field-to-list field="pickMoveInfo" list="limitedPickMoveInfoList"/>
                </then>
            </if>

            <calculate field="numberSoFar" type="Long">
                <calcop field="numberSoFar" operator="add"><number value="1"/></calcop>
            </calculate>
        </iterate>
        -->

        <iterate entry="pickMoveInfo" list="pickMoveInfoList">
            <iterate entry="orderReadyToPickInfo" list="pickMoveInfo.orderReadyToPickInfoList">
                <iterate entry="orderItemAndShipGroupAssoc" list="orderReadyToPickInfo.orderItemAndShipGroupAssocList">
                    <if-compare value="ITEM_APPROVED" operator="equals" field="orderItemAndShipGroupAssoc.statusId">
                        <calculate field="reservedQuantity"><number value="0"/></calculate>

                        <set from-field="orderItemAndShipGroupAssoc.orderItemSeqId" field="itemFilterMap.orderItemSeqId"/>
                        <filter-list-by-and map="itemFilterMap" list="orderReadyToPickInfo.orderItemShipGrpInvResList" to-list="perItemResList"/>
                        <iterate entry="orderItemShipGrpInvRes" list="perItemResList">
                            <set from-field="orderItemShipGrpInvRes.inventoryItemId" field="inventoryItemId"/>
                            <!-- update reserved quantity per inventoryItem, keep track of orderItems this came from -->
                            <set from-field="inventoryItems[inventoryItemId]" field="inventoryItem"/>
                            <if-empty field="inventoryItem">
                                <entity-one entity-name="InventoryItem" value-field="inventoryItem"></entity-one>
                                <set field="inventoryItems[inventoryItemId]" from-field="inventoryItem"/>
                            </if-empty>

                            <if-compare-field field="inventoryItem.facilityId" to-field="parameters.facilityId" operator="equals">
                                <set field="perItemResListValid[]" from-field="orderItemShipGrpInvRes"/>

                                <set field="inventoryItemOrderItemList" from-field="inventoryItemOrderItems[inventoryItemId]"/>
                                <set field="inventoryItemOrderItemList[]" from-field="orderItemAndShipGroupAssoc"/>
                                <set field="inventoryItemOrderItems[orderItemShipGrpInvRes.inventoryItemId]" from-field="inventoryItemOrderItemList"/>
                                <clear-field field="inventoryItemOrderItemList"/>
                                <if-not-empty field="inventoryItemQuantities[inventoryItemId]">
                                    <calculate field="inventoryItemQuantities[inventoryItemId]">
                                        <calcop field="inventoryItemQuantities[inventoryItemId]" operator="add">
                                            <calcop field="orderItemShipGrpInvRes.quantity" operator="get"/>
                                        </calcop>
                                    </calculate>
                                <else>
                                    <set from-field="orderItemShipGrpInvRes.quantity" field="inventoryItemQuantities[inventoryItemId]"/>
                                </else>
                                </if-not-empty>
                            </if-compare-field>
                            <clear-field field="inventoryItem"/>
                            <!-- update total quantity reserved, picked, etc per line item to check to see if all and not more is reserved -->
                            <calculate field="reservedQuantity">
                                <calcop field="reservedQuantity" operator="add">
                                    <calcop field="orderItemShipGrpInvRes.quantity" operator="get"/>
                                </calcop>
                            </calculate>
                        </iterate>

                        <if-not-empty field="perItemResListValid">
                            <clear-field field="orderItemInfo"/>
                            <set field="orderItemInfo.orderItemAndShipGroupAssoc" from-field="orderItemAndShipGroupAssoc"/>
                            <set field="orderItemInfo.orderItemShipGrpInvResList" from-field="perItemResListValid"/>
                            <get-related-one value-field="orderItemAndShipGroupAssoc" relation-name="Product" to-value-field="orderItemInfo.product" use-cache="true"/>
                            <set field="orderItemInfoList[]" from-field="orderItemInfo"/>
                        </if-not-empty>
                        <clear-field field="perItemResListValid"/>

                        <!-- warn if wrong inventory has been reserved+issued -->
                        <!-- must include issued items as well, otherwise can't really do an effective check... -->
                        <get-related value-field="orderItemAndShipGroupAssoc" relation-name="ItemIssuance" list="itemIssuances"/>
                        <calculate field="issuedQuantity"><number value="0"/></calculate>
                        <iterate entry="itemIssuance" list="itemIssuances">
                            <calculate field="issuedQuantity">
                                <calcop field="issuedQuantity" operator="get"/>
                                <calcop field="itemIssuance.quantity" operator="get"/>
                            </calculate>
                        </iterate>
                        <calculate field="reservedIssuedQuantity">
                            <calcop operator="get" field="reservedQuantity"/>
                            <calcop operator="get" field="issuedQuantity"/>
                        </calculate>
                        <if-compare-field field="reservedIssuedQuantity" to-field="orderItemAndShipGroupAssoc.quantity" operator="not-equals" type="BigDecimal">
                            <set field="wrongQuantityReserved.orderItemAndShipGroupAssoc" from-field="orderItemAndShipGroupAssoc"/>
                            <set field="wrongQuantityReserved.reservedQuantity" from-field="reservedQuantity"/>
                            <set field="wrongQuantityReserved.issuedQuantity" from-field="issuedQuantity"/>
                            <set field="wrongQuantityReserved.reservedIssuedQuantity" from-field="reservedIssuedQuantity"/>
                            <set field="wrongQuantityReservedList[]" from-field="wrongQuantityReserved"/>
                            <clear-field field="wrongQuantityReserved"/>
                        </if-compare-field>
                    </if-compare>
                </iterate>

                <!-- keep the order info for easy handling of order pack info -->
                <if-not-empty field="orderItemInfoList">
                    <set field="orderHeaderInfo.orderHeader" from-field="orderReadyToPickInfo.orderHeader"/>
                    <set field="orderHeaderInfo.orderItemShipGroup" from-field="orderReadyToPickInfo.orderItemShipGroup"/>
                    <set field="orderHeaderInfo.orderItemInfoList" from-field="orderItemInfoList"/>
                    <set field="orderHeaderInfoList[]" from-field="orderHeaderInfo"/>
                </if-not-empty>

                <clear-field field="orderHeaderInfo"/>
                <clear-field field="orderItemInfoList"/>
            </iterate>
        </iterate>


        <!-- warn if insufficient QOH for reserved amount -->
        <iterate-map map="inventoryItemQuantities" key="inventoryItemId" value="quantityNeeded">
            <set from-field="inventoryItems[inventoryItemId]" field="inventoryItem"/>
            <if>
                <condition>
                    <and>
                        <if-compare value="1" operator="less-equals" field="quantityNeeded" type="BigDecimal"/>
                        <or>
                            <and>
                                <if-compare value="SERIALIZED_INV_ITEM" operator="equals" field="inventoryItem.inventoryItemTypeId"/>
                                <if-compare value="1" operator="less" field="quantityNeeded" type="BigDecimal"/>
                            </and>
                            <and>
                                <if-compare value="NON_SERIAL_INV_ITEM" operator="equals" field="inventoryItem.inventoryItemTypeId"/>
                                <or>
                                    <if-empty field="inventoryItem.quantityOnHandTotal"/>
                                    <if-compare-field field="quantityNeeded" to-field="inventoryItem.quantityOnHandTotal" operator="greater" type="BigDecimal"/>
                                </or>
                            </and>
                        </or>
                    </and>
                </condition>
                <then>
                    <clear-field field="insufficientQoh"/>
                    <set from-field="inventoryItem" field="insufficientQoh.inventoryItem"/>
                    <set from-field="quantityNeeded" field="insufficientQoh.quantityNeeded"/>
                    <set from-field="insufficientQoh" field="insufficientQohList[]"/>
                </then>
            </if>
        </iterate-map>
    </simple-method>

    <!-- ========================================================= -->
    <!-- ======= Persisted Picklist Maintenance Services ========= -->
    <!-- ========================================================= -->
    <simple-method method-name="createPicklistFromOrders" short-description="Create Picklist From Orders">
        <check-permission permission="FACILITY" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <now-timestamp field="nowTimestamp"/>

        <set-service-fields map="parameters" service-name="findOrdersToPickMove" to-map="findOrdersToPickMoveMap"/>
        <call-service service-name="findOrdersToPickMove" in-map-name="findOrdersToPickMoveMap">
            <result-to-field result-name="pickMoveInfoList"/>
        </call-service>
        <!-- <log level="info" message="pickMoveInfoList=${pickMoveInfoList}"/> -->

        <!-- This creates orderHeaderInfoList, wrongQuantityReservedList, insufficientQohList and inventoryItems, inventoryItemOrderItems, inventoryItemQuantities -->
        <call-simple-method method-name="assembleOrderHeaderInfoInline"/>
        <!-- <log level="info" message="orderHeaderInfoList=${orderHeaderInfoList}"/> -->

        <!-- if the orderHeaderInfoList is not empty, create a Picklist, then populate it -->
        <if-not-empty field="orderHeaderInfoList">
            <set from-field="parameters.facilityId" field="createPicklistMap.facilityId"/>
            <set from-field="parameters.shipmentMethodTypeId" field="createPicklistMap.shipmentMethodTypeId"/>
            <call-service service-name="createPicklist" in-map-name="createPicklistMap">
                <result-to-field result-name="picklistId"/>
            </call-service>
            <field-to-result field="picklistId"/>
            <log level="info" message="Created Picklist with ID ${picklistId}"/>

            <!-- iterate over the orderHeaderInfoList and create a PicklistBin for each order and a PicklistItem for each item -->
            <calculate field="binLocationNumber" type="Long"><number value="1"/></calculate>
            <iterate entry="orderHeaderInfo" list="orderHeaderInfoList">
                <clear-field field="picklistBinId"/>
                <clear-field field="createPicklistBinMap"/>
                <set from-field="picklistId" field="createPicklistBinMap.picklistId"/>
                <set from-field="binLocationNumber" field="createPicklistBinMap.binLocationNumber"/>
                <set from-field="orderHeaderInfo.orderItemShipGroup.orderId" field="createPicklistBinMap.primaryOrderId"/>
                <set from-field="orderHeaderInfo.orderItemShipGroup.shipGroupSeqId" field="createPicklistBinMap.primaryShipGroupSeqId"/>
                <call-service service-name="createPicklistBin" in-map-name="createPicklistBinMap">
                    <result-to-field result-name="picklistBinId"/>
                </call-service>

                <calculate field="binLocationNumber" type="Long"><calcop field="binLocationNumber" operator="add"/><number value="1"/></calculate>
                <set field="itemsInBin" type="Long" value="0"/>

                <iterate entry="orderItemInfo" list="orderHeaderInfo.orderItemInfoList">
                    <iterate entry="orderItemShipGrpInvRes" list="orderItemInfo.orderItemShipGrpInvResList">
                        <log level="info" message="Getting pick quantity : ${orderItemShipGrpInvRes.quantity} - ${orderItemShipGrpInvRes.quantityNotAvailable}"/>
                        <set field="quantityToPick" from-field="orderItemShipGrpInvRes.quantity"/>
                        <!--If a portion of the item is not available, then reduce the quantity to pick.  For example,
                        if a customer orders 15 and only 10 are in stock and quantityNotAvailable is 5, then subtract
                        the 5 from 15 so quantityToPick is 10 -->
                        <if>
                            <condition>
                                <and>
                                    <not><if-empty field="orderItemShipGrpInvRes.quantityNotAvailable"/></not>
                                    <if-compare field="orderItemShipGrpInvRes.quantityNotAvailable" value="0" operator="greater"/>
                                </and>
                            </condition>
                            <then>
                                <set field="quantityToSubtract" from-field="orderItemShipGrpInvRes.quantityNotAvailable"/>
                                <log level="info" message="Subtracting ${quantityToSubtract} from ${quantityToPick}"/>
                                <calculate field="quantityToPick">
                                    <calcop field="quantityToPick" operator="subtract">
                                        <calcop field="quantityToSubtract" operator="get"/>
                                    </calcop>
                                </calculate>
                            </then>
                        </if>

                        <log level="info" message="Order #${orderItemShipGrpInvRes.orderId} / ${orderItemShipGrpInvRes.orderItemSeqId} - ${quantityToPick}"/>
                        <if-compare field="quantityToPick" value="0" operator="greater" type="BigDecimal">
                            <clear-field field="createPicklistItemMap"/>
                            <set from-field="picklistBinId" field="createPicklistItemMap.picklistBinId"/>
                            <set field="createPicklistItemMap.itemStatusId" value="PICKITEM_PENDING"/>
                            <set-service-fields service-name="createPicklistItem" map="orderItemShipGrpInvRes" to-map="createPicklistItemMap"/>
                            <set field="createPicklistItemMap.quantity" from-field="quantityToPick"/>
                            <call-service service-name="createPicklistItem" in-map-name="createPicklistItemMap"/>
                            <calculate field="itemsInBin">
                                <calcop operator="add"/>
                                <number value="1"/>
                            </calculate>
                        </if-compare>
                        <clear-field field="quantityToPick"/>
                    </iterate>
                </iterate>

                <!-- if we put nothing into this bin, delete the bin -->
                <if-compare field="itemsInBin" value="0" operator="equals">
                    <entity-one entity-name="PicklistBin" value-field="binToRemove">
                        <field-map field-name="picklistBinId" from-field="picklistBinId"/>
                    </entity-one>
                    <remove-value value-field="binToRemove"/>
                </if-compare>
            </iterate>
        <else>
            <log level="info" message="Not Creating Picklist with ID, nothing to process."/>
            <!-- return error messages saying no orders ready to pick, not creating picklist -->
            <add-error>
                <fail-property resource="ProductUiLabels" property="FacilityNoOrdersReadyToPick"/>
            </add-error>
            <check-errors/>
        </else>
        </if-not-empty>
    </simple-method>

    <!-- print pick sheet -->
    <simple-method method-name="printPickSheets" short-description="Print pick sheets for orders">
        <if-empty field="parameters.maxNumberOfOrdersToPrint">
            <add-error error-list-name="error_list">
                <fail-property property="ProductNumberOfOrdersMustNotBeEmptyToPrintPickSheet" resource="ProductErrorUiLabels"/>
            </add-error>
        <else>
            <if-compare field="parameters.maxNumberOfOrdersToPrint" operator="less-equals" value="0" type="Long">
                <add-error error-list-name="error_list">
                    <fail-property property="ProductNumberOfOrdersMustBeGreaterThenZeroToPrintPickSheet" resource="ProductErrorUiLabels"/>
                </add-error>
            </if-compare>
        </else>
        </if-empty>
        <check-errors/>

        <now-timestamp field="nowTimestamp"/>
        <set-service-fields service-name="findOrdersToPickMove" map="parameters" to-map="findOrdersToPickMoveMap"/>
        <call-service service-name="findOrdersToPickMove" in-map-name="findOrdersToPickMoveMap">
            <result-to-field result-name="pickMoveInfoList"/>
        </call-service>

        <if-not-empty field="parameters.printGroupName">
            <set field="printGroupName" from-field="parameters.printGroupName"/>
            <iterate list="pickMoveInfoList" entry="pickMoveInfo">
                <set field="groupName" from-field="pickMoveInfo.groupName"/>
                <if-compare-field field="groupName" operator="equals" to-field="printGroupName">
                    <list-to-list list="pickMoveInfo.orderReadyToPickInfoList" to-list="toPrintList"/>
                </if-compare-field>
            </iterate>
        <else>
            <iterate list="pickMoveInfoList" entry="pickMoveInfo">
                <list-to-list list="pickMoveInfo.orderReadyToPickInfoList" to-list="toPrintList"/>
            </iterate>
        </else>
        </if-not-empty>
        <set field="counter" value="0" type="Long"/>
        <iterate list="toPrintList" entry="toPrint">
            <if-compare-field field="counter" operator="less" to-field="parameters.maxNumberOfOrdersToPrint" type="Long">
                <set field="orderHeaderMap.orderId" from-field="toPrint.orderHeader.orderId"/>
                <set field="orderHeaderMap.pickSheetPrintedDate" from-field="nowTimestamp"/>
                <call-service service-name="updateOrderHeader" in-map-name="orderHeaderMap"/>
                <set field="counter" value="${counter + 1}" type="Long"/>
                <clear-field field="orderHeaderMap"/>
            </if-compare-field>
        </iterate>
        <field-to-result field="pickMoveInfoList"/>
    </simple-method>

       <!-- Picklist -->
    <simple-method method-name="createPicklist" short-description="Create Picklist">
        <check-permission permission="FACILITY" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="Picklist"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <sequenced-id sequence-name="Picklist" field="newEntity.picklistId"/>
        <field-to-result field="newEntity.picklistId" result-name="picklistId"/>

        <if-empty field="newEntity.statusId">
            <set value="PICKLIST_INPUT" field="newEntity.statusId"/>
        </if-empty>

        <!-- auto-set the picklistDate, this is not user-changeable -->
        <now-timestamp field="newEntity.picklistDate"/>

        <!-- set the created and lastModified info -->
        <set from-field="userLogin.userLoginId" field="newEntity.createdByUserLogin"/>
        <set from-field="userLogin.userLoginId" field="newEntity.lastModifiedByUserLogin"/>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updatePicklist" short-description="Update Picklist">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <make-value value-field="lookupPKMap" entity-name="Picklist"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>

        <if-not-empty field="parameters.statusId">
            <if-compare-field field="parameters.statusId" to-field="lookedUpValue.statusId" operator="not-equals">
                <!-- make sure a StatusValidChange record exists, if not return error -->
                <entity-one entity-name="StatusValidChange" value-field="checkStatusValidChange" auto-field-map="false">
                    <field-map from-field="lookedUpValue.statusId" field-name="statusId"/>
                    <field-map from-field="parameters.statusId" field-name="statusIdTo"/>
                </entity-one>
                <if-empty field="checkStatusValidChange">
                    <set value="ERROR: Changing the status from ${lookedUpValue.statusId} to ${parameters.statusId} is not allowed." field="error_list[]"/>
                </if-empty>
                <check-errors/>

                <make-value entity-name="PicklistStatusHistory" value-field="newStatusValue"/>
                <set from-field="parameters.picklistId" field="newStatusValue.picklistId"/>
                <set from-field="lookedUpValue.statusId" field="newStatusValue.statusId"/>
                <set from-field="parameters.statusId" field="newStatusValue.statusIdTo"/>
                <now-timestamp field="newStatusValue.changeDate"/>
                <set from-field="userLogin.userLoginId" field="newStatusValue.changeUserLoginId"/>
                <create-value value-field="newStatusValue"/>
            </if-compare-field>
        </if-not-empty>

        <!-- now finally check for errors -->
        <check-errors/>

        <!-- finally before setting nonpk fields, set the oldStatusId -->
        <field-to-result field="lookedUpValue.statusId" result-name="oldStatusId"/>

        <!-- now that all changes have been checked, set the nonpks -->
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
        <set from-field="userLogin.userLoginId" field="lookedUpValue.lastModifiedByUserLogin"/>

        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deletePicklist" short-description="Delete Picklist">
        <check-permission permission="FACILITY" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="Picklist"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- PicklistBin -->
    <simple-method method-name="createPicklistBin" short-description="Create PicklistBin">
        <check-permission permission="FACILITY" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="PicklistBin"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <sequenced-id sequence-name="PicklistBin" field="newEntity.picklistBinId"/>
        <field-to-result field="newEntity.picklistBinId" result-name="picklistBinId"/>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updatePicklistBin" short-description="Update PicklistBin">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <make-value value-field="lookupPKMap" entity-name="PicklistBin"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>

        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deletePicklistBin" short-description="Delete PicklistBin">
        <check-permission permission="FACILITY" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="PicklistBin"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- PicklistItem -->
    <simple-method method-name="createPicklistItem" short-description="Create PicklistItem">
        <check-permission permission="FACILITY" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="PicklistItem"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.itemStatusId">
            <set value="PICKITEM_PENDING" field="newEntity.itemStatusId"/>
        </if-empty>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updatePicklistItem" short-description="Update PicklistItem">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <make-value value-field="lookupPKMap" entity-name="PicklistItem"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>

        <if-not-empty field="parameters.itemStatusId">
            <if-compare-field field="parameters.itemStatusId" to-field="lookedUpValue.itemStatusId" operator="not-equals">
                <!-- make sure a StatusValidChange record exists, if not return error -->
                <entity-one entity-name="StatusValidChange" value-field="checkStatusValidChange" auto-field-map="false">
                    <field-map from-field="lookedUpValue.itemStatusId" field-name="statusId"/>
                    <field-map from-field="parameters.itemStatusId" field-name="statusIdTo"/>
                </entity-one>
                <if-empty field="checkStatusValidChange">
                    <set value="ERROR: Changing the status from ${lookedUpValue.itemStatusId} to ${parameters.itemStatusId} is not allowed." field="error_list[]"/>
                </if-empty>
            </if-compare-field>
        </if-not-empty>

        <!-- now finally check for errors -->
        <check-errors/>

        <!-- finally before setting nonpk fields, set the oldItemStatusId -->
        <field-to-result field="lookedUpValue.itemStatusId" result-name="oldItemStatusId"/>

        <!-- now that all changes have been checked, set the nonpks -->
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>

        <!-- store the changes -->
        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deletePicklistItem" short-description="Delete PicklistItem">
        <check-permission permission="FACILITY" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="PicklistItem"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>
    
    <!-- Service which edit a PicklistItem when a preparator choose a specified lot for one line order
        This service is called by the request :
            - editPicklistItem 
    -->
    <simple-method method-name="editPicklistItem" short-description="Edit a Picklist Item">

        <make-value value-field="lookupPKMap" entity-name="PicklistItem"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="picklistItem"/>
        
        <!-- Error if the specified quantity is greater than the picklistItem quantity -->
        <if-compare-field operator="greater" to-field="picklistItem.quantity" field="parameters.quantity" type="Integer">
            <add-error>
                <fail-property resource="ProductErrorUiLabels" property="PicklistManageTooMuchQuantity"/>
            </add-error>
        </if-compare-field>
        
        <!-- In order to check if there is a link between the lot and the productId,
            we retrieve all the inventoryItems with this lotId ... -->
        <entity-condition list="inventoryItemList" entity-name="InventoryItem">
            <condition-expr field-name="lotId" from-field="parameters.lotId" operator="equals"/>
        </entity-condition>
        
        <set value="ko" field="linkProductAndLot"/>
        
        <!-- ... and check if one of the inventoryItems have this productId -->
        <iterate entry="inventoryItem" list="inventoryItemList">
            <if-compare-field operator="equals" to-field="inventoryItem.productId" field="parameters.productId">
                <set value="ok" field="linkProductAndLot"/>
            </if-compare-field>
        </iterate>
        
        <if-compare field="linkProductAndLot" operator="equals" value="ko">
            <add-error>
                <fail-property resource="ProductErrorUiLabels" property="PicklistManageNoLinkProductAndLot"/>
            </add-error>
        </if-compare>
        
        <check-errors />
        
        <set field="inputMap.productId" from-field="parameters.productId"/>
        <set field="inputMap.facilityId" from-field="parameters.facilityId"/>
        <set field="inputMap.lotId" from-field="parameters.lotId"/>
        
        <!-- Check the stock of this lot -->
        <call-service service-name="getInventoryAvailableByFacility" in-map-name="inputMap">
           <result-to-field field="quantityOnHandTotal" result-name="quantityOnHandTotal"/>
           <result-to-field field="availableToPromiseTotal" result-name="availableToPromiseTotal"/>
        </call-service>
        
        <if>
            <condition>
                <if-compare-field operator="greater" field="parameters.quantity" to-field="availableToPromiseTotal" type="Integer"/>
            </condition>
            <then>
                <add-error>
                    <fail-property resource="ProductErrorUiLabels" property="PicklistManageStockLow"/>
                </add-error>
            </then>
        </if>
        
        <check-errors />
        
           <!-- Retreive the informations about the OrderItemShipGrpInvRes of the edited PicklistItem -->
           <entity-one value-field="oisgir" entity-name="OrderItemShipGrpInvRes">
               <field-map from-field="parameters.orderId" field-name="orderId"/>
               <field-map from-field="parameters.shipGroupSeqId" field-name="shipGroupSeqId"/>
               <field-map from-field="parameters.orderItemSeqId" field-name="orderItemSeqId"/>
               <field-map from-field="parameters.inventoryItemId" field-name="inventoryItemId"/>
           </entity-one>
           
           <!-- We remove the edited PicklistItem ... -->
           <remove-value value-field="picklistItem"/>
           
           <!-- ... and its OrderItemShipGrpInvRes -->
           <set-service-fields map="parameters" to-map="cancelOrderItemShipGrpInvResMap" service-name="cancelOrderItemShipGrpInvRes"/>
           <call-service service-name="cancelOrderItemShipGrpInvRes" in-map-name="cancelOrderItemShipGrpInvResMap"/>
           
           <clear-field field="inputMap"/>
           
           <!-- We create new(s) OrderItemShipGrpInvRes with the new InventoryItem (with the specified lot) -->
           <set from-field="parameters.orderId" field="inputMap.orderId"/>
           <set from-field="parameters.shipGroupSeqId" field="inputMap.shipGroupSeqId"/>
           <set from-field="parameters.orderItemSeqId" field="inputMap.orderItemSeqId"/>
           <set from-field="parameters.productId" field="inputMap.productId"/>
           <set from-field="parameters.quantity" field="inputMap.quantity"/>
           <set from-field="parameters.facilityId" field="inputMap.facilityId" />
           <set value="Y" field="inputMap.requireInventory"/>
           <set from-field="oisgir.reserveOrderEnumId" field="inputMap.reserveOrderEnumId"/>
           <set from-field="parameters.lotId" field="inputMap.lotId"/>
           
           <call-service service-name="reserveProductInventoryByFacility" in-map-name="inputMap" />
           
           <!-- If the new OrderItemShipGrpInvRes don't contains all of the item, we recreate OrderItemShipGrpInvRes
               with the previous parameters -->
           <if-compare-field operator="less" field="parameters.quantity" to-field="picklistItem.quantity" type="Integer">
               <clear-field field="inputMap"/>
               
               <set from-field="parameters.orderId" field="inputMap.orderId"/>
               <set from-field="parameters.shipGroupSeqId" field="inputMap.shipGroupSeqId"/>
               <set from-field="parameters.orderItemSeqId" field="inputMap.orderItemSeqId"/>
               <set from-field="parameters.productId" field="inputMap.productId"/>
               <set from-field="parameters.facilityId" field="inputMap.facilityId" />
               
               <if-not-empty field="parameters.oldLotId">
                   <set from-field="parameters.oldLotId" field="inputMap.lotId" />
               </if-not-empty>
               
               <calculate field="quantity">
                   <calcop operator="subtract" field="picklistItem.quantity">
                       <calcop operator="get" field="parameters.quantity"/>
                   </calcop>
               </calculate>
               
               <set from-field="quantity" field="inputMap.quantity"/>
               <set value="Y" field="inputMap.requireInventory"/>
               <set from-field="oisgir.reserveOrderEnumId" field="inputMap.reserveOrderEnumId"/>
               
               <call-service service-name="reserveProductInventoryByFacility" in-map-name="inputMap"/>
           </if-compare-field>
           
           <entity-condition list="oisgirs" entity-name="OrderItemShipGrpInvRes">
               <condition-list>
                <condition-expr from-field="parameters.orderId" field-name="orderId" operator="equals"/>
                <condition-expr from-field="parameters.shipGroupSeqId" field-name="shipGroupSeqId" operator="equals"/>
                <condition-expr from-field="parameters.orderItemSeqId" field-name="orderItemSeqId" operator="equals"/>
               </condition-list>
           </entity-condition>
           
           <set from-field="picklistItem.picklistBinId" field="picklistBinId"/>
           
           <entity-condition list="picklistItemList" entity-name="PicklistItem">
               <condition-list>
                <condition-expr from-field="parameters.orderId" field-name="orderId" operator="equals"/>
                <condition-expr from-field="parameters.shipGroupSeqId" field-name="shipGroupSeqId" operator="equals"/>
                <condition-expr from-field="parameters.orderItemSeqId" field-name="orderItemSeqId" operator="equals"/>
                <condition-expr from-field="picklistBinId" field-name="picklistBinId" operator="equals" />
               </condition-list>
           </entity-condition>
           
           <clear-field field="inputMap"/>
           
           <!-- We create the PicklistItem who correspond at the new(s) OrderItemShipGrpInvRes -->
           <iterate entry="oisgir" list="oisgirs">
               
               <!-- actionOnPli can have 3 values :
                   - new : the picklistItem has never existed and is created by this service
                   - edit : the picklistItem exists but we need to modify its quantity
                   - none : the picklistItem exists and this service haven't to touch at this one. -->
               <set field="actionOnPli" value="new" />
               
               <if-not-empty field="oisgir.quantityNotAvailable">
                   <calculate field="quantity">
                       <calcop operator="subtract" field="oisgir.quantity">
                           <calcop operator="get" field="oisgir.quantityNotAvailable"/>
                       </calcop>
                   </calculate>
                   <else>
                       <set field="quantity" from-field="oisgir.quantity"/>
                   </else>
               </if-not-empty>
               
               <iterate entry="pli" list="picklistItemList">
                   <if-compare-field operator="equals" field="pli.inventoryItemId" to-field="oisgir.inventoryItemId">
                       <if-compare-field operator="equals" field="pli.quantity" to-field="quantity">
                           <set field="actionOnPli" value="none" />
                           <else>
                               <set field="actionOnPli" value="edit" />
                               <set field="currentPli" value="pli"/>
                           </else>
                       </if-compare-field>
                   </if-compare-field>
               </iterate>
               
               <if-compare operator="equals" value="new" field="actionOnPli">
                   
                   <set from-field="oisgir.inventoryItemId" field="inputMap.inventoryItemId" />
                   <set from-field="oisgir.orderId" field="inputMap.orderId" />
                   <set from-field="oisgir.orderItemSeqId" field="inputMap.orderItemSeqId" />
                   <set from-field="picklistBinId" field="inputMap.picklistBinId" />
                   <set from-field="quantity" field="inputMap.quantity" />
                   <set from-field="oisgir.shipGroupSeqId" field="inputMap.shipGroupSeqId" />
                   
                   <call-service service-name="createPicklistItem" in-map-name="inputMap" />
               </if-compare>
               
               <if-compare operator="equals" value="edit" field="actionOnPli">
                   <set from-field="oisgir.inventoryItemId" field="inputMap.inventoryItemId" />
                   <set from-field="oisgir.orderId" field="inputMap.orderId" />
                   <set from-field="oisgir.orderItemSeqId" field="inputMap.orderItemSeqId" />
                   <set from-field="picklistBinId" field="inputMap.picklistBinId" />
                   <set from-field="quantity" field="inputMap.quantity" />
                   <set from-field="oisgir.shipGroupSeqId" field="inputMap.shipGroupSeqId" />
                   
                   <call-service service-name="updatePicklistItem" in-map-name="inputMap" />
               </if-compare>
           </iterate>
        
    </simple-method>
    
    <simple-method method-name="setPicklistItemToComplete" short-description="Set the status of a pick list item to completed">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <set-service-fields service-name="updatePicklistItem" map="parameters" to-map="serviceCtx"/>
        <set field="serviceCtx.itemStatusId" value="PICKITEM_COMPLETED"/>
        <call-service service-name="updatePicklistItem" in-map-name="serviceCtx" include-user-login="true"/>
    </simple-method>

    <!-- PicklistRole -->
    <simple-method method-name="createPicklistRole" short-description="Create PicklistRole">
        <check-permission permission="FACILITY" action="_CREATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityCreatePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="newEntity" entity-name="PicklistRole"/>
        <set-pk-fields map="parameters" value-field="newEntity"/>
        <set-nonpk-fields map="parameters" value-field="newEntity"/>

        <if-empty field="newEntity.fromDate">
            <now-timestamp field="newEntity.fromDate"/>
        </if-empty>

        <create-value value-field="newEntity"/>
    </simple-method>
    <simple-method method-name="updatePicklistRole" short-description="Update PicklistRole">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <make-value value-field="lookupPKMap" entity-name="PicklistRole"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>

        <store-value value-field="lookedUpValue"/>
    </simple-method>
    <simple-method method-name="deletePicklistRole" short-description="Delete PicklistRole">
        <check-permission permission="FACILITY" action="_DELETE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityDeletePermissionError"/>
        </check-permission>
        <check-errors/>

        <make-value value-field="lookupPKMap" entity-name="PicklistRole"/>
        <set-pk-fields map="parameters" value-field="lookupPKMap"/>
        <find-by-primary-key map="lookupPKMap" value-field="lookedUpValue"/>
        <remove-value value-field="lookedUpValue"/>
    </simple-method>

    <!-- ========================================================= -->
    <!-- =========== Picklist Report/Display Services ============ -->
    <!-- ========================================================= -->
    <simple-method method-name="getPicklistDisplayInfo" short-description="Get Picklist Display Info">
        <check-permission permission="FACILITY" action="_VIEW">
            <fail-property resource="ProductUiLabels" property="ProductFacilityViewPermissionError"/>
        </check-permission>
        <check-errors/>

        <set field="viewSize" from-field="parameters.viewSize" type="Integer"/>
        <set field="viewIndex" from-field="parameters.viewIndex" type="Integer"/>
        <entity-condition entity-name="Picklist" list="picklistList">
            <condition-list combine="and">
                <condition-expr field-name="facilityId" operator="equals" from-field="parameters.facilityId"/>
                <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_PICKED"/>
                <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
            </condition-list>
            <order-by field-name="picklistDate"/>
            <limit-view view-size="${viewSize}" view-index="${viewIndex+1}"/>
        </entity-condition>

        <entity-count entity-name="Picklist" count-field="picklistCount">
            <condition-list combine="and">
                <condition-expr field-name="facilityId" operator="equals" from-field="parameters.facilityId"/>
                <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_PICKED"/>
                <condition-expr field-name="statusId" operator="not-equals" value="PICKLIST_CANCELLED"/>
            </condition-list>
        </entity-count>
        <iterate entry="picklist" list="picklistList">
            <call-simple-method method-name="getPicklistSingleInfoInline"/>
            <field-to-list field="picklistInfo" list="picklistInfoList"/>
        </iterate>

        <set field="lowIndex" value="${(viewIndex * viewSize) + 1}" type="Integer"/>
        <set field="highIndex" value="${(viewIndex + 1) * viewSize}" type="Integer"/>
        <if-compare-field field="highIndex" operator="greater" to-field="picklistCount" type="Integer">
            <set field="highIndex" from-field="picklistCount" type="Integer"/>
        </if-compare-field>
        <if-compare-field field="viewSize" operator="greater" to-field="picklistCount" type="Integer">
            <set field="highIndex" from-field="picklistCount" type="Integer"/>
        </if-compare-field>
        
        <field-to-result field="picklistInfoList"/>
        <field-to-result field="viewIndex"/>
        <field-to-result field="viewSize"/>
        <field-to-result field="lowIndex"/>
        <field-to-result field="highIndex"/>
        <field-to-result field="picklistCount"/>
    </simple-method>

    <simple-method method-name="getPickAndPackReportInfo" short-description="getPickAndPackReportInfo">
        <!--
            Creates:
              1. Standard picklistInfo Map from the getPicklistSingleInfoInline simple-method (see comment there for details)
              2. facilityLocationInfoList (facilityLocation, product, pickQuantity, picklistBinInfoList (picklistBin, quantity), picklistItemInfoList (picklistItem, picklistBin, orderItem, product, inventoryItemAndLocation, orderItemShipGrpInvRes, itemIssuanceList))
              3. noLocationProductInfoList (product, pickQuantity, picklistBinInfoList (picklistBin, quantity), picklistItemInfoList (picklistItem, picklistBin, orderItem, product, inventoryItemAndLocation, orderItemShipGrpInvRes, itemIssuanceList))
        -->
        <check-permission permission="FACILITY" action="_VIEW">
            <fail-property resource="ProductUiLabels" property="ProductFacilityViewPermissionError"/>
        </check-permission>
        <check-errors/>

        <!-- Get the general information for the picklist, this will be used for the pack sheets -->
        <entity-one entity-name="Picklist" value-field="picklist" auto-field-map="true"/>
        <call-simple-method method-name="getPicklistSingleInfoInline"/>
        <field-to-result field="picklistInfo"/>

        <!-- Assemble the information per facility location for the pick sheet -->
        <iterate entry="picklistBinInfo" list="picklistInfo.picklistBinInfoList">
            <set from-field="picklistBinInfo.picklistBin" field="picklistBinByIdMap[picklistBinInfo.picklistBin.picklistBinId]"/>

            <iterate entry="picklistItemInfo" list="picklistBinInfo.picklistItemInfoList">
                <!--
                    In this iteration through the items we want 2 things:
                      1. A Map with all FacilityLocation records by locationSeqId, so that we have one unique of each
                         instance per inventoryItem, this will be put into a list and sorted by facility location fields
                         AND
                         A Map containing a List of PicklistItemInfo records keyed by the locationSeqId
                      2. A Map with key productId, value product
                         AND
                         A Map with a List of PicklistItemInfo records keyed by the productId
                -->
                <if-not-empty field="picklistItemInfo.inventoryItemAndLocation.locationSeqId">
                    <make-value value-field="facilityLocation" entity-name="FacilityLocation" map="picklistItemInfo.inventoryItemAndLocation"/>
                    <set from-field="facilityLocation" field="facilityLocationByLocationSeqIdMap[facilityLocation.locationSeqId]"/>

                    <clear-field field="picklistItemInfoTempList"/>
                    <set field="picklistItemInfoTempList" from-field="picklistItemInfoListByLocationSeqIdMap[facilityLocation.locationSeqId]"/>
                    <set field="picklistItemInfoTempList[]" from-field="picklistItemInfo"/>
                    <set field="picklistItemInfoListByLocationSeqIdMap[facilityLocation.locationSeqId]" from-field="picklistItemInfoTempList"/>
                <else>
                    <!-- handle case where an InventoryItem is not associated with a location -->
                    <if-not-empty field="picklistItemInfo.orderItem.productId">
                        <clear-field field="productValueTemp"/>
                        <set field="productId" from-field="picklistItemInfo.inventoryItemAndLocation.productId"/>
                        <entity-one entity-name="Product" value-field="productValueTemp" use-cache="true">
                            <field-map field-name="productId"/>
                        </entity-one>
                        <set field="productByProductIdMap[productId]" from-field="productValueTemp"/>

                        <!--
                        <call-bsh><![CDATA[
                        org.ofbiz.base.util.Debug.log("Added " + productId + " to product by product Map, now: " + productByProductIdMap.size());
                        ]]></call-bsh>
                        -->

                        <clear-field field="picklistItemInfoTempList"/>
                        <set field="picklistItemInfoTempList" from-field="picklistItemInfoListByProductIdMap[productId]"/>
                        <set field="picklistItemInfoTempList[]" from-field="picklistItemInfo"/>
                        <set field="picklistItemInfoListByProductIdMap[productId]" from-field="picklistItemInfoTempList"/>

                        <!--
                        <call-bsh><![CDATA[
                        org.ofbiz.base.util.Debug.log("Added " + productId + " to pick item info list, now: " + picklistItemInfoListByProductIdMap.size());
                        ]]></call-bsh>
                        -->
                    <else>
                        <!-- Uh oh, no productId, how did this happen? -->
                        <log level="warning" message="No productId and no FacilityLocation, not showing in Picklist for PicklistItem: ${picklistItemInfo.picklistItem}"/>
                    </else>
                    </if-not-empty>
                </else>
                </if-not-empty>
            </iterate>
        </iterate>

        <!-- === handle the ones by FacilityLocation === -->
        <!-- make a facilityLocationList from the facilityLocationByLocationSeqIdMap, which was used to guarantee uniqueness of FacilityLocations -->
        <iterate-map map="facilityLocationByLocationSeqIdMap" key="locationSeqId" value="facilityLocationList[]"/>

        <!-- order/sort the facilityLocations -->
        <set value="+areaId" field="facilityLocsOrdLst[]"/>
        <set value="+aisleId" field="facilityLocsOrdLst[]"/>
        <set value="+sectionId" field="facilityLocsOrdLst[]"/>
        <set value="+levelId" field="facilityLocsOrdLst[]"/>
        <set value="+positionId" field="facilityLocsOrdLst[]"/>
        <order-value-list list="facilityLocationList" order-by-list="facilityLocsOrdLst"/>

        <!-- Now we have an ordered list of FacilityLocations, create a facilityLocationInfoList -->
        <iterate entry="facilityLocation" list="facilityLocationList">
            <clear-field field="facilityLocationInfo"/>
            <set from-field="facilityLocation" field="facilityLocationInfo.facilityLocation"/>
            <set from-field="picklistItemInfoListByLocationSeqIdMap[facilityLocation.locationSeqId]" field="facilityLocationInfo.picklistItemInfoList"/>

            <!-- make the pickQuantity and quantityByPicklistBinIdMap -->
            <iterate entry="picklistItemInfo" list="facilityLocationInfo.picklistItemInfoList">
                <calculate field="facilityLocationInfo.pickQuantity">
                    <calcop field="facilityLocationInfo.pickQuantity" operator="add">
                        <calcop field="picklistItemInfo.picklistItem.quantity" operator="get"/>
                    </calcop>
                </calculate>

                <calculate field="facilityLocationInfo.quantityByPicklistBinIdMap[picklistItemInfo.picklistBin.picklistBinId]">
                    <calcop field="facilityLocationInfo.quantityByPicklistBinIdMap[picklistItemInfo.picklistBin.picklistBinId]" operator="add">
                        <calcop field="picklistItemInfo.picklistItem.quantity" operator="get"/>
                    </calcop>
                </calculate>

                <!-- also put the product record in place -->
                <if-empty field="facilityLocationInfo.product">
                    <set from-field="picklistItemInfo.product" field="facilityLocationInfo.product"/>
                <else>
                    <if-compare-field field="facilityLocationInfo.product.productId" to-field="picklistItemInfo.product.productId" operator="not-equals">
                        <!-- Uh oh, have different products in the same location... what to do about this? -->
                        <log level="error" message="When creating picklist report found in the same location [${facilityLocation.locationSeqId}] two different products: ${facilityLocationInfo.product.productId} and ${picklistItemInfo.product.productId}"/>
                        <string-append string=" WARNING: products with different IDs are sharing the same bin location, you must check products and quantities required against orders : ${facilityLocationInfo.product.productId} and ${picklistItemInfo.product.productId}" field="facilityLocationInfo.message"/>
                    </if-compare-field>
                </else>
                </if-empty>
            </iterate>

            <!-- create the picklistBinInfoList from the quantityByPicklistBinIdMap -->
            <iterate-map key="picklistBinId" value="quantity" map="facilityLocationInfo.quantityByPicklistBinIdMap">
                <clear-field field="picklistBinInfo"/>
                <set from-field="picklistBinByIdMap[picklistBinId]" field="picklistBinInfo.picklistBin"/>
                <set from-field="quantity" field="picklistBinInfo.quantity"/>
                <set from-field="picklistBinInfo" field="facilityLocationInfo.picklistBinInfoList[]"/>
            </iterate-map>
            <order-map-list list="facilityLocationInfo.picklistBinInfoList"><order-by field-name="picklistBin.binLocationNumber"/></order-map-list>

            <set from-field="facilityLocationInfo" field="facilityLocationInfoList[]"/>
        </iterate>

        <!-- === handle the ones by Product === -->
        <!-- make a productList from the productByProductIdMap, which was used to guarantee uniqueness of Products -->
        <iterate-map map="productByProductIdMap" key="productId" value="productList[]"/>

        <!-- order/sort the products -->
        <set value="+productId" field="productsOrdLst[]"/>
        <order-value-list list="productList" order-by-list="productsOrdLst"/>

        <!-- Now we have an ordered list of Products, create a noLocationProductInfoList -->
        <iterate entry="product" list="productList">
            <clear-field field="productInfo"/>
            <set from-field="product" field="productInfo.product"/>
            <set from-field="picklistItemInfoListByProductIdMap[product.productId]" field="productInfo.picklistItemInfoList"/>

            <!-- make the pickQuantity and quantityByPicklistBinIdMap -->
            <iterate entry="picklistItemInfo" list="productInfo.picklistItemInfoList">
                <calculate field="productInfo.pickQuantity">
                    <calcop field="productInfo.pickQuantity" operator="add"/>
                    <calcop field="picklistItemInfo.picklistItem.quantity" operator="get"/>
                </calculate>

                <calculate field="productInfo.quantityByPicklistBinIdMap[picklistItemInfo.picklistBin.picklistBinId]">
                    <calcop field="productInfo.quantityByPicklistBinIdMap[picklistItemInfo.picklistBin.picklistBinId]" operator="add">
                        <calcop field="picklistItemInfo.picklistItem.quantity" operator="get"/>
                    </calcop>
                </calculate>
            </iterate>

            <!-- create the picklistBinInfoList from the quantityByPicklistBinIdMap -->
            <iterate-map key="picklistBinId" value="quantity" map="productInfo.quantityByPicklistBinIdMap">
                <clear-field field="picklistBinInfo"/>
                <set from-field="picklistBinByIdMap[picklistBinId]" field="picklistBinInfo.picklistBin"/>
                <set from-field="quantity" field="picklistBinInfo.quantity"/>
                <set from-field="picklistBinInfo" field="productInfo.picklistBinInfoList[]"/>
            </iterate-map>
            <order-map-list list="productInfo.picklistBinInfoList"><order-by field-name="picklistBin.binLocationNumber"/></order-map-list>

            <set from-field="productInfo" field="noLocationProductInfoList[]"/>
        </iterate>

        <field-to-result field="facilityLocationInfoList"/>
        <field-to-result field="noLocationProductInfoList"/>
    </simple-method>

    <simple-method method-name="getPicklistSingleInfoInline" short-description="getPicklistSingleInfoInline">
        <!--
            Creates picklistInfo Map containing:
             - picklist
             - facility
             - shipmentMethodType
             - statusItem
             - statusValidChangeToDetailList
             - picklistRoleInfoList (picklistRole, partyNameView, roleType)
             - picklistStatusHistoryInfoList (picklistStatusHistory, statusItem, statusItemTo)
             - picklistBinInfoList
               - picklistBin
               - primaryOrderHeader
               - primaryOrderItemShipGroup
               - picklistItemInfoList (picklistItem, picklistBin, orderItem, product, inventoryItemAndLocation, orderItemShipGrpInvRes, itemIssuanceList)
        -->
        <!-- expects a picklist GenericValue to be in the context, and creates a picklistInfo Map -->
        <clear-field field="picklistRoleInfoList"/>
        <get-related value-field="picklist" relation-name="PicklistRole" list="picklistRoleList"/>
        <iterate entry="picklistRole" list="picklistRoleList">
            <clear-field field="picklistRoleInfo"/>
            <get-related-one value-field="picklistRole" relation-name="PartyNameView" to-value-field="picklistRoleInfo.partyNameView" use-cache="true"/>
            <get-related-one value-field="picklistRole" relation-name="RoleType" to-value-field="picklistRoleInfo.roleType" use-cache="true"/>
            <set from-field="picklistRole" field="picklistRoleInfo.picklistRole"/>
            <field-to-list field="picklistRoleInfo" list="picklistRoleInfoList"/>
        </iterate>

        <clear-field field="picklistStatusHistoryInfoList"/>
        <get-related value-field="picklist" relation-name="PicklistStatusHistory" list="picklistStatusHistoryList"/>
        <iterate entry="picklistStatusHistory" list="picklistStatusHistoryList">
            <clear-field field="picklistStatusHistoryInfo"/>
            <get-related-one value-field="picklistStatusHistory" relation-name="StatusItem" to-value-field="picklistStatusHistoryInfo.statusItem" use-cache="true"/>
            <get-related-one value-field="picklistStatusHistory" relation-name="ToStatusItem" to-value-field="picklistStatusHistoryInfo.statusItemTo" use-cache="true"/>
            <set from-field="picklistStatusHistory" field="picklistStatusHistoryInfo.picklistStatusHistory"/>
            <field-to-list field="picklistStatusHistoryInfo" list="picklistStatusHistoryInfoList"/>
        </iterate>

        <clear-field field="picklistBinOrderList"/>
        <clear-field field="picklistBinInfoList"/>

        <set value="+binLocationNumber" field="picklistBinOrderList[]"/>
        <get-related value-field="picklist" relation-name="PicklistBin" list="picklistBinList" order-by-list="picklistBinOrderList"/>
        <iterate entry="picklistBin" list="picklistBinList">
            <clear-field field="picklistBinInfo"/>
            <get-related-one value-field="picklistBin" relation-name="PrimaryOrderHeader" to-value-field="picklistBinInfo.primaryOrderHeader"/>
            <get-related-one value-field="picklistBin" relation-name="PrimaryOrderItemShipGroup" to-value-field="picklistBinInfo.primaryOrderItemShipGroup"/>
            <get-related-one value-field="picklistBinInfo.primaryOrderHeader" relation-name="ProductStore" to-value-field="picklistBinInfo.productStore" />

            <clear-field field="picklistItemInfoList"/>
            <get-related value-field="picklistBin" relation-name="PicklistItem" list="picklistItemList" use-cache="true"/>
            <iterate entry="picklistItem" list="picklistItemList">
                <clear-field field="picklistItemInfo"/>
                <get-related-one value-field="picklistItem" relation-name="OrderItem" to-value-field="picklistItemInfo.orderItem"/>
                <get-related-one value-field="picklistItemInfo.orderItem" relation-name="Product" to-value-field="picklistItemInfo.product"/>
                <get-related-one value-field="picklistItem" relation-name="InventoryItemAndLocation" to-value-field="picklistItemInfo.inventoryItemAndLocation"/>
                <get-related-one value-field="picklistItem" relation-name="OrderItemShipGrpInvRes" to-value-field="picklistItemInfo.orderItemShipGrpInvRes"/>
                <get-related value-field="picklistItem" relation-name="ItemIssuance" list="picklistItemInfo.itemIssuanceList"/>
                <set from-field="picklistItem" field="picklistItemInfo.picklistItem"/>
                <set from-field="picklistBin" field="picklistItemInfo.picklistBin"/>
                <field-to-list field="picklistItemInfo" list="picklistItemInfoList"/>
            </iterate>
            <set from-field="picklistItemInfoList" field="picklistBinInfo.picklistItemInfoList"/>

            <set from-field="picklistBin" field="picklistBinInfo.picklistBin"/>
            <field-to-list field="picklistBinInfo" list="picklistBinInfoList"/>
        </iterate>

        <clear-field field="picklistInfo"/>
        <set from-field="picklist" field="picklistInfo.picklist"/>
        <set from-field="picklistRoleInfoList" field="picklistInfo.picklistRoleInfoList"/>
        <set from-field="picklistStatusHistoryInfoList" field="picklistInfo.picklistStatusHistoryInfoList"/>
        <set from-field="picklistBinInfoList" field="picklistInfo.picklistBinInfoList"/>
        <set value="sequenceId" field="orderBy" type="List"/>
        <get-related-one value-field="picklist" relation-name="StatusItem" to-value-field="picklistInfo.statusItem" use-cache="true"/>
        <get-related-one value-field="picklist" relation-name="Facility" to-value-field="picklistInfo.facility" use-cache="true"/>
        <get-related-one value-field="picklist" relation-name="ShipmentMethodType" to-value-field="picklistInfo.shipmentMethodType" use-cache="true"/>
        <get-related value-field="picklist" relation-name="StatusValidChangeToDetail" order-by-list="orderBy" list="picklistInfo.statusValidChangeToDetailList"/>
    </simple-method>


<!-- ================================================== -->
<!-- ================================================== -->
<!-- DEJ20050317 These methods are no longer used, but are here temporarily for reference. -->
<!-- ================================================== -->
<!-- ================================================== -->
    <simple-method method-name="getPicklistData" short-description="Get Picklist Data">
        <!--
            Parameters:
                facilityId
                shipmentMethodTypeId
                maxNumberOfOrders
            Returns:
                facilityLocationInfoList: List of Maps with facilityLocation, productInfoList, being a List of Maps with product, quantity, inventoryItemList, orderItemList
                inventoryItemInfoList: List of Maps with inventoryItem, facilityLocation, orderItems, product, statusItem, quantity
                orderHeaderInfoList: List of Maps with orderHeader, orderItemShipGroup and orderItemInfoList which is List of Maps with orderItem, product and orderItemShipGrpInvResList
                wrongQuantityReservedList: List of Maps with reservedQuantity and orderItem
                insufficientQohList: List of Maps with inventoryItem and quantityNeeded
        -->

        <check-permission permission="FACILITY" action="_VIEW">
            <fail-property resource="ProductUiLabels" property="ProductFacilityViewPermissionError"/>
        </check-permission>
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>
        <check-errors/>

        <now-timestamp field="nowTimestamp"/>

        <set-service-fields map="parameters" service-name="findOrdersToPickMove" to-map="findOrdersToPickMoveMap"/>
        <call-service service-name="findOrdersToPickMove" in-map-name="findOrdersToPickMoveMap">
            <result-to-field result-name="pickMoveInfoList"/>
        </call-service>

        <!-- This creates orderHeaderInfoList, wrongQuantityReservedList, insufficientQohList and inventoryItems, inventoryItemOrderItems, inventoryItemQuantities -->
        <call-simple-method method-name="assembleOrderHeaderInfoInline"/>

        <!-- This creates facilityLocationInfoList and inventoryItemInfoList -->
        <call-simple-method method-name="assembleFacilityLocationInfoInline"/>

        <field-to-result field="orderHeaderInfoList"/>
        <field-to-result field="wrongQuantityReservedList"/>
        <field-to-result field="insufficientQohList"/>

        <field-to-result field="facilityLocationInfoList"/>
        <field-to-result field="inventoryItemInfoList"/>
    </simple-method>
    <simple-method method-name="assembleFacilityLocationInfoInline" short-description="assembleFacilityLocationInfoInline">
        <!-- This uses inventoryItems, inventoryItemOrderItems, inventoryItemQuantities -->
        <!-- This creates facilityLocationInfoList and inventoryItemInfoList (and for internal use facilityLocationMap) -->

        <!-- go through all quantities and get inventoryItem and facilityLocation -->
        <iterate-map key="inventoryItemId" value="quantityNeeded" map="inventoryItemQuantities">
            <set from-field="inventoryItems[inventoryItemId]" field="inventoryItem"/>

            <!-- create a list of locations, then sort it, will have to create a reverse Map to go from location to inventory item -->
            <clear-field field="facilityLocation"/>
            <get-related-one value-field="inventoryItem" relation-name="FacilityLocation" to-value-field="facilityLocation"/>
            <if-not-empty field="facilityLocation">
                <set from-field="facilityLocation" field="facilityLocationMap[facilityLocation.locationSeqId]"/>
                <!-- support multiple invnetoryItemIds per facilityLocation.locationSeqId -->
                <clear-field field="inventoryItemIdList"/>
                <set from-field="inventoryItemsByLocation[facilityLocation.locationSeqId]" field="inventoryItemIdList"/>
                <set from-field="inventoryItemId" field="inventoryItemIdList[]"/>
                <set from-field="inventoryItemIdList" field="inventoryItemsByLocation[facilityLocation.locationSeqId]"/>
            <else>
                <set from-field="inventoryItemId" field="noLocationInventoryItemIds[]"/>
            </else>
            </if-not-empty>
        </iterate-map>

        <!-- make a facilityLocations List from the facilityLocationMap, which was used to guarantee uniqueness -->
        <iterate-map map="facilityLocationMap" key="locationSeqId" value="facilityLocation">
            <set from-field="facilityLocation" field="facilityLocations[]"/>
        </iterate-map>

        <!-- order the facilityLocations -->
        <set value="+areaId" field="facilityLocsOrdLst[]"/>
        <set value="+aisleId" field="facilityLocsOrdLst[]"/>
        <set value="+sectionId" field="facilityLocsOrdLst[]"/>
        <set value="+levelId" field="facilityLocsOrdLst[]"/>
        <set value="+positionId" field="facilityLocsOrdLst[]"/>
        <order-value-list list="facilityLocations" order-by-list="facilityLocsOrdLst"/>

        <!-- for each facility location add an entry to the inventoryItemInfoList -->
        <iterate entry="facilityLocation" list="facilityLocations">
            <!-- facilityLocationInfoList: facilityLocation, productInfoList (product, quantity, inventoryItemList, orderItemList) -->
            <clear-field field="facilityLocationInfo"/>
            <set from-field="facilityLocation" field="facilityLocationInfo.facilityLocation"/>

            <!-- inventoryItemInfoList: facilityLocation, inventoryItem, orderItems, quantity, product, statusItems -->
            <set from-field="inventoryItemsByLocation[facilityLocation.locationSeqId]" field="inventoryItemIdList"/>
            <iterate entry="inventoryItemId" list="inventoryItemIdList">
                <clear-field field="inventoryItemInfo"/>
                <set from-field="facilityLocation" field="inventoryItemInfo.facilityLocation"/>
                <set from-field="inventoryItems[inventoryItemId]" field="inventoryItemInfo.inventoryItem"/>
                <set from-field="inventoryItemOrderItems[inventoryItemId]" field="inventoryItemInfo.orderItems"/>
                <set from-field="inventoryItemQuantities[inventoryItemId]" field="inventoryItemInfo.quantity"/>
                <get-related-one value-field="inventoryItemInfo.inventoryItem" relation-name="Product" to-value-field="inventoryItemInfo.product"/>
                <get-related-one value-field="inventoryItemInfo.inventoryItem" relation-name="StatusItem" to-value-field="inventoryItemInfo.statusItem"/>

                <field-to-list field="inventoryItemInfo" list="inventoryItemInfoList"/>

                <!-- before destroying inventoryItemInfo, add info to the productInfoMap -->
                <set from-field="inventoryItemInfo.product" field="productInfoMap.${inventoryItemInfo.product.productId}.product"/>
                <calculate field="productInfoMap.${inventoryItemInfo.product.productId}.quantity">
                    <calcop field="productInfoMap.${inventoryItemInfo.product.productId}.quantity" operator="get"/>
                    <calcop field="inventoryItemInfo.quantity" operator="get"/>
                </calculate>
                <set from-field="inventoryItemInfo.inventoryItem" field="productInfoMap.${inventoryItemInfo.product.productId}.inventoryItemList[]"/>
                <!-- put orderItems in Map by orderId:orderItemSeqId to make sure they are unique -->
                <iterate entry="orderItem" list="inventoryItemInfo.orderItems">
                    <set from-field="orderItem" field="orderItemMap.${orderItem.orderId}:${orderItem.orderItemSeqId}"/>
                </iterate>
            </iterate>

            <iterate-map key="orderItemCompositeId" value="orderItem" map="orderItemMap">
                <set from-field="orderItem" field="productInfoMap.${orderItem.productId}.orderItemList[]"/>
            </iterate-map>

            <!-- move all values from productInfoMap to facilityLocationInfo.productInfoList -->
            <iterate-map key="productId" value="productInfo" map="productInfoMap">
                <set from-field="productInfo" field="facilityLocationInfo.productInfoList[]"/>
            </iterate-map>

            <set from-field="facilityLocationInfo" field="facilityLocationInfoList[]"/>
            <clear-field field="orderItemMap"/>
            <clear-field field="productInfoMap"/>
        </iterate>

        <!-- add all noLocationInventoryItemIds to inventoryItemInfoList with all entries except facilityLocation -->
        <iterate entry="inventoryItemId" list="noLocationInventoryItemIds">
            <set from-field="inventoryItems${inventoryItemId}" field="inventoryItemInfo.inventoryItem"/>
            <set from-field="inventoryItemOrderItems[inventoryItemId]" field="inventoryItemInfo.orderItems"/>
            <set from-field="inventoryItemQuantities[inventoryItemId]" field="inventoryItemInfo.quantity"/>
            <get-related-one value-field="inventoryItemInfo.inventoryItem" relation-name="Product" to-value-field="inventoryItemInfo.product"/>
            <get-related-one value-field="inventoryItemInfo.inventoryItem" relation-name="StatusItem" to-value-field="inventoryItemInfo.statusItem"/>

            <set from-field="inventoryItemInfo" field="inventoryItemInfoList[]"/>
            <clear-field field="inventoryItemInfo"/>
        </iterate>
    </simple-method>

    <!-- special method to check update the picklist status from the item status -->
    <simple-method method-name="checkPicklistBinItemStatuses" short-description="Checks the item status and updates the pick list status">
        <check-permission permission="FACILITY" action="_UPDATE">
            <fail-property resource="ProductUiLabels" property="ProductFacilityUpdatePermissionError"/>
        </check-permission>

        <!-- find the picklist bin -->
        <make-value value-field="binLookup" entity-name="PicklistBin"/>
        <set-pk-fields map="parameters" value-field="binLookup"/>
        <find-by-primary-key map="binLookup" value-field="picklistBin"/>

        <!-- find the pick list -->
        <make-value value-field="plLookup" entity-name="Picklist"/>
        <set-pk-fields map="picklistBin" value-field="plLookup"/>
        <find-by-primary-key map="plLookup" value-field="picklist"/>

        <!-- find all related picklist items -->
        <entity-and entity-name="PicklistItemAndBin" list="picklistItem">
            <field-map field-name="picklistId" from-field="picklist.picklistId"/>
        </entity-and>

        <set field="allCompleteOrCancelled" type="Boolean" value="true"/>
        <set field="allCancelled" type="Boolean" value="true"/>

        <!-- determine if all the items are completed and/or cancelled -->
        <iterate entry="item" list="picklistItem">
            <log level="info" message="checking status for item: ${item}"/>
            <if-compare field="item.itemStatusId" value="PICKITEM_CANCELLED" operator="not-equals">
                <log level="info" message="item is not cancelled; all cancelled set to false"/>
                <set field="allCancelled" type="Boolean" value="false"/>

                <if-compare field="item.itemStatusId" value="PICKITEM_COMPLETED" operator="not-equals">
                    <log level="info" message="item is not completed; all completed set to false"/>
                    <set field="allCompleteOrCancelled" type="Boolean" value="false"/>
                </if-compare>
            </if-compare>
        </iterate>

        <!-- update the picklist status -->
        <if-compare field="allCancelled" value="true" type="Boolean" operator="equals">
            <log level="info" message="Setting picklist #${picklist.picklistId} to cancelled"/>
            <set field="picklist.statusId" value="PICKLIST_CANCELLED"/>
            <store-value value-field="picklist"/>
        <else>
            <log level="info" message="Not all items were cancelled; now check if we can complete the picklist : ${allCompleteOrCancelled}"/>
            <if-compare field="allCompleteOrCancelled" value="true" type="Boolean" operator="equals">
                <log level="info" message="Setting picklist #${picklist.picklistId} to completed"/>
                <set field="picklist.statusId" value="PICKLIST_PICKED"/>
                <store-value value-field="picklist"/>
            </if-compare>
        </else>
        </if-compare>
    </simple-method>

    <simple-method method-name="cancelPicklistAndItems" short-description="If Picklist is Cancelled then cancel all the PicklistItem">
        <entity-and entity-name="PicklistBin" list="picklistBinList">
            <field-map field-name="picklistId" from-field="parameters.picklistId"/>
        </entity-and>
        <if-not-empty field="picklistBinList">
            <iterate entry="picklistBin" list="picklistBinList">
                <entity-and entity-name="PicklistItem" list="itemList">
                    <field-map field-name="picklistBinId" from-field="picklistBin.picklistBinId"/>
                </entity-and>
                <if-not-empty field="itemList">
                    <iterate entry="item" list="itemList">
                        <set field="item.itemStatusId" value="PICKITEM_CANCELLED"/>
                        <store-value value-field="item"/>
                    </iterate>
                </if-not-empty>
            </iterate>
        </if-not-empty>
    </simple-method>
</simple-methods>
