{{-- resources/views/ui/inventory/warnings.blade.php --}} @php $level = $level ?? request('level', 'alle'); $levels = [ 'alle' => 'Alle', 'warn' => 'Warnung', 'kritisch' => 'Kritisch', ]; $pill = [ 'warn' => 'bg-amber-50 text-amber-700 border-amber-200', 'kritisch' => 'bg-red-50 text-red-700 border-red-200', ]; $isDistrict = auth()->user()?->isDistrictUser(); $rowAccent = function ($lvl) { return match ($lvl) { 'kritisch' => 'border-l-4 border-l-red-400', 'warn' => 'border-l-4 border-l-amber-400', default => 'border-l-4 border-l-transparent', }; }; $count = $items?->count() ?? 0; @endphp
{{-- Header --}}
Warnungen
Positionen unter Mindestbestand. @if ($isDistrict) · Alle Ortstellen im Bezirk @endif
{{-- Quick Filter Chips (optional, gleiche Funktion wie Select) --}}
@foreach ($levels as $k => $lbl) @php $active = $level === $k; $chipCls = $active ? 'bg-rk-red text-white border-rk-red' : 'bg-white text-rk-charcoal border-rk hover:bg-neutral-50'; @endphp {{ $lbl }} @endforeach
{{-- Filter --}}
Reset
{{-- Table --}}
Übersicht
{{ $count }} Warnungen @if ($level !== 'alle') · Filter: {{ $levels[$level] ?? $level }} @endif
{{-- kleine Badge rechts --}} @if ($level !== 'alle') @php $badgeCls = $pill[$level] ?? 'bg-neutral-100 text-rk-slate border-rk'; @endphp @endif
@if ($isDistrict) @endif @forelse($items as $it) @php $cls = $pill[$it->level] ?? 'bg-neutral-100 text-rk-slate border-rk'; $qty = (int) $it->quantity; $min = (int) $it->minimum_quantity; @endphp @if ($isDistrict) @endif @empty @endforelse
OrtstelleArtikel Variante Bestand Mindest Level Aktion
{{ $it->station?->name ?? '—' }} {{ $it->product?->name ?? '—' }} {{ $it->variant?->name ?? '—' }} {{ $qty }} {{ $min }} {{ $levels[$it->level] ?? $it->level }}
Keine Warnungen
Aktuell liegen keine Positionen unter Mindestbestand.