public string Cancelar() { try { XmlSerializerNamespaces nameSpaces = new XmlSerializerNamespaces(); nameSpaces.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance"); nameSpaces.Add("tipos", "http://*****:*****@"D:\Ret_CANC_LOTE_2805131157.xml"; RetornoCancelamentoNFSe objretorno = SerializeClassToXml.DeserializeClasse <RetornoCancelamentoNFSe>(sPathRetConsultaCanc); string sMessageRetorno = TrataRetornoCancelamento(objretorno); return(sMessageRetorno); } catch (Exception ex) { throw ex; } }
private string TrataRetornoCancelamento(RetornoCancelamentoNFSe objretorno) { string sRetorno = "Retorno não tratado."; if (objretorno.erros.Erro.Count() > 0) { sRetorno = "Erros Entrontrados no Lote de Cancelamento: " + Environment.NewLine; foreach (ErrosErroCanc erro in objretorno.erros.Erro) { sRetorno += string.Format("Código:{0} - Msg:{1}.{2}", erro.Codigo, erro.Descricao, Environment.NewLine); } } if (objretorno.alertas.Alerta.Count() > 0) { foreach (AlertaCanc nota in objretorno.alertas.Alerta) { sRetorno = "Alerta: " + nota.Descricao + Environment.NewLine; if (nota.Codigo == "1301") { sRetorno += string.Format("Nota:{0}{1}", nota.ChaveNFe.NumeroNFe, Environment.NewLine); base.UpdateToCancel(nota.ChaveNFe.NumeroNFe.ToString(), nota.ChaveNFe.CodigoVerificacao.ToString(), objCancelamento.lote.Nota.FirstOrDefault(c => c.CodigoVerificacao == nota.ChaveNFe.CodigoVerificacao).MotivoCancelamento); DateTime dDT_EMISSAO = objNotas.FirstOrDefault(c => c.scd_numero_nfse == nota.ChaveNFe.NumeroNFe.ToString()).dDT_EMI; if (dDT_EMISSAO != null) { string sFileOrigem = belCancelamentoDSF.GetFilePathMonthServico(true, nota.ChaveNFe.NumeroNFe.ToString(), dDT_EMISSAO); string sFileDestino = belCancelamentoDSF.GetFilePathMonthServico(false, nota.ChaveNFe.NumeroNFe.ToString(), dDT_EMISSAO); //salvo na pasta envio com o numero do nfse. if (File.Exists(sFileOrigem)) { File.Move(sFileOrigem, sFileDestino); } } } else { sRetorno += string.Format("Código:{0} - Msg:{1}.{2}", nota.Codigo, nota.Descricao, Environment.NewLine); } } } if (objretorno.notasCanc.Nota.Count() > 0) { sRetorno = "Notas Canceladas: " + Environment.NewLine; foreach (NotasCanceladasNota nota in objretorno.notasCanc.Nota) { sRetorno += string.Format("Nota:{0}{1}", nota.NumeroNota, Environment.NewLine); base.UpdateToCancel(nota.NumeroNota.ToString(), nota.CodigoVerificacao.ToString(), objCancelamento.lote.Nota.FirstOrDefault(c => c.CodigoVerificacao == nota.CodigoVerificacao).MotivoCancelamento); DateTime dDT_EMISSAO = objNotas.FirstOrDefault(c => c.scd_numero_nfse == nota.NumeroNota.ToString()).dDT_EMI; if (dDT_EMISSAO != null) { string sFileOrigem = belCancelamentoDSF.GetFilePathMonthServico(true, nota.NumeroNota.ToString(), dDT_EMISSAO); string sFileDestino = belCancelamentoDSF.GetFilePathMonthServico(false, nota.NumeroNota.ToString(), dDT_EMISSAO); //salvo na pasta envio com o numero do nfse. if (File.Exists(sFileOrigem)) { File.Move(sFileOrigem, sFileDestino); } } } } return sRetorno; }
private string TrataRetornoCancelamento(RetornoCancelamentoNFSe objretorno) { string sRetorno = "Retorno não tratado."; if (objretorno.erros.Erro.Count() > 0) { sRetorno = "Erros Entrontrados no Lote de Cancelamento: " + Environment.NewLine; foreach (ErrosErroCanc erro in objretorno.erros.Erro) { sRetorno += string.Format("Código:{0} - Msg:{1}.{2}", erro.Codigo, erro.Descricao, Environment.NewLine); } } if (objretorno.alertas.Alerta.Count() > 0) { foreach (AlertaCanc nota in objretorno.alertas.Alerta) { sRetorno = "Alerta: " + nota.Descricao + Environment.NewLine; if (nota.Codigo == "1301") { sRetorno += string.Format("Nota:{0}{1}", nota.ChaveNFe.NumeroNFe, Environment.NewLine); base.UpdateToCancel(nota.ChaveNFe.NumeroNFe.ToString(), nota.ChaveNFe.CodigoVerificacao.ToString(), objCancelamento.lote.Nota.FirstOrDefault(c => c.CodigoVerificacao == nota.ChaveNFe.CodigoVerificacao).MotivoCancelamento); DateTime dDT_EMISSAO = objNotas.FirstOrDefault(c => c.scd_numero_nfse == nota.ChaveNFe.NumeroNFe.ToString()).dDT_EMI; if (dDT_EMISSAO != null) { string sFileOrigem = belCancelamentoDSF.GetFilePathMonthServico(true, nota.ChaveNFe.NumeroNFe.ToString(), dDT_EMISSAO); string sFileDestino = belCancelamentoDSF.GetFilePathMonthServico(false, nota.ChaveNFe.NumeroNFe.ToString(), dDT_EMISSAO); //salvo na pasta envio com o numero do nfse. if (File.Exists(sFileOrigem)) { File.Move(sFileOrigem, sFileDestino); } } } else { sRetorno += string.Format("Código:{0} - Msg:{1}.{2}", nota.Codigo, nota.Descricao, Environment.NewLine); } } } if (objretorno.notasCanc.Nota.Count() > 0) { sRetorno = "Notas Canceladas: " + Environment.NewLine; foreach (NotasCanceladasNota nota in objretorno.notasCanc.Nota) { sRetorno += string.Format("Nota:{0}{1}", nota.NumeroNota, Environment.NewLine); base.UpdateToCancel(nota.NumeroNota.ToString(), nota.CodigoVerificacao.ToString(), objCancelamento.lote.Nota.FirstOrDefault(c => c.CodigoVerificacao == nota.CodigoVerificacao).MotivoCancelamento); DateTime dDT_EMISSAO = objNotas.FirstOrDefault(c => c.scd_numero_nfse == nota.NumeroNota.ToString()).dDT_EMI; if (dDT_EMISSAO != null) { string sFileOrigem = belCancelamentoDSF.GetFilePathMonthServico(true, nota.NumeroNota.ToString(), dDT_EMISSAO); string sFileDestino = belCancelamentoDSF.GetFilePathMonthServico(false, nota.NumeroNota.ToString(), dDT_EMISSAO); //salvo na pasta envio com o numero do nfse. if (File.Exists(sFileOrigem)) { File.Move(sFileOrigem, sFileDestino); } } } } return(sRetorno); }