Fix QZ Tray library loading and add pairing keys API endpoint
- Fix QZ Tray library loading errors (net::ERR_NAME_NOT_RESOLVED) by switching from CDN to local static file - Add /labels/api/pairing-keys endpoint to fetch valid printer pairing keys - Update print_labels.html to use local js/qz-tray.js - Update print_lost_labels.html to use local js/qz-tray.js - Update print_lost_labels_new.html to use correct path js/qz-tray.js - Update fg_scan.html to use local js/qz-tray.js - API returns active pairing keys from qz_pairing_keys table for printer selection
This commit is contained in:
@@ -487,4 +487,39 @@ def api_generate_batch_pdf(order_id):
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"Error generating batch PDF: {e}")
|
||||
return jsonify({'error': str(e)}), 500
|
||||
|
||||
|
||||
@labels_bp.route('/api/pairing-keys', methods=['GET'], endpoint='api_pairing_keys')
|
||||
def api_pairing_keys():
|
||||
"""Get QZ Tray pairing keys for printer selection"""
|
||||
if 'user_id' not in session:
|
||||
return jsonify({'error': 'Unauthorized'}), 401
|
||||
|
||||
try:
|
||||
conn = get_db()
|
||||
cursor = conn.cursor()
|
||||
|
||||
cursor.execute("""
|
||||
SELECT id, printer_name, pairing_key, valid_until
|
||||
FROM qz_pairing_keys
|
||||
WHERE valid_until >= CURDATE()
|
||||
ORDER BY printer_name ASC
|
||||
""")
|
||||
|
||||
pairing_keys = []
|
||||
for row in cursor.fetchall():
|
||||
pairing_keys.append({
|
||||
'id': row[0],
|
||||
'printer_name': row[1],
|
||||
'pairing_key': row[2]
|
||||
})
|
||||
|
||||
cursor.close()
|
||||
|
||||
logger.info(f"Retrieved {len(pairing_keys)} valid pairing keys")
|
||||
return jsonify(pairing_keys), 200
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"Error fetching pairing keys: {e}")
|
||||
return jsonify({'error': str(e)}), 500
|
||||
Reference in New Issue
Block a user