# Instalar: Associar Cliente (Empresa) a um Pedido

## Ficheiros a substituir

```
app/Livewire/Admin/MaintenanceRequestCreate.php
resources/views/livewire/admin/maintenance-request-create.blade.php

app/Livewire/Admin/MaintenanceRequestShow.php
resources/views/livewire/admin/maintenance-request-show.blade.php
```

Sem migrations — o campo `client_id` já existia na base de dados desde o
início, só faltava a interface para o preencher no fluxo interno.

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

## O que estava em falta

Quando a **equipa interna** cria um pedido (`/admin/maintenance-requests/create`),
não havia forma de dizer "isto é para o inquilino X" — o pedido ficava
sempre sem cliente associado, mesmo sendo relativo a um imóvel com
inquilino. (Pedidos criados pelo próprio cliente via portal já ficavam
sempre correctamente associados a ele — isso nunca teve problema.)

## O que ganhaste

### Ao criar (interno)
Depois de escolheres o **Imóvel**, aparece um dropdown **"Cliente
(opcional)"** — só lista os clientes com relação activa a esse imóvel
específico (nunca uma lista genérica de todos os clientes da base de
dados). Podes deixar em branco para pedidos puramente internos (ex:
inspeção de rotina sem inquilino envolvido).

### Depois de criado
No detalhe do pedido (`/admin/maintenance-requests/{id}`), o campo
"Cliente" tem um link **"editar"** — para associar ou trocar o cliente a
qualquer momento, mesmo que tenha ficado em branco na criação.

## Testar

1. `/admin/maintenance-requests/create` → escolhe um imóvel que tenha
   pelo menos um cliente associado (ex: "Edifício Central" com "Empresa
   Teste Lda") → confirma que aparece no dropdown de Cliente
2. Cria o pedido com esse cliente escolhido
3. No detalhe do pedido, clica "editar" ao lado de Cliente → muda para
   "Nenhum" → Guardar → confirma que actualiza
4. Testa também um imóvel sem clientes associados → confirma que aparece
   a mensagem a explicar porque não há opções
