CloverExamplePOS.POSOrder.AddItem C# (CSharp) Method

AddItem() public method

manages adding a POSItem to an order. If the POSItem already exists, the quantity is just incremented
public AddItem ( POSItem i, int quantity ) : POSLineItem
i POSItem
quantity int
return POSLineItem
        public POSLineItem AddItem(POSItem i, int quantity)
        {
            bool exists = false;
            POSLineItem targetItem = null;
            foreach(POSLineItem lineI in Items)
            {
                if(lineI.Item.ID == i.ID)
                {
                    exists = true;
                    lineI.Quantity += quantity;
                    targetItem = lineI;
                    break;
                }
            }
            if(!exists)
            {
                POSLineItem li = new POSLineItem();
                li.Quantity = quantity;
                li.Item = i;
                targetItem = li;
                Items.Add(li);
            }
            onOrderChange(this, OrderChangeTarget.ITEM);
            return targetItem;
        }