public MensagemRetornoInutilizacao InutilizarNotaFiscal(string ufEmitente, CodigoUfIbge codigoUf, Ambiente ambiente, string cnpjEmitente, Modelo modeloNota, string serie, string numeroInicial, string numeroFinal) { var mensagemRetorno = _nfeInutilizacao.InutilizarNotaFiscal(ufEmitente, codigoUf, ambiente, cnpjEmitente, modeloNota, serie, numeroInicial, numeroFinal); if (mensagemRetorno.Status != Status.ERRO) { var notaInutilizada = new NotaInutilizadaTO { DataInutilizacao = DateTime.Now, IdInutilizacao = mensagemRetorno.IdInutilizacao, IsProducao = ambiente == Ambiente.Producao, Modelo = modeloNota == Modelo.Modelo55 ? 55 : 65, Motivo = mensagemRetorno.MotivoInutilizacao, Numero = numeroInicial, Protocolo = mensagemRetorno.ProtocoloInutilizacao, Serie = serie }; Salvar(notaInutilizada, mensagemRetorno.Xml); } return(mensagemRetorno); }
public NotaInutilizadaTO GetNotaInutilizadaFromXml(string xml) { var procInutNFe = (TProcInutNFe)XmlUtil.Deserialize <TProcInutNFe>(xml); var envInfInut = procInutNFe.inutNFe.infInut; var retInfInut = procInutNFe.retInutNFe.infInut; var notaInutilizada = new NotaInutilizadaTO(); notaInutilizada.Serie = envInfInut.serie; notaInutilizada.Numero = envInfInut.nNFFin; notaInutilizada.Modelo = envInfInut.mod == TMod.Item55 ? 55 : 65; notaInutilizada.IsProducao = envInfInut.tpAmb == TAmb.Item1; notaInutilizada.DataInutilizacao = DateTime.ParseExact(retInfInut.dhRecbto, "yyyy-MM-ddTHH:mm:sszzz", CultureInfo.InvariantCulture); notaInutilizada.IdInutilizacao = envInfInut.Id; notaInutilizada.Protocolo = retInfInut.nProt; notaInutilizada.Motivo = envInfInut.xJust; return(notaInutilizada); }
public virtual void Salvar(NotaInutilizadaTO notaInutilizada, string xml) { try { notaInutilizada.XmlPath = XmlFileHelper.SaveXmlFile(notaInutilizada, xml); _notaInutilizadaRepository.Salvar((NotaInutilizadaEntity)notaInutilizada); } catch (Exception e) { log.Error(e); try { XmlFileHelper.DeleteXmlFile(notaInutilizada); } catch (Exception ex) { log.Error(ex); throw new Exception("Não foi possível remover o xml de nota fiscal: " + e.Message); } } }