# Instalar: Criar Work Order Atribuída a uma Empresa (sem técnico ainda)

## Ficheiros a substituir

```
app/Actions/WorkOrders/CreateWorkOrderFromRequestAction.php   (aceita técnico OU empresa)

app/Livewire/Admin/MaintenanceRequestShow.php                    (alternador técnico/empresa)
resources/views/livewire/admin/maintenance-request-show.blade.php

resources/views/livewire/admin/work-order-show.blade.php          (texto adapta-se)
```

Sem migrations — `technician_id` e `service_provider_id` já eram
opcionais na base de dados desde o início.

```bash
cd ~/public_html/app.amimak.co.mz
php artisan config:clear
php artisan view:clear
```

## O approach que usei

Em vez de obrigar sempre a escolher um técnico específico, o painel
"Criar Work Order" (num pedido `APPROVED`) passa a ter **dois modos**,
por radio button:

1. **Técnico** — como já era, escolhe uma pessoa específica (interna ou
   de fornecedor)
2. **Empresa (sem técnico definido ainda)** — escolhe só a empresa
   fornecedora responsável; a Work Order fica criada com
   `service_provider_id` preenchido e `technician_id` vazio

Nos dois casos a Work Order é criada normalmente (número automático,
checklist se aplicável, pedido avança para `SCHEDULED`).

**Depois**, no detalhe da Work Order (`/admin/work-orders/{id}`), o
painel que antes só dizia "Reatribuir Técnico" agora adapta-se:
- Se ainda não tem técnico → **"Atribuir Técnico"**
- Se já tem → **"Reatribuir Técnico"** (como antes)

Assim, o fluxo fica: *sabes que é a "ElevaTech Lda" que vai tratar disto,
mas ainda não sabes qual dos técnicos deles vai aparecer* → crias a WO já
com a responsabilidade certa, e preenches o técnico assim que souberes
(ou a própria empresa avisa).

## Testar

1. Aprova um pedido → no painel "Criar Work Order", escolhe **"Empresa"**
   → selecciona um fornecedor → "Criar Work Order"
2. Confirma que a WO aparece na listagem, sem técnico, mas com o nome do
   fornecedor visível onde reparaste antes
3. Abre a WO → confirma que o painel lateral diz **"Atribuir Técnico"**
   (não "Reatribuir") → escolhe um técnico → confirma que passa a
   "Reatribuir" depois disso
