Files
dbois/application/models/projects/Invoices_model.php
T
2018-05-05 13:22:14 +02:00

57 lines
1.8 KiB
PHP

<?php
/**
* Created by Pensare Software.
* User: Theo Weijmer
* Date: 21/02/2018
* Time: 10:34
*/
class Invoices_model extends MY_Model {
protected $tablename = 'invoices';
public function getInvoicedPerYearPerProject( $projectID )
{
$this->sql = "
SELECT ROUND(COALESCE(SUM(invoiceamount), 0),0) AS invoiced, YEAR(invoicedate) AS invoiceyear
FROM invoices
WHERE project_id = {$projectID}
GROUP BY YEAR(invoicedate)
ORDER BY YEAR(invoicedate) ";
$invoiced = $this->get_query_result();
return $invoiced;
}
public function getOutstandingPerProject( $projectID )
{
$this->sql = "
SELECT (own_revenue + other_revenue) AS totalrevenue,
ROUND(SUM(INV.invoiceamount * ((100 + vatrate) / 100)), 0) AS totalinvoiced,
(
SELECT SUM(paymentamount) PAYMENTAMOUNT
FROM payments PAY
JOIN invoices INV
ON INV.id = PAY.invoice_id
WHERE INV.project_id = {$projectID}
) AS payed
FROM invoices INV
JOIN projects PRJ
ON PRJ.id = INV.project_id
JOIN (
SELECT vatrate, id
FROM vats
WHERE active = 'T'
AND archive = 'F'
) VTS
ON VTS.id = INV.vat_id
JOIN offers OFF
ON PRJ.id = OFF.project_id
WHERE PRJ.id = {$projectID} ";
$invoiceDetails = $this->get_query_row();
return $invoiceDetails;
}
}