@extends('layouts.master') @section('title', 'Consumption Report') @section('body') @endsection @section('content')

Consumption Report

@csrf
@if(isset($grns) && isset($materialIssues) && isset($acIssues))
@php $closingBalance = 0; $entries = collect(); foreach ($grns as $grn) { $entries->push([ 'date' => $grn->grn_date, 'vch_type' => 'Purchase', 'vch_no' => $grn->grn_prefix.'/'.$grn->grn_financial_year.'/'.$grn->grn_number, 'particulars' => $grn->vendor->vendor_name, 'inwards' => $grn->items->sum('item_qty'), 'outwards' => 0, 'returns' => 0, 'waste' => 0, ]); } foreach ($materialIssues as $issue) { $entries->push([ 'date' => $issue->material_issue_date, 'vch_type' => 'Sales', 'vch_no' => $issue->material_issue_prefix.'/'.$issue->material_issue_financial_year.'/'.$issue->material_issue_number, 'particulars' => $issue->customer->customer_name, 'inwards' => 0, 'outwards' => $issue->items->sum('material_issue_qty'), 'returns' => 0, 'waste' => 0, ]); } foreach ($materialReturns as $return) { $entries->push([ 'date' => $return->material_return_date, 'vch_type' => 'Return', 'vch_no' => $return->material_return_prefix.'/'.$return->material_return_financial_year.'/'.$return->material_return_number, 'particulars' => $return->customer->customer_name, 'inwards' => 0, 'outwards' => 0, 'returns' => $return->items->sum('material_return_qty'), 'waste' => $return->items->sum('material_waste_qty') ?? 0, ]); } foreach ($acIssues as $issue) { $entries->push([ 'date' => $issue->ac_issue_date, 'vch_type' => 'Sales', 'vch_no' => $issue->ac_issue_prefix.'/'.$issue->ac_issue_financial_year.'/'.$issue->ac_issue_number, 'particulars' => $issue->customer->customer_name, 'inwards' => 0, 'outwards' => $issue->items->sum('ac_issue_qty'), 'returns' => 0, 'waste' => 0, ]); } foreach ($acReturns as $return) { $entries->push([ 'date' => $return->ac_return_date, 'vch_type' => 'Return', 'vch_no' => $return->ac_return_prefix.'/'.$return->ac_return_financial_year.'/'.$return->ac_return_number, 'particulars' => $return->customer->customer_name, 'inwards' => 0, 'outwards' => 0, 'returns' => $return->items->sum('ac_return_qty'), 'waste' => 0, // assume no waste data for AC returns ]); } $entries = $entries->sortBy('date'); @endphp @foreach ($entries as $entry) @php // Skip the row if all key quantities are zero or null if ( empty($entry['inwards']) && empty($entry['outwards']) && empty($entry['returns']) ) continue; $closingBalance += $entry['inwards'] + $entry['returns'] - $entry['outwards']; @endphp @endforeach @php $totalInwards = $grns->sum(fn($grn) => $grn->items->sum('item_qty')); $totalOutwards = $materialIssues->sum(fn($issue) => $issue->items->sum('material_issue_qty')) + $acIssues->sum(fn($issue) => $issue->items->sum('ac_issue_qty')); $totalReturns = $materialReturns->sum(fn($return) => $return->items->sum('material_return_qty')) + $acReturns->sum(fn($return) => $return->items->sum('ac_return_qty')); $totalWaste = $materialReturns->sum(fn($return) => $return->items->sum('material_waste_qty')); @endphp
Date Vch Type Vch No Particulars Inwards (Qty) Outwards (Qty) Returns (Qty) Waste (Qty) Closing (Qty)
{{ \Carbon\Carbon::parse($entry['date'])->format('d/m/Y') }} {{ $entry['vch_type'] }} {{ $entry['vch_no'] }} {{ $entry['particulars'] }} {{ $entry['inwards'] ?: '-' }} {{ $entry['outwards'] ?: '-' }} {{ $entry['returns'] ?: '-' }} {{ $entry['waste'] ?: '-' }} {{ $closingBalance }}
Total {{ $totalInwards }} {{ $totalOutwards }} {{ $totalReturns }} {{ $totalWaste }} {{ $closingBalance }}
@endif
@endsection @section('scripts') @endsection