Ejemplo n.º 1
0
        public async Task <IActionResult> CreateBet([FromBody] BetApiModel bet)
        {
            // var header = _context.HttpContext.Request?.Headers["id"];
            var newbet = await _rouletteService.NewBet(bet);

            return(Ok(ResponseMapper.MapBet(newbet)));
        }
Ejemplo n.º 2
0
 public static BetsModel Map(BetApiModel betApi, int id, bool winOp)
 {
     return(new BetsModel()
     {
         id = id,
         number = betApi.number,
         color = betApi.color,
         money = betApi.money,
         winOperation = winOp
     });
 }
Ejemplo n.º 3
0
 private bool betValidation(BetApiModel betApi)
 {
     if (betApi.money >= 10000)
     {
         return(false);
     }
     if (betApi.number > 0 && betApi.number <= 36)
     {
         return(true);
     }
     else if (betApi.color.ToLower() == "negro" || betApi.color.ToLower() == "rojo")
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Ejemplo n.º 4
0
        public async Task <BetsModel> NewBet(BetApiModel betApi)
        {
            bool winOperation = false;
            var  roulettes    = await _redisRepository.Read("Roulettes");

            RouletteModel roulette = roulettes.FirstOrDefault(x => x.id == betApi.idRoulette);

            if (!betValidation(betApi))
            {
                return(new BetsModel()
                {
                    id = 0
                });
            }
            if (roulette == null)
            {
                return(new BetsModel {
                    id = 0
                });
            }
            if (roulette.bets == null)
            {
                roulette.bets = new List <BetsModel>();
                winOperation  = operation(betApi.number, betApi.color);
                roulette.bets.Add(BetMapper.Map(betApi, 1, winOperation));
                // await _redisRepository.Add("Roulette",roulettes);
                // return roulette.bets.Find(x => x.id == betApi.idRoulette);
            }
            else
            {
                winOperation = operation(betApi.number, betApi.color);
                roulette.bets.Add(BetMapper.Map(betApi, roulette.bets.Count() + 1, winOperation));
            }
            await _redisRepository.Add("Roulettes", roulettes);

            return(roulette.bets.Find(bet => bet.id == roulette.bets.Count()));
        }