• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

wmixvideo / nfe / #9348

07 Jul 2026 02:20PM UTC coverage: 50.838% (+23.8%) from 26.996%
#9348

push

web-flow
Nt2020.005 (#1175)

* Implementação de serviço de recepção síncrono do MDF-e (MDFeRecepcaoSinc). Serviços Assíncronos serão desativados na data de 30 de Junho de 2024 conforme versa a NT 2024.001.

* Revert "Implementação de serviço de recepção síncrono do MDF-e (MDFeRecepcaoSinc). Serviços Assíncronos serão desativados na data de 30 de Junho de 2024 conforme versa a NT 2024.001."

This reverts commit d597f6919.

* Atualização dos schemas e campos conforme NT2023.004.

* Correção da Tag DFeReferenciado e adicionado validação para chave de acesso.

* Corrigindo a estrutura da Classe TCIBS - faltava o field vIBS.

Adiciondo static nas inner class para possibilitar a desserialização do xml do CT-e.

* Correção do set que deve ser um BigDecimal.

* Adequa campos nDI, nAdicao, nSeqAdic e nDraw à NT 2020.005 v1.21

Ajustes no grupo I01 (Declaração de Importação) do NFe 4.00 conforme
Nota Técnica 2020.005 v1.21 (seções 2.1.2, 2.1.8 e 3.2 do leiaute):

- nDI (I19): tamanho máximo alterado de 12 para 15 caracteres.
- nAdicao (I26): campo passa de obrigatório (1-1) para opcional (0-1),
  já que não deve ser preenchido no caso de DUImp.
- nSeqAdic (I27): tamanho máximo alterado de 3 para 5 dígitos.
- nDraw (I29a / I51 - detExport): campo deixa de ser numérico e passa
  a ser alfanumérico, com tamanho máximo de 20 caracteres (antes,
  numérico com até 11 dígitos).

Classes alteradas:
- NFNotaInfoItemProdutoDeclaracaoImportacao (nDI)
- NFNotaInfoItemProdutoDeclaracaoImportacaoAdicao (nAdicao, nSeqAdic, nDraw)
- NFNotaInfoItemDetalheExportacao (nDraw)
- DFIntegerValidador (novo método tamanho5)

Testes unitários correspondentes atualizados para refletir os novos
limites e a mudança de tipo do campo nDraw (BigInteger -> String).

---------

Co-authored-by: ediva <ediva@emsnote5>
Co-authored-by: Walter Portugal <walter@softlandsistemas.com.br>

10 of 10 new or added lines in 5 files covered. (100.0%)

2949 existing lines in 402 files now uncovered.

14927 of 29362 relevant lines covered (50.84%)

0.51 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

73.17
/src/main/java/com/fincatto/documentofiscal/nfe310/classes/nota/NFNotaInfoAvulsa.java
1
package com.fincatto.documentofiscal.nfe310.classes.nota;
2

3
import com.fincatto.documentofiscal.DFBase;
4
import com.fincatto.documentofiscal.DFUnidadeFederativa;
5
import com.fincatto.documentofiscal.validadores.DFBigDecimalValidador;
6
import com.fincatto.documentofiscal.validadores.DFStringValidador;
7
import org.simpleframework.xml.Element;
8

9
import java.math.BigDecimal;
10
import java.time.LocalDate;
11

12
public class NFNotaInfoAvulsa extends DFBase {
1✔
13
    private static final long serialVersionUID = 724335920156427201L;
14
    
15
    @Element(name = "CNPJ")
16
    private String cnpj;
17
    
18
    @Element(name = "xOrgao")
19
    private String orgaoEmitente;
20
    
21
    @Element(name = "matr")
22
    private String matriculaAgente;
23
    
24
    @Element(name = "xAgente")
25
    private String nomeAgente;
26

27
    @Element(name = "fone", required = false)
28
    private String fone;
29
    
30
    @Element(name = "UF")
31
    private String uf;
32

33
    @Element(name = "nDAR", required = false)
34
    private String numeroDocumentoArrecadacaoReceita;
35

36
    @Element(name = "dEmi", required = false)
37
    private LocalDate dataEmissaoDocumentoArrecadacao;
38

39
    @Element(name = "vDAR", required = false)
40
    private String valorTotalConstanteDocumentoArrecadacaoReceita;
41
    
42
    @Element(name = "repEmi")
43
    private String reparticaoFiscalEmitente;
44

45
    @Element(name = "dPag", required = false)
46
    private LocalDate dataPagamentoDocumentoArrecadacao;
47

48
    public void setCnpj(final String cnpj) {
49
        DFStringValidador.cnpj(cnpj);
1✔
50
        this.cnpj = cnpj;
1✔
51
    }
1✔
52

53
    public void setOrgaoEmitente(final String orgaoEmitente) {
54
        DFStringValidador.tamanho60(orgaoEmitente, "Orgao Emitente");
1✔
55
        this.orgaoEmitente = orgaoEmitente;
1✔
56
    }
1✔
57

58
    public void setMatriculaAgente(final String matriculaAgente) {
59
        DFStringValidador.tamanho60(matriculaAgente, "Matricula Agente");
1✔
60
        this.matriculaAgente = matriculaAgente;
1✔
61
    }
1✔
62

63
    public void setNomeAgente(final String nomeAgente) {
64
        DFStringValidador.tamanho60(nomeAgente, "Nome Agente");
1✔
65
        this.nomeAgente = nomeAgente;
1✔
66
    }
1✔
67

68
    public void setFone(final String fone) {
69
        DFStringValidador.telefone(fone);
1✔
70
        this.fone = fone;
1✔
71
    }
1✔
72

73
    public void setUf(final DFUnidadeFederativa uf) {
74
        this.uf = uf.getCodigo();
1✔
75
    }
1✔
76

77
    public void setNumeroDocumentoArrecadacaoReceita(final String numeroDocumentoArrecadacaoReceita) {
78
        DFStringValidador.tamanho60(numeroDocumentoArrecadacaoReceita, "Numero Documento Arrecadacao Receita");
1✔
79
        this.numeroDocumentoArrecadacaoReceita = numeroDocumentoArrecadacaoReceita;
1✔
80
    }
1✔
81

82
    public void setDataEmissaoDocumentoArrecadacao(final LocalDate dataEmissaoDocumentoArrecadacao) {
83
        this.dataEmissaoDocumentoArrecadacao = dataEmissaoDocumentoArrecadacao;
1✔
84
    }
1✔
85

86
    public void setValorTotalConstanteDocumentoArrecadacaoReceita(final BigDecimal valorTotalConstanteDocumentoArrecadacaoReceita) {
87
        this.valorTotalConstanteDocumentoArrecadacaoReceita = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorTotalConstanteDocumentoArrecadacaoReceita, "Valor Total Constante Documento Arrecadacao Receita");
1✔
88
    }
1✔
89

90
    public void setReparticaoFiscalEmitente(final String reparticaoFiscalEmitente) {
91
        DFStringValidador.tamanho60(reparticaoFiscalEmitente, "Reparticao Fiscal Emitente");
1✔
92
        this.reparticaoFiscalEmitente = reparticaoFiscalEmitente;
1✔
93
    }
1✔
94

95
    public void setDataPagamentoDocumentoArrecadacao(final LocalDate dataPagamentoDocumentoArrecadacao) {
96
        this.dataPagamentoDocumentoArrecadacao = dataPagamentoDocumentoArrecadacao;
1✔
97
    }
1✔
98

99
    public String getCnpj() {
UNCOV
100
        return this.cnpj;
×
101
    }
102

103
    public String getOrgaoEmitente() {
UNCOV
104
        return this.orgaoEmitente;
×
105
    }
106

107
    public String getMatriculaAgente() {
UNCOV
108
        return this.matriculaAgente;
×
109
    }
110

111
    public String getNomeAgente() {
UNCOV
112
        return this.nomeAgente;
×
113
    }
114

115
    public String getFone() {
UNCOV
116
        return this.fone;
×
117
    }
118

119
    public String getUf() {
UNCOV
120
        return this.uf;
×
121
    }
122

123
    public String getNumeroDocumentoArrecadacaoReceita() {
UNCOV
124
        return this.numeroDocumentoArrecadacaoReceita;
×
125
    }
126

127
    public LocalDate getDataEmissaoDocumentoArrecadacao() {
UNCOV
128
        return this.dataEmissaoDocumentoArrecadacao;
×
129
    }
130

131
    public String getValorTotalConstanteDocumentoArrecadacaoReceita() {
UNCOV
132
        return this.valorTotalConstanteDocumentoArrecadacaoReceita;
×
133
    }
134

135
    public String getReparticaoFiscalEmitente() {
UNCOV
136
        return this.reparticaoFiscalEmitente;
×
137
    }
138

139
    public LocalDate getDataPagamentoDocumentoArrecadacao() {
UNCOV
140
        return this.dataPagamentoDocumentoArrecadacao;
×
141
    }
142
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc