Exemplo n.º 1
0
        static async Task GravarNoBancoAsync()
        {
            var parametros = LerParametros.LerArquivo();

            try
            {
                GravaLog.Gravar("###########Inicido da importação###########", false, true);
                var conexao = new ConexaoBancoDeDados();
                GerenciadorColaboradores.LimparTabela(conexao);


                var gerenciadorColaboradores = new GerenciadorColaboradores();
                var colaboradores            = await Requisicao.GetColaboradoresAsync(parametros);

                if (parametros.manterIdentificadorDoSistema == true)
                {
                    GerenciadorColaboradores.ComparaColaboradores(colaboradores, conexao);
                }

                GravaLog.Gravar(colaboradores.Count + " colaboradores lidos", false, true);

                gerenciadorColaboradores.Salvar(colaboradores, conexao, parametros);

                GravaLog.Gravar("###########Fim da importação###########", false, true);
            }
            catch (Exception ex)
            {
                GravaLog.Gravar(ex.Message, true, parametros.LogAtivo);
            }
        }
Exemplo n.º 2
0
        public List <Batida> BuscarBatidas()                                //busca as batidas na tabela vw_acessos (essa tabela foi modificada para atender esse cliente)
        {
            var ultimoRegistro = LerParametros.LerArquivo().UltimoRegistro; //chama metodo que lê o valor salvo no arquivo ultimoLido.txt
            var conexao        = new ConexaoBancoDeDados();
            var datatable      = conexao.SelectBatidas($"SELECT concat (DATEPART(YEAR, data), '-', DATEPART(MONTH, data),'-', DATEPART(day, data)) as data, hora, tipo_acessos,equipamento_descricao, id_legado_mobuss, id, negado from vw_acessos_mobuss where id > {ultimoRegistro} order by id");

            return(ConverterBatidas(datatable));
        }
Exemplo n.º 3
0
        public static void ComparaColaboradores(List <Colaborador> colaboradores, ConexaoBancoDeDados conexao)

        /*comparar o filtro3 (id_legado_mobuss) com o campo Idolaborador(id recebido do mobuss) se for igual,
         * atualizar a objeto colaborado com o ID que ja existe no banco de dados do acesso, assim os numeros identificador
         * ja ajustado não são perdidos*/
        {
            var pessoas = LerPessoasDoBanco(conexao);//recebe o datatable com as pessoas já cadastrada no banco do acessonet

            foreach (var colaborador in colaboradores)
            {
                foreach (DataRow linha in pessoas.Rows)
                {
                    if (linha["id_legado_mobuss"].ToString() == colaborador.IdColaborador)
                    {
                        colaborador.N_identificador = linha["n_identificador"].ToString();
                    }
                }
            }
        }
Exemplo n.º 4
0
        //public void Salvar(List<Colaborador> colaboradores, string cnpj, ConexaoBancoDeDados conexao, bool logAtivo)//monta string para insert de pessoas
        public void Salvar(List <Colaborador> colaboradores, ConexaoBancoDeDados conexao, Parametros parametros)

        {
            var ColaboradoresFiltrados = LimpaColaborador(colaboradores);

            foreach (var colaborador in ColaboradoresFiltrados)
            {
                bool isError = false;
                try
                {
                    {
                        string insert = $" INSERT INTO integracao_externa " +
                                        $"(n_identificador, n_folha ,rg ,cpf,nome ,empresa_cnpj ,estado ,classificacao, email, filtro3, filtro1, filtro2, obs) " +
                                        $"VALUES ('{colaborador.N_identificador}','{colaborador.IdColaborador}'," +
                                        $"'{colaborador.NumeroRG}','{colaborador.NumeroCPF}','{colaborador.NomeColaborador}'," +
                                        $"'{parametros.Cnpj}','{colaborador.ValorSituacao}','Colaborador','{colaborador.Email}', '{colaborador.IdColaborador}'" +
                                        $",'{colaborador.Empreiteira}','{colaborador.Funcao}','{colaborador.N_provisorio}')";

                        conexao.ExecutarComando(insert);
                    }
                }

                catch (SqlException ex)
                {
                    for (int i = 0; i < ex.Errors.Count; i++)
                    {
                        var log = (@"Index #" + i + "\n" +
                                   "Message: " + ex.Errors[i].Message + "\n" +
                                   "colaborador: " + colaborador.NomeColaborador + "\n");
                        GravaLog.Gravar("Houve um erro para ao salvar colaboradores, verifique o log de erros!", false, parametros.LogAtivo);
                        GravaLog.Gravar(log, true, parametros.LogAtivo);
                    }
                    isError = true;
                }
                if (isError)
                {
                    continue;
                }
            }
            AjustaProvisorio(conexao);
        }
Exemplo n.º 5
0
        static DataTable LerPessoasDoBanco(ConexaoBancoDeDados conexao)//busca pessoas do banco e armazena num datatable
        {
            var datatable = conexao.SelectBatidas($"select n_identificador, n_folha, f.descricao as id_legado_mobuss from pessoas p inner join filtro3 f on f.id = p.filtro3_id");

            return(datatable);
        }
Exemplo n.º 6
0
 public static void AjustaProvisorio(ConexaoBancoDeDados conexao)//Limpa tabela de integração
 {
     Thread.Sleep(120000);
     conexao.ExecutarComando($"update pessoas set n_provisorio = obs");
 }
Exemplo n.º 7
0
 public static void LimparTabela(ConexaoBancoDeDados conexao)//Limpa tabela de integração
 {
     conexao.ExecutarComando($"delete integracao_externa");
 }