@extends('layouts.admin') @section('title', 'Driver safety') @section('heading', 'Driver compliance & safety') @section('content')
Documents awaiting review{{ $documents->where('status', 'pending')->count() }}
Vehicles shown{{ $vehicles->count() }}
Open incidents{{ $incidents->where('status', 'open')->count() }}
Delivery proofs{{ $proofs->total() }}

Vehicle type configuration

Types control delivery/taxi compatibility and optional customer ride-class matching.

@csrf
@foreach($vehicleTypes as $type)@csrf @method('put')@endforeach
TypeServiceRide classVehiclesConfiguration
{{ $type->vehicles_count }}

Driver documents

Private downloads only. Expired files never authorize a driver.

@forelse($documents as $document) @empty @endforelse
DriverDocumentExpiryStatusReview
{{ $document->driver->user->name }} {{ $document->label }}
{{ str_replace('_', ' ', $document->type) }}
{{ $document->expires_at?->format('d M Y') ?? 'โ€”' }}@if($document->expires_at?->isBetween(today(), today()->addDays(config('driver_compliance.expiry_warning_days', 30))))
Expires soon@endif
{{ $document->effective_status }} @if($document->status === 'pending')
@csrf
@else {{ $document->review_note ?? 'Reviewed' }} @endif
No driver documents.
{{ $documents->links() }}

Vehicles

Profile edits return vehicles to pending verification.

@forelse($vehicles as $vehicle) @empty @endforelse
DriverRegistrationVehicleStatus
{{ $vehicle->driver->user->name }}{{ $vehicle->registration_number }}{{ $vehicle->make }} {{ $vehicle->model }} ยท {{ $vehicle->vehicleType?->name ?? $vehicle->type }}
{{ $vehicle->is_active?'Selected by driver':'Inactive' }}
{{ $vehicle->verification_status }}
{{ $vehicle->verification_note }}
@csrf
No vehicles.
{{ $vehicles->links() }}

SOS incidents

Location-linked incidents and response ownership.

@forelse($incidents as $incident) @empty @endforelse
IncidentDriverLocationStatus
{{ $incident->number }}
{{ $incident->created_at->format('d M Y H:i') }}
{{ $incident->customer?->name ?? $incident->driver?->user?->name ?? 'Unknown participant' }}
{{ $incident->customer_id ? 'Passenger' : 'Driver' }}
{{ $incident->latitude }}, {{ $incident->longitude }}{{ $incident->status }}Respond
No safety incidents.
{{ $incidents->links() }}

Proof of delivery

Private evidence with capture metadata.

@forelse($proofs as $proof) @empty @endforelse
DeliveryDriverCapturedReceived by
#{{ str($proof->job->public_id)->limit(12) }}{{ $proof->driver->user->name }}{{ $proof->captured_at->format('d M Y H:i') }}
{{ $proof->confirmed_at ? 'PIN verified' : 'Awaiting completion' }}
{{ $proof->received_by ?? $proof->signature_name ?? 'โ€”' }}
SHA-256 {{ str($proof->signature_sha256)->limit(12) }}
Private photo@if($proof->signature_payload)Signature@endif
No delivery proofs.
{{ $proofs->links() }}
@endsection