How padmanavamukhopadhyay/point-of-sale_inventory_system works
TillTrack is a single-store POS and inventory application with a server-side Vaadin UI and shared PostgreSQL stock. The main workflow is cashier login, item entry by scanner/search or phone scan, payment confirmation, sale creation, and receipt generation. Owner workflows cover catalog and stock management, sales history and reports, staff and store settings. The README documents these capabilities; relationships below are documentation-backed, since most implementation files were not sampled.
Main entry points: SaleService.java Checkout and sales · ui Vaadin application · SaleRepository.java Sales records · StockService.java Stock management
Components 21
Checkout experience
- Vaadin application
src/main/java/com/sensei/posinventorysystem/ui - Phone barcode scan
src/main/java/com/sensei/posinventorysystem/ui/ScanView.java - Login and access control
src/main/java/com/sensei/posinventorysystem/config/SecurityConfig.java
Sales and inventory
- Product catalog
src/main/java/com/sensei/posinventorysystem/product/ProductService.java - Category management
src/main/java/com/sensei/posinventorysystem/product/CategoryService.java - Stock management
src/main/java/com/sensei/posinventorysystem/inventory/StockService.java - Checkout and sales
src/main/java/com/sensei/posinventorysystem/sale/SaleService.java - Receipt PDF
src/main/java/com/sensei/posinventorysystem/sale/ReceiptPdfService.java - Sales history
src/main/java/com/sensei/posinventorysystem/sale/SalesHistoryService.java - Revenue and profit reports
src/main/java/com/sensei/posinventorysystem/report/ReportService.java - Stock report PDF
src/main/java/com/sensei/posinventorysystem/inventory/StockReportPdfService.java
Store administration
- Cashier accounts and attendance
src/main/java/com/sensei/posinventorysystem/user - LAN access links
src/main/java/com/sensei/posinventorysystem/settings/AccessLinkService.java - Store settings
src/main/java/com/sensei/posinventorysystem/settings/StoreSettingsService.java - Stock anomaly review
src/main/java/com/sensei/posinventorysystem/sale/SaleService.java
Persistence and operations
- Sales records
src/main/java/com/sensei/posinventorysystem/sale/SaleRepository.java - Database backups
src/main/java/com/sensei/posinventorysystem/backup/DatabaseBackupService.java - Windows desktop integration
src/main/java/com/sensei/posinventorysystem/desktop/DesktopIntegration.java - PostgreSQL
Other components
- Cashier
- Owner
Connections 28
- Cashier → Vaadin application: uses
README.md - Owner → Vaadin application: uses
README.md - Vaadin application → Login and access control: authenticates through
README.md - Cashier → Phone barcode scan: scans from phone
README.md - Phone barcode scan → Checkout and sales: adds scanned item
README.md - Vaadin application → Checkout and sales: supports checkout
README.md - Checkout and sales → Product catalog: looks up items
README.md - Checkout and sales → Sales records: creates sale
README.md - Checkout and sales → Stock management: updates shared stock
README.md - Checkout and sales → Receipt PDF: generates receipt
README.md - Owner → Product catalog: manages products
README.md - Owner → Category management: manages categories
README.md - Owner → Stock management: restocks and writes off
README.md - Owner → Stock report PDF: exports stock report
README.md - Owner → Sales history: reviews sales
README.md - Sales history → Sales records: reads sales
README.md - Owner → Revenue and profit reports: requests reports
README.md - Revenue and profit reports → Sales records: reads sales data
README.md - Owner → Cashier accounts and attendance: manages accounts
README.md - Owner → LAN access links: shares LAN access
README.md - Owner → Store settings: configures store
README.md - Checkout and sales → Stock anomaly review: logs stock shortfall
README.md - Owner → Stock anomaly review: reviews allowance
README.md - Store settings → PostgreSQL: persists settings
- Stock management → PostgreSQL: persists stock
- Sales records → PostgreSQL: stores sales
- Windows desktop integration → Database backups: triggers backups
README.md - Database backups → PostgreSQL: dumps database
README.md