@extends('layouts.teamlead') @section('title', 'Штрафи') @section('page_title', 'Штрафи') @push('head') {{-- ✅ Окремий CSS через Mix --}} @endpush @section('content')
{{-- Верх: фільтри + підсумки --}}
Підсумок
За вибраний період
К-сть: {{ $totalCount }} Сума: {{ number_format($totalAmount, 2, '.', ' ') }}
{{-- ✅ тулбар фільтрів --}}
Місяць
Кабінет
Зміна
{{-- Додати штраф --}}
Додати штраф
Оператор підтягується автоматично з кабінету по вибраній зміні.
@csrf
{{-- ✅ Підказка --}}
{{-- Список штрафів --}}
@forelse($penalties as $p) @php $shiftLabel = $p->shift === 'day' ? 'День' : ($p->shift === 'evening' ? 'Вечір' : 'Ніч'); $shiftClass = $p->shift === 'day' ? 'pen-shift-day' : ($p->shift === 'evening' ? 'pen-shift-evening' : 'pen-shift-night'); $cabTxt = $p->cabinet->slug ?? $p->cabinet->name ?? ''; $num = null; if ($cabTxt && preg_match('/(\d+)/', $cabTxt, $m)) $num = (int)$m[1]; $cabLabel = $num ? ($num.' кабінет') : ($cabTxt ?: '—'); @endphp @empty @endforelse
Дата Кабінет Зміна Оператор Сума Причина Дії
{{ optional($p->penalty_date)->format('d.m.Y') }} {{ $cabLabel }} {{ $shiftLabel }} @if($p->operator_name)
{{ $p->operator_name }}
@if($p->operator_tg_username)
{{ '@'.$p->operator_tg_username }}
@endif @else Весь кабінет @endif
{{ number_format($p->amount, 2, '.', ' ') }} {{ $p->reason ?: '—' }}
@csrf @method('DELETE') {{-- ✅ без alert: відкриваємо модалку --}}
Штрафів поки немає.
{{-- ✅ МОДАЛКА ПІДТВЕРДЖЕННЯ ВИДАЛЕННЯ --}}
@endsection @push('body') @endpush