@extends('garage.layouts.app') @section('title', 'Job Card Queue') @push('styles') @endpush @section('content') @php $minutesToText = function ($minutes) { $m = (int) $minutes; $h = intdiv($m, 60); $r = $m % 60; if ($h <= 0) return $r . 'm'; if ($r <= 0) return $h . 'h'; return $h . 'h ' . $r . 'm'; }; @endphp
| Job card | Date | Customer / Vehicle | Slot | Status | Tasks | Est. | Actual | Left | Delay | Open |
|---|---|---|---|---|---|---|---|---|---|---|
|
{{ $wo->work_order_number }}
{{ $chipText }}
|
{{ $wo->work_order_date }} |
{{ $wo->customer_name ?? '—' }}
{{ $wo->vehicle_registration ?? '—' }}
@if($wo->vehicle_make || $wo->vehicle_model)
({{ trim(($wo->vehicle_make ?? '').' '.($wo->vehicle_model ?? '')) }})
@endif
|
{{ $wo->slot_name ?? '—' }} | @php $st = (string)($wo->status ?? ''); @endphp{{ str_replace('_',' ', $st) }} |
{{ (int)($wo->tasks_completed ?? 0) }}/{{ (int)($wo->tasks_total ?? 0) }} done
@if((int)($wo->tasks_running ?? 0) > 0)
Running {{ (int)($wo->tasks_running ?? 0) }}
@endif
|
{{ $minutesToText((int)($wo->total_estimated_minutes ?? 0)) }} | {{ $minutesToText((int)($wo->total_actual_minutes ?? 0)) }} | {{ $minutesToText((int)($wo->total_pending_minutes ?? 0)) }} | {{ $minutesToText($delay) }} | {{ $open }} |
| No job cards found. | ||||||||||
| Job card | Task | Assigned | Status | Est. | Actual | Left | Delay |
|---|---|---|---|---|---|---|---|
| {{ $t->work_order_number }} |
{{ $t->task_name }}
@if(!empty($t->source_item_type))
{{ str_replace('_',' ', $t->source_item_type) }}
@endif
|
{{ $t->assigned_to_name ?: '—' }} | @php $ts = (string)($t->status ?? ''); @endphp{{ str_replace('_',' ', $ts) }} | {{ $minutesToText((int)($t->estimated_minutes ?? 0)) }} | {{ $minutesToText((int)($t->actual_minutes ?? 0)) }} | {{ $minutesToText($left) }} | {{ $minutesToText($delay) }} |
| No tasks found. | |||||||