- Added @point-of-sale/receipt-printer-encoder dependency to package.json.
- Implemented useThermalPrinter hook for managing Bluetooth and USB printer connections.
- Created encodeOrderReceipt function to format receipt data for printing.
- Enhanced TransactionIndex component to include printer connection options and receipt printing functionality.
- Added dropdown menu for selecting printer connection type (Bluetooth/USB) and printing receipt options (58mm/80mm).
- Updated TransactionCardRow to include print receipt actions.
- Defined TypeScript types for receipt printer encoder and web Bluetooth/USB APIs.
- Configured Vite to optimize dependencies for receipt printer encoder.
- Refactored the dashboard component to include attendance, revenue, and expense summaries.
- Added donut charts for order statistics by channel, payment type, marketing, and status.
- Implemented a greeting message based on the current time and user information.
- Updated routing to use DashboardController for the dashboard view.
- Introduced a new AnalysisController for future analysis features.
- Implement tests to ensure job skips execution on weekends, when penalties are zero, or when no payroll period exists.
- Validate late penalty creation for late check-ins and ensure no penalties for on-time or early check-ins.
- Test absent penalties for employees without attendance records.
- Ensure no duplicate penalties are created and that payroll recalculations are accurate after penalties are applied.
- Handle multiple employees and edge cases, including employees without associated users.
- Verify that the job can be dispatched to the queue and has the correct retry configuration.