From 11d647bd802e014bc941ebda7889fe9978807478 Mon Sep 17 00:00:00 2001 From: Kamal Wickramanayake Date: Sun, 15 Mar 2026 15:41:09 +0530 Subject: Added Bill, PointOfSale, LineItem to OOP sample application --- .../src/lk/ac/pdn/ceit/pos/PointOfSale.java | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java (limited to 'oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java') diff --git a/oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java b/oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java new file mode 100644 index 0000000..990a635 --- /dev/null +++ b/oop/10-point-of-sale/src/lk/ac/pdn/ceit/pos/PointOfSale.java @@ -0,0 +1,29 @@ +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 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); + } +} -- cgit v1.2.3