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, END) as amount,
IFNULL(expenses.currency_id, :company_currency) as currency_id IFNULL(expenses.currency_id, :company_currency) as currency_id
FROM expenses 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 WHERE expenses.is_deleted = 0
AND expenses.company_id = :company_id AND expenses.company_id = :company_id
AND (expenses.date BETWEEN :start_date AND :end_date) AND (expenses.date BETWEEN :start_date AND :end_date)
{$user_filter} {$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 GROUP BY currency_id
", ['company_currency' => $this->company->settings->currency_id, 'company_id' => $this->company->id, 'start_date' => $start_date, 'end_date' => $end_date]); ", ['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 END
) AS amount ) AS amount
FROM expenses 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 WHERE expenses.is_deleted = 0
AND expenses.company_id = :company_id AND expenses.company_id = :company_id
AND (expenses.date BETWEEN :start_date AND :end_date) AND (expenses.date BETWEEN :start_date AND :end_date)
{$user_filter} {$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]); ", ['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, ) AS total,
expenses.date expenses.date
FROM expenses 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) WHERE (expenses.date BETWEEN :start_date AND :end_date)
AND expenses.company_id = :company_id AND expenses.company_id = :company_id
AND expenses.is_deleted = 0 AND expenses.is_deleted = 0
{$user_filter} {$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 GROUP BY expenses.date
", [ ", [
'company_currency' => $this->company->settings->currency_id, 'company_currency' => $this->company->settings->currency_id,
@ -164,10 +182,16 @@ trait ChartQueries
) as total, ) as total,
expenses.date expenses.date
FROM expenses 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) WHERE (expenses.date BETWEEN :start_date AND :end_date)
AND expenses.company_id = :company_id AND expenses.company_id = :company_id
AND expenses.is_deleted = 0 AND expenses.is_deleted = 0
{$user_filter} {$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 AND IFNULL(expenses.currency_id, :company_currency) = :currency_id
GROUP BY expenses.date GROUP BY expenses.date
", [ ", [