private void clienteToolStripMenuItem_Click(object sender, EventArgs e)
 {
     Cliente cliente = new Cliente();
     cliente.IntegraCliente();
 }
        public void PostCliente(Cliente cliente)
        {
            var param = Newtonsoft.Json.JsonConvert.SerializeObject(cliente);
            var httpClient = new HttpClient();
            HttpContent contentPost = new StringContent( param,Encoding.UTF8,"application/json");

            var response = httpClient.PostAsync("https://chevron.exata.it/api/Cliente", contentPost);

            //MessageBox.Show(param.ToString() +"response: "+ response.Result.ToString(), "Advetisament", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            if (response.Result.StatusCode.ToString() != "Accepted")
            {
                logErro.EscreverLog(layout, response.Result.ToString());
            }
        }
        private void Timer_Tick(object sender, EventArgs e)
        {
            //MessageBox.Show("Começou!!!");
            interval--;
            label1.Text = interval.ToString();
            if(interval==0){

                Timer.Stop();

                CarteiraCliente carteiraCliente = new CarteiraCliente();
                Cliente cliente = new Cliente();
                EnderecoCliente enderecoCliente = new EnderecoCliente();
                Estoque estoque = new Estoque();
                Faturamento faturamento = new Faturamento();
                ForcaDeVenda forcaDeVenda = new ForcaDeVenda();
                FormaDePagamento formaDePagamento = new FormaDePagamento();
                Pedido pedido = new Pedido();
                Produto produto = new Produto();
                TabelaPreco tabelaPreco = new TabelaPreco();

                carteiraCliente.IntegraCarteiraCliente();
                cliente.IntegraCliente();
                enderecoCliente.IntegraEnderecoCliente();
                estoque.IntegraEstoque();
                faturamento.IntegraFaturamento();
                forcaDeVenda.IntegraForcaDeVenda();
                formaDePagamento.IntegraFormaDePagamento();
                pedido.IntegraPedido();
                produto.IntegraProduto();
                tabelaPreco.IntegraTabelaPreço();

                Timer.Enabled = true;
                //interval = 10;
                interval = int.Parse(System.Configuration.ConfigurationManager.AppSettings["Interval"]);
                //interval = ChevronClienteApplication.
                Timer.Start();
            }
        }
        public int IntegraCliente()
        {
            ProcessForm processForm = new ProcessForm("", layout);
            processForm.Show();

            List<Cliente> lCliente = new List<Cliente>();

            IEnumerable<String> streamRead = File.ReadLines(System.Environment.CurrentDirectory.ToString()+"\\config.txt");
            var connection = streamRead.First();
            int index = 0;
            using (OleDbConnection con = new OleDbConnection(connection))
            {
                try
                {
                    con.Open();

                        using (OleDbCommand commandCount = new OleDbCommand("SELECT COUNT(*) FROM CLIENTES ", con))
                        using (OleDbDataReader readerCount = commandCount.ExecuteReader())
                        {
                            while (readerCount.Read())
                            {

                                countRegister = readerCount.GetValue(0).ToString();

                            }
                        }

                        try
                        {

                        using (OleDbCommand command = new OleDbCommand("SELECT ID_CLIENTE,ID_DISTRIBUIDOR,RAZAO_SOCIAL_CLIENTE,NOME_FANTASIA_CLIENTE,CNPJ_CPF_CLIENTE,COD_MUNICIPIO_IBGE_MATRIZ,RUA_END_MATRIZ_CLIENTE,NUMERO_END_MATRIZ_CLIENTE,COMPLEMENTO_END_MATRIZ_CLIENTE,CEP_END_MATRIZ_CLIENTE,BAIRRO_END_MATRIZ_CLIENTE,MUNICIPIO_END_MATRIZ_CLIENTE,UF_END_MATRIZ_CLIENTE,TEL_END_MATRIZ_CLIENTE,EMAIL_END_MATRIZ_CLIENTE,PESSOA_CONTATO,RAMO_NEGOCIO_CLIENTE,SUB_RAMO_NEGOCIO_CLIENTE,CURVA_ABC_CLIENTE,STATUS_FINANCEIRO_CLIENTE,DATA_CADASTRO_CLIENTE,DATA_DESATIVACAO_CLIENTE,FLAG_ATIVO_CLIENTE,GRUPO_ECONOMICO_CLIENTE FROM CLIENTES ", con))
                        using (OleDbDataReader reader = command.ExecuteReader())
                        {

                            while (reader.Read())
                            {
                                Cliente cliente = new Cliente();
                                Validator valid = new Validator();

                                cliente.id = reader.GetString(0);
                                cliente.distribuidorId = reader.GetString(1);
                                cliente.razaoSocial = reader.GetString(2);
                                cliente.nomeFantasia = reader.GetString(3);
                                cliente.cnpjCpf = reader.GetString(4);
                                if (reader.IsDBNull(5))
                                {
                                    cliente.codigoMunicipio = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.codigoMunicipio = reader.GetString(5);
                                }
                                //cliente.codigoMunicipio = reader.GetString(5);

                                if (reader.IsDBNull(6))
                                {
                                    cliente.enderecoLogradouro = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoLogradouro = reader.GetString(6);
                                }
                                //cliente.enderecoLogradouro = reader.GetString(6);
                                if (reader.IsDBNull(7))
                                {
                                    cliente.enderecoNumero = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoNumero = reader.GetString(7);
                                }
                                //cliente.enderecoNumero = reader.GetString(7);

                                if (reader.IsDBNull(8))
                                {
                                    cliente.enderecoComplemento = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoComplemento = reader.GetString(8);
                                }
                                //cliente.enderecoComplemento = reader.GetString(8);

                                if (reader.IsDBNull(9))
                                {
                                    cliente.enderecoCep = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoCep = reader.GetString(9);
                                }
                                //cliente.enderecoCep = reader.GetString(9);
                                if (reader.IsDBNull(10))
                                {
                                    cliente.enderecoBairro = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoBairro = reader.GetString(10);
                                }
                                //cliente.enderecoBairro = reader.GetString(10);
                                if (reader.IsDBNull(11))
                                {
                                    cliente.enderecoMunicipio = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoMunicipio = reader.GetString(11);
                                }
                                //cliente.enderecoMunicipio = reader.GetString(11);
                                if (reader.IsDBNull(12))
                                {
                                    cliente.enderecoEstado = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.enderecoEstado = reader.GetString(12);
                                }
                                //cliente.enderecoEstado = reader.GetString(12);
                                if (reader.IsDBNull(13))
                                {
                                    cliente.telefone = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.telefone = reader.GetString(13);
                                }
                                //cliente.telefone = reader.GetString(13);

                                if (reader.IsDBNull(14))
                                {
                                    cliente.email = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.email = reader.GetString(14);
                                }

                                //cliente.email = reader.GetString(14);

                                if (reader.IsDBNull(15))
                                {
                                    cliente.pessoaContato = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.pessoaContato = reader.GetString(15);
                                }

                                //cliente.pessoaContato = reader.GetString(15);

                                if (reader.IsDBNull(16))
                                {
                                    cliente.ramoNegocio = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.ramoNegocio = reader.GetString(16);
                                }
                                //cliente.ramoNegocio = reader.GetString(16);

                                if (reader.IsDBNull(17))
                                {
                                    cliente.subRamoNegocio = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.subRamoNegocio = reader.GetString(17);
                                }
                                //cliente.subRamoNegocio = reader.GetString(17);

                                if (reader.IsDBNull(18))
                                {
                                   cliente.curvaABC = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.curvaABC = reader.GetString(18);
                                }

                                if (reader.IsDBNull(19)||reader.GetValue(19).ToString()=="")
                                {
                                   cliente.statusFinanceiro = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.statusFinanceiro = reader.GetString(19);
                                }

                                if ((reader.IsDBNull(20) || (reader.GetValue(20).ToString() == "") || (reader.GetValue(20) == null)))
                                {
                                    cliente.dataCadastro = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.dataCadastro = (reader.GetValue(20).ToString());
                                }

                                if ((reader.IsDBNull(21)) || (reader.GetValue(21).ToString() == "") || (reader.GetValue(21)==null))
                                {
                                    cliente.dataDesativacao = valid.ValidaString();

                                }
                                else
                                {
                                    try
                                    {
                                        cliente.dataDesativacao = reader.GetString(20);
                                    }
                                    catch (Exception ex)
                                    {
                                        MessageBox.Show(ex.Message.ToString(), "Advetisament", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                    }
                                }

                                //cliente.ativo = (reader.GetString(22));
                                if ((reader.IsDBNull(22) || (reader.GetValue(22).ToString() == "") || (reader.GetValue(22) == null)))
                                {
                                    cliente.ativo = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.ativo = reader.GetString(22);
                                }

                                if  ((reader.IsDBNull(23) || (reader.GetValue(23).ToString() == "") || (reader.GetValue(23) == null)))
                                {
                                    cliente.grupoEconomico = valid.ValidaString();
                                }
                                else
                                {
                                    cliente.grupoEconomico = reader.GetString(23);
                                }

                                PostCliente(cliente);

                                string msg = "Foram inseridos: " + lCliente.Count().ToString() +" de "+countRegister+" registros";
                                processForm.writeMessage(msg);
                                processForm.Enabled = false;
                                processForm.Enabled = true;

                                lCliente.Add(cliente);
                                index++;
                            }
                        }

                        con.Dispose();
                        //MessageBox.Show("Advetisament","Fim da execução de cliente",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

                    }

                    catch (Exception ex)
                    {
                        logErro.EscreverLog(layout, ex.Message.ToString()+ex.ToString());
                        //MessageBox.Show(ex.Message.ToString(), "Advetisament", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }

                }
                catch (Exception ex)
                {
                    //MessageBox.Show(ex.Message.ToString(), "Falha ao abrir a conexao", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    logErro.EscreverLog(layout, ex.Message.ToString());
                }

                int countWrite = lCliente.Count();
                //MessageBox.Show("Foram inseridos " + countWrite.ToString() + " registros", "Advetisament", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                processForm.Close();
                return index;

            }
        }