{{-- Second Table --}} @if (empty($config) || $config['note2'] == true) @if ($filBranch == null || $filBranch == 1)
@if ($printLayer == 1) @php $grand_recPrin = 0; $grand_recSc = 0; $grand_recTotal = 0; $grand_paidPrin = 0; $grand_paidSc = 0; $grand_outstanding = 0; $grand_duePrin = 0; $grand_dueSc = 0; $grand_prinNextPayable = 0; $grand_scNextPayable = 0; $totalColspan = 3; @endphp @foreach ($fundLoanOrgs as $fundLoanOrg) @php $fundStart = 1; $fund_recPrin = 0; $fund_recSc = 0; $fund_recTotal = 0; $fund_paidPrin = 0; $fund_paidSc = 0; $fund_outstanding = 0; $fund_duePrin = 0; $fund_dueSc = 0; $fund_prinNextPayable = 0; $fund_scNextPayable = 0; $fundLoanProducts = $gnrLoanProducts->whereIn( 'id', $fundAccountsData ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ->merge( $fundAccountsOpening ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ) ); $fundlayer1 = array_filter($layer1, function($value) use($fundLoanOrg) { return in_array($fundLoanOrg->id,json_decode($value->fund_ids)); }); @endphp @foreach ( $fundLoanOrg->id == 1 ? $fundlayer1 : $fundLoanProducts as $key => $fundProducts) {{-- changed on 25/2/2024... will follow the "mfn_pksf_loan_product_layers" table. --}} @php $fundProductIds = $fundLoanOrg->id == 1 ? explode(',',$fundProducts->fund_product_ids) : [$fundProducts->id] ; empty($fundProductIds) ?? $fundProductIds = [0]; $recPrin = $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanAmount'); $loanInterestAmt = $loanIntInfo ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanInterestAmt'); if ($fundLoanOrg->id == 1) { $recSc = $loanInterestAmt; } else { $recSc = $loanInterestAmt + $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest'); } $recTotal = $recPrin + $recSc; $paidSc = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount') + $loanInterestAmt; if ($fundLoanOrg->id == 1) { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); } else { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount') - $paidSc; } $outstanding = $recPrin - $paidPrin; $duePrin = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payablePrincipal') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); $dueSc = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount'); if ($duePrin < 0) { $duePrin = 0; } if ($dueSc < 0) { $duePrin = 0; } $prinNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('principalAmount'); if(date('Y-m-d', strtotime($filDate)) > date('Y-m-d',strtotime("2024-02-01"))) if($prinNextPayable > $outstanding) $prinNextPayable = $outstanding; $scNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('interestAmount'); // $rowspan = $fundLoanOrg->id == 1 ? sizeof($fundlayer1) : sizeof($fundLoanProducts); @endphp id != 1 && $printLayer == 1) style = "display:none" @endif> @if ($fundStart == 1) @endif @php // $showTotal ++; // $l2Start++; $fundStart++; @endphp @php $fund_recPrin += $recPrin; $fund_recSc += $recSc; $fund_recTotal += $recTotal; $fund_paidPrin += $paidPrin; $fund_paidSc += $paidSc; $fund_outstanding += $outstanding; $fund_duePrin += $duePrin; $fund_dueSc += $dueSc; $fund_prinNextPayable += $prinNextPayable; $fund_scNextPayable += $scNextPayable; @endphp @endforeach @php $grand_recPrin += $fund_recPrin; $grand_recSc += $fund_recSc; $grand_recTotal += $fund_recTotal; $grand_paidPrin += $fund_paidPrin; $grand_paidSc += $fund_paidSc; $grand_outstanding += $fund_outstanding; $grand_duePrin += $fund_duePrin; $grand_dueSc += $fund_dueSc; $grand_prinNextPayable += $fund_prinNextPayable; $grand_scNextPayable += $fund_scNextPayable; @endphp @if ($printLayer == 1 && $fundLoanOrg->id != 1 ) @endif @if (count($fundLoanOrgs) > 1) @endif @endforeach
Note-2 (Layer-1)
Sl Fund Account Cumulative Receive Cumulative Payment Current Outstanding End of the Month Due Next 12 month Payable Amount
Principle Service Charge Total Principle Service Charge Principle Service Charge Principle Service Charge
Note-2 ({{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }})
{{ $fundLoanOrg->id == 1 ? $fundProducts->sl_code : $loop->iteration }} {{ $fundProducts->name }} {{ num($recPrin, $filRoundUup) }} {{ num($recSc, $filRoundUup) }} {{ num($recTotal, $filRoundUup) }} {{ num($paidPrin, $filRoundUup) }} {{ num($paidSc, $filRoundUup) }} {{ num($outstanding, $filRoundUup) }} {{ num($duePrin, $filRoundUup) }} {{ num($dueSc, $filRoundUup) }} {{ num($prinNextPayable, $filRoundUup) }} {{ num($scNextPayable, $filRoundUup) }}
Bank Fund {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Total {{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }} {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Grand Total {{ num($grand_recPrin, $filRoundUup) }} {{ num($grand_recSc, $filRoundUup) }} {{ num($grand_recTotal, $filRoundUup) }} {{ num($grand_paidPrin, $filRoundUup) }} {{ num($grand_paidSc, $filRoundUup) }} {{ num($grand_outstanding, $filRoundUup) }} {{ num($grand_duePrin, $filRoundUup) }} {{ num($grand_dueSc, $filRoundUup) }} {{ num($grand_prinNextPayable, $filRoundUup) }} {{ num($grand_scNextPayable, $filRoundUup) }}
@endif @if ($printLayer == 2) @php $grand_recPrin = 0; $grand_recSc = 0; $grand_recTotal = 0; $grand_paidPrin = 0; $grand_paidSc = 0; $grand_outstanding = 0; $grand_duePrin = 0; $grand_dueSc = 0; $grand_prinNextPayable = 0; $grand_scNextPayable = 0; $totalColspan = 3; if ($printLayer == 2 || $printLayer == 3) { $totalColspan= 5 ; } @endphp @foreach ($fundLoanOrgs as $fundLoanOrg) @php $fundStart = 1; $fund_recPrin = 0; $fund_recSc = 0; $fund_recTotal = 0; $fund_paidPrin = 0; $fund_paidSc = 0; $fund_outstanding = 0; $fund_duePrin = 0; $fund_dueSc = 0; $fund_prinNextPayable = 0; $fund_scNextPayable = 0; $fundLoanProducts = $gnrLoanProducts->whereIn( 'id', $fundAccountsData ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ->merge( $fundAccountsOpening ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ) ); $fundlayer1 = array_filter($layer1, function($value) use($fundLoanOrg) { return in_array($fundLoanOrg->id,json_decode($value->fund_ids)); }); @endphp @foreach ( $fundLoanOrg->id == 1 ? $fundlayer1 : $fundLoanProducts as $key => $fundProducts) @if (isset($layer2[$fundProducts->id]) && $fundLoanOrg->id == 1) @php $showTotal = 1; $l2Start = 1; $fundlayers2 = array_filter($layer2[$fundProducts->id], function($value) use($fundLoanOrg) { return in_array($fundLoanOrg->id,json_decode($value->fund_ids)); }); $rowspan = count($fundlayers2); @endphp @foreach ($fundlayers2 as $item2) @php $fundProductIds = $fundLoanOrg->id == 1 ? explode(',',$item2->fund_product_ids) : [$item2->id] ; empty($fundProductIds) ?? $fundProductIds = [0]; $recPrin = $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanAmount'); $loanInterestAmt = $loanIntInfo ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanInterestAmt'); if ($fundLoanOrg->id == 1) { $recSc = $loanInterestAmt; } else { $recSc = $loanInterestAmt + $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest'); } $recTotal = $recPrin + $recSc; $paidSc = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount') + $loanInterestAmt; if ($fundLoanOrg->id == 1) { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); } else { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount') - $paidSc; } $outstanding = $recPrin - $paidPrin; $duePrin = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payablePrincipal') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); $dueSc = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount'); if ($duePrin < 0) { $duePrin = 0; } if ($dueSc < 0) { $duePrin = 0; } $prinNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('principalAmount'); $scNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('interestAmount'); // $rowspan = $fundLoanOrg->id == 1 ? sizeof($fundlayer1) : sizeof($fundLoanProducts); @endphp id != 1 && $printLayer == 1) style = "display:none" @endif> @if ($fundStart == 1) @endif @if ($l2Start == 1 && $fundLoanOrg->id == 1) @endif @php $showTotal ++; $l2Start++; $fundStart++; @endphp @php $fund_recPrin += $recPrin; $fund_recSc += $recSc; $fund_recTotal += $recTotal; $fund_paidPrin += $paidPrin; $fund_paidSc += $paidSc; $fund_outstanding += $outstanding; $fund_duePrin += $duePrin; $fund_dueSc += $dueSc; $fund_prinNextPayable += $prinNextPayable; $fund_scNextPayable += $scNextPayable; @endphp @endforeach @else @if ($fundLoanOrg->id != 1) @php $fundProductIds = $fundLoanOrg->id == 1 ? explode(',',$fundProducts->fund_product_ids) : [$fundProducts->id] ; empty($fundProductIds) ?? $fundProductIds = [0]; $recPrin = $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanAmount'); $loanInterestAmt = $loanIntInfo ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanInterestAmt'); if ($fundLoanOrg->id == 1) { $recSc = $loanInterestAmt; } else { $recSc = $loanInterestAmt + $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest'); } $recTotal = $recPrin + $recSc; $paidSc = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount') + $loanInterestAmt; if ($fundLoanOrg->id == 1) { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); } else { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount') - $paidSc; } $outstanding = $recPrin - $paidPrin; $duePrin = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payablePrincipal') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); $dueSc = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount'); if ($duePrin < 0) { $duePrin = 0; } if ($dueSc < 0) { $duePrin = 0; } $prinNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('principalAmount'); $scNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('interestAmount'); $rowspan = $fundLoanOrg->id == 1 ? sizeof($fundlayer1) : sizeof($fundLoanProducts); @endphp id != 1 && $printLayer == 1) style = "display:none" @endif> @if ($fundStart == 1) @endif @php $fundStart++; @endphp @php $fund_recPrin += $recPrin; $fund_recSc += $recSc; $fund_recTotal += $recTotal; $fund_paidPrin += $paidPrin; $fund_paidSc += $paidSc; $fund_outstanding += $outstanding; $fund_duePrin += $duePrin; $fund_dueSc += $dueSc; $fund_prinNextPayable += $prinNextPayable; $fund_scNextPayable += $scNextPayable; @endphp @endif @endif @endforeach @php $grand_recPrin += $fund_recPrin; $grand_recSc += $fund_recSc; $grand_recTotal += $fund_recTotal; $grand_paidPrin += $fund_paidPrin; $grand_paidSc += $fund_paidSc; $grand_outstanding += $fund_outstanding; $grand_duePrin += $fund_duePrin; $grand_dueSc += $fund_dueSc; $grand_prinNextPayable += $fund_prinNextPayable; $grand_scNextPayable += $fund_scNextPayable; @endphp @if ($printLayer == 1 && $fundLoanOrg->id != 1 ) @endif @if (count($fundLoanOrgs) > 1) @endif @endforeach
Note-2 (Layer-2)
Sl Name Of Main Component Sub Sl Fund Account Cumulative Receive Cumulative Payment Current Outstanding End of the Month Due Next 12 month Payable Amount
Principle Service Charge Total Principle Service Charge Principle Service Charge Principle Service Charge
Note-2 ({{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }})
{{ $fundProducts->sl_code }} {{ $fundProducts->name }}{{ $fundLoanOrg->id == 1 ? $item2->sl_code : $loop->iteration }} {{ $item2->name }} {{ num($recPrin, $filRoundUup) }} {{ num($recSc, $filRoundUup) }} {{ num($recTotal, $filRoundUup) }} {{ num($paidPrin, $filRoundUup) }} {{ num($paidSc, $filRoundUup) }} {{ num($outstanding, $filRoundUup) }} {{ num($duePrin, $filRoundUup) }} {{ num($dueSc, $filRoundUup) }} {{ num($prinNextPayable, $filRoundUup) }} {{ num($scNextPayable, $filRoundUup) }}
Note-2 ({{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }})
{{ $fundLoanOrg->id == 1 ? $fundProducts->sl_code : $loop->iteration }} {{ $fundProducts->name }} {{ num($recPrin, $filRoundUup) }} {{ num($recSc, $filRoundUup) }} {{ num($recTotal, $filRoundUup) }} {{ num($paidPrin, $filRoundUup) }} {{ num($paidSc, $filRoundUup) }} {{ num($outstanding, $filRoundUup) }} {{ num($duePrin, $filRoundUup) }} {{ num($dueSc, $filRoundUup) }} {{ num($prinNextPayable, $filRoundUup) }} {{ num($scNextPayable, $filRoundUup) }}
Bank Fund {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Total {{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }} {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Grand Total {{ num($grand_recPrin, $filRoundUup) }} {{ num($grand_recSc, $filRoundUup) }} {{ num($grand_recTotal, $filRoundUup) }} {{ num($grand_paidPrin, $filRoundUup) }} {{ num($grand_paidSc, $filRoundUup) }} {{ num($grand_outstanding, $filRoundUup) }} {{ num($grand_duePrin, $filRoundUup) }} {{ num($grand_dueSc, $filRoundUup) }} {{ num($grand_prinNextPayable, $filRoundUup) }} {{ num($grand_scNextPayable, $filRoundUup) }}
@endif {{-- for layer 3 --}} @if ($printLayer == 3) @php $grand_recPrin = 0; $grand_recSc = 0; $grand_recTotal = 0; $grand_paidPrin = 0; $grand_paidSc = 0; $grand_outstanding = 0; $grand_duePrin = 0; $grand_dueSc = 0; $grand_prinNextPayable = 0; $grand_scNextPayable = 0; $totalColspan = 5; @endphp @foreach ($fundLoanOrgs as $fundLoanOrg) @php $fundStart = 1; $fund_recPrin = 0; $fund_recSc = 0; $fund_recTotal = 0; $fund_paidPrin = 0; $fund_paidSc = 0; $fund_outstanding = 0; $fund_duePrin = 0; $fund_dueSc = 0; $fund_prinNextPayable = 0; $fund_scNextPayable = 0; $fundLoanProducts = $gnrLoanProducts->whereIn( 'id', $fundAccountsData ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ->merge( $fundAccountsOpening ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ) ); $fundlayers3 = array_filter($l3SubComponents, function($value) use($fundLoanOrg) { return in_array($fundLoanOrg->id,json_decode($value->fund_ids)); }); @endphp @foreach ($fundlayers3 as $component) {{-- changed on 25/2/2024... will follow the "mfn_pksf_loan_product_layers" table. --}} @if (isset($layer3[$component->id])) @php $showTotal = 1; $l3Start = 1; $rowspan = count($layer3[$component->id]); @endphp @foreach ($layer3[$component->id] as $item3) @php $fundProductIds = $fundLoanOrg->id == 1 ? explode(',',$item3->fund_product_ids) : [$item3->id] ; empty($fundProductIds) ?? $fundProductIds = [0]; $recPrin = $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanAmount'); $loanInterestAmt = $loanIntInfo ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanInterestAmt'); if ($fundLoanOrg->id == 1) { $recSc = $loanInterestAmt; } else { $recSc = $loanInterestAmt + $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest'); } $recTotal = $recPrin + $recSc; $paidSc = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount') + $loanInterestAmt; if ($fundLoanOrg->id == 1) { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); } else { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount') - $paidSc; } $outstanding = $recPrin - $paidPrin; $duePrin = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payablePrincipal') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); $dueSc = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount'); if ($duePrin < 0) { $duePrin = 0; } if ($dueSc < 0) { $duePrin = 0; } $prinNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('principalAmount'); $scNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('interestAmount'); // $rowspan = $fundLoanOrg->id == 1 ? sizeof($fundlayer1) : sizeof($fundLoanProducts); @endphp id != 1 && $printLayer == 1) style = "display:none" @endif> @if ($fundStart == 1) @endif @if ($l3Start == 1) @endif @php $showTotal ++; $l3Start++; $fundStart++; @endphp @php $fund_recPrin += $recPrin; $fund_recSc += $recSc; $fund_recTotal += $recTotal; $fund_paidPrin += $paidPrin; $fund_paidSc += $paidSc; $fund_outstanding += $outstanding; $fund_duePrin += $duePrin; $fund_dueSc += $dueSc; $fund_prinNextPayable += $prinNextPayable; $fund_scNextPayable += $scNextPayable; @endphp @endforeach @endif @endforeach @php $grand_recPrin += $fund_recPrin; $grand_recSc += $fund_recSc; $grand_recTotal += $fund_recTotal; $grand_paidPrin += $fund_paidPrin; $grand_paidSc += $fund_paidSc; $grand_outstanding += $fund_outstanding; $grand_duePrin += $fund_duePrin; $grand_dueSc += $fund_dueSc; $grand_prinNextPayable += $fund_prinNextPayable; $grand_scNextPayable += $fund_scNextPayable; @endphp @if (count($fundLoanOrgs) > 1) @endif @endforeach
Note-2 (Layer-3)
Sl Name Of Main Component Sub Sl Fund Account Cumulative Receive Cumulative Payment Current Outstanding End of the Month Due Next 12 month Payable Amount
Principle Service Charge Total Principle Service Charge Principle Service Charge Principle Service Charge
Note-2 ({{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }})
{{ $component->sl_code }} {{ $component->name }}{{ $fundLoanOrg->id == 1 ? $item3->sl_code : $loop->iteration }} {{ $item3->name }} {{ num($recPrin, $filRoundUup) }} {{ num($recSc, $filRoundUup) }} {{ num($recTotal, $filRoundUup) }} {{ num($paidPrin, $filRoundUup) }} {{ num($paidSc, $filRoundUup) }} {{ num($outstanding, $filRoundUup) }} {{ num($duePrin, $filRoundUup) }} {{ num($dueSc, $filRoundUup) }} {{ num($prinNextPayable, $filRoundUup) }} {{ num($scNextPayable, $filRoundUup) }}
Total {{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }} {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Grand Total {{ num($grand_recPrin, $filRoundUup) }} {{ num($grand_recSc, $filRoundUup) }} {{ num($grand_recTotal, $filRoundUup) }} {{ num($grand_paidPrin, $filRoundUup) }} {{ num($grand_paidSc, $filRoundUup) }} {{ num($grand_outstanding, $filRoundUup) }} {{ num($grand_duePrin, $filRoundUup) }} {{ num($grand_dueSc, $filRoundUup) }} {{ num($grand_prinNextPayable, $filRoundUup) }} {{ num($grand_scNextPayable, $filRoundUup) }}
@endif
@endif @else {{-- Second Table --}} @if ($filBranch == null || $filBranch == 1 && $printLayer != 3)
@php $grand_recPrin = 0; $grand_recSc = 0; $grand_recTotal = 0; $grand_paidPrin = 0; $grand_paidSc = 0; $grand_outstanding = 0; $grand_duePrin = 0; $grand_dueSc = 0; $grand_prinNextPayable = 0; $grand_scNextPayable = 0; @endphp @foreach ($fundLoanOrgs as $fundLoanOrg) @php $fundStart = 1; $fund_recPrin = 0; $fund_recSc = 0; $fund_recTotal = 0; $fund_paidPrin = 0; $fund_paidSc = 0; $fund_outstanding = 0; $fund_duePrin = 0; $fund_dueSc = 0; $fund_prinNextPayable = 0; $fund_scNextPayable = 0; $fundLoanProducts = $gnrLoanProducts->whereIn( 'id', $fundAccountsData ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ->merge( $fundAccountsOpening ->where('fundingOrgId', $fundLoanOrg->id) ->unique('loanProductId_fk') ->pluck('loanProductId_fk') ) ); $fundlayer1 = array_filter($layer1, function($value) use($fundLoanOrg) { return in_array($fundLoanOrg->id,json_decode($value->fund_ids)); }); @endphp @foreach ( $fundLoanOrg->id == 1 ? $fundlayer1 : $fundLoanProducts as $key => $fundProducts) @php $fundProductIds = $fundLoanOrg->id == 1 ? explode(',',$fundProducts->fund_product_ids) : [$fundProducts->id] ; empty($fundProductIds) ?? $fundProductIds = [0]; $recPrin = $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanAmount'); $loanInterestAmt = $loanIntInfo ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('loanInterestAmt'); if ($fundLoanOrg->id == 1) { $recSc = $loanInterestAmt; } else { $recSc = $loanInterestAmt + $fundAccounts ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest'); } $recTotal = $recPrin + $recSc; $paidSc = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount') + $loanInterestAmt; if ($fundLoanOrg->id == 1) { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); } else { $paidPrin = $payments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount') - $paidSc; } $outstanding = $recPrin - $paidPrin; $duePrin = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payablePrincipal') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidPrincipalAmount'); $dueSc = $paymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('payableInterest') - $regularPayments ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('paidInterestAmount'); if ($duePrin < 0) { $duePrin = 0; } if ($dueSc < 0) { $duePrin = 0; } $prinNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('principalAmount'); if(date('Y-m-d', strtotime($filDate)) > date('Y-m-d',strtotime("2024-02-01"))) if($prinNextPayable > $outstanding) $prinNextPayable = $outstanding; $scNextPayable = $nextPaymentSchedules ->whereIn('loanProductId_fk', $fundProductIds) ->where('fundingOrgId', $fundLoanOrg->id) ->sum('interestAmount'); $rowspan = $fundLoanOrg->id == 1 ? sizeof($fundlayer1) : sizeof($fundLoanProducts); @endphp id != 1 && $printLayer == 1) style = "display:none" @endif> @if ($fundStart == 1) @endif @php $fundStart++; @endphp @php $fund_recPrin += $recPrin; $fund_recSc += $recSc; $fund_recTotal += $recTotal; $fund_paidPrin += $paidPrin; $fund_paidSc += $paidSc; $fund_outstanding += $outstanding; $fund_duePrin += $duePrin; $fund_dueSc += $dueSc; $fund_prinNextPayable += $prinNextPayable; $fund_scNextPayable += $scNextPayable; @endphp @endforeach @php $grand_recPrin += $fund_recPrin; $grand_recSc += $fund_recSc; $grand_recTotal += $fund_recTotal; $grand_paidPrin += $fund_paidPrin; $grand_paidSc += $fund_paidSc; $grand_outstanding += $fund_outstanding; $grand_duePrin += $fund_duePrin; $grand_dueSc += $fund_dueSc; $grand_prinNextPayable += $fund_prinNextPayable; $grand_scNextPayable += $fund_scNextPayable; @endphp @if ($printLayer == 1 && $fundLoanOrg->id != 1 ) @endif @if (count($fundLoanOrgs) > 1) @endif @endforeach
Sl Fund Account Cumulative Receive Cumulative Payment Current Outstanding End of the Month Due Next 12 month Payable Amount
Principle Service Charge Total Principle Service Charge Principle Service Charge Principle Service Charge
Note-2 ({{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }})
{{ $fundLoanOrg->id == 1 ? $fundProducts->sl_code : $loop->iteration }} {{ $fundProducts->name }} {{ num($recPrin, $filRoundUup) }} {{ num($recSc, $filRoundUup) }} {{ num($recTotal, $filRoundUup) }} {{ num($paidPrin, $filRoundUup) }} {{ num($paidSc, $filRoundUup) }} {{ num($outstanding, $filRoundUup) }} {{ num($duePrin, $filRoundUup) }} {{ num($dueSc, $filRoundUup) }} {{ num($prinNextPayable, $filRoundUup) }} {{ num($scNextPayable, $filRoundUup) }}
Bank Fund {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Total {{ $fundLoanOrg->id == 1 ? $fundLoanOrg->name : "Bank" }} {{ num($fund_recPrin, $filRoundUup) }} {{ num($fund_recSc, $filRoundUup) }} {{ num($fund_recTotal, $filRoundUup) }} {{ num($fund_paidPrin, $filRoundUup) }} {{ num($fund_paidSc, $filRoundUup) }} {{ num($fund_outstanding, $filRoundUup) }} {{ num($fund_duePrin, $filRoundUup) }} {{ num($fund_dueSc, $filRoundUup) }} {{ num($fund_prinNextPayable, $filRoundUup) }} {{ num($fund_scNextPayable, $filRoundUup) }}
Grand Total {{ num($grand_recPrin, $filRoundUup) }} {{ num($grand_recSc, $filRoundUup) }} {{ num($grand_recTotal, $filRoundUup) }} {{ num($grand_paidPrin, $filRoundUup) }} {{ num($grand_paidSc, $filRoundUup) }} {{ num($grand_outstanding, $filRoundUup) }} {{ num($grand_duePrin, $filRoundUup) }} {{ num($grand_dueSc, $filRoundUup) }} {{ num($grand_prinNextPayable, $filRoundUup) }} {{ num($grand_scNextPayable, $filRoundUup) }}
@endif {{-- End Second Table --}} @endif {{-- End Second Table --}}