//================================================= // === CLIQUE NO BOTÃO BUSCAR DO PAINEL ALTERAR === //================================================= private void btnBuscarAlterar_Click(object sender, EventArgs e) { Banco_de_Dados db = new Banco_de_Dados(); if (txtNumBuscar.Text != "" && int.TryParse(txtNumBuscar.Text, out int NC) == true && NC > 0) { Concurso con = db.Buscar(NC); if (con.NumConcurso != 0) { txtNumConcursoAlterar.Text = con.NumConcurso.ToString(); mktDezenasAlterar.Text = string.Join("-", con.Dezenas); cbmAcumulouAlterar.SelectedIndex = con.Acumulou == "SIM" ? 0 : 1; txtValorAcumuladoAlterar.Text = con.Acumulado.ToString(); txtEstimativaAlterar.Text = con.ProximaEstimativa.ToString(); DateTime dateTime = Convert.ToDateTime(con.Data); mktDataAlterar.Text = dateTime.Day.ToString() + @"/" + (dateTime.Month < 10 ? "0" + dateTime.Month.ToString() + @"/" : dateTime.Month.ToString() + @"/") + dateTime.Year.ToString();; } else { MessageBox.Show("Número do concurso inválido!", "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } else { MessageBox.Show("Para realizar a busca o concurso tem que ser somente números e maior que 0!", "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } }
//========================================================================== // === FUNÇÃO QUE RETORNA OS NÚMEROS SORTEADOS DE UM CONCURSO ESPECIFICO === //========================================================================== public static string[] GetDezenaConcurso(int Concurso) { try { WebClient webClient = new WebClient(); string strPageCode = webClient.DownloadString("https://www.lotodicas.com.br/api/mega-sena/" + Concurso.ToString()); dynamic dobj = JsonConvert.DeserializeObject <dynamic>(strPageCode); string Dezena2 = dobj["sorteio"].ToString(); List <string> Sharp_Dezenas = JsonConvert.DeserializeObject <List <string> >(Dezena2); string NoListDezenas = string.Join(", ", Sharp_Dezenas.ToArray()); string[] Dezena = NoListDezenas.Split(','); return(Dezena); } catch (Exception exc) { //Modo Offiline message = exc.Message; Banco_de_Dados db = new Banco_de_Dados(); Concurso con = new Concurso(); con = db.Buscar(Concurso); return(con.Dezenas); } }
//=========================== // === ATUALIZA GRID VIEW === //=========================== public void AtualizaGrid() { try { Banco_de_Dados db = new Banco_de_Dados(); dgvConcurso.DataSource = db.Buscar(); dgvConcurso.DataMember = "Consurso"; } catch (Exception ex) { throw; } }
public void ThreadExporta() { try { StreamWriter sw; string CaminhoNome = @"C:\Sistema MegaSena\Backup"; if (Directory.Exists(CaminhoNome) == false) { Directory.CreateDirectory(CaminhoNome); } CaminhoNome += @"\Backup.txt"; Process process = new Process(); process.Close(); sw = File.CreateText(CaminhoNome); Banco_de_Dados db = new Banco_de_Dados(); Concurso[] concursos = db.Buscar(0, false); for (int i = 0; i < concursos.Length; i++) { sw.WriteLine(concursos[i].NumConcurso + " # " + concursos[i].Data + " # " + string.Join("-", concursos[i].Dezenas) + " # " + concursos[i].Acumulado + " # " + concursos[i].Acumulou + " # " + concursos[i].ProximaEstimativa + " $ "); } sw.Flush(); sw.Close(); sw.Dispose(); Email email = new Email(gmail, CaminhoNome); if (email.Enviar()) { MessageBox.Show("Backup Concluido e Enviado no Email: " + gmail, "Sucesso!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show("Erro ao Enviar para o Email: " + gmail + "\nDescrição: " + Email.msg, "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } catch (Exception ex) { MessageBox.Show("Erro ao Enviar para o Email: " + gmail + "\nDescrição: " + ex.Message, "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } }
/// <summary> /// Retorna todas as Dezes de todos os Concursos da Mega /// </summary> /// <param name="GetDezenas"></param> /// <returns></returns> public static string[] GetDezenas() { try { WebClient webClient = new WebClient(); string strPageCode = webClient.DownloadString("https://www.lotodicas.com.br/api/mega-sena"); dynamic dobj = JsonConvert.DeserializeObject <dynamic>(strPageCode); int NumConcurso = Convert.ToInt32(dobj["numero"]); string[] Dezenas = new string[NumConcurso]; for (int i = 0; i < NumConcurso; i++) { string strPageCode1 = webClient.DownloadString("https://www.lotodicas.com.br/api/mega-sena/" + NumConcurso.ToString()); dynamic dobj1 = JsonConvert.DeserializeObject <dynamic>(strPageCode1); string JsonDezenas = dobj1["sorteio"].ToString(); List <string> Sharp_Dezenas = JsonConvert.DeserializeObject <List <string> >(JsonDezenas); string NoListDezenas = string.Join(", ", Sharp_Dezenas.ToArray()); Dezenas[i] = NoListDezenas; NumConcurso--; } return(Dezenas); } catch (Exception exc) { //Modo OffiLine message = exc.Message; Banco_de_Dados db = new Banco_de_Dados(); Concurso[] concursos = db.Buscar(0, true); string[] Dezenas = new string[concursos.Length]; for (int i = 0; i < Dezenas.Length; i++) { string Dez = string.Join(",", concursos[i].Dezenas); Dezenas[i] = Dez; } return(Dezenas); } }
//=============================================== // === FUNÇÃO QUE LISTA OS DADOS NA GRID VIEW === //=============================================== public void FuncListaGrid() { if (int.TryParse(txtQtdJogos.Text, out int QtdJogos) == true) { Banco_de_Dados db = new Banco_de_Dados(); dgvJogos.AllowUserToAddRows = true; dgvJogos.Rows.Clear(); Concurso[] concursos = db.Buscar(0, QtdJogos); for (int i = 0; i < concursos.Length; i++) { dgvJogos.Rows[i].DataGridView.Rows.Add(concursos[i].NumConcurso, string.Join("-", concursos[i].Dezenas)); } dgvJogos.AllowUserToAddRows = false; } else { MessageBox.Show("Digite somente números para realizar a ação", "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } }
//=============================================================== // === FUNÇÃO QUE RETORNA O NÚMERO DOS X CONCURSOS ANTERIORES === //=============================================================== public static string[] GetConcurso(int QuantidadeJogos) { try { WebClient webClient = new WebClient(); string strPageCode = webClient.DownloadString("https://www.lotodicas.com.br/api/mega-sena"); dynamic dobj = JsonConvert.DeserializeObject <dynamic>(strPageCode); string[] Concursos = new string[QuantidadeJogos]; int NumConcurso = Convert.ToInt32(dobj["numero"]); for (int i = 0; i < QuantidadeJogos; i++) { Concursos[i] = NumConcurso.ToString(); NumConcurso--; } return(Concursos); } catch (Exception exc) { //Modo OffiLine message = exc.Message; Banco_de_Dados db = new Banco_de_Dados(); Concurso[] concursos = db.Buscar(0, QuantidadeJogos); string[] Concursos = new string[concursos.Length]; for (int i = 0; i < Concursos.Length; i++) { string numConcurso = string.Join(",", concursos[i].NumConcurso); Concursos[i] = numConcurso; } return(Concursos); } }
//==================== // === FUNÇÃO LOAD === //==================== //=============================================================== // === FUNÇÃO QUE RETORNA O ATRIBUTOS PRINCIPAIS DA MEGA SENA === //=============================================================== private void MenuInicial_Load(object sender, EventArgs e) { string strPageCode = ""; string DataMega = "", ValorAcumulado = "0"; string Co = ""; string[] Dezenas = new string[5]; dynamic dobj = ""; string JsonDezenas = ""; List <string> Sharp_Dezenas = new List <string>(); try { WebClient webClient = new WebClient(); strPageCode = webClient.DownloadString("https://www.lotodicas.com.br/api/v2/mega_sena/results/last?token=8039cc263cffaeb86a48b98c7301c763399ae0d733c425224a42d43c361b3bb8"); dobj = JsonConvert.DeserializeObject <dynamic>(strPageCode); DataMega = dobj["data"]["draw_date"].ToString(); DateTime dateTime = Convert.ToDateTime(DataMega); DataMega = dateTime.Day.ToString() + @"/" + (dateTime.Month < 10 ? "0" + dateTime.Month.ToString() + @"/" : dateTime.Month.ToString() + @"/") + dateTime.Year.ToString(); ValorAcumulado = dobj["data"]["next_draw_prize"].ToString(); JsonDezenas = dobj["data"]["drawing"].ToString(); Co = dobj["data"]["draw_number"].ToString(); Sharp_Dezenas = JsonConvert.DeserializeObject <List <string> >(JsonDezenas); Online = true; if (ValorAcumulado == "0") { lblAcumulou.Text = "Houve um Ganhador!"; lblAcumulou.Location = new Point(449, 208); ValorAcumulado = dobj["data"]["next_draw_prize"].ToString(); lblValorEstima.Text = "R$ " + ValorAcumulado; lblValorEstima.Location = new Point(136, 618); lblResultConcurso.Text = Co; } else { lblValorEstima.Text = "R$ " + ValorAcumulado; lblAcumulou.Text = "Acumulou!"; lblAcumulou.Location = new Point(469, 208); lblResultConcurso.Text = Co; } string NoListDezenas = string.Join(", ", Sharp_Dezenas.ToArray()); Dezenas = NoListDezenas.Split(','); lblDataMega.Text = DataMega.Replace('-', '/'); lblD1.Text = Dezenas[0]; lblD2.Text = Dezenas[1]; lblD3.Text = Dezenas[2]; lblD4.Text = Dezenas[3]; lblD5.Text = Dezenas[4]; lblD6.Text = Dezenas[5]; lblResultConcurso.Text = Co; Banco_de_Dados db = new Banco_de_Dados(); int value = db.Buscar(""); int con = Convert.ToInt32(Co); if (value < con) { int QtdJNInsert = con - value; int i = 1; while (QtdJNInsert > 0) { strPageCode = webClient.DownloadString("https://www.lotodicas.com.br/api/v2/mega_sena/results/" + (value + i) + "?token=8039cc263cffaeb86a48b98c7301c763399ae0d733c425224a42d43c361b3bb8".ToString()); dobj = JsonConvert.DeserializeObject <dynamic>(strPageCode); DataMega = dobj["data"]["draw_date"].ToString(); ValorAcumulado = dobj["data"]["next_draw_prize"].ToString(); JsonDezenas = dobj["data"]["drawing"].ToString(); Co = dobj["data"]["draw_number"].ToString(); Sharp_Dezenas = JsonConvert.DeserializeObject <List <string> >(JsonDezenas); Concurso concurso = new Concurso(); concurso.NumConcurso = Convert.ToInt32(Co); concurso.Data = DataMega; concurso.Acumulado = Convert.ToDouble(dobj["data"]["next_draw_prize"].ToString()); concurso.Acumulou = dobj["data"]["has_winner"].ToString() == "false" ? "NAO" : "SIM"; string NoListDezenas2 = string.Join(", ", Sharp_Dezenas.ToArray()); concurso.Dezenas = NoListDezenas2.Split(','); concurso.ProximaEstimativa = Convert.ToDouble(ValorAcumulado.ToString()); db.Insert(concurso); i++; QtdJNInsert--; } } } catch (Exception) { Online = false; Banco_de_Dados db = new Banco_de_Dados(); Concurso concurso = new Concurso(); int IdCon = db.Buscar("oi"); concurso = db.Buscar(IdCon); Co = concurso.NumConcurso.ToString(); DataMega = concurso.Data.ToString(); DateTime dateTime = Convert.ToDateTime(DataMega); DataMega = dateTime.Day.ToString() + @"/" + (dateTime.Month < 10 ? "0" + dateTime.Month.ToString() + @"/" : dateTime.Month.ToString() + @"/") + dateTime.Year.ToString(); ValorAcumulado = concurso.ProximaEstimativa.ToString(); for (int i = 0; i < concurso.Dezenas.Length; i++) { Sharp_Dezenas.Add(concurso.Dezenas[i]); } if (concurso.Acumulou == "nao" || concurso.Acumulou == "Não" || concurso.Acumulou == "NAO") { lblAcumulou.Text = "Houve um Ganhador!"; lblAcumulou.Location = new Point(309, 208); ValorAcumulado = concurso.ProximaEstimativa.ToString(); lblValorEstima.Text = "R$ " + concurso.ProximaEstimativa.ToString(); lblResultConcurso.Text = Co; } else { lblValorEstima.Text = "R$ " + ValorAcumulado; lblAcumulou.Text = "Acumulou!"; lblAcumulou.Location = new Point(469, 208); lblResultConcurso.Text = Co; } string NoListDezenas2 = string.Join(", ", Sharp_Dezenas.ToArray()); Dezenas = NoListDezenas2.Split(','); lblDataMega.Text = DataMega.Replace('-', '/'); lblD1.Text = Dezenas[0]; lblD2.Text = Dezenas[1]; lblD3.Text = Dezenas[2]; lblD4.Text = Dezenas[3]; lblD5.Text = Dezenas[4]; lblD6.Text = Dezenas[5]; } }
//======================================= // === CLIQUE NO BOTÃO SALVAR INSERIR === //======================================= private void btnSalvarInserir_Click(object sender, EventArgs e) { Banco_de_Dados db = new Banco_de_Dados(); if (txtInserirAcumulou.Text != "" || mktData.MaskCompleted && mktDezenas.MaskCompleted && txtInserirEstimativa.Text != "" && txtInserirNumConcurso.Text != "") { if (int.TryParse(txtInserirNumConcurso.Text, out int NumCon) == true && NumCon > 0) { bool erro = false; string[] D = mktDezenas.Text.Split('-'); int[] VerifcaDezenas = new int[D.Length]; for (int i = 0; i < D.Length; i++) { VerifcaDezenas[i] = int.Parse(D[i]); if (VerifcaDezenas[i] > 60 || VerifcaDezenas[i] == 0) { i = D.Length; erro = true; } } for (int i = 0; i < D.Length; i++) { int index = SubAnalise.ArraySeach(VerifcaDezenas, VerifcaDezenas[i]); for (int j = index + 1; j < D.Length; j++) { if (VerifcaDezenas[j] == VerifcaDezenas[index]) { erro = true; } } } if (erro == true) { MessageBox.Show("Os números das Dezenas devem estar entre 1 e 60 e não podem ser repetidos", "Opss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); return; } CO.NumConcurso = NumCon; int value = db.Buscar("oi") + 1; if (value == NumCon) { string data = mktData.Text; DateTime dateTime = Convert.ToDateTime(data); CO.Data = dateTime.Year.ToString() + @"/" + (dateTime.Month < 10 ? "0" + dateTime.Month.ToString() + @"/" : dateTime.Month.ToString() + @"/") + dateTime.Day.ToString(); CO.Data = mktData.Text; CO.Acumulou = cbmInserirAcumulou.Text; CO.Acumulado = Convert.ToDouble(txtInserirAcumulou.Text); CO.ProximaEstimativa = Convert.ToDouble(txtInserirEstimativa.Text); CO.Dezenas = mktDezenas.Text.Split('-'); if (db.Insert(CO)) { MessageBox.Show("Os dados foram guardados com sucesso!", "Sucesso!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); AtualizaGrid(); } else { MessageBox.Show("Ocorreu um erro para guardar os dados! " + Banco_de_Dados.message, "Óh não!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } else { MessageBox.Show("O Concurso deve ser exatamente 1 núemro maior que o ultimo concurso!!", "Opsss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } else { MessageBox.Show("O Concurso deve conter somente números e ser maior que 0!!", "Opsss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } else { MessageBox.Show("Nenhum campo pode estar vazio!!", "Opsss!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } }