コード例 #1
0
        public HttpResponseMessage Consultar(LivroFiltroConsultaModel model)
        {
            try
            {
                LivroRepositorio rep = new LivroRepositorio();

                List <Livro> livros = rep.SelectAllLivro(model.ISBN, model.Autor, model.Nome, model.Preco_Ini, model.Preco_Fim, model.Data_Ini, model.Data_Fim);

                List <LivroConsultaModel> lista = new List <LivroConsultaModel>();

                foreach (Livro l in livros)
                {
                    LivroConsultaModel item = new LivroConsultaModel();
                    item.ISBN            = l.ISBN;
                    item.Autor           = l.Autor;
                    item.Nome            = l.Nome;
                    item.Preco           = l.Preco;
                    item.Data_Publicacao = l.Data_Publicacao;
                    item.Imagem_Capa     = l.Imagem_Capa;

                    lista.Add(item);
                }

                return(Request.CreateResponse(HttpStatusCode.OK, lista));
                //}
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message));
            }
        }
コード例 #2
0
        public HttpResponseMessage Alterar(LivroCadastroModel model)
        {
            try
            {
                LivroRepositorio rep = new LivroRepositorio();


                Livro l = new Livro();
                l.ISBN            = model.ISBN;
                l.Autor           = model.Autor;
                l.Nome            = model.Nome;
                l.Preco           = model.Preco;
                l.Data_Publicacao = model.Data_Publicacao;
                l.Imagem_Capa     = model.Imagem_Capa;

                rep.Insert(l);

                return(Request.CreateResponse(HttpStatusCode.OK, $"Livro {l.Nome}, alterado com sucesso."));
                //}
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message));
            }
        }
コード例 #3
0
        public HttpResponseMessage Cadastrar(LivroCadastroModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    LivroRepositorio rep = new LivroRepositorio();


                    Livro l = new Livro();
                    l.ISBN            = model.ISBN;
                    l.Autor           = model.Autor;
                    l.Nome            = model.Nome;
                    l.Preco           = model.Preco;
                    l.Data_Publicacao = model.Data_Publicacao;
                    l.Imagem_Capa     = model.Imagem_Capa;

                    rep.Insert(l);

                    return(Request.CreateResponse(HttpStatusCode.OK, $"Livro {l.Nome}, cadastrado com sucesso."));
                }
                catch (Exception e)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError, e.Message));
                }
            }
            else
            {
                List <string> lista = ListarErros();
                return(Request.CreateResponse(HttpStatusCode.BadRequest, lista));
            }
        }
コード例 #4
0
        public void ObterLivroDeveRetornarLivro()
        {
            var repositorio = new LivroRepositorio();

            var livro = repositorio.ObterLivro(1);

            Assert.IsNotNull(livro);
        }
コード例 #5
0
        public HttpResponseMessage Get(int id = 0, string titulo = null, int autor = 0, int editora = 0)
        {
            var livrosFiltrados = LivroRepositorio.Listar().Where(l => (id == 0 ? true : l.Id == id) &&
                                                                  (editora == 0 ? true : l.EditoraId == editora) &&
                                                                  (autor == 0 ? true : l.AutorId == autor) &&
                                                                  (titulo == null ? true : l.Titulo.Contains(titulo))).ToList();

            if (livrosFiltrados.Any())
            {
                return(Request.CreateResponse(HttpStatusCode.OK,
                                              LivroRepositorio.GerarDto(livrosFiltrados)));
            }
            return(Request.CreateResponse(HttpStatusCode.NotFound));
        }
コード例 #6
0
        public IActionResult ObterLivros()
        {
            var repositorio = new LivroRepositorio();

            var livros = new List <Livro>()
            {
                repositorio.ObterLivro(2)
            };

            if (!livros.Any())
            {
                return(NotFound());
            }

            return(Ok(livros));
        }
コード例 #7
0
        public void GetDetalhesLivro_Return_OkResult()
        {
            //Arrange

            DbContextOptions <SqlServerContext> dbContextOptions = new DbContextOptionsBuilder <SqlServerContext>()
                                                                   .UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=Livraria;Trusted_Connection=True;")
                                                                   .Options;

            SqlServerContext   context            = new SqlServerContext(dbContextOptions);
            LivroRepositorio   livroRepositorio   = new LivroRepositorio(context);
            AutorRepositorio   autorRepositorio   = new AutorRepositorio(context);
            EditoraRepositorio editoraRepositorio = new EditoraRepositorio(context);
            LivroServico       livroServico       = new LivroServico(livroRepositorio, autorRepositorio, editoraRepositorio);

            var controller = new LivroController(livroServico);
            var id         = 1;

            //Act
            var data = controller.GetDetalhesLivro(id);

            //Assert
            Assert.IsType <JsonResult>(data);
        }
コード例 #8
0
 // POST: api/Livros
 public void Post([FromBody] LivroDto livro)
 {
     LivroRepositorio.InserirNovoItem(livro);
 }
コード例 #9
0
 public ServicosLivro(LivroRepositorio livros)
 {
     _livroRepositorio = livros;
 }
コード例 #10
0
 public void TestSetup()
 {
     BaseSqlTeste.SeedDatabase();
     _livroRepositorio = new LivroRepositorio();
 }