Exemple #1
0
        private IPurchaseOrder GetOrder(OrderIdentifier identifier)
        {
            var order = m_purchaseOrderRepository.TryLoadOrderByOrderNumber(identifier.ErpOrderId);

            if (order == null)
            {
                order = m_database.New <IPurchaseOrder>();
            }
            else if (order.OrderHash == identifier.OrderHash)
            {
                m_stopMapping = true;
                Order         = order;
                return(null);
            }
            else
            {
                Order = order;
                OrderItemsToDelete.AddRange(Order.Items.Select(i => i.Id));
            }

            order.OrderNumber = identifier.ErpOrderId;
            Order             = order;

            return(Order);
        }
Exemple #2
0
        private IOrderItem GetOrderItem(string erpItemId)
        {
            var item = Order.Items.FirstOrDefault(i => i.ErpOrderItemId == erpItemId);

            if (item != null)
            {
                OrderItemsToDelete.Remove(item.Id);
            }
            else
            {
                item = m_database.New <IOrderItem>(i => i.ErpOrderItemId = erpItemId);
            }

            Items.Add(item);

            return(item);
        }