@extends('layouts.admin-simple') @section('title', 'Inventory Aging Report') @section('breadcrumb') @endsection @section('page-title')

Inventory Aging Report

Analyze inventory based on age and identify slow-moving items

@can('warehouse.inventory.view')
@endcan
@endsection @section('content')
filter_list Aging Report Filters
pie_chart Age Distribution Analysis
{{ collect($agingInventory)->where('age_days', '<=', 30)->count() }}
Fresh Items
Value: {{ number_format(collect($agingInventory)->where('age_days', '<=', 30)->sum('value'), 2) }}
{{ collect($agingInventory)->whereBetween('age_days', [31, 90])->count() }}
Moderate Age
Value: {{ number_format(collect($agingInventory)->whereBetween('age_days', [31, 90])->sum('value'), 2) }}
{{ collect($agingInventory)->whereBetween('age_days', [91, 180])->count() }}
Slow Moving
Value: {{ number_format(collect($agingInventory)->whereBetween('age_days', [91, 180])->sum('value'), 2) }}
{{ collect($agingInventory)->where('age_days', '>', 180)->count() }}
Dead Stock
Value: {{ number_format(collect($agingInventory)->where('age_days', '>', 180)->sum('value'), 2) }}
list Aging Report Details ({{ collect($agingInventory)->count() }} items)
entries
@if(collect($agingInventory)->count() > 0)
@foreach(collect($agingInventory) as $item) @php $agingCategory = ''; $badgeClass = ''; $rowClass = ''; if ($item['age_days'] <= 30) { $agingCategory = 'Fresh'; $badgeClass = 'badge-success'; $rowClass = 'table-success-light'; } elseif ($item['age_days'] <= 90) { $agingCategory = 'Moderate'; $badgeClass = 'badge-info'; $rowClass = 'table-info-light'; } elseif ($item['age_days'] <= 180) { $agingCategory = 'Slow Moving'; $badgeClass = 'badge-warning'; $rowClass = 'table-warning-light'; } else { $agingCategory = 'Dead Stock'; $badgeClass = 'badge-danger'; $rowClass = 'table-danger-light'; } @endphp @endforeach
Item Category Current Stock Age (Days) Last Transaction Value Age Category Actions
{{ substr($item['item_name'] ?? 'U', 0, 1) }}
{{ $item['item_name'] ?? 'Unknown Item' }}
{{ $item['item_code'] ?? 'No Code' }}
@if($item['category'] ?? null)
category {{ $item['category'] }}
@else - @endif
{{ number_format($item['current_stock'] ?? 0, 2) }}
units
{{ $item['age_days'] ?? 0 }} days
{{ $item['last_transaction'] ?? 'N/A' }}
{{ number_format($item['value'] ?? 0, 2) }}
{{ $agingCategory }}
@can('warehouse.inventory.adjust') @endcan
Total Items: {{ number_format(collect($agingInventory)->sum('value'), 2) }} {{ collect($agingInventory)->count() }} items
Report Summary
  • Total Items Analyzed: {{ collect($agingInventory)->count() }}
  • Average Age: {{ collect($agingInventory)->avg('age_days') ? round(collect($agingInventory)->avg('age_days')) : 0 }} days
  • Total Value: {{ number_format(collect($agingInventory)->sum('value'), 2) }}
  • Report Generated: {{ now()->format('F j, Y g:i A') }}
Recommendations
    @if(collect($agingInventory)->where('age_days', '>', 180)->count() > 0)
  • Review {{ collect($agingInventory)->where('age_days', '>', 180)->count() }} dead stock items for disposal
  • @endif @if(collect($agingInventory)->whereBetween('age_days', [91, 180])->count() > 0)
  • Monitor {{ collect($agingInventory)->whereBetween('age_days', [91, 180])->count() }} slow-moving items
  • @endif
  • Consider promotional sales for aged inventory
  • Review reorder points for slow-moving items
  • Implement FIFO inventory rotation practices
@else
check_circle
No Aging Inventory Found

All inventory items are within the acceptable age range of {{ $days }} days.

inventory View Current Inventory
@endif
@endsection @push('styles') @endpush @push('scripts') @endpush