static void Main(string[] args) { int opt = 0; Console.WriteLine("Escolha o tipo de sorteio:"); Console.WriteLine("1 - Megasena"); Console.WriteLine("2 - Quina"); Console.WriteLine("3 - Lotomania"); Console.WriteLine("4 - Lotofacil"); var k = Console.ReadLine(); int.TryParse(k, out opt); Lottery lottery = null; int bids = 0; switch (opt) { case 1: { lottery = new Mega(); bids = 6; break; } case 2: { lottery = new Quina(); bids = 5; break; } case 3: { lottery = new Lotomania(); bids = 50; break; } case 4: { lottery = new Lotofacil(); bids = 15; break; } } while (true) { var output = string.Join("\t", lottery.Drawn(bids)); File.AppendAllText("output.txt", output + "\n"); Console.WriteLine(output); Console.ReadKey(); } }
private Concurso buscar(int?id) { Lotomania con = new Lotomania(); try { using (cn) { cn.Open(); using (IDataReader dr = cn.ExecuteReader("sp_buscaConcursoLotomania", new { @IdConcurso = id }, commandType: CommandType.StoredProcedure)) { if (dr.Read()) { con.ProximoConcurso = new ProximoConcurso(); con.ID = Convert.ToInt32(dr["idConcurso"]); con.Data = Convert.ToDateTime(dr["data"]); con.Cidade = Convert.ToString(dr["cidade"]); con.Local = Convert.ToString(dr["local"]); con.ValorAcumulado = Convert.ToDecimal(dr["valorAcumulado"]); con.ArrecadacaoTotal = Convert.ToDecimal(dr["arrecadacaoTotal"]); con.ProximoConcurso.Data = Convert.ToDateTime(dr["proximoConcursoData"]); con.ProximoConcurso.ValorEstimado = Convert.ToDecimal(dr["proximoConcursoValorEstimado"]); con.EspecialValorAcumulado = Convert.ToDecimal(dr["especialValorAcumulado"]); } } if (con.ID != 0) { using (IDataReader dr = cn.ExecuteReader("sp_buscaDezenasLotomania", new { @IdConcurso = con.ID }, commandType: CommandType.StoredProcedure)) { con.Dezenas = new List <byte>(); while (dr.Read()) { con.Dezenas.Add(Convert.ToByte(dr["dezena"])); } } using (IDataReader dr = cn.ExecuteReader("sp_buscaPremiosLotomania", new { @IdConcurso = con.ID }, commandType: CommandType.StoredProcedure)) { con.Premios = new List <PremioPadrao>(); while (dr.Read()) { PremioPadrao premio = new PremioPadrao() { Acertos = Convert.ToByte(dr["acertos"]), Ganhadores = Convert.ToInt32(dr["ganhadores"]), ValorPago = Convert.ToDecimal(dr["valorPago"]) }; con.Premios.Add(premio); } } } } } catch (Exception ex) { throw ex; } return(con); }
private Concurso deserializaConcurso(dynamic obj) { Lotomania loteria = new Lotomania() { ID = obj.concurso.numero, Data = DateTime.ParseExact(obj.concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")), Cidade = obj.concurso.cidade, Local = obj.concurso.local, ValorAcumulado = Convert.ToDecimal(obj.concurso.valor_acumulado.ToString().Replace(".", "")), ArrecadacaoTotal = Convert.ToDecimal(obj.concurso.arrecadacao_total.ToString().Replace(".", "")), EspecialValorAcumulado = Convert.ToDecimal(obj.especial_pascoa_valor_acumulado.ToString().Replace(".", "")) }; loteria.Dezenas = new List <byte>(); foreach (byte dezena in obj.concurso.numeros_sorteados) { loteria.Dezenas.Add(dezena); } loteria.Premios = new List <PremioPadrao>() { new PremioPadrao() { Acertos = 20, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_20.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_20.ganhadores.ToString().Replace(".", "")) }, new PremioPadrao() { Acertos = 19, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_19.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_19.ganhadores.ToString().Replace(".", "")) }, new PremioPadrao() { Acertos = 18, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_18.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_18.ganhadores.ToString().Replace(".", "")) }, new PremioPadrao() { Acertos = 17, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_17.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_17.ganhadores.ToString().Replace(".", "")) }, new PremioPadrao() { Acertos = 16, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_16.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_16.ganhadores.ToString().Replace(".", "")) }, new PremioPadrao() { Acertos = 0, ValorPago = Convert.ToDecimal(obj.concurso.premiacao.acertos_0.valor_pago.ToString().Replace(".", "")), Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_0.ganhadores.ToString().Replace(".", "")) }, }; loteria.ProximoConcurso = new ProximoConcurso() { Data = DateTime.ParseExact(obj.proximo_concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")), ValorEstimado = Convert.ToDecimal(obj.proximo_concurso.valor_estimado.ToString().Replace(".", "")) }; return(loteria); }
/// <summary> /// Apenas um método de mock, /// se for implementar algum mock usar um framework voltado para mock. /// </summary> /// <param name="loteria"></param> /// <returns></returns> public Concurso BuscaConcurso(Loteria loteria, int idConcurso) { Concurso con = null; // Atribuir valores de exemplo, fiz so o da lotofacil switch (loteria) { case Loteria.DuplaSena: con = new DuplaSena() { ID = idConcurso }; break; case Loteria.Federal: con = new Federal() { ID = idConcurso }; break; case Loteria.Loteca: con = new Loteca() { ID = idConcurso }; break; case Loteria.Lotofacil: con = new LotofacilControllerMock().Buscar(idConcurso); break; case Loteria.Lotogol: con = new Lotogol() { ID = idConcurso }; break; case Loteria.Lotomania: con = new Lotomania() { ID = idConcurso }; break; case Loteria.MegaSena: con = new MegaSenaControllerMock().Buscar(idConcurso); break; case Loteria.Quina: con = new Quina() { ID = idConcurso }; break; case Loteria.Timemania: con = new Timemania() { ID = idConcurso }; break; default: break; } return(con); }