PROC002 - Nova DC-e
1. Introdução
Essa documentação visa descrever o cadastro de um novo tipo de documento no GerencieAqui, a DC-e (Declaração de Conteúdo Eletrônica).
2. Processos
|
Processo |
Envolvidos |
Dados de Entrada |
Dados de Saída |
| ROC001 - Listagem de DC-e | Listagem das DC-e lançadas |
|
|
| PROC002 - Nova DC-e | - |
Novas DC-e ou edição de DC-e já lançadas |
DC-e cadastrada ou alterada |
Processos Relacionados
Especificação Funcional
PROC002 Novo DC-e
Protótipo de Tela:
Imagem I - Protótipo de tela para o lançamento de uma nova DC-e.
Descrição dos Campos:
Regras de Interface:
1. Destinatário: placeholder: "Insira o nome do Destinatário". A partir da terceira letra digitada, deve ser exibida a lista de 10 clientes possíveis para seleção.
2. Data Emissão: valor padrão: data considera como "hoje".
3. Finalidade da DC-e: valor padrão: "DC-e Normal". Por enquanto é a única opção disponível.
4. Dados de Terceiros: o clique no botão deve iniciar o PROC002.1 Informação de Dados de Terceiros.
5. Código de Barras: placeholder: “Insira o código de barras”. A partir da inserção ou leitura de um código de barras existente, as informações vinculadas (nome e valor unitário) ao cadastro do produto inserido deverão ser atualizadas em tela.
6. Nome: placeholder: "Insira o nome do Produto". A partir da terceira letra digitada, deve ser exibida a lista de 10 produtos possíveis para seleção.
7. Quant. Estoque: deve exibir o saldo de estoque do produto.
8. Grade: desabilitado por padrão. Deve ser habilitado somente quando um produto vinculado a uma variação for inserido. Nesse caso, o placeholder se torna "Selecione" e na combobox é possível selecionar qual a grade vinculada,
9. Quantidade: placeholder: 0,0.
10. Valor Unitário: placeholder: 0,0.
11. Valor Total: placeholder: 0,0. Campo desabilitado por padrão.
12. Informações Complementares
: o clique no botão deve realizar a abertura da dialog para inserção de informações complementares sobre o produto específico. O tamanho do campo é de 500 caracteres e a informação só a é salva com o clique no botão "Salvar". (O layout está antigo, seguir o novo padrão).

Imagem II - Protótipo de tela para a inserção de informações adicionais do produto.
12. Inserir: o botão inserir deve realizar a validação dos campos obrigatórios para a inserção de um produto. Caso algum campo não esteja preenchido, exibir uma mensagem de Erro (vermelha) com o campo correspondente. Exemplo: Erro! Informe [O/A CAMPO X]. Caso todos os campos obrigatórios estejam preenchidos, o produto deve inserido na grid de listagem de produtos inseridos.
13. Editar
: o clique no botão de editar dialog de edição de quantidade e valor unitário do produto inserido. A informação só a é salva com o clique no botão "Salvar". (O layout está antigo, seguir o novo padrão).

Imagem III - Protótipo de tela para a edição dos valores do produto.
14. Excluir
: o clique no botão deve exibir a mensagem de confirmação "Você realmente deseja excluir este produto?" Caso sim, o produto deve ser removido da grid. Caso não, nada deverá ser feito,
15. Modalidade de Transporte: valor padrão: Próprio.
16. CNPJ da Transportadora: campo desabilitado por padrão. Deve estar habilitado somente quando a modalidade de transporte selecionada for "Terceiros".
17. Adicionar Obs. ao Fisco: o clique no botão deve iniciar o PROC002.2 Adicionar Obs ao Fisco.
18. Adicionar Obs. Marketplace: o clique no botão deve iniciar o PROC002.3 Adicionar Obs Marketplace.
19. Total dos Produtos: exibe o somatório total de todos os produtos inseridos.
20. Total da DC-e: exibe o somatório total de todos os produtos inseridos (total da DC-e).
21. Voltar: o clique no botão "Voltar" deve retornar a página de listagem.
22. Novo: o clique no botão deve recarregar a página iniciando uma nova DC-e, descartando alterações feitas.
23. Excluir: o clique no botão deve exibir uma mensagem de confirmação "Você realmente deseja excluir essa DC-e?" Caso não, nada a fazer. Caso sim e o documento puder ser excluido, retornar para a tela de listagem.
24. Salvar Rascunho: deve validar os campos de preenchimento obrigatório e caso um ou mais campos não estejam preenchidos, deve exibir uma mensagem de erro para cada um, assinalando a necessidade de preenchimento. Exemplo "Erro! O campo [X] é de preenchimento obrigatório!". Caso a DC-e possa ser salva, exibir a mensagem de sucesso (verde) "Salvo com sucesso" e manter o usuário na mesma página.
25. Salvar: deve validar os campos de preenchimento obrigatório e caso um ou mais campos não estejam preenchidos, deve exibir uma mensagem de erro para cada um, assinalando a necessidade de preenchimento. Exemplo "Erro! O campo [X] é de preenchimento obrigatório!". Caso a DC-e possa ser salva, exibir a mensagem de sucesso (verde) "Salvo com sucesso" e redirecionar o usuário para a tela de listagem.
Regras de Negócio:
1. Valor Total: o valor total é calculado a partir da multiplicação entre o Valor Unitário e a Quantidade.
2. Excluir: deve validar se o DC-e pode ser excluido e realizar a exclusão do registro no banco de dados, caso sim.
3. Salvar Rascunho: caso o DC-e possa ser salvo, deve realizar o salvamento do registro no banco de dados.
4. Salvar: caso o DC-e possa ser salvo, deve realizar o salvamento do registro no banco de dados.
PROC002.1 Informação de Dados de Terceiros
Protótipos de Tela:

Imagem IV - Dados do Responsável pela Mercadoria I - Marketplace

Imagem V - Dados do Responsável pela Mercadoria II - Transportadora

Imagem VI - Dados do Responsável pela Mercadoria III - Fisco
Descrição dos Campos:
|
Campo |
Tipo |
Tamanho |
Obrig. ? |
Máscara |
Observações |
| Marketplace | |||||
| CNPJ* | Texto | 18 | Sim, para o grupo | 00.000.000/0000-00 | Máscara padrão de CNPJ do sistema |
| Razão Social* | Texto | 60 | Sim, para o grupo | ||
| Site* | Texto | 120 | Sim, para o grupo | ||
| Informações Adicionais do Marketplace | Texto | 5000 | |||
| Transportadora | |||||
| CNPJ* | Texto | 18 | Sim, para o grupo | 00.000.000/0000-00 | Máscara padrão de CNPJ do sistema |
| Razão Social* | Texto | 60 | Sim, para o grupo | ||
| Informações Adicionais da Transportadora | Texto | 5000 | |||
| Fisco | |||||
| CNPJ* | Texto | 18 | Sim, para o grupo | 00.000.000/0000-00 | Máscara padrão de CNPJ do sistema |
| Razão Social* | Texto | 60 | Sim, para o grupo | ||
| Sigla da UP* | Texto | 2 | Sim, para o grupo | A escolher entre: vazio,
AC, AL, AP, AM, BA, CE, DF, ES, GO, MA, MT, MS, MG, PA, PB, PR, PE, PI, RJ, RN, RS, RO, RR, SC, SP, SE, TO |
|
| Informações Adicionais de interesse ao Fisco | Texto | 5000 | |||
Regras de Interface:
1. CNPJ*: placeholder (1): "Insira o CNPJ do Martketplace ". Placeholder (2): "Insira o CNPJ da Transportadora". Placeholder (3): "Insira o CNPJ do Orgão ".
2. Razão Social*: placeholder (1): "Insira a Razão Social do Martketplace ". Placeholder (2): "Insira a Razão Social da Transportadora". Placeholder (3): "Insira a Razão Social do Orgão ".
3. Site*: placeholder: "Digite o endereço do site do Marketplace".
4. Informações Adicionais do Marketplace: a quantidade de caracteres restantes deve ser atualizada conforme as informações são inseridas.
5. Informações Adicionais da Transportadora: a quantidade de caracteres restantes deve ser atualizada conforme as informações são inseridas.
6. Sigla da UF: valor padrão: vazio.
7. Informações Adicionais de interesse ao Fisco: a quantidade de caracteres restantes deve ser atualizada conforme as informações são inseridas.
8. Fechar: tanto o botão fechar quando o X no canto superior direito devem fechar a dialog sem salvar nenhuma alteração.
8. Salvar: as abas são de preenchimento exclusivo, ou seja, somente uma das abas poderá estar preenchida. Caso informações de duas abas diferentes estivem preenchidas, deverá ser exibida a mensagem de erro: "Erro! Informe somente um terceiro para envio da DC-e!". O botão deve validar também os campos de preenchimento obrigatório para a opção selecionada e retornar uma mensagem de erro para cada um dos campos não preenchidos: "Erro! O campo [X] é de preenchimento obrigatório!. Caso as informações possam ser salvas, a dialog deve ser fechada. As informações são virtuais e só serão salvas no banco com o botão principal da página.
PROC002.2 Adicionar Obs. ao Fisco
Protótipos de Tela:

Imagem VII - Informações livres direcionadas ao Fisco.
Descrição dos Campos:
Regras de Interface:
1. Titulo*: placeholder: "Informe e identificação do campo".
2. Descrição*: placeholder: "Informe o conteúdo do campo".
3. Inserir: deve validar se os campos obrigatórios estão preenchidos. Caso não, exibir uma mensagem de erro para cada um dos campos: "Erro! O campo [X] é de preenchimento obrigatório!". Caso sim, tornar as informações visiveis na listagem abaixo.
3. Excluir
: o clique no botão deve excluir a respectiva linha do grid.
4. Fechar: o clique no botão deve fechar a dialog sem salvar as alterações realizadas.
5. Salvar: o clique no botão deve fechar a dialog salvando as alterações realizadas. As informações são virtuais e só serão salvas no banco com o botão principal da página.
PROC002.2 Adicionar Obs. Marketplace
Protótipo de Tela:
Imagem VII - Informações livres direcionadas ao Marketplace.
Descrição dos Campos:
Regras de Interface:
1. Titulo*: placeholder: "Informe e identificação do campo".
2. Descrição*: placeholder: "Informe o conteúdo do campo".
3. Inserir: deve validar se os campos obrigatórios estão preenchidos. Caso não, exibir uma mensagem de erro para cada um dos campos: "Erro! O campo [X] é de preenchimento obrigatório!". Caso sim, tornar as informações visiveis na listagem abaixo.
3. Excluir
: o clique no botão deve excluir a respectiva linha do grid.
4. Fechar: o clique no botão deve fechar a dialog sem salvar as alterações realizadas.
5. Salvar: o clique no botão deve fechar a dialog salvando as alterações realizadas. As informações são virtuais e só serão salvas no banco com o botão principal da página
Questões Técnicas:
Deverão ser criadas novas tabelas no banco de dados para armazenamento das novas informações.
CREATE TABLE `dce` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`criacaoHorario` bigint(20) DEFAULT NULL,
`criacaoUsuario` int(11) DEFAULT NULL,
`data` bigint(20) NOT NULL,
`ultimoHorario` bigint(20) DEFAULT NULL,
`ultimoUsuario` int(11) DEFAULT NULL,
`usuarioId` bigint(20) NOT NULL,
`empresaId` bigint(20) DEFAULT NULL,
`clienteId` bigint(20) DEFAULT NULL,
`cnpjMarketplace` varchar(18) DEFAULT '',
`razaoMarketplace` varchar(60) DEFAULT '',
`siteMarketplace` varchar(120) DEFAULT '',
`infoAdMarketplace` varchar(5000) DEFAULT NULL,
`cnpjTransportadora` varchar(18) DEFAULT '',
`razaoTransportadora` varchar(60) DEFAULT '',
`infoAdTransportadora` varchar(5000) DEFAULT NULL,
`cnpjFisco` varchar(18) DEFAULT '',
`razaoFisco` varchar(60) DEFAULT '',
`ufFisco` varchar(2) DEFAULT '',
`infoAdFisco` varchar(5000) DEFAULT NULL,
`valorTotal` decimal(13,2) DEFAULT NULL,
`valorTotalLiquido` decimal(13,2) DEFAULT NULL,
`modalidadeTransporte` int(1) DEFAULT 0,
`cnpjTerceiros` varchar(18) DEFAULT '',
`observacao` varchar(5000) DEFAULT NULL,
`DCe_stAssinado` bit(1) NOT NULL,
`DCe_stAutorizado` bit(1) NOT NULL,
`DCe_stCancelado` bit(1) NOT NULL,
`DCe_stEnviado` bit(1) NOT NULL,
`DCe_stValidado` bit(1) NOT NULL,
`ambiente` varchar(255) DEFAULT NULL,
`cDV` int(11) NOT NULL,
`cMDFe` int(11) NOT NULL,
`caminhoArquivoXML` varchar(255) DEFAULT NULL,
`chaveAcesso` varchar(255) DEFAULT NULL,
`chaveConf` varchar(255) DEFAULT NULL,
`finalidade` int(11) NOT NULL,
`modelo` int(11) NOT NULL,
`numeroDCe` int(11) NOT NULL,
`procEmi` int(11) NOT NULL,
`protAutoriza` varchar(255) DEFAULT NULL,
`serie` int(11) NOT NULL,
`tpEmis` int(11) NOT NULL,
`tpEmit` int(11) NOT NULL,
`ufEmit` varchar(255) DEFAULT NULL,
`verProc` varchar(255) DEFAULT NULL,
`geradoEstoque` bit(1) DEFAULT b'0',
`cteVinculado` varchar(255) DEFAULT NULL,
)
//validar o lote na tabela da NFe
CREATE TABLE `dceitem` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`criacaoHorario` bigint(20) DEFAULT NULL,
`criacaoUsuario` int(11) DEFAULT NULL,
`ultimoHorario` bigint(20) DEFAULT NULL,
`ultimoUsuario` int(11) DEFAULT NULL,
`informacoesAdicionais` varchar(500) DEFAULT NULL,
`quant` decimal(19,10) DEFAULT NULL,
`vlTotal` decimal(19,2) DEFAULT NULL,
`vlTotalLiq` decimal(19,2) DEFAULT NULL,
`vlUnit` decimal(19,10) DEFAULT NULL,
`produtoId` bigint(20) DEFAULT NULL,
`nomeProduto` varchar(120) DEFAULT NULL,
`dceId` bigint(20) DEFAULT NULL,
`gradeId` bigint(20) DEFAULT 0,
`tabelaPreco` varchar(100) DEFAULT '',
`valorCusto` decimal(19,4) DEFAULT 0.0000,
`tipovariacao` varchar(255) DEFAULT NULL,
`variacaoEstoque` bigint(20) NOT NULL DEFAULT 0,
)
©SOFTEN SISTEMAS 2026

No Comments