feat: Migrate label printing module from legacy app
- Created labels module with complete structure in app/modules/labels/ - Implemented print_module.py with database functions: * get_unprinted_orders_data() - Retrieve unprinted orders from database * get_printed_orders_data() - Retrieve printed orders from database * update_order_printed_status() - Mark orders as printed * search_orders_by_cp_code() - Search orders by production code - Created routes.py with Flask Blueprint and API endpoints: * GET /labels/ - Module home page with feature launchers * GET /labels/print-module - Main label printing interface * GET /labels/print-lost-labels - Lost label reprinting interface * GET /labels/api/unprinted-orders - API for unprinted orders * GET /labels/api/printed-orders - API for printed orders * POST /labels/api/search-orders - Search orders API * POST /labels/api/update-printed-status/<id> - Update status API - Migrated HTML templates from legacy app with theme support: * print_module.html - Thermal label printing with QZ Tray integration * print_lost_labels.html - Lost label search and reprint interface * Added comprehensive CSS variables for dark/light mode theming * Preserved all original JavaScript functionality for printing - Created index.html module home page with feature launchers - Registered labels blueprint in app/__init__.py with /labels prefix - Added 'Label Printing' module card to dashboard with print icon All functionality preserved from original implementation: - QZ Tray thermal printer integration - JsBarcode barcode generation (horizontal + vertical) - PDF export fallback - Session-based authentication for all routes - Database integration with proper error handling
This commit is contained in:
@@ -86,6 +86,13 @@ def dashboard():
|
||||
'color': 'info',
|
||||
'url': url_for('warehouse.warehouse_index')
|
||||
},
|
||||
{
|
||||
'name': 'Label Printing',
|
||||
'description': 'Print and manage thermal labels for orders',
|
||||
'icon': 'fa-print',
|
||||
'color': 'success',
|
||||
'url': url_for('labels.labels_index')
|
||||
},
|
||||
{
|
||||
'name': 'Settings',
|
||||
'description': 'Configure application settings',
|
||||
|
||||
Reference in New Issue
Block a user