GetPosDashboardQuery payment breakdown SQL was grouping by order_statuses.name (e.g. "Completed") instead of orders.payment_method (e.g. "cash", "card", "qr", "transfer"). Fix: GROUP BY o.payment_method with COALESCE for empty values. Frontend: apply MapPaymentMethodLabel() to translate method names to Vietnamese (Tiền mặt, Thẻ, Mã QR, Chuyển khoản). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>