private void GetFulfillmentWarehouse()
        {
            foreach (OrderForm form in OrderGroup.OrderForms)
            {
                var deletedLineItems = new List <LineItem>();
                foreach (var shipment in form.Shipments.OfType <Shipment>())
                {
                    var warehouse = FulfillmentWarehouseProcessor.GetFulfillmentWarehouse(shipment);
                    foreach (var lineItem in Shipment.GetShipmentLineItems(shipment))
                    {
                        if (warehouse != null)
                        {
                            lineItem.InventoryStatus = (int)GetInventoryStatus(lineItem.Code, warehouse.Code);
                        }
                        else if (CatalogContext.Current.GetCatalogEntryDto(lineItem.Code, new CatalogEntryResponseGroup(CatalogEntryResponseGroup.ResponseGroup.Variations)) != null)
                        {
                            deletedLineItems.Add(lineItem);
                        }
                    }

                    if (warehouse != null)
                    {
                        shipment.WarehouseCode = warehouse.Code;
                    }
                }
                foreach (var lineItem in deletedLineItems)
                {
                    form.RemoveLineItemFromShipments(lineItem);
                    lineItem.Delete();
                }
            }
        }
        private void UpdateGiftLineItemWarehouse()
        {
            var warehouseCode = WarehouseRepository.GetDefaultWarehouse().Code;

            foreach (OrderForm orderForm in OrderGroup.OrderForms)
            {
                foreach (Shipment shipment in orderForm.Shipments)
                {
                    var fulfillmentWarehouse = FulfillmentWarehouseProcessor.GetFulfillmentWarehouse(shipment);
                    if (fulfillmentWarehouse != null)
                    {
                        warehouseCode = fulfillmentWarehouse.Code;
                    }

                    var giftItemCollection = Shipment.GetShipmentLineItems(shipment).Where(x => x.IsGift);
                    foreach (var giftItem in giftItemCollection)
                    {
                        giftItem.WarehouseCode = warehouseCode;
                    }
                }
            }
        }