commitall
This commit is contained in:
254
account/application/views/accounts/pl_grouped.php
Normal file
254
account/application/views/accounts/pl_grouped.php
Normal file
@@ -0,0 +1,254 @@
|
||||
<?php
|
||||
$this->load->library("NewAcc");
|
||||
$Acc = new NewAcc();
|
||||
|
||||
$CI = &get_instance();
|
||||
$txt = "SELECT
|
||||
g.acgroup_id AS group_id,
|
||||
g.acgroup_name AS group_name,
|
||||
cp.accategory_id AS parent_id,
|
||||
cp.acgroup_id AS group_id,
|
||||
cp.accategory_name AS parent_category_name,
|
||||
cc.accategory_id AS child_id,
|
||||
cc.accategory_name AS child_category_name,
|
||||
ccc.accategory_id AS child_child_id,
|
||||
ccc.accategory_name AS child_child_category_name,
|
||||
a.account_id,
|
||||
a.account_name
|
||||
FROM tbl_acgroups g
|
||||
LEFT JOIN tbl_accategories cp ON g.acgroup_id = cp.acgroup_id AND cp.parent_category_id = 0
|
||||
LEFT JOIN tbl_accategories cc ON cp.accategory_id = cc.parent_category_id
|
||||
LEFT JOIN tbl_accategories ccc ON cc.accategory_id = ccc.parent_category_id
|
||||
LEFT JOIN tbl_accounts a ON ccc.accategory_id = a.accategory_id
|
||||
ORDER BY g.display_order, cp.accategory_id, cc.accategory_id, ccc.accategory_id;
|
||||
";
|
||||
$AccountTree = $CI->db->query($txt)->result();
|
||||
|
||||
function displayAccountTree($accountTree, $parentCategory = 0)
|
||||
{
|
||||
echo '<ul>';
|
||||
|
||||
foreach ($accountTree as $row) {
|
||||
if ($row->parent_id == $parentCategory) {
|
||||
echo '<li>';
|
||||
echo 'Category Name: ' . $row->parent_category_name;
|
||||
echo ' | Account Name: ' . $row->account_name;
|
||||
displayAccountTree($accountTree, $row->child_id);
|
||||
echo '</li>';
|
||||
}
|
||||
}
|
||||
|
||||
echo '</ul>';
|
||||
}
|
||||
|
||||
|
||||
$IncomeCategories = $Acc->getAccountCategories(3);
|
||||
|
||||
$IncomeAccounts = $this->acc->getAccountsByGroup(3);
|
||||
$ExpenseAccounts = $this->acc->getAccountsByGroup(4);
|
||||
$IncomesTotal = $this->acc->getAccountBalanceByGroup(3);
|
||||
$ExpensesTotal = $this->acc->getAccountBalanceByGroup(4);
|
||||
$PL = $IncomesTotal - $ExpensesTotal;
|
||||
|
||||
|
||||
?>
|
||||
<div class="content-wrapper">
|
||||
<div class="content-header">
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2">
|
||||
<div class="col-sm-6">
|
||||
<h1 class="m-0"><?php echo $pageTitle; ?></h1>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<ol class="breadcrumb float-sm-right">
|
||||
<li class="breadcrumb-item"><a href="<?php echo base_url(); ?>">Dashboard </a></li>
|
||||
<li class="breadcrumb-item active"><?php echo $pageTitle; ?></li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="content">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="card card-primary card-outline">
|
||||
<div class="card-header">
|
||||
<h5 class="m-0"><?php echo $pageTitle; ?> </h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<?php displayAccountTree($AccountTree); ?>
|
||||
<?php pre($AccountTree); ?>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="col-6">
|
||||
<div id="accordion">
|
||||
<?php displayCategories($IncomeCategories); ?>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
function displayCategories($categories, $level = 0)
|
||||
{
|
||||
$CI = &get_instance();
|
||||
$CI->load->library("NewAcc");
|
||||
$Acc = new NewAcc();
|
||||
echo '<div id="accordion_' . $level . '">';
|
||||
foreach ($categories as $category) {
|
||||
?>
|
||||
<div class="card">
|
||||
<div class="card-header" id="heading<?php echo $category->accategory_id; ?>_<?php echo $level; ?>">
|
||||
<h5 class="mb-0">
|
||||
<?php
|
||||
// Add column offset for child categories
|
||||
if ($level > 0) {
|
||||
echo '<div class="offset-1">';
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="row" data-toggle="collapse" data-target="#collapse<?php echo $category->accategory_id; ?>_<?php echo $level; ?>" aria-expanded="true" aria-controls="collapse<?php echo $category->accategory_id; ?>_<?php echo $level; ?>">
|
||||
<div class="col-6"><?php echo $category->accategory_name; ?></div>
|
||||
<div class="col-3"><?php echo myCurrency($category->dr); ?></div>
|
||||
<div class="col-3"><?php echo myCurrency($category->cr); ?></div>
|
||||
|
||||
</div>
|
||||
<?php
|
||||
if ($level > 0) {
|
||||
echo '</div>';
|
||||
}
|
||||
?>
|
||||
</h5>
|
||||
</div>
|
||||
<div id="collapse<?php echo $category->accategory_id; ?>_<?php echo $level; ?>" class="collapse show" aria-labelledby="heading<?php echo $category->accategory_id; ?>_<?php echo $level; ?>" data-parent="#accordion_<?php echo $level; ?>">
|
||||
<div class="card-body">
|
||||
|
||||
<?php
|
||||
$category->children = $Acc->getChildCategories($category->accategory_id);
|
||||
if (!empty($category->children)) {
|
||||
// Increase the level for child categories
|
||||
$childLevel = $level + 1;
|
||||
displayCategories($category->children, $childLevel);
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
|
||||
|
||||
?>
|
||||
</div>
|
||||
|
||||
<table class="table table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="4">Profit & Loss Statement</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="bg-dark">
|
||||
|
||||
<th>Incomes</th>
|
||||
<th>Amount</th>
|
||||
<th>Expenses</th>
|
||||
<th>Amount</th>
|
||||
</tr>
|
||||
|
||||
<tr class="bg-light">
|
||||
<td colspan="2">
|
||||
<?php showTable($IncomeAccounts); ?>
|
||||
</td>
|
||||
<td colspan="2">
|
||||
<?php showTable($ExpenseAccounts); ?>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
|
||||
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<?php if ($PL < 0) : ?>
|
||||
<tr class="bg-light">
|
||||
|
||||
<th>Net Loss:</th>
|
||||
<th><?php echo myCurrency($PL); ?></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
</tr>
|
||||
<?php else : ?>
|
||||
<tr class="bg-light">
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th>Net Profit:</th>
|
||||
<th><?php echo myCurrency($PL); ?></th>
|
||||
|
||||
</tr>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($PL < 0) : ?>
|
||||
<tr class="bg-light">
|
||||
|
||||
<th>Total Loss:</th>
|
||||
<th><?php echo myCurrency($PL + $IncomesTotal); ?></th>
|
||||
<th>Total: </th>
|
||||
<th><?php echo myCurrency($IncomesTotal); ?></th>
|
||||
</tr>
|
||||
<?php else : ?>
|
||||
<tr class="bg-light">
|
||||
<th>Total:</th>
|
||||
<th><?php echo myCurrency($IncomesTotal); ?></th>
|
||||
<th>Total:</th>
|
||||
<th><?php echo myCurrency($PL + $ExpensesTotal); ?></th>
|
||||
|
||||
</tr>
|
||||
<?php endif; ?>
|
||||
</tfoot>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
function showTable($Accounts)
|
||||
{
|
||||
$total = 0;
|
||||
?>
|
||||
<table class="table table-bordered table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Account</th>
|
||||
<th>Balance</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach ($Accounts as $Account) : $total += abs($Account->balance) ?>
|
||||
<tr>
|
||||
<td><?php echo $Account->account_name; ?></td>
|
||||
<td><?php echo myCurrency(abs($Account->balance)); ?></td>
|
||||
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
|
||||
</tbody>
|
||||
<!-- <tfoot>
|
||||
<tr>
|
||||
<th>Total</th>
|
||||
<th><?php echo myCurrency($total); ?></th>
|
||||
|
||||
</tr>
|
||||
</tfoot> -->
|
||||
</table>
|
||||
|
||||
<?php
|
||||
}
|
Reference in New Issue
Block a user