private void ChangedFile(string name, StatusDiretorio sd) { try { switch ((int)sd) { case 0: File.Move(String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles, name), String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles + "\\enviados", name)); break; case 1: File.Move(String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles, xmlData.nomeXml), String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles + "\\rejeitados", xmlData.nomeXml)); break; case 2: File.Move(String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles, xmlData.nomeXml), String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles + "\\contingencia", xmlData.nomeXml)); sendMSMQ(xmlData.nomeXml); break; } } catch (Exception e) { Utils.Logger.getInstance.error(e); } }
public void Processa() { XmlDocument arqNfce = xmlData.xmlDocAss; bool consultaSefaz = false; try { if ((InterfaceStatus.GetStatusCupom() < (int)StatusCupom.CupomSeFazRetornoOk) && (!config.configNFCe.Contingencia)) { enviaSeFaz.enviaSefaz(arqNfce); ManagerDB.Instance.InsertNfceStatus(id_db, (int)StatusCupom.CupomEnviadoSeFaz, "Enviado Sefaz", ""); ManagerDB.Instance.UpdateReciboNFCe(id_db, enviaSeFaz.GetRecibo()); } if (!config.configNFCe.Contingencia) { consultaSefaz = enviaSeFaz.ConsultaOK(); ManagerDB.Instance.UpdatenProtNFCe(id_db, enviaSeFaz.GetnProt()); ManagerDB.Instance.InsertNfceStatus(id_db, (int)StatusCupom.CupomSeFazRetornoOk, "Consulta Sefaz Sucesso", ""); sd = StatusDiretorio.Enviada; arqNfce = enviaSeFaz.GetXmlOK(); arqNfce.Save(String.Format("{0}\\{1}.xml", config.configMaquina.pathFiles, xmlData.nomeXml)); } Impressao(); if (!config.configNFCe.Contingencia) //Gravar depois da Impressao! ManagerDB.Instance.InsertNfceStatus(id_db, (int)StatusCupom.Aprovado, "Aprovado Uso da NFCe", ""); } catch (Exception e) { sd = StatusDiretorio.Rejeitada; Utils.Logger.getInstance.error(e); string rejeicao = (e.Message.Length > 500) ? e.Message.Substring(500) : e.Message; ManagerDB.Instance.InsertNfceStatus(id_db, (int)StatusCupom.CupomRejeitado, "NFCE Rejeitado", rejeicao); throw new Exception(dtNFCE.IdAccount + ": Rejeiçao de xml:" + e.ToString()); } finally { if (config.configNFCe.Contingencia) sd = StatusDiretorio.Contingencia; ChangedFile(xmlData.nomeXml, sd); } }