# CTE Simplificado

# PROC001 - Ajuste em tela principal

 ***O objetivo do CTe simplificado é ser utilizado em operações com um único tomador de serviço. Para simplificar as operações de um cliente em um único documento, semelhante ao CTe globalizado.**  **Teremos dois tipos – tag: tpCTe – CT-e Simplificado e Substituição CT-e Simplificado***

#### ***Protótipo de Tela:***

***1.*** O "Tipo do CTe" deve ser alterado de card, ficando no card inicial de "Dados do CT-e". Isso visa facilitar o preenchimento inicial e os demais processos específicos do CTe Simplificado.

[![image-1722522091200.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/scaled-1680-/image-1722522091200.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/image-1722522091200.png)

[![image-1722521922052.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/scaled-1680-/image-1722521922052.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/image-1722521922052.png)

#### ***Regras de Interface:***

***1. Tipo do CT-e, adicionar: "4 - CTe Simplificado" e "5 - Substituição CTe Simplificado "***

***1.1*** Ao ser selecionado o tipo de "CTe 4 - Simplificado" ou "5 - Sub. CTe Simplificado", os campos abaixo devem ser bloqueados o preenchimento.

- - - **Dados da Nota Fiscal**
        - **Valores que Compõe o Frete (Com exceção dos impostos)**

***1.2*** Ao selecionar o tomador do CTe, o restante dos campos que não são tomador devem ficar bloqueados. Ou seja, se selecionado Remetente, apenas esse campo deve ficar disponível para preenchimento.  
Com adendo que o tomador outros devem ser informado ao finalizar o CTe, conforme o fluxo atual, sendo assim, bloqueando todos os campos das partes interessadas na tela principal.  
**Exemplo:** Tomador é o Remetente

[![image-1722272725438.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-07/scaled-1680-/image-1722272725438.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-07/image-1722272725438.png)  
-

[![image-1722272745519.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-07/scaled-1680-/image-1722272745519.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-07/image-1722272745519.png)

#### ***Regras de Negócio:***

**2.** As principais diferenças são:

- - - Como o CTe simplificado visa realizar a entrega tendo um tomador e vários remetentes/destinatários, são vinculados vários documentos.
        - O vinculo é realizado pela inserção do percurso via cidade inicio e fim, e as notas fiscais dessa rota.
        - Também serão informados os componentes adicionais do frete a cada entrega. Pedágio, seguro, tributos...Todos manualmente.

**3.** A impressão vai ser realizada usando os mesmos parâmetros do DACTE do CTe comum por hora.

#### ***Questões Técnicas:***

***1. SCHEMAS: [Pacote Schemas NT 2024.002](https://www.cte.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=1hNQGC4YA/o=)***

***2. Nota Técnica: [<span class="tituloConteudo">Nota Técnica 2024.002 - v.1.01 - Publicada em 12/07/2024</span>](https://www.cte.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=YGqFknkRgmk=)***

***2. Layout XML:***

***2.1 TOMADOR:*** Apenas tomador vai ser informado no XML, sendo assim, a parte definida (remetente, destinatário e afins) entra na TAG tomador e não como sua respectiva posição no transporte.

***2.2 Uso de tags principais :***

<div id="bkmrk-infcte-%28obrigat%C3%B3rio%29"><div><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg><div>***infCte (obrigatório)***</div></div></div>***ide (obrigatório)  
Compl (opcional)  
fluxo (não usar, serve pro aéreo)  
pass (não usar, serve pro aéreo)  
ObsCont (opcional)  
ObsFiscO (opcional)  
Emit (obrigatório)   
Toma (informar completo, obrigatório)*** <span style="color: #ff0000;">--informa apenas tomador, somente identifica se é remetente, dest. ou etc.</span> ***InfCarga (obrigatorio)  
det (obrigatorio, vai conter todo o trajeto)*** <span style="color: #ff0000;">--Novo campo onde são informados os trajetos</span> ***infModal (obrigatorio)  
cobr(opcional)  
infCteSub(opcional)  
imp(obrigatorio)  
total(obrigatorio)  
autXML(opcional)  
infRespTec(opcional)  
infSolicNFF(opcional)  
infPAA(opcional)  
infCTeSupl(opcional)***# PROC002 - Tela de inserção de rotas

#### ***Protótipo de Tela:***

***1.*** Alterada *accordion* para permitir inserção de trajetos.

[![image-1722951839774.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/scaled-1680-/image-1722951839774.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/image-1722951839774.png)

***2.** Dialog* de Entregas

[![image-1722955091631.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/scaled-1680-/image-1722955091631.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/image-1722955091631.png)

#### ***Descrição dos campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o" style="width: 800px;"><tbody><tr valign="top"><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Cidade Origem</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Cidade Fim</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td></tr><tr style="height: 29px;"><td style="width: 165px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Valor do Seguro</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Não</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td></tr><tr style="height: 29px;"><td style="width: 165px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Valor do Pedágio</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Não</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Valor do Serviço</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Componentes</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;">Button</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">-</span></td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Chave da Nota</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;"> Texto</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;">- </span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;">Sim </span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">- </span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">- </span></td></tr><tr><td style="width: 165px; border-style: solid; border-color: black;"><span style="color: #000000;">Rotas</span></td><td class="align-center" style="width: 77px; border-style: solid; border-color: black;"><span style="color: #000000;"> Listagem</span></td><td class="align-center" style="width: 68px; border-style: solid; border-color: black;"><span style="color: #000000;"> -</span></td><td class="align-center" style="width: 103px; border-style: solid; border-color: black;"><span style="color: #000000;"> -</span></td><td class="align-center" style="width: 120px; border-style: solid; border-color: black;"><span style="color: #000000;">- </span></td><td class="align-center" style="width: 267px; border-style: solid; border-color: black;"><span style="color: #000000;">- </span></td></tr></tbody></table>

#### ***Regras de interface:***

***1.*** Os campos referentes a entrega só devem ser Exibidos no tipo de Documento "NFe (CTe Simplificado)"  
***2. Cidade inicio e Cidade Fim:*** Devem indicar os transportes realizados naquela rota tanto de entregas ou coletas, a depender do tomador.  *3. Chave NF-e:*** Vai ser inserido as chaves referentes ao transporte naquele trecho.  
***4. Valores que compõem o Frete:*** Componentes de cada trecho. Especificado no **PROC002.1 - Componentes. 5. Pedágio e Seguro são componentes adicionais também, mas devido a frequência utilizada, tem campos separados.  
6.** ***ListBox:*** Vai armazenar a rota inserida. Deve conter as colunas:

**Inicio:** Nome da cidade do inicio transporte.  
**Final:** Nome da cidade fim do transporte.  
**Valor Serviço:** Valor inserido no campo "Vl Líq.. Serviço".  
**Valor Tributo:** Valor inserido no campo "Valor dos Tributos". **Valor Seguro:** Valor inserido no campo "Valor do seguro". **Pedágio:** Valor inserido no campo "Total Pedágio". **Outros Valores:** Soma dos outros componentes inseridos.  
**Menu lateral:** Opção de editar e excluir.

#### ***Regras de Negocio:***

***1. Editar:*** Ao clicar pra edição, a dialog da rota deve ser aberta novamente.

**2.** Na base de dados vai ser criada uma tabela intermediaria que vai relacionar o CTe e as entregas. O ID de cada movimento deve ser vinculado as tabelas de NFe e Componentes.

#### ***Questões Técnicas:***

***1.*** Deve ser criada a tabela para armazenar o tipo do documento "CTe Simplificado"

```SQL
CREATE TABLE ctesimplificadorota (
id BIGINT,
cteId BIGINT,
inicio BIGINT,
final BIGINT,
empresaId BIGINT
);
```

***2.***Deve ser criada a tabela de outros valores (adicionais):

```SQL
CREATE TABLE ctesimplificadovalores (
id BIGINT,
descricao VARCHAR(15),
valor DECIMAL(15,2),
rota BIGINT,
empresaId BIGINT
);
```

### **PROC002.1 - Componentes**

#### ***Protótipo de Tela:***

***1. Dialog dos componentes adicionais.***

[![image-1722955138668.png](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/scaled-1680-/image-1722955138668.png)](https://docs.softensistemas.com.br/uploads/images/gallery/2024-08/image-1722955138668.png)

#### ***Descrição dos campos:***

<table border="1" cellpadding="7" cellspacing="0" id="bkmrk-campo-tipo-tamanho-o-0" style="width: 800px; height: 214px;"><tbody><tr style="height: 35px;" valign="top"><td bgcolor="#acb9ca" style="width: 165px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Campo**</span>

</td><td bgcolor="#acb9ca" style="width: 61px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tipo**</span>

</td><td bgcolor="#acb9ca" style="width: 84px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Tamanho**</span>

</td><td bgcolor="#acb9ca" style="width: 188px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Obrig. ?**</span>

</td><td bgcolor="#acb9ca" style="width: 112px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Máscara**</span>

</td><td bgcolor="#acb9ca" style="width: 190px; border-style: solid; border-color: black; height: 35px;"><span style="color: #000000;">**Observações**</span>

</td></tr><tr style="height: 29px;"><td style="width: 165px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 61px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 84px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 188px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 112px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 190px; border-style: solid; border-color: black; height: 29px;"> </td></tr><tr style="height: 29px;"><td style="width: 165px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 61px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 84px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 188px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 112px; border-style: solid; border-color: black; height: 29px;"> </td><td class="align-center" style="width: 190px; border-style: solid; border-color: black; height: 29px;"> </td></tr><tr style="height: 46px;"><td style="width: 165px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">Descrição Outros Valores</span></td><td class="align-center" style="width: 61px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 84px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 188px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">Não</span></td><td class="align-center" style="width: 112px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 190px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td></tr><tr style="height: 29px;"><td style="width: 165px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Outros Valores</span></td><td class="align-center" style="width: 61px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Texto</span></td><td class="align-center" style="width: 84px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 188px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">Não</span></td><td class="align-center" style="width: 112px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 190px; border-style: solid; border-color: black; height: 29px;"><span style="color: #000000;">-</span></td></tr><tr style="height: 46px;"><td style="width: 165px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">Listagem Outros Valores</span></td><td class="align-center" style="width: 61px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">ListBox</span></td><td class="align-center" style="width: 84px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 188px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 112px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td><td class="align-center" style="width: 190px; border-style: solid; border-color: black; height: 46px;"><span style="color: #000000;">-</span></td></tr></tbody></table>

#### ***Regras de interface:***

**1.** A Dialog dos componentes deve ser semelhante ao padrão do CTe.

#### ***Questões Técnicas:***

**1.** Os dados devem ser salvos na tabela ctesimplificadovalores