From 0f5bafdf3e2c1eef052a59a5812f14a7ac210d71 Mon Sep 17 00:00:00 2001 From: Sampanna Rimal Date: Fri, 9 Aug 2024 17:57:49 +0545 Subject: [PATCH] byledger --- .../controllers/accounts/Reports.php | 2 +- .../views/accounts/balances/byledger.php | 133 ++++++++++++++++++ account/pdf/ledgers/ledger_30.wpdf | Bin 0 -> 17710 bytes 3 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 account/pdf/ledgers/ledger_30.wpdf diff --git a/account/application/controllers/accounts/Reports.php b/account/application/controllers/accounts/Reports.php index f6003ca..41df1a9 100644 --- a/account/application/controllers/accounts/Reports.php +++ b/account/application/controllers/accounts/Reports.php @@ -116,7 +116,7 @@ class Reports extends CI_Controller break; case 'balance_by_ledger': $accategory_id = 0; - $data['pageTitle'] = "Account Balances By Group"; + $data['pageTitle'] = "Account Balances By Ledgers"; if (isset($_GET['group'])) { $accategory_id = ($_GET['group']) ? $_GET['group'] : 0; } diff --git a/account/application/views/accounts/balances/byledger.php b/account/application/views/accounts/balances/byledger.php index e69de29..f5ee6cc 100644 --- a/account/application/views/accounts/balances/byledger.php +++ b/account/application/views/accounts/balances/byledger.php @@ -0,0 +1,133 @@ +acc->getAccountsByCategory($accategory_id); +$array = json_decode(json_encode($Accounts), true); +// print_r($array);die; +$tree = buildCategoryTree($array, false); +function buildCategoryTree($categories, $parent_id = 0, $showZero = true) +{ + $tree = array(); + foreach ($categories as $category) { + // print_r($category);die; + // print_r(myCurrency(getBalance($category['account_id'])));die; + $category['dr'] = getDrTotal('account_id'); + $category['cr'] = getCrTotal('account_id'); + if ($showZero && ($category['dr'] !== 0 || $category['cr'] !== 0)) { + $tree[] = $category; + } elseif (!$showZero && ($category['dr'] !== 0 && $category['cr'] !== 0)) { + $tree[] = $category; + } + } + + return $tree; +} +function displayCategoryTree($tree) +{ + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + $BalanceTotal = 0; + foreach ($tree as $category) { + echo ''; + echo ''; + echo ''; + echo ''; + $BalanceTotal += getBalance($category['account_id']); + echo ''; + if (isset($category['children']) && !empty($category['children'])) { + echo ''; + echo ''; + echo ''; + } + } + echo ''; + echo ''; + echo ""; + echo '
SnAccountBalance
' . $category['account_id'] . '' . $category['account_name'] . '' . myCurrency(getBalance($category['account_id'])) . '
'; + displayCategoryTree($category['children']); + echo '
Total" . myCurrency($BalanceTotal) . "
'; +} +$html = ""; +$html .= "
+
+
+
+
Ledger Details
+ +
+
+ Ledger Details Goes Here +
+ +
+
+
"; +$html .= ''; +echo $html; +?> + +
+
+
+ +
+
+
+
+
+
+
+ + + +
+
+
+
+
+
+
+ + +
+ diff --git a/account/pdf/ledgers/ledger_30.wpdf b/account/pdf/ledgers/ledger_30.wpdf new file mode 100644 index 0000000000000000000000000000000000000000..da22029a4abded7e5db3876d6038adb9ca41010f GIT binary patch literal 17710 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 literal 0 HcmV?d00001