Пример #1
0
        private Concurso deserializaConcurso(dynamic obj)
        {
            Loteca loteria = new Loteca()
            {
                ID               = obj.concurso.numero,
                Data             = DateTime.ParseExact(obj.concurso.data.ToString(), "dd/MM/yyyy", new CultureInfo("pt-BR")),
                ArrecadacaoTotal = Convert.ToDecimal(obj.concurso.arrecadacao_total.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(".", ""))
            };

            loteria.Jogos = new List <JogoLoteca>();

            //Retiraram da API a coluna meio com o X. Por isso estou verificando a quantidade de gols de cada time.
            foreach (var jogo in obj.concurso.jogos)
            {
                JogoLoteca jogoLoteca = new JogoLoteca((string)jogo.data)
                {
                    Coluna1 = new JogoTimePadrao((string)jogo.coluna_1.time, (byte)jogo.coluna_1.gols),
                    Coluna2 = new JogoTimePadrao((string)jogo.coluna_2.time, (byte)jogo.coluna_2.gols)
                };
                loteria.Jogos.Add(jogoLoteca);
            }

            loteria.Premios = new List <PremioPadrao>()
            {
                new PremioPadrao()
                {
                    Acertos    = 14,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_14.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_14.ganhadores.ToString().Replace(".", ""))
                },
                new PremioPadrao()
                {
                    Acertos    = 13,
                    ValorPago  = Convert.ToDecimal(obj.concurso.premiacao.acertos_13.valor_pago.ToString().Replace(".", "")),
                    Ganhadores = Convert.ToInt32(obj.concurso.premiacao.acertos_13.ganhadores.ToString().Replace(".", ""))
                }
            };

            loteria.ProximoConcursoFinalCinco = new ConcursoFinalCinco()
            {
                Numero         = obj.concurso_final_cinco.numero,
                ValorAcumulado = Convert.ToDecimal(obj.concurso_final_cinco.valor_acumulado.ToString().Replace(".", ""))
            };

            return(loteria);
        }
Пример #2
0
        /// <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);
        }
Пример #3
0
        private Concurso buscar(int?id)
        {
            Loteca con = new Loteca();

            try
            {
                using (cn)
                {
                    cn.Open();

                    using (IDataReader dr = cn.ExecuteReader("sp_buscaConcursoLoteca", 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.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.ProximoConcursoFinalCinco     = new ConcursoFinalCinco()
                            {
                                Numero         = Convert.ToInt32(dr["especialNumero"]),
                                ValorAcumulado = Convert.ToInt32(dr["especialValorAcumulado"])
                            };
                        }
                    }

                    if (con.ID != 0)
                    {
                        using (IDataReader dr = cn.ExecuteReader("sp_buscaDezenasLoteca", new { @IdConcurso = con.ID }, commandType: CommandType.StoredProcedure))
                        {
                            con.Jogos = new List <JogoLoteca>();

                            while (dr.Read())
                            {
                                JogoLoteca jogo = new JogoLoteca()
                                {
                                    Coluna1 = new JogoTimePadrao()
                                    {
                                        Time = Convert.ToString(dr["time1"]),
                                        Gols = Convert.ToByte(dr["gols1"]),
                                    },
                                    Coluna2 = new JogoTimePadrao()
                                    {
                                        Time = Convert.ToString(dr["time2"]),
                                        Gols = Convert.ToByte(dr["gols2"]),
                                    },
                                    DiaDaSemana = (Semana)Convert.ToInt32(dr["diaSemana"])
                                };

                                con.Jogos.Add(jogo);
                            }
                        }

                        using (IDataReader dr = cn.ExecuteReader("sp_buscaPremiosLoteca", 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);
        }