コード例 #1
0
ファイル: Jobs.cs プロジェクト: vertechit/integradorIves
        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();
        }
コード例 #2
0
        private void salvaDB(ParametroDB paramdbNew)
        {
            var sessao      = AuxiliarNhibernate.AbrirSessao();
            var ParametroDB = new ParametroDB_DAO(sessao);
            var process     = new Processos();

            if (lastIndex != 0)
            {
                ParametroDB.Salvar(paramDB[lastIndex - 1]);
                refreshCBO(paramDB[lastIndex - 1], 1);
            }
            else
            {
                ParametroDB.Salvar(paramdbNew);
                refreshCBO(paramdbNew, 0);
            }
        }
コード例 #3
0
ファイル: Jobs.cs プロジェクト: vertechit/integradorIves
        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();
        }
コード例 #4
0
        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!");
            }
        }
コード例 #5
0
        private void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show("Deseja prosseguir?", "Confirmação de exclusão", System.Windows.MessageBoxButton.YesNo);

            if (messageBoxResult == MessageBoxResult.Yes)
            {
                var sessao  = AuxiliarNhibernate.AbrirSessao();
                var paramdb = new ParametroDB_DAO(sessao);

                try
                {
                    paramdb.Remover(paramDB[lastIndex - 1]);
                    paramDB.RemoveAt(lastIndex - 1);
                    if (paramDB.Count >= 1)
                    {
                        StaticParametersDB.clearListBanco();
                        foreach (var p in paramDB)
                        {
                            StaticParametersDB.SetListBanco(p);
                        }
                        StaticParametersDB.Setcurrent(paramDB[0].Id);
                        refreshCBO(paramDB[0], 1);
                    }
                    else
                    {
                        StaticParametersDB.clearListBanco();
                        StaticParametersDB.clearAllStatic();
                        StaticParametros.SetIntegraBanco(false);
                        BtnDelete.Visibility = Visibility.Hidden;
                        CboConexao.Items.Clear();
                        CboConexao.Items.Insert(0, "Nova conexão");
                        CboConexao.SelectedIndex = 0;
                    }
                    cleanScreen();
                }
                catch (Exception ex)
                {
                }

                //this.Close();
            }
        }
コード例 #6
0
ファイル: Jobs.cs プロジェクト: vertechit/integradorIves
        public void Envia()
        {
            var           sessao = AuxiliarNhibernate.AbrirSessao();
            DirectoryInfo di     = new DirectoryInfo(string.Concat(StaticParametros.GetDirArq(), "\\logs"));

            if (di.Exists == false)
            {
                di.Create();
            }


            var ArquivosTXT = proc.ListarArquivos(".txt");
            var ArquivosXML = proc.ListarArquivos(".xml");

            if (ArquivosTXT.Count > 0)
            {
                foreach (var item in ArquivosTXT)
                {
                    var result = proc.VerificacaoIntegra(item, sessao);

                    if (result == 0)
                    {
                        var retorno = apiTXT.SendTXT(proc.LerArquivo(StaticParametros.GetDirArq(), item));

                        if (retorno.protocolo > 0)
                        {
                            proc.SalvaProtocolo(retorno, item, sessao);
                            proc.GeraLogIntegra(item, "Foi enviado com sucesso!");
                        }
                        else
                        {
                            proc.GeraLogIntegra(item, "Erro no envio, retorno invalido!");
                        }
                    }
                    else if (result == 1)
                    {
                    }
                    else
                    {
                        proc.GeraLogIntegra(item, "O arquivo está com o formato inválido");
                    }
                }
            }

            if (ArquivosXML.Count > 0)
            {
                foreach (var item in ArquivosXML)
                {
                    if (proc.VerificacaoEnviaLote(item, sessao) == true)
                    {
                        var xmlString = proc.MontaXML(item);
                        var response  = apiXML.SendXML(xmlString, item);
                        if (proc.VerificaResponseXML(response) == true)
                        {
                            proc.SalvaProtocoloXML(item, response, 1, sessao);
                            proc.GeraLogEnviaXML(item, "Foi enviado com sucesso!");
                        }
                        else
                        {
                            proc.GeraLogEnviaXML(item, "Não foi enviado");
                        }
                    }
                    else
                    {
                        //proc.GeraLogEnviaXML(item, "Já foi enviado!");
                    }
                }
            }

            proc.RemoveFileBuffer();

            sessao.Close();
        }
コード例 #7
0
ファイル: Jobs.cs プロジェクト: vertechit/integradorIves
        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();
        }
コード例 #8
0
ファイル: Jobs.cs プロジェクト: vertechit/integradorIves
        public void Consulta()
        {
            var sessao = AuxiliarNhibernate.AbrirSessao();

            DirectoryInfo di = new DirectoryInfo(string.Concat(StaticParametros.GetDirArq(), "\\logs"));

            if (di.Exists == false)
            {
                di.Create();
            }

            var ArquivosTXT = proc.ListarArquivos(".txt");
            var ArquivosXML = proc.ListarArquivos(".xml");

            if (ArquivosTXT.Count > 0)
            {
                foreach (var item in ArquivosTXT)
                {
                    bool result = false;

                    var prot = proc.RetornaProtocolo(item, sessao);
                    try
                    {
                        var a = prot.NroProtocolo;
                        result = true;
                    }
                    catch (Exception e)
                    {
                    }

                    if (result == true)
                    {
                        if (prot.Ambiente == StaticParametros.GetAmbiente() && Convert.ToBoolean(prot.Base) == StaticParametros.GetBase())
                        {
                            try
                            {
                                var retorno = apiConTXT.ConsultaProtocolo(prot, item);

                                proc.GeraLogConsulta(item, retorno.consultaProtocolo.identificador.protocolo.ToString()
                                                     , Convert.ToString(retorno.consultaProtocolo.status.descResposta)
                                                     , Convert.ToInt32(retorno.consultaProtocolo.status.cdResposta));

                                try
                                {
                                    proc.CreateFileRetornoTXT(item);
                                }
                                catch (Exception e)
                                {
                                }

                                if (retorno.consultaProtocolo.status.cdResposta == 3 || retorno.consultaProtocolo.status.cdResposta == 2)
                                {
                                    proc.MoverConsultado(item);
                                    proc.RemoveProtocolo(prot, sessao);
                                }
                            }
                            catch (Exception e)
                            {
                                ex.Exception(e.Message, item, "Consulta", "", e);
                            }
                        }
                    }
                }
            }

            if (ArquivosXML.Count > 0)
            {
                foreach (var item in ArquivosXML)
                {
                    bool result = false;
                    var  prot   = proc.RetornaProtocolo(item, sessao);

                    try
                    {
                        var a = prot.NroProtocolo;
                        result = true;
                    }
                    catch (Exception e)
                    {
                    }

                    if (result == true)
                    {
                        if (prot.Ambiente == StaticParametros.GetAmbiente() && Convert.ToBoolean(prot.Base) == StaticParametros.GetBase())
                        {
                            var retorno = apiConXML.ConsultaProtocolo(prot.NroProtocolo, prot.Base, item);

                            try
                            {
                                if (retorno != "")
                                {
                                    if (proc.VerificaConsultaXML(retorno) == true)
                                    {
                                        proc.GeraLogConsultaXML(item, retorno, prot.NroProtocolo, 1);
                                        proc.MoverConsultado(item);
                                        proc.RemoveProtocolo(prot, sessao);
                                    }
                                }
                            }
                            catch (Exception e)
                            {
                                ex.Exception(e.Message, item, "Consulta", "Tente consultar novamente em alguns minutos", e);
                            }
                        }
                    }
                }
            }

            proc.RemoveFileBuffer();

            sessao.Close();
        }
コード例 #9
0
        private void BtnBuscar_Click(object sender, RoutedEventArgs e)
        {
            var sessao        = AuxiliarNhibernate.AbrirSessao();
            var logConsultDao = new LogConsultaDAO(sessao);
            var logEnvioDao   = new LogEnvioDAO(sessao);
            var logErroDao    = new LogErroDAO(sessao);
            var proc          = new Processos();


            string escolha = (string)CboTipo.SelectedItem;
            string campo   = (string)CboCampos.SelectedItem;


            if (escolha == "Consulta")
            {
                if (campo == null || campo == "")
                {
                    DataTable dt = proc.ConvertToDataTable(logConsultDao.BuscaTodos());
                    DtData.ItemsSource = dt.DefaultView;
                }
                else
                {
                    if (campo == "Identificador")
                    {
                        DataTable dt = proc.ConvertToDataTable(logConsultDao.BuscaPorIdentificador(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                    else
                    {
                        DataTable dt = proc.ConvertToDataTable(logConsultDao.BuscaPorData(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                }
            }
            else if (escolha == "Envia")
            {
                if (campo == null || campo == "")
                {
                    DataTable dt = proc.ConvertToDataTable(logEnvioDao.BuscaTodos());
                    DtData.ItemsSource = dt.DefaultView;
                }
                else
                {
                    if (campo == "Identificador")
                    {
                        DataTable dt = proc.ConvertToDataTable(logEnvioDao.BuscaPorIdentificador(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                    else
                    {
                        DataTable dt = proc.ConvertToDataTable(logEnvioDao.BuscaPorData(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                }
            }
            else if (escolha == "Erros")
            {
                if (campo == null || campo == "")
                {
                    DataTable dt = proc.ConvertToDataTable(logErroDao.BuscaTodos());
                    DtData.ItemsSource = dt.DefaultView;
                }
                else
                {
                    if (campo == "Serviço")
                    {
                        DataTable dt = proc.ConvertToDataTable(logErroDao.BuscaPorServico(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                    else
                    {
                        DataTable dt = proc.ConvertToDataTable(logErroDao.BuscaPorData(TxbValor.Text));
                        DtData.ItemsSource = dt.DefaultView;
                    }
                }
            }
            else if (escolha == "")
            {
                DtData.ItemsSource = null;
            }
        }
コード例 #10
0
        private void ExportLog()
        {
            ctrl = 1;
            try
            {
                var sessao     = AuxiliarNhibernate.AbrirSessao();
                var logErroDao = new LogErroDAO(sessao);
                var logInterno = new LogInternoDAO(sessao);
                var proc       = new Processos();

                var lt1 = logErroDao.BuscaTodos();
                var lt2 = logInterno.BuscaTodos();

                DirectoryInfo dir = new DirectoryInfo(@"c:\\vch\\log");
                FileInfo      fi1 = new FileInfo(@"c:\\vch\\log\\logErro.log");
                FileInfo      fi2 = new FileInfo(@"c:\\vch\\log\\logInterno.log");

                if (dir.Exists != true)
                {
                    dir.Create();
                }
                if (fi1.Exists == true)
                {
                    fi1.Delete();
                }
                if (fi2.Exists == true)
                {
                    fi2.Delete();
                }


                StreamWriter vWriter = new StreamWriter(fi1.FullName, true);
                foreach (var item in lt1)
                {
                    vWriter.WriteLine("Id: " + item.Id);
                    vWriter.WriteLine("Serviço: " + item.Servico);
                    vWriter.WriteLine("Cod erro: " + item.CodErro);
                    vWriter.WriteLine("Mensagem: " + item.Msg);
                    vWriter.WriteLine("Ação: " + item.Acao);
                    vWriter.WriteLine("Data: " + item.Data);
                    vWriter.WriteLine("Hora: " + item.Hora);
                    vWriter.WriteLine("");
                    vWriter.WriteLine("--------------------------------------------------");
                }
                vWriter.Flush();
                vWriter.Close();

                StreamWriter vWriter2 = new StreamWriter(fi2.FullName, true);
                foreach (var item in lt2)
                {
                    vWriter2.WriteLine("Id: " + item.Id);
                    vWriter2.WriteLine("Serviço: " + item.Servico);
                    vWriter2.WriteLine("Cod erro: " + item.CodErro);
                    vWriter2.WriteLine("Mensagem: " + item.Mensagem);
                    vWriter2.WriteLine("InnerException: " + item.InnerException);
                    vWriter2.WriteLine("Stack: " + item.StackTrace);
                    vWriter2.WriteLine("Source: " + item.Source);
                    vWriter2.WriteLine("Custom EndPoint: " + item.Base);
                    vWriter2.WriteLine("Ambiente: " + item.Ambiente);
                    vWriter2.WriteLine("Identificação: " + item.Identificacao);
                    vWriter2.WriteLine("XML: " + item.Xml);
                    vWriter2.WriteLine("SQL: " + item.SQL);
                    vWriter2.WriteLine("Data: " + item.Data);
                    vWriter2.WriteLine("");
                    vWriter2.WriteLine("--------------------------------------------------");
                }
                vWriter2.Flush();
                vWriter2.Close();


                var value = MessageBox.Show("Deseja abrir a pasta de logs?", "Sucesso", MessageBoxButton.YesNo, MessageBoxImage.Question);

                if (value == MessageBoxResult.Yes)
                {
                    string argument = @"/select, C:\vch\log\";
                    System.Diagnostics.Process.Start("explorer.exe", argument);
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Erro", MessageBoxButton.OK, MessageBoxImage.Error);
            }

            ctrl = 0;
        }
コード例 #11
0
        public void Init()
        {
            Processos     process       = new Processos();
            DirectoryInfo dir           = new DirectoryInfo(@"C:\\vch");
            FileInfo      fil           = new FileInfo(@"C:\\vch\\dados.db");
            int           ctrlFirstExec = 0;

            if (dir.Exists != true)
            {
                ctrlFirstExec = 1;
                string user = System.Windows.Forms.SystemInformation.UserName;
                System.IO.DirectoryInfo folderInfo = new System.IO.DirectoryInfo("C:\\");

                DirectorySecurity ds = new DirectorySecurity();
                ds.AddAccessRule(new FileSystemAccessRule(user, FileSystemRights.Modify, AccessControlType.Allow));
                ds.SetAccessRuleProtection(false, false);
                folderInfo.Create(ds);
                folderInfo.CreateSubdirectory("vch");

                OrganizaTelaEvent(1);
            }

            if (fil.Exists != true)
            {
                try
                {
                    AuxiliarNhibernate.AbrirSessao();
                    //fil.Create();
                }
                catch (Exception e)
                {
                    //System.Windows.Forms.MessageBox.Show(e.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

            if (process.ReadPermissionFolder() == false || process.ReadPermissionFile() == false)
            {
                OrganizaTelaEvent(1);
                return;
            }

            var sessao = AuxiliarNhibernate.AbrirSessao();

            Thread t = new Thread(process.VerificaParaAtualizar);

            t.Name = "UpdaterWorker";
            t.Start();

            if (ctrlFirstExec == 0)
            {
                var parametroDAO = new ParametroDAO(sessao);
                var param        = parametroDAO.BuscarPorID(1);//Armazenamento.GetParametros();

                int ctrl      = 0;
                int ctrlVazio = 0;
                try
                {
                    StaticParametros.SetGeraLogs(param.GeraLog);

                    if (param.CaminhoToke.Contains(".ives") && param.CaminhoToke != "" && File.Exists(param.CaminhoToke))
                    {
                        StaticParametros.SetDirToke(param.CaminhoToke);
                        txtFolderToken.Text = param.CaminhoToke;
                        DefineToken(param.CaminhoToke);
                        ctrl++;
                    }

                    if (param.CaminhoDir != "")
                    {
                        if (Directory.Exists(param.CaminhoDir))
                        {
                            txtFolderIni.Text = param.CaminhoDir;
                            StaticParametros.SetDirOrigem(param.CaminhoDir);
                            ctrl++;
                        }
                    }
                }
                catch (Exception ex)
                {
                    //OrganizaTelaEvent(1);
                    ctrlVazio = 1;
                }

                var parametroDBDAO = new ParametroDB_DAO(sessao);
                var paramDB        = parametroDBDAO.BuscarTodos();//parametroDBDAO.BuscarPorID(1);
                //var paramDB = Armazenamento.GetParametrosDB();

                try
                {
                    if (paramDB.Count == 1)
                    {
                        StaticParametersDB.SetListBanco(paramDB[0]);

                        if (paramDB[0].Grupo == 0 || paramDB[0].Token == null || paramDB[0].Token == "")
                        {
                            throw new Exception();
                        }
                        else
                        {
                            StaticParametersDB.Setcurrent(paramDB[0].Id);
                        }
                    }
                    else if (paramDB.Count > 1)
                    {
                        foreach (var p in paramDB)
                        {
                            StaticParametersDB.SetListBanco(p);
                        }

                        foreach (var p in paramDB)
                        {
                            if (p.Grupo == 0 || p.Token == null || p.Token == "")
                            {
                                throw new Exception();
                            }
                        }

                        StaticParametersDB.Setcurrent(paramDB[0].Id);
                    }
                    else
                    {
                        throw new Exception();
                    }
                    StaticParametros.SetIntegraBanco(true);
                    TxtStatusBanco.Text = "Conectado";
                    ctrl++;
                }
                catch (Exception ex)
                {
                    StaticParametros.SetIntegraBanco(false);
                    TxtStatusBanco.Text = "Desconectado";
                    if (ctrlVazio == 0)
                    {
                        var paramn = new Parametro {
                            Id = 1, CaminhoDir = StaticParametros.GetDirOrigem(), CaminhoToke = StaticParametros.GetDirToke(), IntegraBanco = StaticParametros.GetIntegraBanco(), GeraLog = StaticParametros.GetGeraLogs()
                        };
                        parametroDAO.Salvar(param);

                        //Armazenamento.UpdateParametros(new Parametro { Id = 1, CaminhoDir = param.CaminhoDir, CaminhoToke = param.CaminhoToke, IntegraBanco = false });
                    }
                }

                if (ctrl >= 2)
                {
                    try
                    {
                        if (txtFolderToken.Text == "")
                        {
                            OrganizaTelaEvent(1);
                        }
                        else
                        {
                            OrganizaTelaEvent(2);
                        }
                        //Job();
                        if (StaticParametros.GetDirOrigem() != null && StaticParametros.GetDirOrigem() != "")
                        {
                            process.CriarPastas();
                        }
                    }
                    catch (Exception ex)
                    {
                        OrganizaTelaEvent(1);
                    }
                }
                else
                {
                    Thread Tproc = new Thread(process.LimpaLog);
                    Tproc.Start();

                    OrganizaTelaEvent(1);
                }
            }

            sessao.Close();

            if (process.WritePermissionFolder() == false || process.WritePermissionFile() == false)
            {
                OrganizaTelaEvent(1);
            }
        }
コード例 #12
0
        private void BtnSalvar_Click(object sender, RoutedEventArgs e)
        {
            var proc = new Processos();

            if (proc.ReadPermissionFolder() == false || proc.WritePermissionFolder() == false)
            {
                System.Windows.Forms.MessageBox.Show("Ops, você não tem permissão para leitura ou escrita na pasta c:/vch", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            if (proc.WritePermissionFile() == false || proc.ReadPermissionFile() == false)
            {
                System.Windows.Forms.MessageBox.Show("Ops, você não tem permissão para leitura ou escrita no arquivo dados.db | c:/vch/dados.db", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            var sessao         = AuxiliarNhibernate.AbrirSessao();
            var parametroDAO   = new ParametroDAO(sessao);
            var parametroDBDAO = new ParametroDB_DAO(sessao);

            if (proc.VerificaProcessoRun() == false)
            {
                Processos process = new Processos();
                var       ctrl    = 0;
                if (StaticParametros.GetDirToke() != null)
                {
                    if (File.Exists(StaticParametros.GetDirToke()))
                    {
                        ctrl++;
                        if (StaticParametros.GetDirOrigem() != null)
                        {
                            if (Directory.Exists(StaticParametros.GetDirOrigem()))
                            {
                                ctrl++;
                            }
                            else
                            {
                                System.Windows.MessageBox.Show("Ops! Parece que a pasta de origem foi movida");
                                txtFolderIni.Text = "";
                                StaticParametros.SetDirOrigem(null);
                            }
                        }

                        if (StaticParametersDB.GetDriver() != null)
                        {
                            ctrl++;

                            StaticParametros.SetIntegraBanco(true);
                        }

                        if (ctrl >= 2)
                        {
                            var newParam = new Parametro {
                                Id = 1, CaminhoDir = StaticParametros.GetDirOrigem(), CaminhoToke = StaticParametros.GetDirToke(), IntegraBanco = StaticParametros.GetIntegraBanco(), GeraLog = StaticParametros.GetGeraLogs()
                            };
                            parametroDAO.Salvar(newParam);

                            if (StaticParametersDB.GetDriver() != null)
                            {
                                TxtStatusBanco.Text = "Conectado";
                            }
                            else
                            {
                                TxtStatusBanco.Text = "Desconectado";
                            }
                            //Armazenamento.AddParametros(new Parametro { Id = 1, CaminhoDir = StaticParametros.GetDirOrigem(), CaminhoToke = StaticParametros.GetDirToke(), IntegraBanco = StaticParametros.GetIntegraBanco() });
                            OrganizaTelaEvent(2);

                            if (StaticParametros.GetDirOrigem() != null && StaticParametros.GetDirOrigem() != "")
                            {
                                process.CriarPastas();
                            }
                        }
                        else
                        {
                            TxtStatusBanco.Text = "Desconectado";
                            System.Windows.MessageBox.Show("É necessário definir um diretorio ou configurar uma conexão com banco de dados para continuar");
                        }
                    }
                    else
                    {
                        System.Windows.MessageBox.Show("Ops! Parece que o arquivo de token foi movido");
                        txtFolderToken.Text = "";
                        StaticParametros.SetDirToke(null);
                    }
                }
                else
                {
                    System.Windows.MessageBox.Show("É necessário definir um token para continuar");
                }
            }

            else
            {
                System.Windows.MessageBox.Show("O serviço está em execução");
            }

            sessao.Close();
        }
コード例 #13
0
ファイル: Service.cs プロジェクト: vertechit/integradorIves
        public void Parametro()
        {
            var       sessao         = AuxiliarNhibernate.AbrirSessao();
            var       ParametroDAO   = new ParametroDAO(sessao);
            var       ParametroDBDAO = new ParametroDB_DAO(sessao);
            Processos process        = new Processos();

            StaticParametros.SetTipoApp("Service");
            int ctrl = 0;

            try
            {
                var ret = ParametroDAO.BuscarPorID(1);//Armazenamento.GetParametros();
                //var retdb = ParametroDBDAO.BuscarPorID(1);
                var retdb = ParametroDBDAO.BuscarTodos();
                try
                {
                    StaticParametros.SetGeraLogs(ret.GeraLog);
                    if (File.Exists(ret.CaminhoToke))
                    {
                        ctrl++;
                        StaticParametros.SetDirToke(ret.CaminhoToke);

                        if (DefineToken(StaticParametros.GetDirToke()) == false)
                        {
                            this.Stop();
                        }
                        if (VerificaProcessoRun() == false)
                        {
                            Thread t = new Thread(process.VerificaParaAtualizar);
                            t.Name = "UpdaterWorker";
                            t.Start();
                        }
                        else
                        {
                            Log("Feche o integrador para iniciar o serviço.", 2);
                            this.Stop();
                        }
                    }
                }
                catch (Exception)
                {
                    Log("Não foi possivel localizar as informações, por favor, abra o integrador e defina os parametros novamente.", 2);
                    this.Stop();
                }

                try
                {
                    if (Directory.Exists(ret.CaminhoDir))
                    {
                        ctrl++;
                        StaticParametros.SetDirOrigem(ret.CaminhoDir);
                        process.CriarPastas();
                    }
                }
                catch (Exception)
                {
                }

                try
                {
                    if (retdb.Count == 1)
                    {
                        StaticParametersDB.SetListBanco(retdb[0]);
                        if (retdb[0].Grupo == 0 || retdb[0].Token == null || retdb[0].Token == "")
                        {
                            throw new Exception();
                        }
                        StaticParametersDB.Setcurrent(retdb[0].Id);
                    }
                    else if (retdb.Count > 1)
                    {
                        foreach (var p in retdb)
                        {
                            StaticParametersDB.SetListBanco(p);
                        }
                        foreach (var p in retdb)
                        {
                            if (p.Grupo == 0 || p.Token == null || p.Token == "")
                            {
                                throw new Exception();
                            }
                        }
                        StaticParametersDB.Setcurrent(retdb[0].Id);
                    }
                    else
                    {
                        throw new Exception();
                    }
                    StaticParametros.SetIntegraBanco(true);
                    ctrl++;
                }
                catch (Exception)
                {
                    StaticParametros.SetIntegraBanco(false);
                }

                if (ctrl < 2)
                {
                    Log("Não foi possivel localizar as informações, por favor, abra o integrador e defina os parametros novamente.", 2);
                    this.Stop();
                }
            }
            catch
            {
                StreamWriter vWriter = new StreamWriter(@"c:\vch\log\logServico.log", true);
                vWriter.WriteLine("--------------------------------------------------");
                vWriter.WriteLine("Erro " + DateTime.Now.ToString());
                vWriter.Flush();
                vWriter.Close();
                sessao.Close();
                this.Stop();
            }

            sessao.Close();
        }
コード例 #14
0
        private void init()
        {
            init2();
            BtnDelete.Visibility = Visibility.Hidden;
            CboDriver.Items.Insert(0, "Oracle");
            CboDriver.Items.Insert(1, "SQLServer");

            CboDriver.SelectedIndex = -1;
            var sessao      = AuxiliarNhibernate.AbrirSessao();
            var ParametroDB = new ParametroDB_DAO(sessao);

            try
            {
                var process = new Processos();

                var param = ParametroDB.BuscarPorID(1);//Armazenamento.GetParametrosDB();

                try
                {
                    if (param.Driver == "oracle")
                    {
                        CboDriver.SelectedIndex = 0;
                    }
                    else
                    {
                        CboDriver.SelectedIndex = 1;
                    }
                    TxbHost.Text        = param.Host;
                    TxbPort.Text        = param.Port;
                    TxbServiceName.Text = param.ServiceName;
                    TxbUser.Text        = param.User;


                    StaticParametersDB.SetDriver("oracle");
                    StaticParametersDB.SetHost(TxbHost.Text);
                    StaticParametersDB.SetPort(TxbPort.Text);
                    StaticParametersDB.SetServiceName(TxbServiceName.Text);
                    StaticParametersDB.SetUser(TxbUser.Text);

                    PwbSenha.Password = AESThenHMAC.SimpleDecryptWithPassword(param.Password, process.GetMacAdress());
                    StaticParametersDB.SetPassword(PwbSenha.Password);

                    BtnDelete.Visibility = Visibility.Visible;
                }
                catch (Exception e)
                {
                    if (StaticParametersDB.GetDriver() != null)
                    {
                        var driver = StaticParametersDB.GetDriver();
                        if (driver == "oracle")
                        {
                            CboDriver.SelectedIndex = 0;
                        }
                        else
                        {
                            CboDriver.SelectedIndex = 1;
                        }
                        TxbHost.Text        = StaticParametersDB.GetHost();
                        TxbPort.Text        = StaticParametersDB.GetPort();
                        TxbServiceName.Text = StaticParametersDB.GetServiceName();
                        TxbUser.Text        = StaticParametersDB.GetUser();
                        PwbSenha.Password   = StaticParametersDB.GetPassword();

                        BtnDelete.Visibility = Visibility.Visible;
                    }
                }
            }catch (Exception e)
            {
            }

            sessao.Close();
        }