Exemplo n.º 1
0
        public async Task <Models.TbLivro> AlterarBusiness(int idlivro, Models.TbLivro tabela)
        {
            ValidarTexto(tabela.DsIdioma, "idioma");
            ValidarTexto(tabela.DsIsbn, "numero isbn");
            ValidarTexto(tabela.DsLivro, "resumo");
            ValidarTexto(tabela.NmLivro, "nome do livro");
            if (tabela.NrPaginas <= 0)
            {
                throw new ArgumentException("Número de paginas não foi informado.");
            }
            if (tabela.NrEdicao <= 0)
            {
                throw new ArgumentException("Número da edição não foi informado.");
            }
            if (tabela.VlPrecoCompra <= 0)
            {
                throw new ArgumentException("Valor de compra do livro não é valido.");
            }
            if (tabela.VlPrecoVenda <= 0)
            {
                throw new ArgumentException("Valor de venda do livro não é valido.");
            }
            if (tabela.DtLancamento > DateTime.Now)
            {
                throw new ArgumentException("Ano de lancamento do livro é superior a data atual.");
            }

            return(await database.AlterarLivroDatabase(idlivro, tabela));
        }
Exemplo n.º 2
0
        public Models.Response.GerenteResponse.LIstamelhoresGenerosReponse pegarmelhroes(Models.TbCompraLivro req)
        {
            Models.TccContext           db      = new Models.TccContext();
            List <Models.TbCompraLivro> compras = db.TbCompraLivro.ToList();

            Models.Response.GerenteResponse.LIstamelhoresGenerosReponse ctx = new Models.Response.GerenteResponse.LIstamelhoresGenerosReponse();

            Models.TbLivro livro = db.TbLivro.First(x => x.IdLivro == req.IdLivro);

            string nmlivro = livro.NmLivro;
            string gen     = livro.DsGenero;
            int    vendas  = 0;

            foreach (Models.TbCompraLivro i in compras)
            {
                if (i.IdLivro == livro.IdLivro)
                {
                    vendas++;
                }
                else
                {
                    continue;
                }
            }
            ctx.nomelivro = nmlivro;
            ctx.genero    = gen;
            ctx.qtdvendas = vendas;
            return(ctx);
        }
        public Models.TbLivro inserir(Models.TbLivro req)
        {
            db.TbLivro.Add(req);
            db.SaveChanges();

            return(req);
        }
Exemplo n.º 4
0
        public ActionResult <Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone> inserirnovolivro([FromForm] Models.Request.RequestFuncionario.RequestLivro req)
        {
            try{
                Utils.FuncoesFuncionarioUtils.ListaLivrosUtils             converter    = new Utils.FuncoesFuncionarioUtils.ListaLivrosUtils();
                Business.GerenciadordeImagens.GerenciadordeImagensBusiness gerenciarimg = new Business.GerenciadordeImagens.GerenciadordeImagensBusiness();
                Business.BusinessFuncionario.inserirNovoLivroVerificar     verificar    = new Business.BusinessFuncionario.inserirNovoLivroVerificar();

                Models.TbLivro modelotb = converter.RequestTblivroparaTbLivro(req);
                modelotb.ImgImagem = gerenciarimg.GerarNome(req.imagem.FileName);
                modelotb.PdfLivro  = gerenciarimg.GerarNome(req.arquivolivro.FileName);

                Models.TbLivro x = verificar.verificarparametros(modelotb);
                gerenciarimg.SalvarFoto(modelotb.ImgImagem, req.imagem);
                gerenciarimg.SalvarFoto(modelotb.PdfLivro, req.arquivolivro);

                Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone result = converter.TbLivroparaLivroResponseCompleto(modelotb);
                return(result);
            }
            catch (System.Exception ex)
            {
                return(new BadRequestObjectResult(
                           new Models.Response.ErroResponse(ex, 400)
                           ));
            }
        }
Exemplo n.º 5
0
        public async Task <ActionResult <Models.Response.LivroCompleto> > ConsultarLivroId(int idlivro, int idcliente)
        {
            try
            {
                Models.TbLivro livro = await business.ConsultarLivroIdBusiness(idlivro);

                Models.Response.LivroCompleto response = ConversorLivro.ConversorCompleto(livro);

                if (livro.TbFavoritos.Count != 0 && livro.TbFavoritos.All(x => x.IdCliente == idcliente))
                {
                    response.livro.favorito = true;
                    Models.TbFavoritos a = livro.TbFavoritos.FirstOrDefault(x => x.IdCliente == idcliente && x.IdLivro == idlivro);
                    response.favorito = conversor.ConversorResponse(a);
                }
                else
                {
                    response.livro.favorito = false;
                }

                return(response);
            }
            catch (System.Exception ex)
            {
                return(NotFound(
                           new Models.Response.ErroResponse(404, ex.Message)
                           ));
            }
        }
        public Models.TbLivro verificarparametros(Models.TbLivro tb)
        {
            camposvazios.campovaziolivro(tb);

            Models.TbLivro x = inserir.inserir(tb);
            return(x);
        }
        public Models.TbLivro apagar(Models.TbLivro id)
        {
            Models.TbLivro RegistroLivro = db.TbLivro.First(x => x.IdLivro == id.IdLivro);
            db.TbLivro.Remove(RegistroLivro);
            db.SaveChanges();

            return(RegistroLivro);
        }
Exemplo n.º 8
0
        public async Task <Models.TbLivro> InserirDatabaseAsync(Models.TbLivro livro)
        {
            await db.TbLivro.AddAsync(livro);

            await db.SaveChangesAsync();

            return(livro);
        }
        public Models.TbCompraLivro converttbcompralivro(Models.TbCompra req1, Models.TbLivro req2)
        {
            Models.TbCompraLivro ctx = new Models.TbCompraLivro();

            ctx.IdCompra = req1.IdCompra;
            ctx.IdLivro  = req2.IdLivro;

            return(ctx);
        }
Exemplo n.º 10
0
        public async Task <Models.TbLivro> ConsultarLivroPorId(int idlivro)
        {
            Models.TbLivro livro =
                await db.TbLivro.Include(x => x.IdMedidaNavigation)
                .Include(x => x.IdEditoraNavigation)
                .Include(x => x.TbLivroAutor).ThenInclude(y => y.IdAutorNavigation)
                .Include(x => x.TbLivroGenero).ThenInclude(z => z.IdGeneroNavigation)
                .Include(x => x.TbFavoritos)
                .Include(x => x.TbEstoque)
                .Include(x => x.TbFavoritos)
                .FirstOrDefaultAsync(x => x.IdLivro == idlivro);

            return(livro);
        }
Exemplo n.º 11
0
        public async Task <Models.TbLivro> RemoverDatabase(int idlivro)
        {
            Models.TbLivro livro = await this.ConsultarLivroPorId(idlivro);

            if (livro == null)
            {
                return(null);
            }

            db.TbLivro.Remove(livro);
            await db.SaveChangesAsync();

            return(livro);
        }
Exemplo n.º 12
0
        public Models.Response.LivroCompleto ConversorCompleto(Models.TbLivro tabela)
        {
            Models.Response.LivroCompleto response = new Models.Response.LivroCompleto();

            EditoraConversor EditoraConvert   = new EditoraConversor();
            AutorConversor   AutorConvert     = new AutorConversor();
            GeneroConversor  GeneroConvert    = new GeneroConversor();
            EstoqueConvert   EstoqueConversor = new EstoqueConvert();


            response.idlivro = tabela.IdLivro;
            response.livro   = this.Conversor(tabela);


            if (tabela.IdEditoraNavigation == null)
            {
                response.livro.editora = null;
            }
            else
            {
                response.livro.editora = EditoraConvert.Conversor(tabela.IdEditoraNavigation);
            }
            if (tabela.TbLivroAutor == null)
            {
                response.autores = null;
            }
            else
            {
                response.autores = tabela.TbLivroAutor.Select(x => AutorConvert.ConversorResponse(x.IdAutorNavigation)).ToList();
            }
            if (tabela.TbLivroGenero == null)
            {
                response.generos = null;
            }
            else
            {
                response.generos = tabela.TbLivroGenero.Select(x => GeneroConvert.ParaResponseListarGenero(x.IdGeneroNavigation)).ToList();
            }
            if (tabela.TbEstoque == null)
            {
                response.estoque_livro = null;
            }
            else
            {
                response.estoque_livro = tabela.TbEstoque.Select(x => EstoqueConversor.ConversorResponse(x)).FirstOrDefault(y => y.id >= 1);
            }

            return(response);
        }
Exemplo n.º 13
0
        public Models.Response.GerenteResponse.TopMelhoresProdutosResponse adicionarprodutos(Models.TbCompraLivro req)
        {
            Models.TccContext db = new Models.TccContext();
            Models.Response.GerenteResponse.TopMelhoresProdutosResponse item = new Models.Response.GerenteResponse.TopMelhoresProdutosResponse();

            List <Models.TbCompraLivro> compraslivros = db.TbCompraLivro.Where(x => x.IdLivro == req.IdLivro).Include(x => x.IdLivroNavigation).ToList();

            Models.TbLivro infolivro = db.TbLivro.First(x => x.IdLivro == req.IdLivro);

            item.qtdvendidos = compraslivros.Count();

            item.nomeproduto = req.IdLivroNavigation.NmLivro;
            item.lucrogeral  = infolivro.VlPreco * item.qtdvendidos;

            return(item);
        }
Exemplo n.º 14
0
        public Models.TbLivro VerificarRegistro(int id)
        {
            if (id <= 0)
            {
                throw new ArgumentException("Esse Registro é inválido");
            }

            Models.TbLivro entrada = verificarregistro.VerificarExistenciaTbLivro(id);

            if (entrada == null)
            {
                throw new ArgumentException("Esse Registro não existe");
            }

            Models.TbLivro result = funcoesfuncionario.apagar(entrada);
            return(result);
        }
Exemplo n.º 15
0
        public Models.Response.LivroResponse Conversor(Models.TbLivro tabela)
        {
            if (tabela == null)
            {
                return(null);
            }

            Models.Response.LivroResponse livro = new Models.Response.LivroResponse();

            livro.id          = tabela.IdLivro;
            livro.nome        = tabela.NmLivro;
            livro.descricao   = tabela.DsLivro;
            livro.lancamento  = tabela.DtLancamento;
            livro.idioma      = tabela.DsIdioma;
            livro.encapamento = tabela.TpAcabamento;
            livro.foto        = tabela.DsCapa;
            livro.paginas     = tabela.NrPaginas;
            livro.isbn        = tabela.DsIsbn;
            livro.edicao      = tabela.NrEdicao;
            livro.compra      = Convert.ToDouble(tabela.VlPrecoCompra);
            livro.venda       = Convert.ToDouble(tabela.VlPrecoVenda);


            MedidasConversor MedidaConvert = new MedidasConversor();

            if (tabela.IdMedidaNavigation == null)
            {
                livro.medida = null;
            }
            else
            {
                livro.medida = MedidaConvert.Conversor(tabela.IdMedidaNavigation);
            }
            EditoraConversor EditoraConvert = new EditoraConversor();

            if (tabela.IdMedidaNavigation == null)
            {
                livro.editora = null;
            }
            else
            {
                livro.editora = EditoraConvert.Conversor(tabela.IdEditoraNavigation);
            }

            return(livro);
        }
        public Models.TbLivro UltimaParteParaAlterar(Models.Request.RequestFuncionario.RequestLivroAlterar req)
        {
            requisitos.ValidarAlteracaoautor(req);
            requisitos.ValidarAlteracaoedicaolivro(req);
            requisitos.ValidarAlteracaogenero(req);
            requisitos.ValidarAlteracaoidioma(req);
            requisitos.ValidarAlteracaonomeeditora(req);
            requisitos.ValidarAlteracaonomelivro(req);
            requisitos.ValidarAlteracaonumeropaginas(req);
            requisitos.ValidarAlteracaonumeroSerie(req);
            requisitos.ValidarAlteracaopreco(req);
            requisitos.ValidarAlteracaopublicacaolivro(req);
            requisitos.ValidarAlteracaosinopse(req);

            Models.TbLivro x = salvaralteracao.alterarlivro(req);
            return(x);
        }
Exemplo n.º 17
0
        public Models.TbLivro RequestTblivroparaTbLivro(Models.Request.RequestFuncionario.RequestLivro req)
        {
            Models.TbLivro ctx = new Models.TbLivro();
            ctx.NmAutor          = req.autor;
            ctx.NmEditora        = req.editora;
            ctx.NmLivro          = req.livro;
            ctx.NrPaginas        = req.paginas;
            ctx.NrSerie          = req.numeroserie;
            ctx.TpIdiomaOriginal = req.idiomaprimario;
            ctx.VlPreco          = req.preco;
            ctx.DsGenero         = req.genero;
            ctx.DsEdicaoLivro    = req.edicaolivro;
            ctx.DsSinopse        = req.sinopse;
            ctx.DtPublicacao     = req.publicacao;

            return(ctx);
        }
        public Models.TbLivro alterarlivro(Models.Request.RequestFuncionario.RequestLivroAlterar req)
        {
            Models.TbLivro atual = db.TbLivro.First(x => x.IdLivro == req.idlivro);
            atual.NmAutor          = req.autor;
            atual.NmEditora        = req.editora;
            atual.NmLivro          = req.livro;
            atual.NrPaginas        = req.paginas;
            atual.NrSerie          = req.numeroserie;
            atual.TpIdiomaOriginal = req.idiomaprimario;
            atual.VlPreco          = req.preco;
            atual.DsEdicaoLivro    = req.edicaolivro;
            atual.DsGenero         = req.genero;
            atual.DsSinopse        = req.sinopse;
            atual.DtPublicacao     = req.publicacao;

            db.SaveChanges();
            return(atual);
        }
Exemplo n.º 19
0
        public Models.TbLivro Conversor(Models.Request.LivroRequest livro)
        {
            Models.TbLivro tabela = new Models.TbLivro();

            tabela.IdEditora          = livro.editora;
            tabela.NmLivro            = livro.nome;
            tabela.DsLivro            = livro.descricao;
            tabela.DtLancamento       = livro.lancamento;
            tabela.DsIdioma           = livro.idioma;
            tabela.TpAcabamento       = livro.encapamento;
            tabela.NrPaginas          = livro.paginas;
            tabela.DsIsbn             = livro.isbn;
            tabela.NrEdicao           = livro.edicao;
            tabela.VlPrecoCompra      = Convert.ToDecimal(livro.compra);
            tabela.VlPrecoVenda       = Convert.ToDecimal(livro.venda);
            tabela.IdMedidaNavigation = Conversor(livro.medidas);
            return(tabela);
        }
Exemplo n.º 20
0
        public ActionResult <Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone> AlterarLivro(Models.Request.RequestFuncionario.RequestLivroAlterar novasinformacoes)
        {
            try{
                Utils.FuncoesFuncionarioUtils.ListaLivrosUtils           AlterarModelo = new Utils.FuncoesFuncionarioUtils.ListaLivrosUtils();
                Business.BusinessFuncionario.ValidarAlteracaoLivroParte2 validacao     = new Business.BusinessFuncionario.ValidarAlteracaoLivroParte2();

                Models.TbLivro atual = validacao.UltimaParteParaAlterar(novasinformacoes);

                Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone AlteradoComSucesso = AlterarModelo.TbLivroparaLivroResponseCompleto(atual);
                return(AlteradoComSucesso);
            }
            catch (System.Exception ex)
            {
                return(new BadRequestObjectResult(
                           new Models.Response.ErroResponse(ex, 400)
                           ));
            }
        }
Exemplo n.º 21
0
        public async Task <ActionResult <Models.Response.LivroResponse> > Alterar(int idlivro, [FromForm] Models.Request.LivroRequest request)
        {
            try
            {
                Models.TbLivro livro = ConversorLivro.Conversor(request);
                livro.DsCapa = gerenciadorFoto.GerarNovoNome(request.foto.FileName);
                Models.TbLivro result = await business.AlterarBusiness(idlivro, livro);

                gerenciadorFoto.SalvarFile(livro.DsCapa, request.foto);
                Models.Response.LivroResponse response = ConversorLivro.Conversor(result);

                return(response);
            }
            catch (System.Exception ex)
            {
                return(BadRequest(
                           new Models.Response.ErroResponse(400, ex.Message)
                           ));
            }
        }
        public Models.Response.ClienteResponse.FazerCompra convertcompra(Models.TbLivro req)
        {
            Models.Response.ClienteResponse.FazerCompra ctx = new Models.Response.ClienteResponse.FazerCompra();

            ctx.idlivro     = req.IdLivro;
            ctx.autor       = req.NmAutor;
            ctx.livro       = req.NmLivro;
            ctx.original    = req.TpIdiomaOriginal;
            ctx.paginas     = req.NrPaginas;
            ctx.preco       = req.VlPreco;
            ctx.publicacao  = req.DtPublicacao;
            ctx.serie       = req.NrSerie;
            ctx.edicaolivro = req.DsEdicaoLivro;
            ctx.sinopse     = req.DsSinopse;
            ctx.editora     = req.NmEditora;
            ctx.genero      = req.DsGenero;
            ctx.nomeimg     = req.ImgImagem;
            ctx.nomearquivo = req.PdfLivro;

            return(ctx);
        }
        public void fazercompra2(int idlivro, int idcliente)
        {
            Models.TccContext db = new Models.TccContext();

            Utils.FuncoesClienteUtils.HistoricoCompraUtils   convert = new Utils.FuncoesClienteUtils.HistoricoCompraUtils();
            Models.Request.RequestCliente.FazerCompraRequest compra  = new Models.Request.RequestCliente.FazerCompraRequest();
            Business.ClienteBusiness verficarcompra = new Business.ClienteBusiness();

            Models.TbCliente primeiro = db.TbCliente.First(x => x.IdLogin == idcliente);

            Models.TbLivro parte1 = db.TbLivro.First(x => x.IdLivro == idlivro);
            DateTime       agr    = DateTime.Now;
            Decimal        preco  = parte1.VlPreco;

            Models.Request.RequestCliente.FazerCompraRequest ctx = convert.convertfazercompra(primeiro.IdCliente, preco, agr);
            Models.TbCompra z = convert.convertfazercompratb(ctx);
            db.TbCompra.Add(z);
            db.SaveChanges();

            Models.TbCompraLivro partefinal = convert.converttbcompralivro(z, parte1);
            db.TbCompraLivro.Add(partefinal);
            db.SaveChanges();
        }
Exemplo n.º 24
0
        public async Task <Models.TbLivro> AlterarLivroDatabase(int idlivro, Models.TbLivro livro)
        {
            Models.TbLivro atual = await this.ConsultarLivroPorId(idlivro);

            atual.NmLivro       = livro.NmLivro;
            atual.NrEdicao      = livro.NrEdicao;
            atual.NrPaginas     = livro.NrPaginas;
            atual.DsIsbn        = livro.DsIsbn;
            atual.DsIdioma      = livro.DsIdioma;
            atual.DsLivro       = livro.DsLivro;
            atual.DtLancamento  = livro.DtLancamento;
            atual.VlPrecoCompra = livro.VlPrecoCompra;
            atual.VlPrecoVenda  = livro.VlPrecoVenda;
            atual.DsCapa        = livro.DsCapa;

            atual.IdMedidaNavigation.VlAltura        = livro.IdMedidaNavigation.VlAltura;
            atual.IdMedidaNavigation.VlLargura       = livro.IdMedidaNavigation.VlLargura;
            atual.IdMedidaNavigation.VlPeso          = livro.IdMedidaNavigation.VlPeso;
            atual.IdMedidaNavigation.VlProfundidades = livro.IdMedidaNavigation.VlProfundidades;

            await db.SaveChangesAsync();

            return(livro);
        }
        public void campovaziolivro(Models.TbLivro req)
        {
            if (string.IsNullOrEmpty(req.NmLivro))
            {
                throw new ArgumentException("Voce precisa inserir o nome do livro");
            }

            if (string.IsNullOrEmpty(req.NmAutor))
            {
                throw new ArgumentException("Voce precisa inserir o nome do autor do livro");
            }

            if (req.VlPreco == 0)
            {
                throw new ArgumentException("Voce precisa definir um preço para o livro");
            }


            if (string.IsNullOrEmpty(req.NmEditora))
            {
                throw new ArgumentException("Voce precisa colocar o nome da editora do livro");
            }

            if (req.NrPaginas == 0)
            {
                throw new ArgumentException("Voce precisa inserir o nome do livro");
            }

            if (string.IsNullOrEmpty(req.DsSinopse))
            {
                throw new ArgumentException("Voce precisa inserir a sinopse do livro");
            }

            if (req.DtPublicacao == null)
            {
                throw new ArgumentException("Voce precisa inserir a data de publicacao do livro");
            }

            if (string.IsNullOrEmpty(req.TpIdiomaOriginal))
            {
                throw new ArgumentException("Voce precisa inserir o idioma do livro");
            }

            if (string.IsNullOrEmpty(req.DsEdicaoLivro))
            {
                throw new ArgumentException("Voce precisa inserir a edição do livro");
            }

            if (string.IsNullOrEmpty(req.DsGenero))
            {
                throw new ArgumentException("Voce precisa definir o genero do livro");
            }

            if (string.IsNullOrEmpty(req.ImgImagem))
            {
                throw new ArgumentException("imagem nao encontrada");
            }

            if (string.IsNullOrEmpty(req.DsEdicaoLivro))
            {
                throw new ArgumentException("Voce precisa Inserir a Edição do livro");
            }

            if (string.IsNullOrEmpty(req.NrSerie))
            {
                throw new ArgumentException("Voce Precisa colocar o numéro de serie do livro");
            }
        }
Exemplo n.º 26
0
        public Models.Response.FuncionarioResponse.ModeloTbLivroResponse TbLivroparaLivroResponse(Models.TbLivro reg)
        {
            Models.Response.FuncionarioResponse.ModeloTbLivroResponse ctx = new Models.Response.FuncionarioResponse.ModeloTbLivroResponse();

            ctx.id             = reg.IdLivro;
            ctx.livro          = reg.NmLivro;
            ctx.autor          = reg.NmAutor;
            ctx.publicacao     = reg.DtPublicacao;
            ctx.sinopse        = reg.DsSinopse;
            ctx.preco          = reg.VlPreco;
            ctx.paginas        = reg.NrPaginas;
            ctx.idiomaprimario = reg.TpIdiomaOriginal;
            ctx.genero         = reg.DsGenero;

            return(ctx);
        }
Exemplo n.º 27
0
        public Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone TbLivroparaLivroResponseCompleto(Models.TbLivro request)
        {
            Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone response = new Models.Response.FuncionarioResponse.ModeloCompletoLivroRespone();

            response.id             = request.IdLivro;
            response.autor          = request.NmAutor;
            response.livro          = request.NmLivro;
            response.editora        = request.NmEditora;
            response.paginas        = request.NrPaginas;
            response.numeroserie    = request.NrSerie;
            response.idiomaprimario = request.TpIdiomaOriginal;
            response.preco          = request.VlPreco;
            response.edicaolivro    = request.DsEdicaoLivro;
            response.genero         = request.DsGenero;
            response.sinopse        = request.DsSinopse;
            response.publicacao     = request.DtPublicacao;
            response.nomeimagem     = request.ImgImagem;
            response.nomearquivo    = request.PdfLivro;

            return(response);
        }
Exemplo n.º 28
0
 public Models.TbLivro Procurarlivro(int id)
 {
     Models.TbLivro x = db.TbLivro.FirstOrDefault(x => x.IdLivro == id);
     return(x);
 }
 public Models.TbLivro VerificarExistenciaTbLivro(int id)
 {
     Models.TbLivro x = db.TbLivro.FirstOrDefault(x => x.IdLivro == id);
     return(x);
 }
Exemplo n.º 30
0
        public Models.Response.ResponsedoFuncionario.RegistroLivroResponse registrolivroapagado(Models.TbLivro reg)
        {
            Models.Response.ResponsedoFuncionario.RegistroLivroResponse x = new Models.Response.ResponsedoFuncionario.RegistroLivroResponse();

            x.id     = reg.IdLivro;
            x.livro  = reg.NmLivro;
            x.autor  = reg.NmAutor;
            x.genero = reg.DsGenero;
            x.preco  = reg.VlPreco;

            return(x);
        }