How nimbalkar3735/dental-lab-pro works
Dental Lab Pro is a desktop dental-laboratory management application. Staff sign in, select or manage an account, create doctor-linked patient jobs with treatment items and pricing, track and edit orders, then issue bills of supply and record payments; reports summarize activity for viewing, export, and printing. Settings cover account preferences and database backup/restore. SQLite is split between a master user database and per-account databases. The tree and sampled code support these responsibilities, but not every screen-to-screen transition or DAO call is visible, so uncertain wiring is omitted.
Main entry points: MainController.java Main navigation · dao Data access · DatabaseManager.java Database connections · ReportsController.java Reports
Components 24
Application and navigation
- Application startup
src/main/java/com/dentallab/Launcher.java - JavaFX application
src/main/java/com/dentallab/MainApp.java - Main navigation
src/main/java/com/dentallab/controller/MainController.java - Dashboard
src/main/java/com/dentallab/controller/DashboardController.java
Lab operations
- Doctor records
src/main/java/com/dentallab/controller/DoctorsController.java - Create job
src/main/java/com/dentallab/controller/NewOrderController.java - Order tracking
src/main/java/com/dentallab/controller/OrdersController.java - Price settings
src/main/java/com/dentallab/controller/PriceSettingsController.java - Domain records
src/main/java/com/dentallab/model
Billing and reporting
- Account management
src/main/java/com/dentallab/controller/AccountsController.java - Bill of supply
src/main/java/com/dentallab/controller/BillOfSupplyController.java - Reports
src/main/java/com/dentallab/controller/ReportsController.java - Report export
src/main/java/com/dentallab/util/ReportExportService.java - Print utilities
src/main/java/com/dentallab/util/PrintUtil.java
Persistence and accounts
- Sign-in
src/main/java/com/dentallab/controller/LoginController.java - Database connections
src/main/java/com/dentallab/db/DatabaseManager.java - Database schema
src/main/java/com/dentallab/db/DatabaseInitializer.java - Data access
src/main/java/com/dentallab/dao - SQLite databases
Settings and backup
- Preferences
src/main/java/com/dentallab/controller/SettingsController.java - Backup and restore
src/main/java/com/dentallab/util/DatabaseBackupService.java - Scheduled backup
src/main/java/com/dentallab/util/AutoBackupService.java - Backup files
Other components
- Lab staff
Connections 36
- Lab staff → Application startup: starts
- Application startup → JavaFX application: launches
- JavaFX application → Main navigation: opens interface
- Lab staff → Sign-in: signs in
- Sign-in → Database connections: loads account
- Database connections → SQLite databases: connects
- Main navigation → Dashboard: shows
- Main navigation → Sign-in: opens
- Main navigation → Doctor records: opens
- Main navigation → Create job: opens
- Main navigation → Order tracking: opens
- Main navigation → Bill of supply: opens
- Main navigation → Account management: opens
- Main navigation → Reports: opens
- Main navigation → Preferences: opens
- Create job → Data access: reads prices; saves jobs
- Order tracking → Data access: loads and updates jobs
- Doctor records → Data access: manages doctors
- Price settings → Data access: manages pricing
- Bill of supply → Data access: loads delivered jobs
- Account management → Data access: records payments
- Reports → Data access: loads report data
- Data access → Database connections: queries account database
- Database schema → Database connections: initializes connections
- Database schema → SQLite databases: creates schema
- Data access → Domain records: maps records
- Reports → Report export: requests export
- Report export → SQLite databases: queries report data
- Report export → Backup files: writes exports
- Bill of supply → Print utilities: prints bill
- Reports → Print utilities: prints report
- Preferences → Backup and restore: restores backup
- Backup and restore → Database connections: checkpoints or reopens
- Backup and restore → Backup files: copies database
- Scheduled backup → Backup and restore: runs backup
- Scheduled backup → Database connections: reads backup settings