public frmOpcoes() { InitializeComponent(); conf = new NginExtractionConfig(); txtDiretorio.Text = conf.SaveIn; txtusuario.Text = conf.User; txtSenha.Text = conf.Password; txtUrl.Text = conf.Url; txtData.Text = conf.DataReferencia; txtChromeDriver.Text = conf.Chrome; ckbDataManual.Checked = conf.CheckBoxData; if (conf.CheckBoxData) { txtData.Enabled = true; } }
private async void btnExtrair_Click(object sender, EventArgs e) { config = new NginExtractionConfig(); btnExtrair.Visible = false; btnCancelar.Visible = true; _cts = new CancellationTokenSource(); DataReferencia dt = new DataReferencia(config.CheckBoxData, config.DataReferencia); var data = dt.DataFormatada(); ChromeDrive navegar = new ChromeDrive(); var driver = navegar.StartChrome(config.Url, Path.GetTempPath(), config.Chrome); GerenciadorDiretorio ger = new GerenciadorDiretorio(data, Path.GetTempPath(), config.SaveIn); ger.ChecarDiretorio(); try { AtualizarStatus("Acessando o Ngin, aguarde!"); var progress = new Progress <string>(x => pgbStatus.Value++); var links = await AcessarNgin(driver, data, _cts.Token); AtualizarStatus("Baixando relatórios"); var arquivoBaixado = await ExtrairPlanilhas(data, links, driver, progress, _cts.Token); pgbStatus.Value = 0; driver.Quit(); AtualizarStatus("Convertendo arquivos baixados"); await ger.Converter(arquivoBaixado, progress, _cts.Token); pgbStatus.Value = 0; AtualizarStatus("Extraindo informações das planilhas"); var infos = await extr.ExtrairAsync(ger.EscanearPasta(), ger.Data, progress, _cts.Token); AtualizarStatus("Consolidando Planilhas"); await unr.Unificar(ger.DiretorioDataExtraida, ger.Data, infos, _cts.Token); AtualizarStatus("Consolidação Concluída com Sucesso"); btnExtrair.Visible = true; btnCancelar.Visible = false; pgbStatus.Value = 0; } catch (OperationCanceledException) { btnExtrair.Visible = true; btnCancelar.Visible = false; pgbStatus.Value = 0; driver.Quit(); AtualizarStatus("Operação Cancelada pelo Usuário"); } catch (WebDriverException) { } }