44 lines
1.7 KiB
PHP
44 lines
1.7 KiB
PHP
<?php
|
|
/**
|
|
* Created by Pensare Software.
|
|
* User: Theo Weijmer
|
|
* Date: 07/03/2018
|
|
* Time: 15:31
|
|
*/
|
|
|
|
class QinvoiceMonthOverview {
|
|
|
|
public static function fire( $projectID, $year )
|
|
{
|
|
$sql = "SELECT MNT.id,
|
|
month,
|
|
COALESCE(forecastamount, 0) AS forecastamount,
|
|
COALESCE(paymentamount, 0) AS paymentamount
|
|
FROM months MNT
|
|
LEFT JOIN (
|
|
SELECT SUM(forecastamount) AS forecastamount, month_id
|
|
FROM forecasts
|
|
WHERE project_id = {$projectID}
|
|
AND `year` = {$year}
|
|
GROUP BY month_id
|
|
) AS FCT
|
|
ON MNT.id = FCT.month_id + 1
|
|
LEFT JOIN (
|
|
SELECT SUM(paymentamount) AS paymentamount, MONTH(paymentdate) AS month_id
|
|
FROM payments PAY
|
|
JOIN invoices INV
|
|
ON INV.id = PAY.invoice_id
|
|
WHERE INV.project_id = {$projectID}
|
|
AND YEAR(paymentdate) = {$year}
|
|
GROUP BY month_id
|
|
) AS PAY
|
|
ON MNT.id = PAY.month_id
|
|
LEFT JOIN projects PRJ
|
|
GROUP BY MNT.id
|
|
ORDER BY MNT.id ";
|
|
|
|
return $sql;
|
|
}
|
|
|
|
}
|