Manage vehicle service job cards following the 11-step workflow
Total
{{ $statistics['total'] }}
Received
{{ $statistics['received'] }}
In Progress
{{ $statistics['in_progress'] }}
Pending Approval
{{ $statistics['pending_approval'] }}
Completed Today
{{ $statistics['completed_today'] }}
Delivered Today
{{ $statistics['delivered_today'] }}
Overdue
{{ $statistics['overdue'] }}
| Job Card # @if($sortBy === 'job_card_number') {{ $sortDirection === 'asc' ? '↑' : '↓' }} @endif | Customer | Vehicle | Status @if($sortBy === 'status') {{ $sortDirection === 'asc' ? '↑' : '↓' }} @endif | Priority @if($sortBy === 'priority') {{ $sortDirection === 'asc' ? '↑' : '↓' }} @endif | Arrival Date @if($sortBy === 'arrival_datetime') {{ $sortDirection === 'asc' ? '↑' : '↓' }} @endif | Service Advisor | Actions | |
|---|---|---|---|---|---|---|---|---|
|
{{ $jobCard->customer->first_name ?? '' }} {{ $jobCard->customer->last_name ?? '' }}
{{ $jobCard->customer->phone ?? '' }}
|
{{ $jobCard->vehicle->year ?? '' }} {{ $jobCard->vehicle->make ?? '' }} {{ $jobCard->vehicle->model ?? '' }}
{{ $jobCard->vehicle->license_plate ?? '' }}
|
@php
$statusClasses = [
'received' => 'bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200',
'inspected' => 'bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200',
'assigned_for_diagnosis' => 'bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200',
'in_diagnosis' => 'bg-orange-100 text-orange-800 dark:bg-orange-900 dark:text-orange-200',
'estimate_sent' => 'bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-200',
'approved' => 'bg-emerald-100 text-emerald-800 dark:bg-emerald-900 dark:text-emerald-200',
'parts_procurement' => 'bg-indigo-100 text-indigo-800 dark:bg-indigo-900 dark:text-indigo-200',
'in_progress' => 'bg-amber-100 text-amber-800 dark:bg-amber-900 dark:text-amber-200',
'completed' => 'bg-teal-100 text-teal-800 dark:bg-teal-900 dark:text-teal-200',
'delivered' => 'bg-gray-100 text-gray-800 dark:bg-gray-900 dark:text-gray-200',
];
$statusClass = $statusClasses[$jobCard->status] ?? 'bg-zinc-100 text-zinc-800 dark:bg-zinc-900 dark:text-zinc-200';
@endphp
{{ $statusOptions[$jobCard->status] ?? $jobCard->status }}
@php
$workflowSteps = [
'received' => 1,
'inspected' => 2,
'assigned_for_diagnosis' => 3,
'in_diagnosis' => 4,
'estimate_sent' => 5,
'approved' => 6,
'parts_procurement' => 7,
'in_progress' => 8,
'completed' => 9,
'delivered' => 10,
];
$currentStep = $workflowSteps[$jobCard->status] ?? 1;
$progress = ($currentStep / 10) * 100;
@endphp
Step {{ $currentStep }}/10
|
@php $priorityClasses = [ 'low' => 'bg-zinc-100 text-zinc-800 dark:bg-zinc-900 dark:text-zinc-200', 'medium' => 'bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200', 'high' => 'bg-orange-100 text-orange-800 dark:bg-orange-900 dark:text-orange-200', 'urgent' => 'bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200', ]; $priorityClass = $priorityClasses[$jobCard->priority] ?? 'bg-zinc-100 text-zinc-800 dark:bg-zinc-900 dark:text-zinc-200'; @endphp {{ ucfirst($jobCard->priority) }} | {{ $jobCard->arrival_datetime ? $jobCard->arrival_datetime->format('M j, Y g:i A') : '-' }} | {{ $jobCard->serviceAdvisor->name ?? '-' }} |