예제 #1
0
 public IActionResult DeleteByNome([FromBody] string nome)
 {
     try
     {
         var resposta = new AutorAplicacao(_context, _provedorDiretoriosArquivos).DeleteByNome(nome);
         return(Ok(resposta));
     }
     catch (Exception)
     {
         return(BadRequest("Erro ao comunicar com a base de dados!"));
     }
 }
예제 #2
0
 public IActionResult Insert([FromBody] Autores autorEnviado)
 {
     try
     {
         if (!ModelState.IsValid || autorEnviado == null)
         {
             return(BadRequest("Dados inválidos! Tente novamente."));
         }
         else
         {
             var resposta = new AutorAplicacao(_context, _provedorDiretoriosArquivos).Insert(autorEnviado);
             return(Ok(resposta));
         }
     }
     catch (Exception)
     {
         return(BadRequest("Erro ao comunicar com a base de dados!"));
     }
 }
예제 #3
0
        public IActionResult GetAllAutores(int numeroDeAutores = 0)
        {
            try
            {
                var listaDeAutores = new AutorAplicacao(_context).GetAllAutores(numeroDeAutores);

                if (listaDeAutores != null)
                {
                    var resposta = JsonConvert.SerializeObject(listaDeAutores);
                    return(Ok(resposta));
                }
                else
                {
                    return(BadRequest("Nenhum autor cadastrado!"));
                }
            }
            catch (Exception)
            {
                return(BadRequest("Erro ao comunicar com a base de dados!"));
            }
        }
예제 #4
0
        public IActionResult GetAutorByNome([FromBody] string nome)
        {
            try
            {
                var resposta = new AutorAplicacao(_context).GetAutorByNome(nome);

                if (resposta != null)
                {
                    var autorResposta = JsonConvert.SerializeObject(resposta);
                    return(Ok(autorResposta));
                }
                else
                {
                    return(BadRequest("Autor não cadastrado!"));
                }
            }
            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);
            }
        }