Fixes for chart queries

This commit is contained in:
David Bomba 2025-09-02 23:35:27 +10:00
parent d7ddbda9eb
commit c8032c834e
1 changed files with 43 additions and 19 deletions

View File

@ -41,10 +41,16 @@ trait ChartQueries
END) as amount,
IFNULL(expenses.currency_id, :company_currency) as currency_id
FROM expenses
LEFT JOIN clients
ON clients.id = expenses.client_id
LEFT JOIN vendors
ON vendors.id = expenses.vendor_id
WHERE expenses.is_deleted = 0
AND expenses.company_id = :company_id
AND (expenses.date BETWEEN :start_date AND :end_date)
{$user_filter}
AND (clients.id IS NULL OR clients.is_deleted = 0)
AND (vendors.id IS NULL OR vendors.is_deleted = 0)
GROUP BY currency_id
", ['company_currency' => $this->company->settings->currency_id, 'company_id' => $this->company->id, 'start_date' => $start_date, 'end_date' => $end_date]);
}
@ -84,10 +90,16 @@ trait ChartQueries
END
) AS amount
FROM expenses
LEFT JOIN clients
ON clients.id = expenses.client_id
LEFT JOIN vendors
ON vendors.id = expenses.vendor_id
WHERE expenses.is_deleted = 0
AND expenses.company_id = :company_id
AND (expenses.date BETWEEN :start_date AND :end_date)
{$user_filter}
AND (clients.id IS NULL OR clients.is_deleted = 0)
AND (vendors.id IS NULL OR vendors.is_deleted = 0)
", ['company_currency' => $this->company->settings->currency_id, 'company_id' => $this->company->id, 'start_date' => $start_date, 'end_date' => $end_date]);
}
@ -128,10 +140,16 @@ trait ChartQueries
) AS total,
expenses.date
FROM expenses
LEFT JOIN clients
ON clients.id = expenses.client_id
LEFT JOIN vendors
ON vendors.id = expenses.vendor_id
WHERE (expenses.date BETWEEN :start_date AND :end_date)
AND expenses.company_id = :company_id
AND expenses.is_deleted = 0
{$user_filter}
AND (clients.id IS NULL OR clients.is_deleted = 0)
AND (vendors.id IS NULL OR vendors.is_deleted = 0)
GROUP BY expenses.date
", [
'company_currency' => $this->company->settings->currency_id,
@ -164,10 +182,16 @@ trait ChartQueries
) as total,
expenses.date
FROM expenses
LEFT JOIN clients
ON clients.id = expenses.client_id
LEFT JOIN vendors
ON vendors.id = expenses.vendor_id
WHERE (expenses.date BETWEEN :start_date AND :end_date)
AND expenses.company_id = :company_id
AND expenses.is_deleted = 0
{$user_filter}
AND (clients.id IS NULL OR clients.is_deleted = 0)
AND (vendors.id IS NULL OR vendors.is_deleted = 0)
AND IFNULL(expenses.currency_id, :company_currency) = :currency_id
GROUP BY expenses.date
", [