summaryrefslogtreecommitdiff
path: root/oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java
blob: dfac6e14157d12b0504de838406ea27705bad658 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package lk.ac.pdn.ceit.pos;

import lk.ac.pdn.ceit.pos.entities.Bill;
import lk.ac.pdn.ceit.pos.entities.Item;
import lk.ac.pdn.ceit.pos.entities.LineItem;
import lk.ac.pdn.ceit.pos.item.ItemManager;

public class PointOfSale {

    private ItemManager itemManager;

    private Bill bill;

    public PointOfSale(ItemManager itemManager) {
        this.itemManager = itemManager;
    }

    public Bill createNewBill() {
        bill = new Bill();
        return bill;
    }

    public void addLineItem(String itemId, int quantity) {
        // From the ItemManager, get the Item.
        Item item = itemManager.findById(itemId);

        // Create a new LineItem and associate it with the item returned
        LineItem lineItem = new LineItem(item, quantity);
        
        // Add the new LineItem to the bill
        bill.getLineItems().add(lineItem);
    }
}