protected InventoryPickOrder CreateInventoryPickOrder(IInventoryPickOrderKey pickOrderKey, MovementOrderDTO order) { LoadCount.AddRead(EntityTypes.PickOrder); return new InventoryPickOrder { DateCreated = pickOrderKey.InventoryPickOrderKey_DateCreated, Sequence = pickOrderKey.InventoryPickOrderKey_Sequence, Items = CreateInventoryPickOrderItems(pickOrderKey, order).ToList() }; }
private IEnumerable<InventoryPickOrderItem> CreateInventoryPickOrderItems(IInventoryPickOrderKey pickOrderKey, MovementOrderDTO order) { var sequence = 0; foreach(var orderDetail in order.tblMoveOrderDetails) { LoadCount.AddRead(EntityTypes.PickOrderItem); var product = NewContextHelper.GetProduct(orderDetail.ProdID); if(product == null) { Log(new CallbackParameters(CallbackReason.OrderItemProductNotFound) { MovementOrder = order, MoveOrderDetail = orderDetail }); continue; } var packaging = NewContextHelper.GetPackagingProduct(orderDetail.PkgID); var treatment = NewContextHelper.GetInventoryTreatment(orderDetail.TrtmtID); Models.Company customer = null; if(!string.IsNullOrWhiteSpace(orderDetail.CustomerID)) { customer = NewContextHelper.GetCompany(orderDetail.CustomerID, CompanyType.Customer); if(customer == null) { Log(new CallbackParameters(CallbackReason.OrderItemCustomerNotFound) { MovementOrder = order, MoveOrderDetail = orderDetail }); continue; } } yield return new InventoryPickOrderItem { DateCreated = pickOrderKey.InventoryPickOrderKey_DateCreated, OrderSequence = pickOrderKey.InventoryPickOrderKey_Sequence, ItemSequence = ++sequence, ProductId = product.ProductKey.ProductKey_ProductId, PackagingProductId = packaging.Id, TreatmentId = treatment.Id, Quantity = (int)orderDetail.Quantity, CustomerId = customer == null ? (int?)null : customer.Id, CustomerLotCode = orderDetail.CustLot, CustomerProductCode = orderDetail.CustProductCode }; } }
internal static InventoryPickOrderItem SetOrder(this InventoryPickOrderItem item, IInventoryPickOrderKey pickOrderKey) { if (item == null) { throw new ArgumentNullException("item"); } if (pickOrderKey != null) { item.InventoryPickOrder = null; item.DateCreated = pickOrderKey.InventoryPickOrderKey_DateCreated; item.OrderSequence = pickOrderKey.InventoryPickOrderKey_Sequence; } return(item); }
public static Expression <Func <InventoryPickOrderItem, bool> > FilterByInventoryPickOrderKey(IInventoryPickOrderKey inventoryPickOrderKey) { return(i => i.DateCreated == inventoryPickOrderKey.InventoryPickOrderKey_DateCreated && i.OrderSequence == inventoryPickOrderKey.InventoryPickOrderKey_Sequence); }
public SalesOrderKey(IInventoryPickOrderKey inventoryPickOrderKey) : base(inventoryPickOrderKey.InventoryPickOrderKey_DateCreated, inventoryPickOrderKey.InventoryPickOrderKey_Sequence) { }