![JAR search and dependency download from the Maven repository](/logo.png)
com.fincatto.documentofiscal.cte400.webservices.WSFacade Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of nfe Show documentation
Show all versions of nfe Show documentation
Biblioteca de comunicacao de nota fiscal eletronica brasileira
package com.fincatto.documentofiscal.cte400.webservices;
import com.fincatto.documentofiscal.DFUnidadeFederativa;
import com.fincatto.documentofiscal.cte.CTeConfig;
import com.fincatto.documentofiscal.cte.classes.distribuicao.CTDistribuicaoIntRetorno;
import com.fincatto.documentofiscal.cte.webservices.distribuicao.WSDistribuicaoCTe;
import com.fincatto.documentofiscal.cte400.classes.consultastatusservico.CTeConsStatServRet;
import com.fincatto.documentofiscal.cte400.classes.envio.CTeEnvioRetornoDados;
import com.fincatto.documentofiscal.cte400.classes.envio.CTeOSEnvioRetornoDados;
import com.fincatto.documentofiscal.cte400.classes.evento.CTeEventoRetorno;
import com.fincatto.documentofiscal.cte400.classes.evento.cartacorrecao.CTeInformacaoCartaCorrecao;
import com.fincatto.documentofiscal.cte400.classes.evento.comprovanteentrega.CTeEnviaEventoComprovanteEntrega;
import com.fincatto.documentofiscal.cte400.classes.evento.epec.CTeEnviaEventoEpec;
import com.fincatto.documentofiscal.cte400.classes.evento.gtv.CTeEnviaEventoGtv;
import com.fincatto.documentofiscal.cte400.classes.evento.insucessoentrega.CTeEnviaEventoInsucessoEntrega;
import com.fincatto.documentofiscal.cte400.classes.nota.CTeNota;
import com.fincatto.documentofiscal.cte400.classes.nota.consulta.CTeNotaConsultaRetorno;
import com.fincatto.documentofiscal.cte400.classes.os.CTeOS;
import com.fincatto.documentofiscal.utils.DFSocketFactory;
import org.apache.commons.httpclient.protocol.Protocol;
import java.io.IOException;
import java.security.KeyManagementException;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.UnrecoverableKeyException;
import java.security.cert.CertificateException;
import java.util.List;
public class WSFacade {
private final WSStatusConsulta wsStatusConsulta;
private final WSRecepcaoCTe wsRecepcaoCTe;
private final WSDistribuicaoCTe wsDistribuicaoCTe;
private final WSConsulta wsConsulta;
private final WSCancelamento wsCancelamento;
private final WSPrestacaoEmDesacordo wsPrestacaoEmDesacordo;
private final WSRegistroMultimodal wsRegistroMultimodal;
private final WSCartaCorrecao wsCartaCorrecao;
private final WSComprovanteEntrega wsComprovanteEntrega;
private final WSCancelamentoComprovanteEntrega wsCancelamentoComprovanteEntrega;
private final WSEpec wsEpec;
private final WSGtv wsGtv;
private final WSCancelamentoPrestacaoEmDesacordo wsCancelamentoPrestacaoEmDesacordo;
private final WSInsucessoEntrega wsInsucessoEntrega;
private final WSCancelamentoInsucessoEntrega wsCancelamentoInsucessoEntrega;
private final WSRecepcaoCTeOS wsRecepcaoCTeOS;
public WSFacade(final CTeConfig config) throws IOException, KeyManagementException, UnrecoverableKeyException, KeyStoreException, NoSuchAlgorithmException, CertificateException {
Protocol.registerProtocol("https", new Protocol("https", new DFSocketFactory(config), 443));
this.wsStatusConsulta = new WSStatusConsulta(config);
this.wsRecepcaoCTe = new WSRecepcaoCTe(config);
this.wsDistribuicaoCTe = new WSDistribuicaoCTe(config);
this.wsConsulta = new WSConsulta(config);
this.wsCancelamento = new WSCancelamento(config);
this.wsPrestacaoEmDesacordo = new WSPrestacaoEmDesacordo(config);
this.wsRegistroMultimodal = new WSRegistroMultimodal(config);
this.wsCartaCorrecao = new WSCartaCorrecao(config);
this.wsComprovanteEntrega = new WSComprovanteEntrega(config);
this.wsCancelamentoComprovanteEntrega = new WSCancelamentoComprovanteEntrega(config);
this.wsEpec = new WSEpec(config);
this.wsGtv = new WSGtv(config);
this.wsCancelamentoPrestacaoEmDesacordo = new WSCancelamentoPrestacaoEmDesacordo(config);
this.wsInsucessoEntrega = new WSInsucessoEntrega(config);
this.wsCancelamentoInsucessoEntrega = new WSCancelamentoInsucessoEntrega(config);
this.wsRecepcaoCTeOS = new WSRecepcaoCTeOS(config);
}
/**
* Faz a consulta de status responsavel pela UF
*
* @param uf uf UF que deseja consultar o status do sefaz responsavel
* @return dados da consulta de status retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeConsStatServRet consultaStatus(final DFUnidadeFederativa uf) throws Exception {
return this.wsStatusConsulta.consultaStatus(uf);
}
/**
* Faz o envio do CT-e para a SEFAZ
*
* @param cte a ser eviado para a SEFAZ
* @return dados do retorno do envio do CT-e e o xml assinado
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
* */
public CTeEnvioRetornoDados enviaCTe(CTeNota cte) throws Exception {
return this.wsRecepcaoCTe.enviaCTe(cte);
}
/**
* Faz consulta de distribuicao dos CTe.
* Pode ser feita utilizando o CTe (numero sequencial unico) da receita.
* @param cpfOuCnpj CPF ou CNPJ da pessoa fisica ou juridica a consultar
* @param uf Unidade federativa da pessoa juridica a consultar
* @param nsu Número Sequencial Único. Geralmente esta consulta será
* utilizada quando identificado pelo interessado um NSU faltante. O Web
* Service retornará o documento ou informará que o NSU não existe no
* Ambiente Nacional. Assim, esta consulta fechará a lacuna do NSU
* identificado como faltante.
* @param ultNsu Último NSU recebido pelo ator. Caso seja informado com
* zero, ou com um NSU muito antigo, a consulta retornará unicamente as
* informações resumidas e documentos fiscais eletrônicos que tenham sido
* recepcionados pelo Ambiente Nacional nos últimos 3 meses.
* @return dados da consulta retornado pelo webservice limitando um total de
* 50 registros
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com
* o sefaz
*/
public CTDistribuicaoIntRetorno consultarDistribuicaoCTe(final String cpfOuCnpj, final DFUnidadeFederativa uf, final String nsu, final String ultNsu) throws Exception {
return this.wsDistribuicaoCTe.consultar(cpfOuCnpj, uf, nsu, ultNsu);
}
/**
* Faz a consulta do CTe
*
* @param chaveDeAcesso chave de acesso do cte
* @return dados da consulta da nota retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeNotaConsultaRetorno consultaNota(final String chaveDeAcesso) throws Exception {
return this.wsConsulta.consultaNota(chaveDeAcesso);
}
/**
* Faz o cancelamento do CTe
*
* @param chave chave de acesso da nota
* @param numeroProtocolo numero do protocolo da nota
* @param motivo motivo do cancelamento
* @return dados do cancelamento da nota retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaNota(final String chave, final String numeroProtocolo, final String motivo) throws Exception {
return this.wsCancelamento.cancelaNota(chave, numeroProtocolo, motivo);
}
/**
* Faz o cancelamento da nota com evento ja assinado
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso da nota
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do cancelamento da nota retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaNotaAssinada(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsCancelamento.cancelaNotaAssinada(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do cancelamento sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param numeroProtocolo numero do protocolo da nota
* @param motivo motivo do cancelamento
* @return O XML da requisicao de registro multimodal ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoCancelamento(final String chave, final String numeroProtocolo, final String motivo) throws Exception {
return this.wsCancelamento.getXmlAssinado(chave, numeroProtocolo, motivo);
}
/**
* Cancela um evento de comprovante de entrega enviado anteriormente.
*
* @param chave chave de acesso do CT-e
* @param protocoloAutorizacao protocolo de autorizacao
* @param protocoloComprovanteEntrega protocolo do comprovante de entrega
* @param sequencialEvento sequencial do evento
* @return dados do cancelamento do comprovante de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaComprovanteEntrega(final String chave, final String protocoloAutorizacao, final String protocoloComprovanteEntrega, final int sequencialEvento) throws Exception {
return this.wsCancelamentoComprovanteEntrega.cancelaComprovanteEntrega(chave, protocoloAutorizacao, protocoloComprovanteEntrega, sequencialEvento);
}
/**
* Cancela um evento de comprovante de entrega enviado anteriormente.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do cancelamento do comprovante de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaComprovanteEntregaAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsCancelamentoComprovanteEntrega.cancelaComprovanteEntregaAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do cancelamento do comprovante de entrega sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param protocoloAutorizacao protocolo de autorizacao
* @param protocoloComprovanteEntrega protocolo do comprovante de entrega
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de cancelamento do comprovante de entrega ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoCancelamentoComprovanteEntrega(final String chave, final String protocoloAutorizacao, final String protocoloComprovanteEntrega, final int sequencialEvento) throws Exception {
return this.wsCancelamentoComprovanteEntrega.getXmlAssinado(chave, protocoloAutorizacao, protocoloComprovanteEntrega, sequencialEvento);
}
/**
* Faz a correcao do CT-e.
*
* @param chave chave de acesso do CT-e
* @param grupoAlterado grupo de informações que pertence o campo que será alterado
* @param campoAlterado campo que será alterado
* @param valorAlterado novo valor que deve ser utilizado para o campo
* @param numeroItemAlterado o índice do item alterado caso a alteração ocorra em uma lista
* @param sequencialEvento sequencial do evento
* @return dados da carta de correção retornada pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno corrigeNota(final String chave, String grupoAlterado, String campoAlterado, String valorAlterado, Integer numeroItemAlterado, int sequencialEvento) throws Exception {
return this.wsCartaCorrecao.corrigeNota(chave, grupoAlterado, campoAlterado, valorAlterado, numeroItemAlterado, sequencialEvento);
}
/**
* Faz a correcao do CT-e.
*
* @param chave chave de acesso do CT-e
* @param correcoes lista de correções a serem efetuadas no CT-e
* @param sequencialEvento sequencial do evento
* @return dados da carta de correção retornada pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno corrigeNota(final String chave, List correcoes, int sequencialEvento) throws Exception {
return this.wsCartaCorrecao.corrigeNota(chave, correcoes, sequencialEvento);
}
/**
* Faz a correcao do CT-e.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return ddados da carta de correção retornada pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno corrigeNotaAssinada(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsCartaCorrecao.corrigeNotaAssinada(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado da carta de correção sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param correcoes lista de correções a serem efetuadas no CT-e
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de carta de correção ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoCartaCorreca(final String chave, List correcoes, int sequencialEvento) throws Exception {
return this.wsCartaCorrecao.getXmlAssinado(chave, correcoes, sequencialEvento);
}
/**
* Registra a efetivação da entrega da carga pelo transportador.
*
* @param chave chave de acesso do CT-e
* @param comprovanteEntrega dados do comprovante de entrega
* @param sequencialEvento sequencial do evento
* @return dados do comprovante de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno comprovanteEntrega(final String chave, final CTeEnviaEventoComprovanteEntrega comprovanteEntrega, final int sequencialEvento) throws Exception {
return this.wsComprovanteEntrega.comprovanteEntrega(chave, comprovanteEntrega, sequencialEvento);
}
/**
* Registra a efetivação da entrega da carga pelo transportador.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do comprovante de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno comprovanteEntregaAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsComprovanteEntrega.comprovanteEntregaAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do comprovante de entrega sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param comprovanteEntrega dados do comprovante de entrega
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de comprovante de entrega ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoComprovanteEntrega(final String chave, final CTeEnviaEventoComprovanteEntrega comprovanteEntrega, final int sequencialEvento) throws Exception {
return this.wsComprovanteEntrega.getXmlAssinado(chave, comprovanteEntrega, sequencialEvento);
}
/**
* Faz o registro do EPEC.
*
* @param chave chave de acesso do CT-e
* @param eventoEpec dados do evento prévio de emissão em contingência
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno enviaEpec(final String chave, final CTeEnviaEventoEpec eventoEpec) throws Exception {
return this.wsEpec.enviaEpec(chave, eventoEpec);
}
/**
* Faz o registro do EPEC.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do EPEC retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno enviaEpecAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsEpec.enviaEpecAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do EPEC sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param eventoEpec dados do evento prévio de emissão em contingência
* @return O XML da requisicao de EPEC ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoEpec(final String chave, final CTeEnviaEventoEpec eventoEpec) throws Exception {
return this.wsEpec.getXmlAssinado(chave, eventoEpec);
}
/**
* Faz o registro da guia de transporte de valores.
*
* @param chave chave de acesso do CT-e
* @param eventoGtv dados da guia de transporte de valores
* @param sequencialEvento sequencial do evento
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno enviaGtv(final String chave, final CTeEnviaEventoGtv eventoGtv, final int sequencialEvento) throws Exception {
return this.wsGtv.enviaGtv(chave, eventoGtv, sequencialEvento);
}
/**
* Faz o registro da guia de transporte de valores.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados da guia de transporte de valores retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno enviaGtvAssinada(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsGtv.enviaGtvAssinada(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado da guia de transporte de valores sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param eventoGtv dados do evento prévio de emissão em contingência
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao da guia de transporte de valores ja assinada
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoGtv(final String chave, final CTeEnviaEventoGtv eventoGtv, final int sequencialEvento) throws Exception {
return this.wsGtv.getXmlAssinado(chave, eventoGtv, sequencialEvento);
}
/**
* Faz o registro de prestação de serviço em desacordo.
*
* @param chave chave de acesso do CT-e
* @param observacao observação do desacordo
* @param cpfOuCnpj CPF ou CNPJ do autor do evento
* @param sequencialEvento sequencial do evento
* @return dados do desacordo do CT-e retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno prestacaoEmDesacordo(final String chave, final String observacao, final String cpfOuCnpj, final int sequencialEvento) throws Exception {
return this.wsPrestacaoEmDesacordo.prestacaoEmDesacordo(chave, observacao, cpfOuCnpj, sequencialEvento);
}
/**
* Faz o registro de prestação de serviço em desacordo.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do desacordo do CT-e retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno prestacaoEmDesacordoAssinada(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsPrestacaoEmDesacordo.prestacaoEmDesacordoAssinada(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado da prestação de serviço em desacordo sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param observacao observação do desacordo
* @param cpfOuCnpj CPF ou CNPJ do autor do evento
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de prestação de serviço em desacordo ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoPrestacaoEmDesacordo(final String chave, final String observacao, final String cpfOuCnpj, final int sequencialEvento) throws Exception {
return this.wsPrestacaoEmDesacordo.getXmlAssinado(chave, observacao, cpfOuCnpj, sequencialEvento);
}
/**
* Vincula um serviço ao CT-e multimodal.
*
* @param chave chave de acesso do CT-e multimodal
* @param informacoesAdicionais informações sobre o tipo de documento utilizado e ressalvas, se for o caso
* @param numeroDocumento número do documento que será vinculado
* @return dados do registro multimodal retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno registroMultimodal(final String chave, final String informacoesAdicionais, final String numeroDocumento) throws Exception {
return this.wsRegistroMultimodal.registroMultimodal(chave, informacoesAdicionais, numeroDocumento);
}
/**
* Vincula um serviço ao CT-e multimodal.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e multimodal
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do registro multimodal retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno registroMultimodalAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsRegistroMultimodal.registroMultimodalAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do registro multimodal sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e multimodal
* @param informacoesAdicionais informações sobre o tipo de documento utilizado e ressalvas, se for o caso
* @param numeroDocumento número do documento que será vinculado
* @return O XML da requisicao de registro multimodal ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoRegistroMultimodal(final String chave, final String informacoesAdicionais, final String numeroDocumento) throws Exception {
return this.wsRegistroMultimodal.getXmlAssinado(chave, informacoesAdicionais, numeroDocumento);
}
/**
* Cancela um evento de prestação de serviço em desacordo enviado anteriormente.
*
* @param chave chave de acesso do CT-e
* @param protocoloDesacordo protocolo do evento de prestação de serviço em desacordo
* @param cpfOuCnpj CPF ou CNPJ do autor do evento
* @param sequencialEvento sequencial do evento
* @return dados do cancelamento do evento de prestação de serviço em desacordo retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaPrestacaoEmDesacordo(final String chave, final String protocoloDesacordo, final String cpfOuCnpj, final int sequencialEvento) throws Exception {
return this.wsCancelamentoPrestacaoEmDesacordo.cancelaPrestacaoEmDesacordo(chave, protocoloDesacordo, cpfOuCnpj, sequencialEvento);
}
/**
* Cancela um evento de prestação de serviço em desacordo enviado anteriormente.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do cancelamento do evento de prestação de serviço em desacordo retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaPrestacaoEmDesacordoAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsCancelamentoPrestacaoEmDesacordo.cancelaPrestacaoEmDesacordoAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do cancelamento do evento de prestação de serviço em desacordo sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param protocoloDesacordo protocolo do evento de prestação de serviço em desacordo
* @param cpfOuCnpj CPF ou CNPJ do autor do evento
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de cancelamento do evento de prestação de serviço em desacordo ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoCancelamentoPrestacaoEmDesacordo(final String chave, final String protocoloDesacordo, final String cpfOuCnpj, final int sequencialEvento) throws Exception {
return this.wsCancelamentoPrestacaoEmDesacordo.getXmlAssinado(chave, protocoloDesacordo, cpfOuCnpj, sequencialEvento);
}
/**
* Cancela um evento de insucesso de entrega enviado anteriormente.
*
* @param chave chave de acesso do CT-e
* @param protocoloAutorizacao protocolo de autorizacao
* @param protocoloInsucessoEntrega protocolo do insucesso de entrega
* @param sequencialEvento sequencial do evento
* @return dados do cancelamento do insucesso de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaInsucessoEntrega(final String chave, final String protocoloAutorizacao, final String protocoloInsucessoEntrega, final int sequencialEvento) throws Exception {
return this.wsCancelamentoInsucessoEntrega.cancelaInsucessoEntrega(chave, protocoloAutorizacao, protocoloInsucessoEntrega, sequencialEvento);
}
/**
* Cancela um evento de insucesso de entrega enviado anteriormente.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do cancelamento do insucesso de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno cancelaInsucessoEntregaAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsCancelamentoInsucessoEntrega.cancelaInsucessoEntregaAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do cancelamento do insucesso de entrega sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param protocoloAutorizacao protocolo de autorizacao
* @param protocoloInsucessoEntrega protocolo do insucesso de entrega
* @param sequencialEvento sequencial do evento
* @return O XML da requisicao de cancelamento do insucesso de entrega ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoCancelamentoInsucessoEntrega(final String chave, final String protocoloAutorizacao, final String protocoloInsucessoEntrega, final int sequencialEvento) throws Exception {
return this.wsCancelamentoInsucessoEntrega.getXmlAssinado(chave, protocoloAutorizacao, protocoloInsucessoEntrega, sequencialEvento);
}
/**
* Registra o insucesso na entrega da carga pelo transportador.
*
* @param chave chave de acesso do CT-e
* @param insucessoEntrega dados do insucesso de entrega
* @return dados do insucesso de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno insucessoEntrega(final String chave, final CTeEnviaEventoInsucessoEntrega insucessoEntrega, final int sequencialEvento) throws Exception {
return this.wsInsucessoEntrega.insucessoEntrega(chave, insucessoEntrega, sequencialEvento);
}
/**
* Registra o insucesso na entrega da carga pelo transportador.
* ATENCAO: Esse metodo deve ser utilizado para assinaturas A3
*
* @param chave chave de acesso do CT-e
* @param eventoAssinadoXml evento ja assinado em formato XML
* @return dados do insucesso de entrega retornado pelo webservice
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
*/
public CTeEventoRetorno insucessoEntregaAssinado(final String chave, final String eventoAssinadoXml) throws Exception {
return this.wsInsucessoEntrega.insucessoEntregaAssinado(chave, eventoAssinadoXml);
}
/**
* Gera o XML assinado do insucesso de entrega sem enviar para a SEFAZ.
* @param chave chave de acesso do CT-e
* @param insucessoEntrega dados do insucesso de entrega
* @return O XML da requisicao de insucesso de entrega ja assinado
* @throws Exception caso nao consiga gerar o xml
*/
public String getXmlAssinadoInsucessoEntrega(final String chave, final CTeEnviaEventoInsucessoEntrega insucessoEntrega, final int sequencialEvento) throws Exception {
return this.wsInsucessoEntrega.getXmlAssinado(chave, insucessoEntrega, sequencialEvento);
}
/**
* Faz o envio do CT-e de Outros Serviços para a SEFAZ.
*
* @param cteOS a ser eviado para a SEFAZ
* @return dados do retorno do envio do CT-e OS e o xml assinado
* @throws Exception caso nao consiga gerar o xml ou problema de conexao com o sefaz
* */
public CTeOSEnvioRetornoDados enviaCTe(CTeOS cteOS) throws Exception {
return this.wsRecepcaoCTeOS.enviaCTe(cteOS);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy