public void UpdateDB() { var sessao = AuxiliarNhibernate.AbrirSessao(); ProtocoloDB_DAO ProtocoloDAO = new ProtocoloDB_DAO(sessao); var lista = ProtocoloDAO.BuscaParaAtualizarBanco(); if (lista.Count > 0) { foreach (var item in lista) { if (item.driver == StaticParametersDB.GetDriver()) { try { if (!item.salvoDB) { var ret = Banco.UpdateDB(item); if (ret == true) { item.salvoDB = true; ProtocoloDAO.Salvar(item); } } } catch (Exception ex) { } } } } sessao.Close(); }
public void EnviaDB() { var sessao = AuxiliarNhibernate.AbrirSessao(); ProtocoloDB_DAO ProtocoloDAO = new ProtocoloDB_DAO(sessao); Banco.GetData(sessao); var lista = ProtocoloDAO.BuscaEnvio(); if (lista.Count > 0) { foreach (var item in lista) { var apiXMLDB = new EnviaXML(StaticParametersDB.GetGrupo(), StaticParametersDB.GetToken(), Convert.ToBoolean(item.baseEnv)); if (item.driver == StaticParametersDB.GetDriver()) { var xmlString = proc.MontaXMLDB(item.id, item.xmlEvento); var response = apiXMLDB.SendXML(xmlString, item.id); if (proc.VerificaResponseXML(response) == true) { proc.SalvaProtocoloXML(item.id, response, 2, sessao); var data = proc.RetornaData(); var protocolo = new ProtocoloDB { id = item.id, dtenvio = data[0], hrenvio = data[1], status = "0 - Enviado", idDB = StaticParametersDB.GetId() }; ProtocoloDAO.Salvar(protocolo); proc.GeraLogEnviaXML(item.id, "Foi enviado com sucesso!"); Banco.CustomUpdateDB(ProtocoloDAO.BuscarPorIDEvento(item.id), 3); } else { proc.GeraLogEnviaXML(item.id, "Não foi enviado"); } } } } proc.RemoveFileBuffer(); sessao.Close(); }
private void search() { var sessao = AuxiliarNhibernate.AbrirSessao(); ProtocoloDB_DAO ProtocoloDAO = new ProtocoloDB_DAO(sessao); var protocolos = ProtocoloDAO.BuscaPorData(datePicker.SelectedDate.ToString().Split(' ')[0]); if (protocolos.Count > 0) { var result = MessageBox.Show("Deseja colocar os eventos da data selecionada para serem reconsultados? Total de " + protocolos.Count, "Confirmação", MessageBoxButton.YesNo); if (result == MessageBoxResult.Yes) { foreach (var protocolo in protocolos) { var procotolodb = new ProtocoloDB(); procotolodb.id = protocolo.id; procotolodb.consultado = false; procotolodb.salvoDB = false; procotolodb.erros = null; procotolodb.dtconsulta = null; procotolodb.hrconsulta = null; procotolodb.nroRec = null; procotolodb.xmlRec = null; procotolodb.nroProtGov = null; try { ProtocoloDAO.SalvarReconsulta(procotolodb); } catch (Exception ex) { Processos proc = new Processos(); proc.InsereLogInterno("Reconsultar", ex, "999", "1", ""); } } System.Windows.MessageBox.Show("Sucesso"); } } else { System.Windows.MessageBox.Show("Nenhum evento encontrado!"); } }
public void ConsultaDB() { var sessao = AuxiliarNhibernate.AbrirSessao(); ProtocoloDB_DAO ProtocoloDAO = new ProtocoloDB_DAO(sessao); var lista = ProtocoloDAO.BuscaConsulta(); if (lista.Count > 0) { foreach (var item in lista) { if (item.driver == StaticParametersDB.GetDriver()) { var apiConXMLDB = new ConsultaXML(StaticParametersDB.GetGrupo(), StaticParametersDB.GetToken()); var retorno = apiConXMLDB.ConsultaProtocolo(item.nroProt, item.baseEnv, item.id); try { if (proc.VerificaConsultaXML(retorno) == true) { proc.GeraLogConsultaXML(item.id, retorno, item.nroProt, 2); if (proc.VerificaSeTemRecibo(retorno, item.id) == true) { var xmlRec = proc.ExtraiXMLRecibo(item.id, retorno); var nrRec = proc.ExtraiInfoXML(xmlRec, "nrRecibo"); var nrProtgov = proc.ExtraiInfoXML(xmlRec, "protocoloEnvioLote"); var data = proc.RetornaData(); var prot = new ProtocoloDB { id = item.id, xmlRec = xmlRec, nroRec = nrRec, consultado = true, dtconsulta = data[0], hrconsulta = data[1], nroProtGov = nrProtgov, status = "2 - Aprovado", idDB = StaticParametersDB.GetId() }; ProtocoloDAO.Salvar(prot); } else { var erros = proc.ExtraiErrosXmlDB(retorno, item.id); if (!erros.Equals("")) { var data = proc.RetornaData(); var prot = new ProtocoloDB { id = item.id, erros = erros, consultado = true, dtconsulta = data[0], hrconsulta = data[1], status = "3 - Rejeitado", idDB = StaticParametersDB.GetId() }; ProtocoloDAO.Salvar(prot); } else { throw new Exception($"Erro na consulta do item {item.id}, Retorno: {retorno}"); } } } else { var data = proc.RetornaData(); var prot = new ProtocoloDB { id = item.id, dtconsulta = data[0], hrconsulta = data[1], status = "1 - Aguardando Governo/iVeS", idDB = StaticParametersDB.GetId() }; ProtocoloDAO.Salvar(prot); Banco.CustomUpdateDB(ProtocoloDAO.BuscarPorIDEvento(item.id), 4); } } catch (Exception e) { ex.Exception(e.Message, item.id, "Consulta", "Tente consultar novamente em alguns minutos", e); } } } } proc.RemoveFileBuffer(); sessao.Close(); }
public static void GetData(ISession sessao) { var ProtocoloDAO = new ProtocoloDB_DAO(sessao); using (var conn = GetConnection()) { //Não é possível abrir o banco de dados solicitado pelo logon. Falha de logon.Falha de logon do usuário 'AUTORIDADE NT\SISTEMA'. try { conn.Open(); using (var comm = GetCommand()) { comm.Connection = conn; comm.CommandText = "SELECT ID, XMLEVENTO, IDSEQ FROM ZMDATVIVES_EVENTOS_ESOCIAL WHERE NROPROTOCOLO IS NULL"; var adapter = GetAdapter(comm); var dataTable = new System.Data.DataTable(); adapter.Fill(dataTable); Processos proc = new Processos(); foreach (System.Data.DataRow row in dataTable.Rows) { try { var Base = proc.DefineBaseEnvioDB(Convert.ToString(row["XMLEVENTO"]), (Convert.ToString(row["ID"]) + "-" + Convert.ToString(row["IDSEQ"]) + "-" + StaticParametersDB.GetId())); var prot = new ProtocoloDB { id = string.Concat(Convert.ToString(row["ID"]), "-", Convert.ToString(row["IDSEQ"]), "-" + StaticParametersDB.GetId()), idEvento = Convert.ToString(row["ID"]), idSeq = Convert.ToString(row["IDSEQ"]), xmlEvento = Convert.ToString(row["XMLEVENTO"]), driver = StaticParametersDB.GetDriver(), baseEnv = Convert.ToString(Base), idDB = StaticParametersDB.GetId() }; ProtocoloDAO.Salvar(prot); } catch (Exception ex) { if (ex.HResult != -2147467261) { ExceptionCore e = new ExceptionCore(); e.ExBanco(30, "ID Evento: " + (Convert.ToString(row["ID"]) + "-" + Convert.ToString(row["IDSEQ"]) + "-" + StaticParametersDB.GetId()) + " | Erro: " + ex.Message, StaticParametersDB.GetDriver(), ex, ""); } else { UpdateDB( proc.GeraProtocoloAux("1" , Convert.ToString(row["ID"]) , Convert.ToString(row["IDSEQ"]) , "<erro>Tag tipo de ambiente não presente no XML</erro>" , "0" , "Tag tipo de ambiente não presente no XML") ); } } } } } catch (Exception ex) { ExceptionCore e = new ExceptionCore(); e.ExBanco(1, ex.Message, StaticParametersDB.GetDriver(), ex, ""); } finally { conn.Close(); } } }