1
+ package br .com .swconsultoria .cte ; /**
2
+ *
3
+ */
4
+
5
+ import br .com .swconsultoria .cte .dom .ConfiguracoesCte ;
6
+ import br .com .swconsultoria .cte .dom .enuns .AmbienteEnum ;
7
+ import br .com .swconsultoria .cte .dom .enuns .EstadosEnum ;
8
+ import br .com .swconsultoria .cte .dom .enuns .EventosEnum ;
9
+ import br .com .swconsultoria .cte .dom .enuns .StatusCteEnum ;
10
+ import br .com .swconsultoria .cte .exception .CteException ;
11
+ import br .com .swconsultoria .cte .schema_400 .evPrestDesacordo .EvPrestDesacordo ;
12
+ import br .com .swconsultoria .cte .schema_400 .evPrestDesacordo .TEvento ;
13
+ import br .com .swconsultoria .cte .schema_400 .evPrestDesacordo .TRetEvento ;
14
+ import br .com .swconsultoria .cte .util .ConstantesCte ;
15
+ import br .com .swconsultoria .cte .util .ObjetoCTeUtil ;
16
+ import br .com .swconsultoria .cte .util .XmlCteUtil ;
17
+
18
+ import java .time .LocalDateTime ;
19
+
20
+ /**
21
+ * @author Samuel Oliveira
22
+ */
23
+ public class TestePrestacaoDesacordoCte {
24
+
25
+ public static void main (String [] args ) {
26
+
27
+ try {
28
+ // Dados para pegar do CTE
29
+ String chave = "" ;
30
+ String cnpj = "" ;
31
+
32
+ //Pegar Do usuário - Opcional.
33
+ String obs = "" ;
34
+
35
+ // Inicia As Configurações
36
+ ConfiguracoesCte config = TesteConfig .iniciaConfiguracoes (EstadosEnum .GO , AmbienteEnum .HOMOLOGACAO );
37
+
38
+ String id = "ID610110" + chave + "001" ;
39
+ TEvento evento = new TEvento ();
40
+ evento .setVersao (ConstantesCte .VERSAO .CTE );
41
+
42
+ TEvento .InfEvento infEvento = new TEvento .InfEvento ();
43
+ infEvento .setId (id );
44
+ infEvento .setCOrgao (config .getEstado ().getCodigoUF ());
45
+ infEvento .setTpAmb (config .getAmbiente ().getCodigo ());
46
+ infEvento .setCNPJ (cnpj );
47
+ infEvento .setChCTe (chave );
48
+ infEvento .setDhEvento (XmlCteUtil .dataCte (LocalDateTime .now ()));
49
+ infEvento .setTpEvento (EventosEnum .CCE .getCodigo ());
50
+ infEvento .setNSeqEvento ("001" );
51
+
52
+ EvPrestDesacordo evPrestDesacordo = new EvPrestDesacordo ();
53
+ evPrestDesacordo .setDescEvento ("Prestacao do Servico em Desacordo" );
54
+ evPrestDesacordo .setIndDesacordoOper ("1" );
55
+ evPrestDesacordo .setXObs (obs );
56
+
57
+ TEvento .InfEvento .DetEvento detEvento = new TEvento .InfEvento .DetEvento ();
58
+ detEvento .setVersaoEvento (ConstantesCte .VERSAO .CTE );
59
+ detEvento .setAny (ObjetoCTeUtil .objectToElement (evPrestDesacordo , EvPrestDesacordo .class , "evPrestDesacordo" ));
60
+
61
+ infEvento .setDetEvento (detEvento );
62
+ evento .setInfEvento (infEvento );
63
+
64
+ //Envia o Evento de Cancelamento
65
+ TRetEvento retorno = Cte .prestacaoDesacordoCte (config , evento , true );
66
+
67
+ //Valida o Retorno
68
+ if (!StatusCteEnum .EVENTO_VINCULADO .getCodigo ().equals (retorno .getInfEvento ().getCStat ())) {
69
+ throw new CteException (retorno .getInfEvento ().getCStat () + " - " + retorno .getInfEvento ().getXMotivo ());
70
+ }
71
+
72
+ //Resultado
73
+ System .out .println ();
74
+ System .out .println ("# Chave: " + retorno .getInfEvento ().getChCTe ());
75
+ System .out .println ("# Status: " + retorno .getInfEvento ().getCStat () + " - " + retorno .getInfEvento ().getXMotivo ());
76
+ System .out .println ("# Protocolo: " + retorno .getInfEvento ().getNProt ());
77
+
78
+ } catch (Exception e ) {
79
+ System .err .println ();
80
+ System .err .println ("# Erro: " + e .getMessage ());
81
+ }
82
+ }
83
+ }
0 commit comments