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

wmixvideo / nfe / #6269

27 Mar 2025 11:03AM UTC coverage: 52.718% (+0.05%) from 52.671%
#6269

push

web-flow
Merge pull request #4 from dennnisk/4.0.80-SNAPSHOT-JJW

Correções para compilar com o jdk 1.8 e publicar em repositorio interno

14002 of 26560 relevant lines covered (52.72%)

0.53 hits per line

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

87.42
/src/main/java/com/fincatto/documentofiscal/nfe400/classes/nota/NFNotaInfoItemProduto.java
1
package com.fincatto.documentofiscal.nfe400.classes.nota;
2

3
import com.fincatto.documentofiscal.DFBase;
4
import com.fincatto.documentofiscal.nfe400.classes.NFProdutoCompoeValorNota;
5
import com.fincatto.documentofiscal.nfe400.converters.NFStringNullToEmptyConverter;
6
import com.fincatto.documentofiscal.validadores.DFBigDecimalValidador;
7
import com.fincatto.documentofiscal.validadores.DFIntegerValidador;
8
import com.fincatto.documentofiscal.validadores.DFListValidador;
9
import com.fincatto.documentofiscal.validadores.DFStringValidador;
10
import org.simpleframework.xml.Element;
11
import org.simpleframework.xml.ElementList;
12
import org.simpleframework.xml.convert.Convert;
13

14
import java.math.BigDecimal;
15
import java.util.List;
16

17
public class NFNotaInfoItemProduto extends DFBase {
1✔
18
    private static final long serialVersionUID = -2271625077897052364L;
19

20
    @Element(name = "cProd")
21
    private String codigo;
22

23
    @Element(name = "cEAN", required = false)
24
    @Convert(NFStringNullToEmptyConverter.class)
25
    private String codigoDeBarrasGtin;
26

27
    @Element(name = "cBarra", required = false)
28
    private String codigoDeBarrasDiferenteGtin;
29

30
    @Element(name = "xProd")
31
    private String descricao;
32

33
    @Element(name = "NCM")
34
    private String ncm;
35

36
    @ElementList(entry = "NVE", inline = true, required = false)
37
    private List<String> nomeclaturaValorAduaneiroEstatistica;
38

39
    @Element(name = "CEST", required = false)
40
    private String codigoEspecificadorSituacaoTributaria;
41

42
    @Element(name = "indEscala", required = false)
43
    private NFIndicadorEscalaRelevante indicadorEscalaRelevante;
44

45
    @Element(name = "CNPJFab", required = false)
46
    private String cnpjFabricanteMercadoria;
47

48
    @Element(name = "cBenef", required = false)
49
    private String codigoBeneficioFiscalUF;
50

51
    @Element(name = "gCred", required = false)
52
    private NFNotaInfoItemProdutoGrupoCreditoPresumido grupoCreditoPresumido;
53

54
    @Element(name = "EXTIPI", required = false)
55
    private String extipi;
56

57
    @Element(name = "CFOP")
58
    private String cfop;
59

60
    @Element(name = "uCom")
61
    private String unidadeComercial;
62

63
    @Element(name = "qCom")
64
    private String quantidadeComercial;
65

66
    @Element(name = "vUnCom")
67
    private String valorUnitario;
68

69
    @Element(name = "vProd")
70
    private String valorTotalBruto;
71

72
    @Element(name = "cEANTrib", required = false)
73
    @Convert(NFStringNullToEmptyConverter.class)
74
    private String codigoDeBarrasGtinTributavel;
75

76
    @Element(name = "cBarraTrib", required = false)
77
    private String codigoDeBarrasDiferenteGtinTributavel;
78

79
    @Element(name = "uTrib")
80
    private String unidadeTributavel;
81

82
    @Element(name = "qTrib")
83
    private String quantidadeTributavel;
84

85
    @Element(name = "vUnTrib")
86
    private String valorUnitarioTributavel;
87

88
    @Element(name = "vFrete", required = false)
89
    private String valorFrete;
90

91
    @Element(name = "vSeg", required = false)
92
    private String valorSeguro;
93

94
    @Element(name = "vDesc", required = false)
95
    private String valorDesconto;
96

97
    @Element(name = "vOutro", required = false)
98
    private String valorOutrasDespesasAcessorias;
99

100
    @Element(name = "indTot")
101
    private NFProdutoCompoeValorNota compoeValorNota;
102

103
    @ElementList(entry = "DI", inline = true, required = false)
104
    private List<NFNotaInfoItemProdutoDeclaracaoImportacao> declaracoesImportacao;
105

106
    @ElementList(entry = "detExport", inline = true, required = false)
107
    private List<NFNotaInfoItemDetalheExportacao> detalhesExportacao;
108

109
    @Element(name = "xPed", required = false)
110
    private String numeroPedidoCliente;
111

112
    @Element(name = "nItemPed", required = false)
113
    private Integer numeroPedidoItemCliente;
114

115
    @Element(name = "nFCI", required = false)
116
    private String numeroControleFCI;
117

118
    @ElementList(entry = "rastro", inline = true, required = false)
119
    private List<NFNotaInfoItemProdutoRastreabilidade> rastros;
120

121
    @Element(name = "veicProd", required = false)
122
    private NFNotaInfoItemProdutoVeiculo veiculo;
123

124
    @Element(name = "med", required = false)
125
    private NFNotaInfoItemProdutoMedicamento medicamento;
126

127
    @ElementList(entry = "arma", inline = true, required = false)
128
    private List<NFNotaInfoItemProdutoArmamento> armamentos;
129

130
    @Element(name = "comb", required = false)
131
    private NFNotaInfoItemProdutoCombustivel combustivel;
132

133
    @Element(name = "nRECOPI", required = false)
134
    private String numeroRECOPI;
135

136
    public void setCodigo(final String codigo) {
137
        DFStringValidador.tamanho60(codigo, "Codigo Produto");
1✔
138
        this.codigo = codigo;
1✔
139
    }
1✔
140

141
    /**
142
     * @deprecated  substituido por {@link #setCodigoDeBarrasGtin()}
143
     */
144
    @Deprecated
145
    public void setCodigoDeBarras(final String codigoDeBarras) {
146
        this.setCodigoDeBarrasGtin(codigoDeBarras);
×
147
    }
×
148

149
    public void setCodigoDeBarrasGtin(final String codigoDeBarrasGtin) {
150
        DFStringValidador.codigoDeBarras(codigoDeBarrasGtin);
1✔
151
        this.codigoDeBarrasGtin = codigoDeBarrasGtin;
1✔
152
    }
1✔
153

154
    public void setCodigoDeBarrasDiferenteGtin(String codigoDeBarrasDiferenteGtin) {
155
        this.codigoDeBarrasDiferenteGtin = codigoDeBarrasDiferenteGtin;
1✔
156
    }
1✔
157

158
    public void setDescricao(final String descricao) {
159
        DFStringValidador.tamanho120(descricao, "Descricao Produto");
1✔
160
        this.descricao = descricao;
1✔
161
    }
1✔
162

163
    public void setNcm(final String ncm) {
164
        DFStringValidador.ncm(ncm);
1✔
165
        this.ncm = ncm;
1✔
166
    }
1✔
167

168
    public void setExtipi(final String extipi) {
169
        DFStringValidador.tamanho2ou3N(extipi, "EX TIPI Produto");
1✔
170
        this.extipi = extipi;
1✔
171
    }
1✔
172

173
    public void setCfop(final String cfop) {
174
        DFStringValidador.exatamente4N(cfop, "CFOP Produto");
1✔
175
        this.cfop = cfop;
1✔
176
    }
1✔
177

178
    public void setUnidadeComercial(final String unidadeComercial) {
179
        DFStringValidador.tamanho6(unidadeComercial, "Unidade Comercial Produto");
1✔
180
        this.unidadeComercial = unidadeComercial;
1✔
181
    }
1✔
182

183
    public void setQuantidadeComercial(final BigDecimal quantidadeComercial) {
184
        this.quantidadeComercial = DFBigDecimalValidador.tamanho15comAte4CasasDecimais(quantidadeComercial, "Qtde Comercial Produto");
1✔
185
    }
1✔
186

187
    public void setValorUnitario(final BigDecimal valorUnitario) {
188
        this.valorUnitario = DFBigDecimalValidador.tamanho21ComAte10CasasDecimais(valorUnitario, "Valor Unitario Produto");
1✔
189
    }
1✔
190

191
    public void setValorTotalBruto(final BigDecimal valorTotalBruto) {
192
        this.valorTotalBruto = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorTotalBruto, "Valor Total Bruto Produto");
1✔
193
    }
1✔
194

195
    /**
196
     * @deprecated  substituido por {@link #setCodigoDeBarrasGtinTributavel()}
197
     */
198
    @Deprecated
199
    public void setCodigoDeBarrasTributavel(final String codigoDeBarras) {
200
        this.setCodigoDeBarrasGtinTributavel(codigoDeBarras);
×
201
    }
×
202

203
    public void setCodigoDeBarrasGtinTributavel(final String codigoDeBarrasGtinTributavel) {
204
        DFStringValidador.codigoDeBarras(codigoDeBarrasGtinTributavel);
1✔
205
        this.codigoDeBarrasGtinTributavel = codigoDeBarrasGtinTributavel;
1✔
206
    }
1✔
207

208
    public void setCodigoDeBarrasDiferenteGtinTributavel(String codigoDeBarrasDiferenteGtinTributavel) {
209
        this.codigoDeBarrasDiferenteGtinTributavel = codigoDeBarrasDiferenteGtinTributavel;
1✔
210
    }
1✔
211

212
    public void setUnidadeTributavel(final String unidadeTributavel) {
213
        DFStringValidador.tamanho6(unidadeTributavel, "Unidade Tributavel Produto");
1✔
214
        this.unidadeTributavel = unidadeTributavel;
1✔
215
    }
1✔
216

217
    public void setQuantidadeTributavel(final BigDecimal quantidadeTributavel) {
218
        this.quantidadeTributavel = DFBigDecimalValidador.tamanho15comAte4CasasDecimais(quantidadeTributavel, "Qtde Tributavel Produto");
1✔
219
    }
1✔
220

221
    public void setValorUnitarioTributavel(final BigDecimal valorUnitarioTributavel) {
222
        this.valorUnitarioTributavel = DFBigDecimalValidador.tamanho21ComAte10CasasDecimais(valorUnitarioTributavel, "Valor Unitario Tributavel Produto");
1✔
223
    }
1✔
224

225
    public void setValorFrete(final BigDecimal valorFrete) {
226
        this.valorFrete = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorFrete, "Valor Frete Produto");
1✔
227
    }
1✔
228

229
    public void setValorSeguro(final BigDecimal valorSeguro) {
230
        this.valorSeguro = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorSeguro, "Valor Seguro Produto");
1✔
231
    }
1✔
232

233
    public void setValorDesconto(final BigDecimal valorDesconto) {
234
        this.valorDesconto = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorDesconto, "Valor Desconto Produto");
1✔
235
    }
1✔
236

237
    public void setValorOutrasDespesasAcessorias(final BigDecimal valorOutrasDespesasAcessorias) {
238
        this.valorOutrasDespesasAcessorias = DFBigDecimalValidador.tamanho15Com2CasasDecimais(valorOutrasDespesasAcessorias, "Valor Outras Despesas Acessorias Produto");
1✔
239
    }
1✔
240

241
    public void setCompoeValorNota(final NFProdutoCompoeValorNota compoeValorNota) {
242
        this.compoeValorNota = compoeValorNota;
1✔
243
    }
1✔
244

245
    public void setDeclaracoesImportacao(final List<NFNotaInfoItemProdutoDeclaracaoImportacao> declaracoesImportacao) {
246
        this.declaracoesImportacao = declaracoesImportacao;
1✔
247
    }
1✔
248

249
    public void setNumeroPedidoCliente(final String numeroPedidoCliente) {
250
        DFStringValidador.tamanho15(numeroPedidoCliente, "Numero Pedido Cliente Produto");
1✔
251
        this.numeroPedidoCliente = numeroPedidoCliente;
1✔
252
    }
1✔
253

254
    public void setNumeroPedidoItemCliente(final Integer numeroPedidoItemCliente) {
255
        DFIntegerValidador.tamanho6(numeroPedidoItemCliente, "Numero Pedido Item Cliente Produto");
1✔
256
        this.numeroPedidoItemCliente = numeroPedidoItemCliente;
1✔
257
    }
1✔
258

259
    public void setNumeroControleFCI(final String numeroControleFCI) {
260
        DFStringValidador.fci(numeroControleFCI);
1✔
261
        this.numeroControleFCI = numeroControleFCI;
1✔
262
    }
1✔
263

264
    public void setVeiculo(final NFNotaInfoItemProdutoVeiculo veiculo) {
265
        if (this.medicamento != null || this.armamentos != null || this.combustivel != null || this.numeroRECOPI != null) {
1✔
266
            throw new IllegalStateException("veiculos, medicamentos, armamentos e combustivel sao mutuamente exclusivos");
1✔
267
        }
268
        this.veiculo = veiculo;
1✔
269
    }
1✔
270

271
    public void setMedicamento(final NFNotaInfoItemProdutoMedicamento medicamento) {
272
        if (this.veiculo != null || this.armamentos != null || this.combustivel != null || this.numeroRECOPI != null) {
1✔
273
            throw new IllegalStateException("veiculos, medicamentos, armamentos, RECOPI e combustivel sao mutuamente exclusivos");
1✔
274
        }
275
        this.medicamento = medicamento;
1✔
276
    }
1✔
277

278
    public void setArmamentos(final List<NFNotaInfoItemProdutoArmamento> armamentos) {
279
        if (this.medicamento != null || this.veiculo != null || this.combustivel != null || this.numeroRECOPI != null) {
1✔
280
            throw new IllegalStateException("veiculos, medicamentos, armamentos, RECOPI e combustivel sao mutuamente exclusivos");
1✔
281
        }
282
        DFListValidador.tamanho500(armamentos, "Armamentos Produto");
1✔
283
        this.armamentos = armamentos;
1✔
284
    }
1✔
285

286
    public void setCombustivel(final NFNotaInfoItemProdutoCombustivel combustivel) {
287
        if (this.medicamento != null || this.armamentos != null || this.veiculo != null || this.numeroRECOPI != null) {
1✔
288
            throw new IllegalStateException("veiculos, medicamentos, armamentos, RECOPI e combustivel sao mutuamente exclusivos");
1✔
289
        }
290
        this.combustivel = combustivel;
1✔
291
    }
1✔
292

293
    public void setNomeclaturaValorAduaneiroEstatistica(final List<String> nomeclaturaValorAduaneiroEstatistica) {
294
        for (final String nomeclatra : nomeclaturaValorAduaneiroEstatistica) {
1✔
295
            DFStringValidador.nve(nomeclatra);
1✔
296
        }
1✔
297
        this.nomeclaturaValorAduaneiroEstatistica = nomeclaturaValorAduaneiroEstatistica;
1✔
298
    }
1✔
299

300
    public void setCodigoEspecificadorSituacaoTributaria(final String codigoEspecificadorSituacaoTributaria) {
301
        DFStringValidador.exatamente7N(codigoEspecificadorSituacaoTributaria, "CEST Produto");
1✔
302
        this.codigoEspecificadorSituacaoTributaria = codigoEspecificadorSituacaoTributaria;
1✔
303
    }
1✔
304

305
    public void setDetalhesExportacao(final List<NFNotaInfoItemDetalheExportacao> detalhesExportacao) {
306
        DFListValidador.tamanho500(detalhesExportacao, "Detalhes Exportacao Produto");
1✔
307
        this.detalhesExportacao = detalhesExportacao;
1✔
308
    }
1✔
309

310
    public void setNumeroRECOPI(final String numeroRECOPI) {
311
        if (this.medicamento != null || this.armamentos != null || this.veiculo != null || this.combustivel != null) {
1✔
312
            throw new IllegalStateException("veiculos, medicamentos, armamentos, RECOPI e combustivel sao mutuamente exclusivos");
1✔
313
        }
314
        DFStringValidador.exatamente20N(numeroRECOPI, "Numero RECOPI Produto");
1✔
315
        this.numeroRECOPI = numeroRECOPI;
1✔
316
    }
1✔
317

318
    public void setRastros(final List<NFNotaInfoItemProdutoRastreabilidade> rastros) {
319
        DFListValidador.tamanho500(rastros, "Rastreios do produto");
1✔
320
        this.rastros = rastros;
1✔
321
    }
1✔
322

323
    public void setIndicadorEscalaRelevante(final NFIndicadorEscalaRelevante indicadorEscalaRelevante) {
324
        this.indicadorEscalaRelevante = indicadorEscalaRelevante;
×
325
    }
×
326

327
    public void setCnpjFabricanteMercadoria(final String cnpjFabricanteMercadoria) {
328
        this.cnpjFabricanteMercadoria = cnpjFabricanteMercadoria;
×
329
    }
×
330

331
    public void setCodigoBeneficioFiscalUF(final String codigoBeneficioFiscalUF) {
332
        this.codigoBeneficioFiscalUF = DFStringValidador.validador(codigoBeneficioFiscalUF, "Codigo Beneficio Fiscal da UF", 10, false, false);
×
333
    }
×
334

335
    public void setGrupoCreditoPresumido(
336
        final NFNotaInfoItemProdutoGrupoCreditoPresumido grupoCreditoPresumido) {
337
        this.grupoCreditoPresumido = grupoCreditoPresumido;
1✔
338
    }
1✔
339

340
    public String getCodigo() {
341
        return this.codigo;
1✔
342
    }
343

344
    public String getCodigoDeBarrasGtin() {
345
        return this.codigoDeBarrasGtin == null ? "SEM GTIN" : this.codigoDeBarrasGtin;
1✔
346
    }
347

348
    /**
349
     * @deprecated  substituido por {@link #getCodigoDeBarrasGtin()}
350
     */
351
    @Deprecated
352
    public String getCodigoDeBarras() {
353
        return this.getCodigoDeBarrasGtin();
×
354
    }
355

356
    public String getCodigoDeBarrasDiferenteGtin() {
357
        return codigoDeBarrasDiferenteGtin;
×
358
    }
359

360
    public String getDescricao() {
361
        return this.descricao;
1✔
362
    }
363

364
    public String getNcm() {
365
        return this.ncm;
1✔
366
    }
367

368
    public List<String> getNomeclaturaValorAduaneiroEstatistica() {
369
        return this.nomeclaturaValorAduaneiroEstatistica;
1✔
370
    }
371

372
    public String getCodigoEspecificadorSituacaoTributaria() {
373
        return this.codigoEspecificadorSituacaoTributaria;
1✔
374
    }
375

376
    public String getExtipi() {
377
        return this.extipi;
1✔
378
    }
379

380
    public String getCfop() {
381
        return this.cfop;
1✔
382
    }
383

384
    public String getUnidadeComercial() {
385
        return this.unidadeComercial;
1✔
386
    }
387

388
    public String getQuantidadeComercial() {
389
        return this.quantidadeComercial;
1✔
390
    }
391

392
    public String getValorUnitario() {
393
        return this.valorUnitario;
1✔
394
    }
395

396
    public String getValorTotalBruto() {
397
        return this.valorTotalBruto;
1✔
398
    }
399

400
    /**
401
     * @deprecated  substituido por {@link #getCodigoDeBarrasGtinTributavel()}
402
     */
403
    @Deprecated
404
    public String getCodigoDeBarrasTributavel() {
405
        return this.getCodigoDeBarrasGtinTributavel();
×
406
    }
407

408
    public String getCodigoDeBarrasGtinTributavel() {
409
        return this.codigoDeBarrasGtinTributavel == null ? "SEM GTIN" : this.codigoDeBarrasGtinTributavel;
1✔
410
    }
411

412
    public String getCodigoDeBarrasDiferenteGtinTributavel() {
413
        return codigoDeBarrasDiferenteGtinTributavel;
×
414
    }
415

416
    public String getUnidadeTributavel() {
417
        return this.unidadeTributavel;
1✔
418
    }
419

420
    public String getQuantidadeTributavel() {
421
        return this.quantidadeTributavel;
1✔
422
    }
423

424
    public String getValorUnitarioTributavel() {
425
        return this.valorUnitarioTributavel;
1✔
426
    }
427

428
    public String getValorFrete() {
429
        return this.valorFrete;
1✔
430
    }
431

432
    public String getValorSeguro() {
433
        return this.valorSeguro;
1✔
434
    }
435

436
    public String getValorDesconto() {
437
        return this.valorDesconto;
1✔
438
    }
439

440
    public String getValorOutrasDespesasAcessorias() {
441
        return this.valorOutrasDespesasAcessorias;
1✔
442
    }
443

444
    public NFProdutoCompoeValorNota getCompoeValorNota() {
445
        return this.compoeValorNota;
1✔
446
    }
447

448
    public List<NFNotaInfoItemProdutoDeclaracaoImportacao> getDeclaracoesImportacao() {
449
        return this.declaracoesImportacao;
1✔
450
    }
451

452
    public List<NFNotaInfoItemDetalheExportacao> getDetalhesExportacao() {
453
        return this.detalhesExportacao;
1✔
454
    }
455

456
    public String getNumeroPedidoCliente() {
457
        return this.numeroPedidoCliente;
1✔
458
    }
459

460
    public Integer getNumeroPedidoItemCliente() {
461
        return this.numeroPedidoItemCliente;
1✔
462
    }
463

464
    public String getNumeroControleFCI() {
465
        return this.numeroControleFCI;
1✔
466
    }
467

468
    public NFNotaInfoItemProdutoVeiculo getVeiculo() {
469
        return this.veiculo;
1✔
470
    }
471

472
    public NFNotaInfoItemProdutoMedicamento getMedicamento() {
473
        return this.medicamento;
1✔
474
    }
475

476
    public List<NFNotaInfoItemProdutoArmamento> getArmamentos() {
477
        return this.armamentos;
1✔
478
    }
479

480
    public NFNotaInfoItemProdutoCombustivel getCombustivel() {
481
        return this.combustivel;
1✔
482
    }
483

484
    public String getNumeroRECOPI() {
485
        return this.numeroRECOPI;
1✔
486
    }
487

488
    public String getCnpjFabricanteMercadoria() {
489
        return this.cnpjFabricanteMercadoria;
×
490
    }
491

492
    public String getCodigoBeneficioFiscalUF() {
493
        return this.codigoBeneficioFiscalUF;
×
494
    }
495

496
    public NFIndicadorEscalaRelevante getIndicadorEscalaRelevante() {
497
        return this.indicadorEscalaRelevante;
×
498
    }
499

500
    public List<NFNotaInfoItemProdutoRastreabilidade> getRastros() {
501
        return this.rastros;
×
502
    }
503

504
    public NFNotaInfoItemProdutoGrupoCreditoPresumido getGrupoCreditoPresumido() {
505
        return grupoCreditoPresumido;
×
506
    }
507
}
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

© 2025 Coveralls, Inc