← Work Orders

{{ $workOrder->wo_number }}

{{ $workOrder->property->name }}

{{ $workOrder->status->value }}
@if($workOrder->status->value === 'CLOSED')
🔒 Esta Work Order está fechada — não é possível adicionar notas, fotos, reatribuir técnico ou reagendar.
@endif
@if($this->isAssignedTechnician() && $workOrder->status->value === 'SCHEDULED')

Fazer Check-in

A localização é capturada automaticamente ao carregares aqui.

@error('checkInLat')

Localização não disponível — activa o GPS/localização no browser.

@enderror
@endif @if($this->isAssignedTechnician() && $workOrder->status->value === 'IN_PROGRESS')

Concluir Work Order

@error('workPerformed')

{{ $message }}

@enderror
@error('signatureName')

{{ $message }}

@enderror
@endif @if($workOrder->status->value === 'COMPLETED') @can('close', $workOrder)

Trabalho concluído

Confirma que o trabalho foi validado para fechar esta Work Order.

@endcan @endif

Detalhes

Técnico
{{ $workOrder->technician?->name ?? '—' }}
Agendado
{{ $workOrder->scheduled_at?->format('d/m/Y H:i') ?? '—' }}
Check-in
{{ $workOrder->checked_in_at?->format('d/m/Y H:i') ?? '—' }}
Check-out
{{ $workOrder->checked_out_at?->format('d/m/Y H:i') ?? '—' }}
@if($workOrder->work_performed)

Trabalho: {{ $workOrder->work_performed }}

@endif
@if(($this->isAssignedTechnician() || auth()->user()->can('work_orders.execute')) && $workOrder->status->value !== 'CLOSED')

Fotos (Antes / Depois)

@error('beforePhoto')

{{ $message }}

@enderror
A carregar...
@if($beforePhoto) @endif
@error('afterPhoto')

{{ $message }}

@enderror
A carregar...
@if($afterPhoto) @endif
@if($workOrder->attachments->count())

Antes

@foreach($workOrder->attachments->where('tag', 'before') as $file) @endforeach

Depois

@foreach($workOrder->attachments->where('tag', 'after') as $file) @endforeach
@endif
@elseif($workOrder->attachments->count())

Fotos

Antes

@foreach($workOrder->attachments->where('tag', 'before') as $file) @endforeach

Depois

@foreach($workOrder->attachments->where('tag', 'after') as $file) @endforeach
@endif @if($workOrder->checklistItems->count())

Checklist

@foreach($workOrder->checklistItems as $item) @endforeach
@endif

Histórico de Estados

@foreach($workOrder->statusHistory as $h)
{{ $h->from_status ?? 'início' }} → {{ $h->to_status }} — {{ $h->changed_at->format('d/m H:i') }} por {{ $h->changedBy?->name ?? 'sistema' }}
@endforeach
@can('work_orders.assign') @if($workOrder->status->value !== 'CLOSED')

Agendamento

@error('rescheduleAt')

{{ $message }}

@enderror

{{ $workOrder->technician ? 'Reatribuir Técnico' : 'Atribuir Técnico' }}

Actual: {{ $workOrder->technician?->name ?? ($workOrder->serviceProvider?->company_name ? 'Empresa: '.$workOrder->serviceProvider->company_name.' (sem técnico definido)' : '—') }}

@error('reassignTechnicianId')

{{ $message }}

@enderror
@endif @endcan

Notas Internas

Nunca visíveis ao inquilino.

@if($workOrder->status->value !== 'CLOSED')
@error('newNote')

{{ $message }}

@enderror
@endif
@forelse($workOrder->notes as $note)

{{ $note->note }}

{{ $note->user->name }} — {{ $note->created_at->diffForHumans() }}

@empty

Sem notas ainda.

@endforelse