@extends('layouts/fams_layout') @section('title', '| Report') @section('content') @include('successMsg')
@php function dotPrint($value){ $value1 = (float) $value; if ($value1<=0) { return "-"; } else{ return number_format($value1,2); } } @endphp
{!! Form::open(['url' => 'famsFixedAssetsScheduleReport','method' => 'get']) !!} @php $userBranchId = Auth::user()->branchId; @endphp @if($userBranchId==1)
{!! Form::label('', 'Project:', ['class' => 'control-label pull-left']) !!}
@endif @if($userBranchId==1)
{!! Form::label('', 'Pro. Type:', ['class' => 'control-label pull-left']) !!}
@endif @if($userBranchId==1)
{!! Form::label('', 'Branch:', ['class' => 'control-label pull-left']) !!}
@endif
{!! Form::label('', 'Search By:', ['class' => 'control-label pull-left']) !!}
{!! Form::select('searchMethod',[''=>'Please Select','1'=>'Fiscal Year','2'=>'Current Year'],$searchMethodSelected,['id'=>'searchMethod','class'=>'form-control input-sm']) !!}
{!! Form::submit('Search',['id'=>'search','class'=>'btn btn-primary btn-xs','style'=>'font-size:15px;']) !!}
{!! Form::close() !!}
{{-- End Filtering Group --}}

Fixed Assets Schedule Report

@php if($branchSelected===0){ $selectedBranchName = "All Branches"; } else{ $selectedBranchName = DB::table('gnr_branch')->where('id',$branchSelected)->value('name'); } $selectedProjectName = DB::table('gnr_project')->where('id',$projectSelected)->value('name'); $selectedProjectTypeName = DB::table('gnr_project_type')->where('id',$projectTypeSelected)->value('name'); $selectedCategoryName = DB::table('fams_product_category')->where('id',$categorySelected)->value('name'); @endphp @if(!$firstRequest)

@php $totalOpeningBalnace = 0; $totalPurchase = 0; $totalAdjustmentIn = 0; $totalTransferIn = 0; $totalSale = 0; $totalAdjustmentOut = 0; $totalTransferOut = 0; $totalClosing = 0; $totalDepOpeningBalance = 0; $totalCurrentDep = 0; $totalDisposalAmount = 0; $totalDepTransferIn = 0; $totalDepTransferOut = 0; $totalDepAdjustment = 0; $totalDepClosingBalance = 0; $totalWrittenDown = 0; @endphp @foreach($allGroups as $group) @php $gOpeningBalance = 0; $gPurchase = 0; $gAdjustmentIn = 0; $gTransferIn = 0; $gSale = 0; $gAdjustmentOut = 0; $gTransferOut = 0; $gClosingBalance = 0; $gDepOpeningBalance = 0; $gCurrentDep = 0; $gDepDisposalAmount = 0; $gDepTransferIn = 0; $gDepTransferOut = 0; $gDepAdjustment = 0; $gDepClosingBalance = 0; $gWrittenDownValue = 0; @endphp @php $tCategories = DB::table('fams_product_category')->where('productGroupId',$group->id)->get(); @endphp @foreach($tCategories as $tCategory) @php $cOpeningBalance = 0; $cPurchase = 0; $cAdjustmentIn = 0; $cTransferIn = 0; $cSale = 0; $cAdjustmentOut = 0; $cTransferOut = 0; $cClosingBalance = 0; $cDepOpeningBalance = 0; $cCurrentDep = 0; $cDepDisposalAmount = 0; $cDepTransferIn = 0; $cDepTransferOut = 0; $cDepAdjustment = 0; $cDepClosingBalance = 0; $cWrittenDownValue = 0; $cDepPercentage = 0; @endphp @foreach ($branchIds as $branchId) @php $transferedAllProduct = DB::table('fams_tra_transfer as t1') ->join('fams_product as t2','t1.productId','=','t2.id') ->where('t1.branchIdFrom',$branchId) ->where('purchaseDate','>=',$startDate) ->where('purchaseDate','<=',$endDate) ->where('t2.categoryId',$tCategory->id) ->whereIn('t2.projectId',$projectId) ->whereIn('t2.projectTypeId',$projectTypeId) ->pluck('productId'); $productsOfthisCategory = DB::table('fams_product')->where('categoryId',$tCategory->id)->where('branchId',$branchId)->where('purchaseDate','<=',$endDate)->whereIn('projectId',$projectId)->whereIn('projectTypeId',$projectTypeId)->orWhereIn('id',$transferedAllProduct)->orderBy('purchaseDate','asc')->get(); @endphp @foreach($productsOfthisCategory as $product) @php $transferedOutProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdFrom',$branchId)->where('transferDate','>',$startDate)->get(); $transferedInProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdTo',$branchId)->where('transferDate','>',$endDate)->get(); $depDisposalamount = 0; $saleAmount = 0; $adjustmentIn = 0; $adjustmentOut = 0; $transferInAmount = 0; $transferOutAmount = 0; $openingDisposalamount = 0; $openingDepTransferInAmount = 0; $openingDepTransferOutAmount = 0; $openingDepAdjustment = 0; @endphp @if($branchId==$product->branchId || sizeof($transferedOutProduct)>0) @if(sizeof($transferedInProduct)==0) @php $branchName = DB::table('gnr_branch')->where('id',$branchId)->value('name'); $purchaseDate = date('Y-m-d', strtotime($product->purchaseDate)); //Get the Additional Charge After Start Date $postAddCharge = (float) DB::table('fams_additional_charge')->where('branchId',$branchId)->where('productId',$product->id)->where('purchaseDate','>=',$startDate)->where('purchaseDate','<=',$endDate)->sum('amount'); if($purchaseDate<$startDate){ $additionalCharge = (float) DB::table('fams_additional_charge')->where('branchId',$branchId)->where('productId',$product->id)->where('purchaseDate','<',$startDate)->sum('amount'); $soldOut = DB::table('fams_sale')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','<',$startDate)->first(); if (count($soldOut)>0) { $saleAmount = $soldOut->amount; $adjustmentIn = $soldOut->profitAmount; $adjustmentOut = round((float) $soldOut->lossAmount + (float) DB::table('fams_depreciation_details')->where('depTo','<',$startDate)->where('productId',$product->id)->sum('amount') + (float)DB::table('fams_product')->where('id',$product->id)->value('depreciationOpeningBalance'),2); } //If product is write offed (for opening balance) $writeOffed = DB::table('fams_write_off')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','<',$startDate)->first(); if (count($writeOffed)>0) { $adjustmentOut = round((float) $additionalCharge + DB::table('fams_product')->where('id',$product->id)->value('totalCost'),2); $openingDisposalamount = round((float) $writeOffed->amount,2); $openingDepAdjustment = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->sum('amount'); } //If product Transfered In Then get Tranfer Amount (for opening balance) $isTransferdInProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdTo',$branchId)->where('transferDate','<',$startDate)->orderBy('id','desc')->first(); if (count($isTransferdInProduct)>0) { $transferInAmount = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->where('purchaseDate','<',$isTransferdInProduct->transferDate)->sum('amount'); $openingDepTransferInAmount = $isTransferdInProduct->pastDep; } $isTransferdOutProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdFrom',$branchId)->where('transferDate','<',$startDate)->orderBy('id','desc')->first(); if(sizeof($isTransferdOutProduct)>0){ $transferOutAmount = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->where('purchaseDate','<',$isTransferdOutProduct->transferDate)->sum('amount'); $openingDepTransferOutAmount = round((float) DB::table('fams_depreciation_details')->where('productId',$product->id)->where('branchId',$branchId)->where('depTo','<',$startDate)->sum('amount'),2); } $openingBalance = (float) $product->totalCost + $additionalCharge + $adjustmentIn - $saleAmount - $adjustmentOut ; $purchase = $postAddCharge; } // end for opening balance else{ $openingBalance = 0; $additionalCharge = (float) DB::table('fams_additional_charge')->where('productId',$product->id)->where('branchId',$branchId)->where('purchaseDate','>=',$startDate)->where('purchaseDate','<=',$endDate)->sum('amount'); $purchase = (float) $product->totalCost + $additionalCharge; } //If product is sold out $soldOut = DB::table('fams_sale')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','>=',$startDate)->where('createdDate','<=',$endDate)->first(); if (sizeOf($soldOut)>0) { $saleAmount = $soldOut->amount; $adjustmentIn = $soldOut->profitAmount; //$adjustmentOut = Dep. Generated + Loss amount $adjustmentOut = round((float) $soldOut->lossAmount + (float) DB::table('fams_depreciation_details')->where('productId',$product->id)->where('depTo','<',$endDate)->sum('amount') + (float)DB::table('fams_product')->where('id',$product->id)->value('depreciationOpeningBalance'),2); //$depAdjustment = round(DB::table('fams_depreciation_details')->where('productId',$product->id)->where('depTo','>=',$startDate)->where('depTo','<=',$endDate)->sum('amount'),2); $depDisposalamount = 0; } else{ $saleAmount = 0; $adjustmentIn = 0; $adjustmentOut = 0; //If product is write offed $writeOffed = DB::table('fams_write_off')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','>=',$startDate)->where('createdDate','<=',$endDate)->first(); if (sizeOf($writeOffed)>0) { //$adjustmentOut = $writeOffed->lossAmount; $adjustmentOut = round((float) $additionalCharge + DB::table('fams_product')->where('id',$product->id)->value('totalCost'),2); /*$depDisposalamount = round((float) DB::table('fams_write_off')->where('productId',$product->id)->where('createdDate','>=',$startDate)->where('createdDate','<=',$endDate)->value('amount'),2);*/ $depDisposalamount = round((float) $writeOffed->amount,2); //$depAdjustment = round((float) $additionalCharge + DB::table('fams_product')->where('id',$product->id)->value('totalCost'),2); } else{ $adjustmentOut = 0; $depDisposalamount = 0; //$depAdjustment = 20; } } //If Transfered Out Then get old product Code and Tranfer Amount $isTransferdOutProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdFrom',$branchId)->where('transferDate','>=',$startDate)->where('transferDate','<=',$endDate)->orderBy('id','desc')->first(); if(sizeof($isTransferdOutProduct)>0){ $productCode = $isTransferdOutProduct->oldProductCode; $transferOutAmount = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->where('purchaseDate','<',$isTransferdOutProduct->transferDate)->sum('amount'); } else{ $productCode = $product->productCode; $transferOutAmount = 0; } //If product Transfered In Then get Tranfer Amount $isTransferdInProduct = DB::table('fams_tra_transfer')->where('productId',$product->id)->where('branchIdTo',$branchId)->where('transferDate','>=',$startDate)->where('transferDate','<=',$endDate)->orderBy('id','desc')->first(); if(sizeof($isTransferdInProduct)>0){ $transferInAmount = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->where('purchaseDate','<',$isTransferdInProduct->transferDate)->sum('amount'); $openingBalance = 0; $purchase = 0; } else{ $transferInAmount = 0; } $closingBalance = round($openingBalance + $purchase + $adjustmentIn + $transferInAmount - $saleAmount - $adjustmentOut - $transferOutAmount,2); /////// Dep /////// $openingAccDep = round($product->depreciationOpeningBalance + (float) DB::table('fams_depreciation_details')->where('productId',$product->id)->where('branchId',$branchId)->where('depTo','<',$startDate)->sum('amount'),2); $openingAccDep += $openingDisposalamount + $openingDepTransferInAmount - $openingDepAdjustment; $currentAccDep = round((float) DB::table('fams_depreciation_details')->where('productId',$product->id)->where('branchId',$branchId)->where('depTo','>=',$startDate)->where('depTo','<=',$endDate)->sum('amount'),2); //If product is sold out $soldOut = DB::table('fams_sale')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','>=',$startDate)->where('createdDate','<=',$endDate)->first(); if (sizeOf($soldOut)>0) { $depAdjustment = $openingAccDep + $currentAccDep; } else{ //If product is write offed $writeOffed = DB::table('fams_write_off')->where('productId',$product->id)->where('branchId',$branchId)->where('createdDate','>=',$startDate)->where('createdDate','<=',$endDate)->first(); if (sizeOf($writeOffed)>0) { $depAdjustment = (float) $product->totalCost + (float) DB::table('fams_additional_charge')->where('productId',$product->id)->sum('amount'); } else{ $depAdjustment = 0; } } //If product is Transfered In if(sizeof($isTransferdInProduct)>0){ $openingAccDep=0; $depTransferInAmount = (float) DB::table('fams_tra_transfer')->where('branchIdTo',$branchId)->where('productId',$product->id)->where('transferDate','>=',$startDate)->where('transferDate','<=',$endDate)->value('pastDep'); } else{ $depTransferInAmount = 0; } //If product Is transfered Out if(sizeof($isTransferdOutProduct)>0){ $depTransferOutAmount = $openingAccDep + $currentAccDep; } else{ $depTransferOutAmount = 0; } $depTransferAmount = $depTransferOutAmount + $depTransferInAmount; $depClosingBalance = round($openingAccDep + $currentAccDep + $depDisposalamount + $depTransferInAmount - $depAdjustment - $depTransferOutAmount,2); @endphp @php $cOpeningBalance = $cOpeningBalance + $openingBalance; $cPurchase = $cPurchase + $purchase; $cAdjustmentIn = $cAdjustmentIn + $adjustmentIn; $cTransferIn = $cTransferIn + $transferInAmount; $cSale = $cSale + $saleAmount; $cAdjustmentOut = $cAdjustmentOut + $adjustmentOut; $cTransferOut = $cTransferOut + $transferOutAmount; $cClosingBalance = $cClosingBalance + $closingBalance; $cDepOpeningBalance = $cDepOpeningBalance + $openingAccDep; $cCurrentDep = $cCurrentDep + $currentAccDep; $cDepDisposalAmount = $cDepDisposalAmount + $depDisposalamount; $cDepTransferIn = $cDepTransferIn + $depTransferInAmount; $cDepTransferOut = $cDepTransferOut + $depTransferOutAmount; $cDepAdjustment = $cDepAdjustment + $depAdjustment; $cDepClosingBalance = $cDepClosingBalance + $depClosingBalance; $cWrittenDownValue = $cWrittenDownValue + $closingBalance - $depClosingBalance; $cDepPercentage = $product->depreciationPercentage; @endphp @endif @endif @endforeach {{-- End Product Foreach --}} @endforeach {{-- For Branch --}} @php $gOpeningBalance = $gOpeningBalance + $cOpeningBalance; $gPurchase = $gPurchase + $cPurchase; $gAdjustmentIn = $gAdjustmentIn + $cAdjustmentIn; $gTransferIn = $gTransferIn + $cTransferIn; $gSale = $gSale + $cSale; $gAdjustmentOut = $gAdjustmentOut + $cAdjustmentOut; $gTransferOut = $gTransferOut + $cTransferOut; $gClosingBalance = $gClosingBalance + $cClosingBalance; $gDepOpeningBalance = $gDepOpeningBalance + $cDepOpeningBalance; $gCurrentDep = $gCurrentDep + $cCurrentDep; $gDepDisposalAmount = $gDepDisposalAmount + $cDepDisposalAmount; $gDepTransferIn = $gDepTransferIn + $cDepTransferIn; $gDepTransferOut = $gDepTransferOut + $cDepTransferOut; $gDepAdjustment = $gDepAdjustment + $cDepAdjustment; $gDepClosingBalance = $gDepClosingBalance + $cDepClosingBalance; $gWrittenDownValue = $gWrittenDownValue + $cWrittenDownValue; @endphp @endforeach {{-- End Category Foreach --}} @php $totalOpeningBalnace = $totalOpeningBalnace + $gOpeningBalance; $totalPurchase = $totalPurchase + $gPurchase; $totalAdjustmentIn = $totalAdjustmentIn + $gAdjustmentIn; $totalTransferIn = $totalTransferIn + $gTransferIn; $totalSale = $totalSale + $gSale; $totalAdjustmentOut = $totalAdjustmentOut + $gAdjustmentOut; $totalTransferOut = $totalTransferOut + $gTransferOut; $totalClosing = $totalClosing + $gClosingBalance; $totalDepOpeningBalance = $totalDepOpeningBalance + $gDepOpeningBalance; $totalCurrentDep = $totalCurrentDep + $gCurrentDep; $totalDisposalAmount = $totalDisposalAmount + $gDepDisposalAmount; $totalDepTransferIn = $totalDepTransferIn + $gDepTransferIn; $totalDepTransferOut = $totalDepTransferOut + $gDepTransferOut; $totalDepAdjustment = $totalDepAdjustment + $gDepAdjustment; $totalDepClosingBalance = $totalDepClosingBalance + $gDepClosingBalance; $totalWrittenDown = $totalWrittenDown + $gWrittenDownValue; @endphp @endforeach {{-- End Group Foreach --}}
Particulars Cost Value (Tk) Accmulated Depreciation (Tk) Written Down Value
Opening Balance Current Period Add Current Period Less Closing Balance Dep. Rate(%) Opening Balance Current Period Add/Less Closing Balance
Purchase Adjustment Transfer Sales Adjustment Transfer Depreciation Disposal Transfer In Transfer Out Adjustment
{{$group->name}}
{{$tCategory->name}} {{dotPrint($cOpeningBalance)}} {{dotPrint($cPurchase)}} {{dotPrint($cAdjustmentIn)}} {{dotPrint($cTransferIn)}} {{dotPrint($cSale)}} {{dotPrint($cAdjustmentOut)}} {{dotPrint($cTransferOut)}} {{dotPrint($cClosingBalance)}} @if($cDepPercentage>0){{$cDepPercentage}}@else{{"-"}}@endif {{dotPrint($cDepOpeningBalance)}} {{dotPrint($cCurrentDep)}} {{dotPrint($cDepDisposalAmount)}} {{dotPrint($cDepTransferIn)}} {{dotPrint($cDepTransferOut)}} {{dotPrint($cDepAdjustment)}} {{dotPrint($cDepClosingBalance)}} {{dotPrint($cWrittenDownValue)}}
{{"Sub Total"}} {{dotPrint($gOpeningBalance)}} {{dotPrint($gPurchase)}} {{dotPrint($gAdjustmentIn)}} {{dotPrint($gTransferIn)}} {{dotPrint($gSale)}} {{dotPrint($gAdjustmentOut)}} {{dotPrint($gTransferOut)}} {{dotPrint($gClosingBalance)}} {{dotPrint($gDepOpeningBalance)}} {{dotPrint($gCurrentDep)}} {{dotPrint($gDepDisposalAmount)}} {{dotPrint($gDepTransferIn)}} {{dotPrint($gDepTransferOut)}} {{dotPrint($gDepAdjustment)}} {{dotPrint($gDepClosingBalance)}} {{dotPrint($gWrittenDownValue)}}
{{"Grand Total"}} {{dotPrint($totalOpeningBalnace)}} {{dotPrint($totalPurchase)}} {{dotPrint($totalAdjustmentIn)}} {{dotPrint($totalTransferIn)}} {{dotPrint($totalSale)}} {{dotPrint($totalAdjustmentOut)}} {{dotPrint($totalTransferOut)}} {{dotPrint($totalClosing)}} {{dotPrint($totalDepOpeningBalance)}} {{dotPrint($totalCurrentDep)}} {{dotPrint($totalDisposalAmount)}} {{dotPrint($totalDepTransferIn)}} {{dotPrint($totalDepTransferOut)}} {{dotPrint($totalDepAdjustment)}} {{dotPrint($totalDepClosingBalance)}} {{dotPrint($totalWrittenDown)}}
@endif
{{-- Filtering Mehod --}} {{-- End Filtering Mehod --}} {{-- Print Page --}} {{-- EndPrint Page --}} {{-- Filtering --}}