How hqzeeee/primeburger works
PrimeBurger IMS is a PHP/MySQL inventory application for owner and staff users. The main workflow is to authenticate, maintain categories, suppliers, and products, record stock movements, then monitor dashboard metrics and alerts or review reports and exports. Product codes and QR lookup support scanning physical stock; expiry classification and low-stock detection feed notifications. The graph reflects the documented page capabilities and the sampled controller, model, authentication, and notification code. Several page-to-model links are documented but their page implementations were not sampled, so those links show documented responsibility rather than inspected call sites.
Main entry points: UserModel.php User Model · ProductModel.php Product Model · Auth.php Session / RBAC · Model.php Model Base
Components 31
Access and Security
- Login Page
login.php - Auth Controller
app/controllers/AuthController.php - Session / RBAC
app/core/Auth.php - User Management
users.php - User Controller
app/controllers/UserController.php - User Model
app/models/UserModel.php
Inventory Operations
- Product Management
products.php - Product Controller
app/controllers/ProductController.php - Product Model
app/models/ProductModel.php - Stock Management
stock.php - Stock Controller
app/controllers/StockController.php - Transaction Model
app/models/InventoryTransactionModel.php - Settings
settings.php - Category Model
app/models/CategoryModel.php - Supplier Model
app/models/SupplierModel.php - QR Scanner
qr-scanner.php - QR Lookup API
api/qr-lookup.php
Monitoring and Reports
- Dashboard
dashboard.php - Notifications Page
notifications.php - Notification Service
app/services/NotificationService.php - Reports
reports.php - Report Model
app/models/ReportModel.php - Report Export
export.php
Application Foundation
- MySQL Inventory Store
database/schema.sql - Model Base
app/core/Model.php - PDO Connection
app/core/Database.php - Application Bootstrap
app/bootstrap.php - Activity Logger
app/services/ActivityLogger.php
Other components
- Owner / Staff
- Device Camera
- Browser Print
Connections 36
- Owner / Staff → Login Page: submits credentials
- Login Page → Auth Controller: handles login
- Auth Controller → Session / RBAC: attempts login
- Session / RBAC → User Model: looks up account
- Session / RBAC → User Model: updates login
- User Management → User Controller: manages accounts
- User Controller → User Model: creates / updates
- Product Management → Product Controller: writes product changes
- Product Management → Product Model: searches products
- Product Controller → Product Model: creates / updates
- Stock Management → Stock Controller: records movement
- Stock Controller → Transaction Model: records transaction
- Settings → User Model: changes own password
- Settings → Category Model: manages categories
- Settings → Supplier Model: manages suppliers
- QR Scanner → Device Camera: scans code
- QR Scanner → QR Lookup API: looks up code
- QR Lookup API → Product Model: finds QR match
- QR Lookup API → PDO Connection: fallback code lookup
- Dashboard → Product Model: loads metrics
- Dashboard → Notification Service: syncs alerts
- Notifications Page → Notification Service: syncs / lists alerts
- Notification Service → PDO Connection: reads / writes alerts
- Reports → Report Model: loads reports
- Reports → Report Export: requests export
- Reports → Browser Print: prints report
- Report Export → Report Model: loads report data
- Application Bootstrap → Session / RBAC: starts session
- Product Model → Model Base: uses queries
- Transaction Model → Model Base: uses queries
- User Model → Model Base: uses queries
- Model Base → PDO Connection: gets connection
- PDO Connection → MySQL Inventory Store: connects to
- User Controller → Activity Logger: logs changes
- Product Controller → Activity Logger: logs changes
- Stock Controller → Activity Logger: logs movement