예제 #1
0
        public ObjectResult Post([FromBody] EpisodioCadastroViewModel episodioTemp)
        {
            if (!_podcastRepository.Existe(episodioTemp.PodcastId))
            {
                ModelState.AddModelError("PodcastId", "Podcast inexistente.");
            }

            if (!ModelState.IsValid)
            {
                Response.StatusCode = StatusCodes.Status400BadRequest;
                return(ResponseUtils.GenerateObjectResult("Erro ao cadastrar o episódio", ModelState.ListarErros()));
            }
            var episodio = new Episodio()
            {
                Id         = 0,
                Descricao  = episodioTemp.Descricao,
                Duracao    = episodioTemp.Duracao,
                Lancamento = episodioTemp.Lancamento,
                PodcastId  = episodioTemp.PodcastId,
                Titulo     = episodioTemp.Titulo,
                LinkAudio  = episodioTemp.LinkAudio
            };

            Response.StatusCode = StatusCodes.Status200OK;
            _episodioRepository.Criar(episodio);
            return(ResponseUtils.GenerateObjectResult("Episódio cadastrado com sucesso!", episodio));
        }
예제 #2
0
        public ObjectResult Put(int id, [FromBody] PodcastEdicaoViewModel podcastTemp)
        {
            if (id != podcastTemp.Id)
            {
                ModelState.AddModelError("Id", "Id da requisição difere do Id da categoria.");
            }
            if (!_podcastRepository.Existe(podcastTemp.Id))
            {
                ModelState.AddModelError("Id", "Podcast inexistente.");
            }
            if (!_categoriaRepository.Existe(podcastTemp.CategoriaId))
            {
                ModelState.AddModelError("CategoriaId", "Categoria inexistente.");
            }
            if (!ModelState.IsValid)
            {
                Response.StatusCode = StatusCodes.Status400BadRequest;
                return(ResponseUtils.GenerateObjectResult("Erro ao editar categoria.",
                                                          ModelState.ListarErros()));
            }
            var podcast = new Podcast()
            {
                Id          = podcastTemp.Id,
                Nome        = podcastTemp.Nome,
                Descricao   = podcastTemp.Descricao,
                Autor       = podcastTemp.Autor,
                Imagem      = podcastTemp.Imagem,
                Link        = podcastTemp.Link,
                CategoriaId = podcastTemp.CategoriaId
            };

            _podcastRepository.Editar(podcast);
            Response.StatusCode = StatusCodes.Status200OK;
            return(ResponseUtils.GenerateObjectResult("Podcast editado com sucesso!",
                                                      podcastTemp));
        }