public static function ProjectReport() { $project = Project::GetProject($_GET['sid']); //, $_GET['period'], $_GET['all'] echo ' <div class="logo"> <h5 style="margin-bottom:-15px;margin-top:0px;font-size:14px;">Date: ' . date('d/m/Y') . '</h5> <h4>' . $project->name . '</h4><h5>CLIENT: ' . $project->client->name . '</h5>'; /*if ($_GET['period'] != '' && $_GET['period'] ) { echo '<h5 style="margin-top:-10px">Period: '.$_GET['period'].'</h5>'; } */ echo '</div> <h5>PROJECT ACTIVITIES</h5> <table class="table table-bordered table-striped" style="text-align:center;margin-left:0;margin-right:0;width:760px;font-size:12px;"> <thead class="title"> <tr> <td>NO</td> <td>SERVICE</td> <td>TASK</td> <td>QTY</td> <td>DATE PROPOSED</td> <td>DATE EXECUTED</td> <td>STATUS</td> </tr> </thead> <tbody>'; $count = 1; foreach ($project->activities as $activity) { if ($activity->status == 0) { $status = '<td style="color: #027c97">SCHEDULED</td>'; } elseif ($activity->status == 1) { $status = '<td style="color: #e8e624">ON GOING</td>'; } elseif ($activity->status == 2) { $status = '<td style="color: #e81c34">STALLED</td>'; } elseif ($activity->status == 3) { $status = '<td style="color: #27c97b">COMPLETED</td>'; } elseif ($activity->status == 4) { $status = '<td style="color: #9c2488">SUSPENDED</td>'; } echo '<tr> <td>' . $count . '</td> <td>' . $activity->service . '</td> <td>' . $activity->task . '</td> <td>' . $activity->instances . '</td> <td>' . $activity->requestDate . '</td> <td>' . $activity->executionDate . '</td>' . $status . ' </tr>'; $count++; } echo '</tbody> </table>'; echo '<h5>QUOTED ITEMS</h5> <table class="table table-bordered table-striped" style="text-align:center;margin-left:0;margin-right:0;width:760px;font-size:12px;"> <thead class="title"> <tr> <td>NO</td> <td>SERVICE</td> <td>DESCRIPTION</td> <td>QTY</td> <td>UNIT PRICE</td> <td>VAT</td> <td>SUB-TOTAL</td> </tr> </thead> <tbody>'; $count = 1; $amount = 0.0; foreach ($project->quotations as $quote) { foreach ($quote->lineItems as $item) { echo '<tr> <td>' . $count . '</td> <td>' . $item->itemName . '</td> <td>' . $item->itemDesc . '</td> <td>' . $item->quantity . '</td> <td>' . $item->unitPrice . '</td> <td>' . $item->tax . '</td> <td><script>document.writeln((' . ($item->quantity * $item->unitPrice + $item->quantity * $item->unitPrice * $item->tax / 100) . ').formatMoney(2, \'.\', \',\'));</script></td> </tr>'; $count++; } $amount += $quote->total; } echo '</tbody> </table> <div class="logo"> <h5 style="margin: 5px 0 0 5px;float:right">Total Quoted: <b>Ksh. <script>document.writeln((' . $amount . ').formatMoney(2, \'.\', \',\'));</script></b></h5> </div>'; $invoices = SalesInvoice::GetProjectInvoices($_GET['sid'], $project->client); echo '<h5>INVOICED ITEMS</h5> <table class="table table-bordered table-striped" style="text-align:center;margin-left:0;margin-right:0;width:760px;font-size:12px;"> <thead class="title"> <tr> <td>NO</td> <td>DATE</td> <td>ITEM</td> <td>DESCRIPTION</td> <td>QTY</td> <td>UNIT PRICE</td> <td>VAT</td> <td>SUB-TOTAL</td> </tr> </thead> <tbody>'; $count = 1; $amount = 0.0; foreach ($invoices as $invoice) { foreach ($invoice->lineItems as $item) { echo '<tr> <td>' . $count . '</td> <td>' . $invoice->date . '</td> <td>' . $item->itemName . '</td> <td>' . $item->itemDesc . '</td> <td>' . $item->quantity . '</td> <td>' . $item->unitPrice . '</td> <td>' . $item->tax . '</td> <td><script>document.writeln((' . ($item->quantity * $item->unitPrice + $item->quantity * $item->unitPrice * $item->tax / 100) . ').formatMoney(2, \'.\', \',\'));</script></td> </tr>'; $count++; } $amount += $invoice->total->amount; } echo '</tbody> </table> <div class="logo"> <h5 style="margin: 5px 0 0 5px;float:right">Total Invoiced: <b>Ksh. <script>document.writeln((' . $amount . ').formatMoney(2, \'.\', \',\'));</script></b></h5> </div>'; $expenses = ExpenseVoucher::GetProjectVouchers($_GET['sid'], $project->client); echo '<h5>PROJECT EXPENSES</h5> <table class="table table-bordered table-striped" style="text-align:center;margin-left:0;margin-right:0;width:760px;font-size:12px;"> <thead class="title"> <tr> <td>NO</td> <td>DATE</td> <td>PARTY</td> <td>DESCRIPTION</td> <td>AMOUNT</td> </tr> </thead> <tbody>'; $count = 1; $amount = 0.0; foreach ($expenses as $expense) { foreach ($expense->items as $item) { echo '<tr> <td>' . $count . '</td> <td>' . $expense->date . '</td> <td>' . $item->claimant->name . '</td> <td>' . $item->description . '</td> <td><script>document.writeln((' . $item->adjusted . ').formatMoney(2, \'.\', \',\'));</script></td> </tr>'; $count++; $amount += $item->adjusted; } } echo '</tbody> </table> <div class="logo"> <h5 style="margin: 5px 0 0 5px;float:right">Total Expensed: <b>Ksh. <script>document.writeln((' . $amount . ').formatMoney(2, \'.\', \',\'));</script></b></h5> </div>'; $payments = ReceiptVoucher::GetProjectReceipts($_GET['sid']); echo '<h5>RECEIVED PAYMENTS</h5> <table class="table table-bordered table-striped" style="text-align:center;margin-left:0;margin-right:0;width:760px;font-size:12px;"> <thead class="title"> <tr> <td>REC. NO</td> <td>DATE</td> <td>AMOUNT</td> <td>VOUCHER</td> <td>DESCRIPTION</td> </tr> </thead> <tbody>'; $amount = 0.0; if (count($payments) > 0) { foreach ($payments as $payment) { echo '<tr> <td>' . $payment['id'] . '</td> <td>' . $payment['datetime'] . '</td> <td><script>document.writeln((' . $payment['amount'] . ').formatMoney(2, \'.\', \',\'));</script></td> <td>' . $payment['voucher_no'] . '</td> <td>' . $payment['description'] . '</td> </tr>'; $amount += $payment['amount']; } } echo '</tbody> </table> <div class="logo"> <h5 style="margin: 5px 0 0 5px;float:right">Total Received: <b>Ksh. <script>document.writeln((' . $amount . ').formatMoney(2, \'.\', \',\'));</script></b></h5> </div>'; }
public function getProjectExpenses($pid) { if ($this->validateAdmin()) { echo json_encode(ExpenseVoucher::GetProjectVouchers($pid)); } else { echo 0; } }