From fbddbf25fa3503a333df14ee95a5ea5794765ef6 Mon Sep 17 00:00:00 2001 From: Travis Garrison Date: Wed, 22 Jul 2026 15:52:08 +0400 Subject: [PATCH] fix(sales): aggregate reference codes for multi-payment sales Use GROUP_CONCAT to combine multiple payment reference codes into a single comma-separated value, and group only by sale_id to correctly handle sales with multiple payment records. Signed-off-by: Travis Garrison --- app/Models/Sale.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Models/Sale.php b/app/Models/Sale.php index c62cd9c15..74112cdf0 100644 --- a/app/Models/Sale.php +++ b/app/Models/Sale.php @@ -1095,12 +1095,12 @@ class Sale extends Model SUM(CASE WHEN payments.cash_adjustment = 1 THEN payments.payment_amount ELSE 0 END) AS sale_cash_adjustment, SUM(payments.cash_refund) AS sale_cash_refund, GROUP_CONCAT(CONCAT(payments.payment_type, " ", (payments.payment_amount - payments.cash_refund)) SEPARATOR ", ") AS payment_type, - payments.reference_code AS reference_code + GROUP_CONCAT(payments.reference_code SEPARATOR ", ") AS reference_code FROM ' . $this->db->prefixTable('sales_payments') . ' AS payments INNER JOIN ' . $this->db->prefixTable('sales') . ' AS sales ON sales.sale_id = payments.sale_id WHERE ' . $where . ' - GROUP BY payments.sale_id, payments.reference_code + GROUP BY payments.sale_id )'; $this->db->query($sql);