// add/remove new spare to srs/pcv selecting list protected void AddSelectingSpare(int qtySRS, int qtyPCV, string litSpareNumber, string lbSpareNameVN, string lbSpareNameEN, string litModel, long warrTime, decimal warrLen, decimal labour, string hdManPower, decimal price, decimal newUnitPrice) { if (qtySRS > 0) { WarrantySpare item = new WarrantySpare(qtySRS, litSpareNumber, lbSpareNameVN, lbSpareNameEN, litModel, warrTime, warrLen, labour, hdManPower, price, newUnitPrice); AddSelectingSpareToList(Info.SelectingSRSSpares, item); } if (qtyPCV > 0) { WarrantySpare item = new WarrantySpare(qtyPCV, litSpareNumber, lbSpareNameVN, lbSpareNameEN, litModel, warrTime, warrLen, labour, hdManPower, price, newUnitPrice); AddSelectingSpareToList(Info.SelectingPCVSpares, item); } }
protected void AddSelectingSpareToList(List<WarrantySpare> list, WarrantySpare item) { WarrantySpare oldItem = list.SingleOrDefault(w => w.Partcode.Equals(item.Partcode, StringComparison.OrdinalIgnoreCase)); if (oldItem != null) { if (item.Quantity == 0) list.Remove(oldItem); else { oldItem.Quantity = item.Quantity; oldItem.Unitprice = item.Unitprice; oldItem.NewUnitPrice = item.NewUnitPrice; } } else if (item.Quantity > 0) { list.Add(item); } }