public DadosNFe(TipoAmbiente ambiente, NFeModelo modeloDoc, NFeFinalidade finalidade, int serie, int numeroNF) { this.serie = serie; this.numeroNF = numeroNF; this.ambiente = ambiente; this.modeloDoc = modeloDoc; this.finalidade = finalidade; }
public NFeEndereco(NFeTipoServico tipoServico, NFeModelo modelo, string autorizadora, NFeVersao versao, TipoAmbiente ambiente, string url) { TipoServico = tipoServico; Modelo = modelo; Autorizadora = autorizadora; Versao = versao; Ambiente = ambiente; Url = url; }
public NFeInutilizacaoResposta Inutilizar(string cnpj, string justificativa, NFeModelo modelo, int serie, int numeroInicial, int numeroFinal) { cnpj = cnpj.OnlyNumbers(); var ano = DateTime.Now.Year.ToString(); ano = ano.Substring(ano.Length - 2); Guard.Against <ArgumentNullException>(cnpj.IsNullOrEmpty(), "ERRO: CNPJ não informado"); Guard.Against <ArgumentNullException>(justificativa.IsNullOrEmpty(), "ERRO: Justificativa para Inutilização de numeração não informada"); Guard.Against <ArgumentException>(justificativa.Length < 15, "ERRO: A Justificativa para Inutilização de numeração deve ter no minimo 15 caracteres."); lock (serviceLock) { var idInutilizacao = $"ID{Configuracoes.Webservices.UF.GetDFeValue()}{ano:D2}{cnpj.OnlyNumbers()}{modelo.GetDFeValue()}{serie.ZeroFill(3)}{numeroInicial.ZeroFill(9)}{numeroFinal.ZeroFill(9)}"; var request = new StringBuilder(); request.Append($"<inutNFe xmlns=\"http://www.portalfiscal.inf.br/nfe\" versao=\"{Configuracoes.Versao.GetDescription()}\">"); request.Append($"<infInut Id=\"{idInutilizacao}\">"); request.Append($"<tpAmb>{Configuracoes.Ambiente.GetDFeValue()}</tpAmb>"); request.Append("<xServ>INUTILIZAR</xServ>"); request.Append($"<cUF>{Configuracoes.Webservices.UF.GetDFeValue()}</cUF>"); request.Append($"<ano>{ano}</ano>"); request.Append($"<CNPJ>{cnpj}</CNPJ>"); request.Append($"<mod>{modelo.GetDFeValue()}</mod>"); request.Append($"<serie>{serie}</serie>"); request.Append($"<nNFIni>{numeroInicial}</nNFIni>"); request.Append($"<nNFFin>{numeroFinal}</nNFFin>"); request.Append($"<xJust>{justificativa.TrimVip().RemoveAccent()}</xJust>"); request.Append("</infInut>"); request.Append("</inutNFe>"); var dadosMsg = request.ToString(); dadosMsg = SigningManager.AssinarXml(dadosMsg, "inutNFe", "infInut", ClientCredentials.ClientCertificate.Certificate); ValidateMessage(dadosMsg); GravarXmlAssinado(dadosMsg, $"{idInutilizacao.OnlyNumbers()}-inu-nfe.xml"); var xml = new XmlDocument(); xml.LoadXml(dadosMsg); var value = new InutilizacaoRequest(xml); var returnValue = Channel.Inutilizar(value); var resposta = new NFeInutilizacaoResposta(dadosMsg, returnValue.Mensagem.OuterXml, EnvelopeSoap, RetornoWS); if (resposta.Resultado.InfInut.CStat == 102) { GravarXmlInutilizacao(resposta.XmlRetorno, $"{idInutilizacao.OnlyNumbers()}-inu-nfe.xml"); } return(resposta); } }
public DadosProduto(TipoAmbiente tipoAmbiente, NFeModelo modelo) { _tipoAmbiente = tipoAmbiente; _modelo = modelo; }