public override void AddRangeToItems(IEnumerable <DistributionProductShow> datas) { foreach (var data in datas) { if (data.Quantity > 0) { var item = GridDataItems.FirstOrDefault(o => o.ProductID == data.ProductID); if (item != null) { item.Quantity += data.Quantity; } else { GridDataItems.Add(data); } } } }
public BillStoringWhenReceivingVMBase(BillWithBrand bill) : base() { GridDataItems.Clear(); #if UniqueCode var ssdetails = BillStoringCannibalizeVM.GetSnapshotDetails(bill.Code); #endif var data = this.GetBillReceiveDetails(bill.ID); foreach (var o in data) { #if UniqueCode var temp = ssdetails.Where(u => u.ProductID == o.ProductID); foreach (var t in temp) { o.UniqueCodes.Add(t.UniqueCode); } #endif GridDataItems.Add(o); } }
public override void AddRangeToItems(IEnumerable <ProductForStoringWhenReceiving> datas) { foreach (var data in datas) { if (data.Quantity != 0) { var item = GridDataItems.FirstOrDefault(o => o.ProductID == data.ProductID); if (item != null) { item.ReceiveQuantity += data.Quantity; } else { data.ReceiveQuantity = data.Quantity; data.Quantity = 0; GridDataItems.Add(data); } } } }
public override void ProductCodeInput(string pcode, Action <IEnumerable <ProductForStoringWhenReceiving> > actionWhenMore) { if (GridDataItems.Count > 0) { if (TryReceiveProductOneByOne(pcode)) { return; } } var datas = this.GetProductForShow(pcode); if (datas != null && datas.Count > 0) { if (datas.Count == 1) { var item = GridDataItems.FirstOrDefault(o => o.ProductID == datas[0].ProductID); if (item != null) { item.ReceiveQuantity += 1; } else { datas[0].ReceiveQuantity = 1; GridDataItems.Add(datas[0]); } } else { if (actionWhenMore != null) { actionWhenMore(datas); } } } else { throw new Exception("没有相关成品信息."); } }