예제 #1
0
        public ActionResult Edit(string id, [FromBody] AtorRequest atorRequest)
        {
            //validate
            if (atorRepository.DetalharAtor(Convert.ToInt32(id)) == null)
            {
                return(NotFound($"Ator not found"));
            }

            var filmes = filmeRepository.ListarFilmes().ToList();

            for (int i = 0; i < atorRequest.Filmes.Count; i++)
            {
                var filme = atorRequest.Filmes[i];
                if (filmes.Exists(x => x.Id.ToString() == filme))
                {
                    return(BadRequest($"Invalid filme id {filme}"));
                }
            }

            var ator = RequestParser.ConvertAtor(atorRequest, id);

            atorRepository.AtualizarAtor(ator);

            for (int i = 0; i < ator.Filmes.Count; i++)
            {
                var filmeId = ator.Filmes[i].Id;
                filmeAtorRepository.CreateOrUpdateFilmeAtor(filmeId.ToString(), id);
            }

            return(NoContent());
        }
예제 #2
0
        public ActionResult Create([FromBody] AtorRequest atorRequest)
        {
            var ator = RequestParser.ConvertAtor(atorRequest);

            var atorId = atorRepository.CriarAtor(ator);

            if (ator.Filmes != null)
            {
                for (int i = 0; i < ator.Filmes.Count; i++)
                {
                    var filmeId = ator.Filmes[i].Id;
                    var filme   = filmeRepository.DetalharFilme(filmeId);
                    if (filme == null)
                    {
                        return(BadRequest($"Invalid filme id {filmeId}"));
                    }

                    filmeAtorRepository.CreateOrUpdateFilmeAtor(filmeId.ToString(), atorId);
                }
            }
            return(NoContent());
        }