From 938427dace1a9622a55e3f81845fb82af697d001 Mon Sep 17 00:00:00 2001 From: Kamal Wickramanayake Date: Fri, 20 Mar 2026 22:48:14 +0530 Subject: Added 11-point-of-sale sample application --- oop/11-point-of-sale/docs/03-design.uxf | 71 +++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 oop/11-point-of-sale/docs/03-design.uxf (limited to 'oop/11-point-of-sale/docs/03-design.uxf') diff --git a/oop/11-point-of-sale/docs/03-design.uxf b/oop/11-point-of-sale/docs/03-design.uxf new file mode 100644 index 0000000..8eaee19 --- /dev/null +++ b/oop/11-point-of-sale/docs/03-design.uxf @@ -0,0 +1,71 @@ +10Space for diagram notesUMLClass88047013070Item +-- +-id: String +-name: String +-unitPrice: BigDecimalUMLClass880340130100LineItem +-- +itemId: String +itemName: String +quantity: int +unitPrice: BigDecimal +Relation94025040110lt=<<<<<- +m2=*10;10;10;90UMLClass860140180120Bill +-- +id: int +total: BigDecimal +tax: BigDecimal +cashByCustomer: BigDecimal +balance: BigDecimal +-- +addLineItem(lineItem: LineItem)UMLClass900010060Cashier +-- +name: String +id: StringRelation9405030110lt=<-10;10;10;90UMLClass2702010060TextUI +-- +-- +-printBill() ++start()UMLClass48020250140<<interface>> +PointOfSale +-- +-- +createNewBill(): Bill +addLineItem(itemId: String, quantity: int) +cashByCustomer(amount: String) +searchItems(q: String): ListsavBill() +saveBill() +finishBillSession()Relation3603014030lt=<-120;10;10;10UMLClass490420240120<<interface>> +BillManager +-- +-- +createNewBill():Bill +addLineItem(itemId: String, quantity: int) +cashByCustomer(amount: String) +saveBill() +finishBillSession()Relation60032030120lt=<-10;100;10;10UMLClass89064010030TaxCalculatorUMLClass0370370100<<interface>> +ItemManager +-- +-- +createItem(id: String, name: String, unitPrice: BigDecimal): Item +findById(id: String): Item +searchItems(q: String): ListRelation180250320140lt=<-10;120;10;10;300;10UMLClass480210250120PointOfSaleImpl +-- +-- +createNewBill(): Bill +addLineItem(itemId: String, quantity: int) +cashByCustomer(amount: String) +searchItems(q: String): List +saveBill() +finishBillSession()Relation6001503080lt=<<.10;10;10;60UMLClass490600240120BillManagerImpl +-- +- currentBill:Bill +-- +createNewBill():Bill +addLineItem(itemId: String, quantity: int) +cashByCustomer(amount: String) +saveBill() +finishBillSession()Relation6005303090lt=<<.10;10;10;70UMLClass050037080ItemManagerImpl +-- +-- +createItem(id: String, name: String, unitPrice: BigDecimal) +findById(id: String): Item +searchItems(q: String): ListRelation1804603060lt=<<.10;10;10;40Relation36438019060lt=<-10;10;170;10;170;40 \ No newline at end of file -- cgit v1.2.3