예제 #1
0
        public IActionResult GetEditoraByNome([FromBody] string nome)
        {
            try
            {
                if (new ValidationFields().ValidateNome(nome))
                {
                    return(BadRequest("Editora inválida! Tente novamente."));
                }
                else
                {
                    var resposta = new EditoraAplicacao(_context).GetEditoraByNome(nome);

                    if (resposta != null)
                    {
                        if (resposta.Nome == "")
                        {
                            return(BadRequest("Nome inválido"));
                        }
                        else
                        {
                            var EditoraResposta = JsonConvert.SerializeObject(resposta);
                            return(Ok(EditoraResposta));
                        }
                    }
                    else
                    {
                        return(BadRequest("Editora não cadastrado!"));
                    }
                }
            }
            catch (Exception)
            {
                return(BadRequest("Erro ao comunicar com a base de dados!"));
            }
        }
예제 #2
0
 public IActionResult DeleteByNome([FromBody] string nome)
 {
     try
     {
         if (!new ValidationFields().ValidateNome(nome))
         {
             return(BadRequest("Nome inválido! Tente novamente."));
         }
         else
         {
             var resposta = new EditoraAplicacao(_context).DeleteByNome(nome);
             return(Ok(resposta));
         }
     }
     catch (Exception)
     {
         return(BadRequest("Erro ao comunicar com a base de dados!"));
     }
 }
예제 #3
0
 public IActionResult Insert([FromBody] Editora editoraEnviada)
 {
     try
     {
         if (!ModelState.IsValid || editoraEnviada == null)
         {
             return(BadRequest("Dados inválidos! Tente novamente."));
         }
         else
         {
             var resposta = new EditoraAplicacao(_context).Insert(editoraEnviada);
             return(Ok(resposta));
         }
     }
     catch (Exception)
     {
         return(BadRequest("Erro ao comunicar com a base de dados!"));
     }
 }
예제 #4
0
        public IActionResult GetAllEditoras(int numeroDeEditoras = 0)
        {
            try
            {
                var listaDeEditoras = new EditoraAplicacao(_context).GetAllEditoras(numeroDeEditoras);

                if (listaDeEditoras != null)
                {
                    var resposta = JsonConvert.SerializeObject(listaDeEditoras);
                    return(Ok(resposta));
                }
                else
                {
                    return(BadRequest("Erro ao comunicar com a base de dados!"));
                }
            }
            catch (Exception)
            {
                return(BadRequest("Erro ao comunicar com a base de dados!"));
            }
        }
예제 #5
0
        public List <LivrosData> GetAllLivros(int numeroDeLivros = 0)
        {
            var listaDeLivros = new List <Livros>();

            try
            {
                listaDeLivros = _context.Livros.Select(x => x).ToList();

                if (listaDeLivros != null)
                {
                    //caso o numero passado for igual a 0 ele vai retornar todos
                    if (numeroDeLivros != 0 && numeroDeLivros > 0)
                    {
                        listaDeLivros = listaDeLivros.TakeLast(numeroDeLivros).ToList();
                    }

                    var listaAutorEditora = new List <LivrosData>();

                    //pega o objeto de autor e o objeto de editora
                    for (int i = 0; i < listaDeLivros.Count; i++)
                    {
                        //atribui uma lista nula de livros pra não ocorrer repetição
                        var autor = new AutorAplicacao(_context).GetAutorById(listaDeLivros[i].FkAutor);
                        autor.Livros = new List <Livros>();

                        //atribui uma lista nula de livros pra não ocorrer repetição
                        var editora = new EditoraAplicacao(_context).GetEditoraById(listaDeLivros[i].FkEditora);
                        editora.Livros = new List <Livros>();

                        listaAutorEditora.Add(
                            new LivrosData
                        {
                            IdLivro      = listaDeLivros[i].IdLivro,
                            Titulo       = listaDeLivros[i].Titulo,
                            Capa         = listaDeLivros[i].Capa,
                            Ano_Lanc     = listaDeLivros[i].Ano_Lanc,
                            Arquivo      = listaDeLivros[i].Arquivo,
                            Sinopse      = listaDeLivros[i].Sinopse,
                            Genero       = listaDeLivros[i].Genero,
                            Idioma       = listaDeLivros[i].Idioma,
                            Isbn         = listaDeLivros[i].Isbn,
                            Autor        = autor,
                            Editora      = editora,
                            TotalAcessos = listaDeLivros[i].TotalAcessos,
                        }
                            );
                    }

                    return(listaAutorEditora);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                var erro = ex.Message;
                return(null);
            }
        }