예제 #1
0
        private bool validateModel(ChampionShipModel model, out IActionResult actionResult)
        {
            actionResult = null;

            if (model == null)
            {
                actionResult = BadRequest("Requisição inválida!");
                return(false);
            }

            if (model.SelectedMovies.Count != 8)
            {
                actionResult = BadRequest("A quantidade de filmes selecionados tem que ser 8!");
                return(false);
            }

            return(true);
        }
예제 #2
0
        public IActionResult Start(ChampionShipModel model)
        {
            if (!validateModel(model, out IActionResult result))
            {
                return(result);
            }

            var movies
                = movieService.GetAllMovies()
                  .Where(a => model.SelectedMovies.Any(b => b.Equals(a.id)))
                  .ToList().OrderBy(a => a.titulo);

            var championShip
                = new ChampionShip(movies);

            championShip.Start(switchingRule, tiebreakRule);

            championShipRepository.Save(championShip);

            return(Ok(model));
        }