# Tela de Rotas — Como Usar

Guia prático para criar e gerenciar rotas de entrega via transportadora no dia a dia do contexto **LOG**.
**Frota Própria:** Este guia cobre exclusivamente a criação de rotas para **transportadoras (TRP)**. Para rotas com motoristas próprios, consulte a [documentação de Rotas do GO](https://abbiamo-guide.netlify.app/go/products/rotas/como-usar/).

---

## Fluxo típico

1. Acesse **Operação > Rotas** (`/routes`).
2. Defina período, status e transportadora nos filtros principais para trazer a visão correta.
3. Use filtros avançados para localizar rotas por pedido ou status de entrega.
4. Clique em uma rota para abrir o painel lateral com detalhes, lista de entregas e mapa.
5. Use o menu ⋮ para executar ações individuais na rota.
6. Para criar uma nova rota, clique em **Nova rota** no cabeçalho.

---

## Filtrar e localizar rotas

### Filtros principais

- **Status** — filtre por CRIADA, EM EXECUÇÃO, CANCELADA, PEDIDOS CONCLUÍDOS ou FINALIZADA
- **Entregue por** — filtre pela transportadora responsável
- **Período** — janela de datas (padrão: últimos 7 dias)
- **Filtros avançados** — nome da rota, motorista (quando disponível), número do pedido e status de entrega
**Período padrão:** A tela carrega com os últimos 7 dias selecionados. Se uma rota não aparecer na listagem, verifique se a data de criação está dentro do período e amplie o intervalo se necessário.

---

## Acompanhar uma rota

Clique em qualquer linha da tabela para abrir o painel lateral com:

- Lista de entregas e status individual de cada uma
- Transportadora responsável
- Visualização do trajeto no mapa

A URL é atualizada com `?route_id=` — você pode copiar o link para compartilhar diretamente a rota em questão.

---

## Ações por rota

### Solicitar coleta

Encaminha a rota para uma transportadora integrada. Disponível quando a rota ainda não tem responsável atribuído e todos os pedidos pertencem a uma única filial.

### Duplicar rota

Cria uma nova rota com os mesmos pedidos e configurações. Disponível para a maioria dos status, exceto **EM EXECUÇÃO** e **PEDIDOS CONCLUÍDOS**.

### Cancelar rota
**Ação irreversível:** Cancelar uma rota não pode ser desfeito. Os pedidos vinculados retornam ao estado pendente, mas a rota é permanentemente cancelada.

---

## Criar uma rota via transportadora

### Como acessar

Clique em **Nova rota** no canto superior direito da tela de Rotas. A URL muda para `/routes/create`.

### Layout da tela

A tela de criação é dividida em **dois painéis simultâneos**:

| Painel | O que contém |
| ------ | ------------ |
| **Esquerdo** | Modo de criação, campos de configuração e mapa com prévia do trajeto |
| **Direito** | Tabela de pedidos disponíveis para seleção, com filtros |
**Selecione o modo correto:** Na tela de criação, existem dois modos: **Frota Própria** e **Transportadora**. No contexto LOG, selecione sempre a aba **Transportadora**.

### Campos — aba Transportadora

| Campo | Obrigatório | Descrição |
| ----- | ----------- | --------- |
| **Filial** | Sim | Filial de origem dos pedidos. Define a transportadora e as opções de método disponíveis |
| **Método** | Sim | Modalidade ou serviço da transportadora (ex.: Expresso, Econômico) |
| **Retorno obrigatório** | Não | Toggle — quando ativado, exige que o veículo retorne ao depósito de origem após as entregas |

### Selecionar pedidos

No painel direito, use os filtros para localizar e selecionar os pedidos a incluir na rota:

- **Busca** por número do pedido, nome do cliente ou filial
- **Marcadores** — filtre por tags aplicadas aos pedidos
- **Filial** — filtre por filial de origem
- **Período** — ajuste o intervalo de datas
- **Filtros avançados** — opções adicionais de filtragem
**Limite de pedidos:** Cada rota suporta no máximo **200 pedidos**. A barra de progresso no topo do painel direito exibe o contador em tempo real (ex.: `45/200`).
**Visualizar apenas selecionados:** Use o ícone de olho (👁) ao lado do contador para alternar entre exibir todos os pedidos disponíveis ou apenas os já selecionados.

### Sugerir rota e prévia

| Ação | O que faz |
| ---- | --------- |
| **Sugerir rota** | Calcula a sequência otimizada de entregas. Requer ao menos um pedido selecionado. |
| **Prévia de rota** | Exibe o trajeto no mapa à esquerda antes de confirmar a criação. |

### Confirmar criação

Após configurar a rota e selecionar os pedidos, clique em **Criar Rota** (botão no canto inferior direito). O sistema valida os dados e cria a rota. Você é redirecionado de volta para a tela de listagem.

---

### Validações e restrições
**Note:** - Mínimo de **1 pedido** por rota
- Máximo de **200 pedidos** por rota
- Todos os pedidos devem estar em um status roteável
- Todos os pedidos devem pertencer ao mesmo seller group
- A filial selecionada deve ter a transportadora integrada configurada

### Erros durante a criação

| Código | O que significa |
| ------ | --------------- |
| `ORDERS_NOT_ROUTEABLE` | Um ou mais pedidos selecionados não estão em status roteável |
| `DIFFERENT_SELLER_IDS` | Pedidos de seller groups diferentes foram incluídos na seleção |
| `COULD_NOT_SUGGEST_ROUTE_WITH_MUST_HAVE_ORDERS` | O otimizador não conseguiu incluir todos os pedidos obrigatórios na sugestão |
| `COULD_NOT_SUGGEST_ROUTE_WITH_CURRENT_CONFIG` | A configuração atual não permite gerar uma sugestão de rota |

---

## Boas práticas operacionais

- Verifique o **status dos pedidos** antes de selecioná-los — apenas pedidos em status roteável podem ser incluídos.
- Confirme que a **filial selecionada** possui integração ativa com a transportadora desejada.
- Use **Sugerir rota** para otimizar automaticamente a sequência de entregas quando a transportadora permite.
- Use **Prévia de rota** para validar visualmente o trajeto antes de confirmar.

---

## Próximos passos

- [**Troubleshooting**](https://abbiamo-guide.netlify.app/log/products/rotas/troubleshooting/) — botão desabilitado, erros de criação e outros problemas comuns.