# Vendedor de Roteirização

## Visão Geral

O módulo de "**Vendedores"** de Roteirização é uma ferramenta que permite cadastrar, gerenciar e manter informações dos vendedores que utilizam o sistema de roteirização. As telas apresentadas permitem visualizar, filtrar, adicionar, editar e importar vendedores. Cada vendedor pode ter acesso ao sistema para visualizar pedidos através de credenciais específicas.

Para acessar clique no menu **ROTEIRIZAÇÃO** opção **VENDEDORES.**

## Tela Principal - Listagem de Vendedores

### Descrição

A tela principal exibe uma lista de vendedores cadastrados no sistema com seus respectivos códigos e nomes. A interface possui uma seção de filtros no topo, uma tabela de dados no centro e controles de paginação na parte inferior.

### Elementos da Interface

#### Seção de Filtros

- **Título:** "Vendedores de Roteirização"
- **Campo de texto - Nome:** Permite filtrar vendedores pelo nome
- **Checkbox - Somente ativo?:** Quando marcado, exibe apenas vendedores ativos
- **Botões de Ação:**
    - **Pesquisar:** Ícone de lupa, aplica os filtros selecionados
    - **Limpar Filtros:** Ícone de arquivo, limpa todos os filtros aplicados
    - **Novo:** Ícone de adição, abre a tela de cadastro de novo vendedor
    - **Exportar para CSV:** Ícone de salvar, exporta a lista em formato CSV
    - **Importar:** Abre a janela para importação em massa de vendedores

#### Tabela de Dados

- **Colunas:**
    - **CÓDIGO:** Identificador único do vendedor
    - **NOME:** Nome completo do vendedor
- **Comportamento:**
    - Registros inativos aparecem em vermelho
    - Clique em qualquer linha abre a tela de edição daquele vendedor

#### Paginação

- **Indicador de registros:** Exibe o intervalo de registros sendo mostrados e o total
- **Controles de página:** Botões para navegar entre as páginas de resultados

## Tela de Cadastro/Edição de Vendedor

### Descrição

Esta tela permite adicionar um novo vendedor ou editar as informações de um vendedor existente. Inclui campos para código, nome, status e senha de acesso.

### Elementos da Interface

- **Título:** "Vendedor de Roteirização"
- **Campo de texto - Código:** Identificador único do vendedor (obrigatório quando se define uma senha)
- **Campo de texto - Nome:** Nome completo do vendedor (obrigatório)
- **Checkbox - Status ativo?:** Define se o vendedor está ativo no sistema
- **Campo de senha - Senha:** Senha para acesso ao sistema de vendedores (mínimo 6 caracteres)
- **Alerta informativo:** Exibe o endereço para acesso do vendedor ao sistema após cadastro
- **Botões de Ação:**
    - **Gravar:** Salva as alterações realizadas
    - **Excluir:** Remove o vendedor do sistema (visível apenas ao editar vendedores existentes)
    - **Voltar:** Retorna para a tela de listagem sem salvar alterações

### Validações

- O campo Nome é obrigatório
- Quando se define uma senha, o campo Código torna-se obrigatório
- A senha deve ter no mínimo 6 caracteres
- Não podem existir dois vendedores com o mesmo código
- Não podem existir dois vendedores com a mesma senha

## Janela de Importação de Vendedores

### Descrição

Esta janela modal permite a importação em massa de vendedores através de um arquivo CSV.

### Elementos da Interface

- **Título:** "Arquivo de vendedores para importação"
- **Checkbox - Arquivo do Control?:** Define o formato específico do arquivo de importação
- **Área de upload:** Permite anexar um arquivo CSV
- **Mensagem informativa:** Instrução sobre o formato esperado do arquivo CSV
- **Indicação de resultado:** Exibe o resultado da importação após o processamento

## Fluxos de Trabalho

### Consultar Vendedores

1. Acesse a tela principal de Vendedores de Roteirização
2. Utilize os filtros de Nome e/ou Status para refinar a busca (opcional)
3. Clique no botão de Pesquisar (ícone de lupa) para aplicar os filtros
4. Navegue entre as páginas para visualizar todos os resultados

### Adicionar Novo Vendedor

1. Na tela principal, clique no botão Novo (ícone de adição)
2. Preencha o Nome do vendedor (obrigatório)
3. Preencha o Código do vendedor (obrigatório se definir senha)
4. Defina o Status (ativo por padrão)
5. Defina uma Senha de acesso (opcional, mínimo 6 caracteres)
6. Clique em Gravar para salvar o novo vendedor

### Editar Vendedor Existente

1. Na tela principal, clique sobre a linha do vendedor que deseja editar
2. Modifique os campos necessários
3. Clique em Gravar para salvar as alterações

### Excluir Vendedor

1. Na tela de edição de vendedor, clique no botão Excluir
2. Confirme a exclusão quando solicitado 
    - Nota: Não é possível excluir vendedores que possuem rotas ou pedidos associados

### Importar Vendedores

1. Na tela principal, clique no botão Importar
2. Marque a opção "Arquivo do Control?" se o arquivo estiver neste formato específico
3. Clique em "Anexar..." para selecionar o arquivo CSV
4. Aguarde o processamento e confirmação da importação 
    - O arquivo CSV deve ter como delimitador o ponto e vírgula (;)
    - A estrutura esperada é: CÓDIGO;NOME
    - A primeira linha é considerada cabeçalho
    - Vendedores com códigos já existentes serão atualizados

### Exportar para CSV

1. Na tela principal, clique no botão de Exportar para CSV (ícone de salvar)
2. O arquivo será gerado com os dados filtrados atualmente exibidos na tela

## Regras de Negócio

1. **Unicidade de Código**: Não é permitido cadastrar dois vendedores com o mesmo código.
2. **Unicidade de Senha**: Não é permitido cadastrar dois vendedores com a mesma senha.
3. **Tamanho da Senha**: Quando informada, a senha deve ter no mínimo 6 caracteres.
4. **Obrigatoriedade de Código**: O código é obrigatório quando se define uma senha.
5. **Exclusão de Vendedores**: Não é possível excluir vendedores que possuem rotas ou pedidos associados.
6. **Importação de Vendedores**: 
    - Vendedores com códigos já existentes terão seus nomes atualizados
    - Novos vendedores serão cadastrados automaticamente como ativos
7. **Acesso do Vendedor**: Vendedores com código e senha definidos podem acessar o sistema de pedidos através de um link específico.
8. **Status Inativo**: Vendedores inativos são mostrados em vermelho na listagem e não podem acessar o sistema.

## Funcionalidades Adicionais

1. **Formatos de Importação**: O sistema suporta dois formatos de importação: 
    - Formato padrão: CÓDIGO;NOME
    - Formato Control: Formato específico com mais campos, onde o código é precedido por "00000"
2. **Controle de Permissões**: O acesso às funcionalidades de gravação e exclusão depende das permissões do usuário logado, sendo respeitadas as capacidades de Master ou permissões de grupo.
3. **Navegação Facilitada**: A interface permite rápida alternância entre listagem e edição, mantendo os filtros aplicados.
4. **Feedback Visual**: O sistema exibe mensagens claras de erro ou sucesso para todas as operações realizadas.

## Perguntas Frequentes

### Como faço para que o vendedor acesse o sistema?

Para permitir que um vendedor acesse o sistema, é necessário cadastrar um código único e uma senha com pelo menos 6 caracteres. Após o cadastro, o vendedor poderá acessar o sistema através do link fornecido na tela de cadastro.

### Posso excluir um vendedor que já está associado a pedidos ou rotas?

Não. Para manter a integridade dos dados, o sistema não permite excluir vendedores que possuem pedidos ou rotas associados. É necessário primeiro transferir esses itens para outro vendedor antes de proceder com a exclusão.

### Como importar vendedores em lote?

Clique no botão "Importar" na tela principal, prepare um arquivo CSV com as colunas CÓDIGO e NOME separadas por ponto e vírgula (;), e faça o upload do arquivo. Se estiver importando de um sistema Control, marque a opção correspondente.

### O que acontece se eu importar um vendedor com código já existente?

O sistema irá atualizar o nome do vendedor existente, mantendo todas as outras informações e associações intactas.

### Como filtrar apenas os vendedores ativos?

Na seção de filtros da tela principal, marque a opção "Somente ativo?" e clique no botão de pesquisa (ícone de lupa).

### Por que alguns vendedores aparecem em vermelho na listagem?

Os vendedores que aparecem em vermelho na listagem são aqueles que estão inativos (com o campo "Status ativo?" desmarcado).

### É possível ter dois vendedores com o mesmo código?

Não. O código é um identificador único e o sistema não permite a duplicidade.

### É possível ter dois vendedores com a mesma senha?

Não. Para garantir a segurança, o sistema não permite que dois vendedores utilizem a mesma senha de acesso.