Bills Orders System OOP Design - hmislk/hmis GitHub Wiki
Overview
This section outlines the Object-Oriented Design for the Bills/Orders system component of CareCode Health Management Information System (HMIS). The design focuses on encapsulating entities like bills, items, fees, and services into a structured and modular format, enabling efficient management and scalability.
Entities and Their Relationships
-
Bill Attributes: billID, billDate, totalAmount, status, patient, etc. Methods: calculateTotal(), etc.
-
BillItem Attributes: item, quantity, price, etc. Relationships: Linked to Item (Investigation/Service). Methods: calculateItemTotal(), etc.
-
BillFees Attributes: fee, type (e.g., institution, facility use), amount, etc. Methods: getFeeDetails(), etc.
-
BillComponents This is a composite entity encapsulating different aspects of a bill.
-
BillPayments paymentID, amount, paymentMethod, date, etc.
-
BillSessions: sessionID, sessionType, duration,
-
BillExpenses: expenseID, description, amount, etc.
-
Item Attributes: itemID, name, code, category (Investigation/Service), etc.
Subclasses: Investigation: specificAttributes (e.g., labTestType) Services: specificAttributes (e.g., serviceType) InpatientService: additionalAttributes (e.g., roomType) TheatreService: additionalAttributes (e.g., equipmentUsed) PharmaceuticalItem: additionalAttributes (e.g., dosageForm)