public void RollupLineItemsFromPurchaseOrder(PurchaseOrder order) { if (CartItems.Count > 0) { Scout.Core.UserInteraction.Dialog.ShowMessage("Sales Order already contains line items.", UserMessageType.Error); return; } foreach (PurchaseLineItem item in order.LineItems) { if (item.OutgoingPart != null) { SalesLineItem lineItem = GetLineByPart(item.OutgoingPart); if (lineItem != null) { lineItem.Quantity += item.Quantity; } else { lineItem = Scout.Core.Data.CreateEntity <SalesLineItem>(Session); lineItem.Part = item.OutgoingPart; lineItem.Quantity = item.Quantity; CartItems.Add(lineItem); } } } CopyCustomerInfoFromPurchaseOrder(order); }
public int GetOpenQty(SalesLineItem lineItem) { var openScheduled = lineItem.Schedules.Where(s => DateTime.Compare(s.ScheduledDate, DateTime.Now) <= 0) .Sum(s => s.Qty); return(openScheduled - lineItem.ProcessedQty); }
internal static ShippingLineSummary GetShippingSummaryForLine(SalesLineItem lineItem) { BinaryOperator op = new BinaryOperator("LineItem", lineItem); return(Repository .Get <ShippingLineSummary>(lineItem.Session) .ByCriteria(op)); }
public override void GetError() { m_error = ""; SalesLineItem lineItem = ShipmentIsAssociatedToLineItem(); if (lineItem == null) { return; } if (!LineItemIsShippable(lineItem)) { return; } if (!PartIsExpected()) { return; } if (UnitIsOnHold()) { return; } if (ExceedsLotQty()) { return; } if (ExceedsExpectedQty()) { return; } if (!DomainIsShippable()) { return; } if (!UnitIsIntheCorrectShippingDomain()) { return; } if (!UnitHasFinishedProcessing()) { return; } if (!UnitCompletedRequiredServiceRoute()) { return; } if (!UnitHasCorrectShopfloorProgram()) { return; } if (!UnitIsOnCorrectShopfloorline()) { return; } }
public override bool Equals(object obj) { SalesLineItem salesLineItem = obj as SalesLineItem; if (salesLineItem != null) { return (salesLineItem.Part.Equals(Part)); } return(false); }
private bool LineItemIsShippable(SalesLineItem lineItem) { var lineValidator = new SalesLineItemShipmentValidator(lineItem); if (!lineValidator.Validated()) { m_error = "Line item is not shippable"; return(false); } return(true); }