@extends('layouts.admin') @section('title', $mission->name) @section('page-title', $mission->name) @section('page-subtitle', $mission->mission_code.' · '.($mission->fleet->name ?? '')) @section('content')
Status
{{ str_replace('_',' ',$mission->status) }}
Progress
{{ $mission->progress_percent }}%
Commander
{{ $mission->commander->name ?? '—' }}
Duration
{{ $mission->duration_days }}d
Mission Timeline
    @php $steps = [ 'Mission Started' => in_array($mission->status, ['pending','active','paused','returned','sea_trial_uploaded','completed']), 'Zone Completion' => $mission->missionZones->every(fn($z) => $z->status === 'completed') && $mission->missionZones->isNotEmpty(), 'Returned' => in_array($mission->status, ['returned','sea_trial_uploaded','completed']), 'Sea Trial Uploaded' => in_array($mission->status, ['sea_trial_uploaded','completed']), 'Mission Closed' => $mission->status === 'completed', ]; $reached = false; @endphp @foreach ($steps as $label => $done)
  • {{ $label }}
  • @php $reached = $reached || !$done; @endphp @endforeach
@can('missions.change_status')
Change Status
@csrf @method('patch')
@endcan
Crew
Officers
@foreach ($mission->officers->where('pivot.role_in_mission', 'officer') as $o) {{ $o->name }} @endforeach
Sailors
@foreach ($mission->officers->where('pivot.role_in_mission', 'sailor') as $s) {{ $s->name }} @endforeach
Zone Sequence @can('missions.edit')Edit@endcan
@forelse ($mission->missionZones->sortBy('sequence') as $mz) @empty @endforelse
#ZoneArrivalCompletionRiskStatusAction
{{ $mz->sequence + 1 }} {{ $mz->zone->name }} {{ $mz->estimated_arrival?->format('d M, H:i') ?? '—' }} {{ $mz->estimated_completion?->format('d M, H:i') ?? '—' }} {{ ucfirst($mz->risk_level) }} {{ $mz->status }} @can('missions.change_status') @if ($mz->status === 'active')
@csrf
@endif @endcan
No zones assigned.
Sea Trial Uploads
@forelse ($mission->seaTrialUploads as $upload)
{{ $upload->original_filename }} — {{ $upload->status }}
@empty
No uploads yet.
@endforelse @can('sea_trials.upload') Upload Sea Trial Excel @endcan
Mission Documents
@forelse ($mission->documents as $doc)
{{ ucfirst(str_replace('_',' ',$doc->type)) }} — {{ $doc->generated_at?->format('d M Y') }}
@empty
No documents generated yet.
@endforelse @can('documents.generate') Generate Document @endcan
@can('missions.change_status')
Fleet Offline Handoff

For a fleet that had no connectivity at all during the mission — upload the encrypted export file they generated on-device (Fleet Portal → Export for Handoff) to import their answers, zone completions, GPS log and notes.

@csrf
@endcan
@endsection