@extends('layouts.app') @section('content')
{{-- ===================================================== --}} {{-- HEADER --}} {{-- ===================================================== --}}

Complaint List {{-- TYPE FILTER --}} @if(request('type')) @php $selectedType = \App\Models\ComplaintType::find(request('type')); @endphp @if($selectedType) {{ $selectedType->type_name }} @endif {{-- STATUS FILTER --}} @elseif(request('status')) {{ request('status') }} {{-- TODAY'S COMPLAINT FILTER --}} @elseif(request('filter') == 'today') Today's Complaints {{-- DEADLINE FILTER --}} @elseif(request('deadline')) @if(is_numeric(request('deadline'))) {{ request('deadline') }} {{ request('deadline') == 1 ? 'Day' : 'Days' }} Remaining @elseif(request('deadline') == 'today') Due Today @elseif(request('deadline') == 'overdue') Overdue @endif @endif

{{-- NEW COMPLAINT BUTTON --}} New Complaint
{{-- ================================================= --}} {{-- SUCCESS MESSAGE --}} {{-- ================================================= --}} @if(session('success')) @endif {{-- ================================================= --}} {{-- TOOLBAR --}} {{-- ================================================= --}}
{{-- SEARCH --}}
{{-- STATUS FILTER --}}
{{-- CURRENT FILTER --}}
@if(request('deadline')) @if(is_numeric(request('deadline'))) {{ request('deadline') }} {{ request('deadline') == 1 ? 'Day' : 'Days' }} Remaining @elseif(request('deadline') == 'today') Due Today @elseif(request('deadline') == 'overdue') Overdue @endif @elseif(request('status')) {{ request('status') }} @elseif(request('type')) @php $filterType = \App\Models\ComplaintType::find(request('type')); @endphp @if($filterType) {{ $filterType->type_name }} @endif @elseif(request('filter') == 'today') Today's Complaints @endif
{{-- ROW COUNT --}}
{{-- ================================================= --}} {{-- TABLE --}} {{-- ================================================= --}}
@forelse($complaints as $key => $row) @php /* Latest Status */ $currentStatus = optional($row->latestStatus)->status ?? 'Pending'; /* Deadline */ $deadline = $row->deadline_date ? \Carbon\Carbon::parse($row->deadline_date) : null; /* Days Remaining */ $daysRemaining = null; $isOverdue = false; $isDueToday = false; if ($deadline) { $today = \Carbon\Carbon::today(); $daysRemaining = $today->diffInDays($deadline, false); $isOverdue = $daysRemaining < 0 && !in_array($currentStatus, ['Resolved', 'Closed']); $isDueToday = $daysRemaining === 0 && !in_array($currentStatus, ['Resolved', 'Closed']); } /* Status badge class (KP palette) */ $statusClass = 'pending'; if ($currentStatus == 'Resolved') { $statusClass = 'resolved'; } elseif ($currentStatus == 'Rejected') { $statusClass = 'rejected'; } elseif ($currentStatus == 'In Progress') { $statusClass = 'in-progress'; } elseif ($currentStatus == 'Forwarded') { $statusClass = 'forwarded'; } elseif ($currentStatus == 'Closed') { $statusClass = 'closed'; } elseif ($currentStatus == 'Pending') { $statusClass = 'pending'; } @endphp @empty @endforelse
# Date Complainant CNIC Contact District Against Status Deadline Action
CC-1992-{{ $row->id }} {{ optional($row->created_at)->format('d-M-Y') }} {{ optional($row->created_at)->format('h:i A') }} {{ $row->complainant_name }} {{ $row->cnic_number }} {{ $row->contact_number }} @if($row->district) {{ $row->district->district_name }} @else - @endif @if($row->complaintType) {{ $row->complaintType->type_name }} @endif
@if($row->complaintAgainst) {{ $row->complaintAgainst->name }} @endif
{{ $currentStatus }} @if($currentStatus != 'Resolved') @if($deadline) @if($isOverdue) Overdue
{{ $deadline->format('d-M-Y') }} @elseif($isDueToday) Due Today
{{ $deadline->format('d-M-Y') }} @else {{ $daysRemaining }} {{ $daysRemaining == 1 ? 'Day' : 'Days' }}
{{ $deadline->format('d-M-Y') }} @endif @else N/A @endif @else {{ $currentStatus }} @endif
{{-- COORDINATOR VERIFICATION --}} @if(auth()->user()->role == 'coordinator')
@csrf @if($row->verification_status != "Genuine") @endif @if($row->verification_status != "Irrelevant") @endif
@endif @if(auth()->user()->role != 'department') @endif
No Complaint Found
{{-- ================================================= --}} {{-- PAGINATION --}} {{-- ================================================= --}}
{{ $complaints->links() }}
{{-- ============================================================= --}} {{-- STATUS MODAL --}} {{-- ============================================================= --}} {{-- ============================================================= --}} {{-- PAGE STYLES --}} {{-- ============================================================= --}} {{-- ============================================================= --}} {{-- PAGE SCRIPTS --}} {{-- ============================================================= --}} @endsection