# Áreas e Pontos de acesso do InControl no Nexus — passo a passo

Este guia mostra o "onde" do acesso, direto no Nexus:

- **Áreas** — espaços com controle de **lotação** (salão, garagem, academia…), com a
  **ocupação ao vivo** (quantas pessoas estão em cada área agora) e quem está lá.
- **Pontos de acesso** — as **portas** controladas pelos leitores (somente para
  visualizar).

Os dois são lidos **ao vivo** do InControl. Precisa da permissão de **gerenciar o
InControl**. Não há migração de banco.

---

## Áreas (lotação)

1. No menu, **Configurações → Áreas IC** (ou `/incontrol/areas`).
2. A lista mostra cada área com a **capacidade** e a **ocupação agora** (com uma
   barrinha: verde/amarelo/vermelho conforme enche).
3. Clique numa área para ver **quem está lá** neste momento.
4. **+ Nova área**: informe o **nome** (obrigatório) e a **capacidade**. **Criar área.**

✅ **Deu certo se:** a área aparece na lista e, depois de vincular as portas a ela no
InControl, a ocupação ao vivo começa a contar.

> **Vincular a área às portas** (quais pontos de acesso contam para a lotação) é feito
> **no InControl** — a área nasce aqui sem pontos, e você associa por lá. **Editar e
> excluir** áreas também é feito no InControl (esses caminhos não foram capturados na
> engenharia reversa; entram numa próxima fase).

---

## Pontos de acesso (portas)

1. No menu, **Configurações → Pontos de acesso IC** (ou `/incontrol/access-points`).
2. A lista mostra as portas: nome, o **leitor** a que pertencem, tipo e modo.
3. Clique em **Ver** para os detalhes.

Esta tela é **somente leitura** — serve para você enxergar onde o acesso acontece. O
cadastro de pontos continua no InControl.

---

## Deu problema?

Olhe o **Log de integrações** (**Sistema → Diagnóstico → Log de integrações**, filtro
`InControl`) para o motivo real de uma falha.

- **A lista não carrega.** InControl fora do ar ou `INCONTROL_*` no `.env` errado — veja
  em **Diagnóstico**.
- **A ocupação aparece "—".** O InControl não devolveu a contagem daquela área (ou ela
  ainda não tem pontos vinculados). Vincule as portas à área no InControl.
- **"Quem está na área" está vazio.** Ninguém na área agora, ou o InControl não devolveu
  a lista naquele momento.
- **Os detalhes do ponto de acesso aparecem com nomes técnicos.** As respostas dessa
  parte da API não foram capturadas na engenharia reversa, então a tela mostra os campos
  como vierem (de forma defensiva). Se algum campo importante aparecer cru, me avise que
  eu dou um rótulo amigável.

---

## Nota técnica (para quem mantém o sistema)

- **Lidos ao vivo** (entidades de configuração do InControl), como departamentos/zonas.
- **Área — confirmado por HAR:** `GET /v1/area` (lista), `POST /v1/area/`
  (`{nome,pontos,pontos_area,capacidade}`), `GET /v1/area/{id}/quantidade_pessoas`
  (ocupação) e `GET /v1/area/{id}/local_pessoa` (quem está). **⚠ NÃO há PUT/DELETE de área
  nem GET de detalhe** no HAR — editar/excluir ficam para fase futura; criar leva
  `pontos`/`pontos_area` VAZIOS (a estrutura do vínculo não foi capturada).
- **Ponto de acesso — SÓ LEITURA:** `GET /v1/ponto_acesso` (lista) e
  `GET /v1/ponto_acesso/{id}` (detalhe). Sem criar/editar/excluir no HAR. A view renderiza
  os campos de forma defensiva (as respostas não foram capturadas).
- Mesma disciplina do resto: **não inventar endpoint — confirmar por HAR**. Para completar
  as escritas que faltam, capture um HAR editando/excluindo uma área e cadastrando um ponto.
