コード例 #1
0
        public async Task <PagedList <Usuario> > BuscarPorFiltroComPaginacao(UsuarioParams parametros)
        {
            try
            {
                var prodPaged = _context.Usuarios.AsQueryable();


                if (parametros.Filter != null)
                {
                    prodPaged = prodPaged.Where(x => x.Nome.ToLower().Contains(parametros.Filter.ToLower()) ||
                                                x.Email.ToLower().Contains(parametros.Filter.ToLower()) ||
                                                x.Role.ToLower().Contains(parametros.Filter.ToLower()));
                }
                if (parametros.SortOrder.ToLower().Equals("asc"))
                {
                    prodPaged = prodPaged.OrderBy(prod => prod.Nome);
                }
                if (parametros.SortOrder.ToLower().Equals("desc"))
                {
                    prodPaged = prodPaged.OrderByDescending(prod => prod.Nome);
                }

                var result = await prodPaged.ToListAsync();

                return(PagedList <Usuario> .ToPagedList(result, parametros.NumeroDaPaginaAtual, parametros.TamanhoDaPagina));
            }
            catch (MySqlException ex)
            {
                _context.Dispose();
                throw new Exception(ex.Message);
            }
        }
コード例 #2
0
        public async Task <PagedList <Fornecedor> > BuscarPorFiltroComPaginacao(FornecedorParams parametros)
        {
            try
            {
                var paginaDeFoenecedores = _context.Fornecedores.AsQueryable();


                if (parametros.Filter != null)
                {
                    paginaDeFoenecedores = paginaDeFoenecedores.Where(x => x.Nome.ToLower().Contains(parametros.Filter.ToLower()) ||
                                                                      x.CNPJ.ToString().ToLower().Contains(parametros.Filter.ToLower()) ||
                                                                      x.Telefone.ToLower().Contains(parametros.Filter.ToLower()));
                }
                if (parametros.SortOrder.ToLower().Equals("asc"))
                {
                    paginaDeFoenecedores = paginaDeFoenecedores.OrderBy(prod => prod.Nome);
                }
                if (parametros.SortOrder.ToLower().Equals("desc"))
                {
                    paginaDeFoenecedores = paginaDeFoenecedores.OrderByDescending(prod => prod.Nome);
                }

                var result = await paginaDeFoenecedores.ToListAsync();

                return(PagedList <Fornecedor> .ToPagedList(result, parametros.NumeroDaPaginaAtual, parametros.TamanhoDaPagina));
            }
            catch (MySqlException ex)
            {
                _context.Dispose();
                throw new Exception(ex.Message);
            }
        }
コード例 #3
0
 public async Task <int> Excluir(Guid clienteId)
 {
     try
     {
         var cliente = _context.Clientes.Find(clienteId);
         _context.Remove(cliente);
         return(await SalvarCommit());
     }
     catch (MySqlException e)
     {
         _context.Dispose();
         throw e;
     }
 }
コード例 #4
0
        public async Task <PagedList <PedidoVenda> > BuscarPorFiltroComPaginacao(PedidoVendaParams parametros)
        {
            try
            {
                var pedidos = _context.Pedidos
                              .Include(p => p.Cliente)
                              .Include(p => p.ItemPedidos)
                              .ThenInclude(i => i.Produto).AsQueryable();


                if (parametros.Filter != null)
                {
                    pedidos = pedidos.Where(x =>
                                            x.Cliente.Nome.ToLower().Contains(parametros.Filter.ToLower()) ||
                                            x.ValorTotal.ToString().ToLower().Contains(parametros.Filter.ToLower()) ||
                                            x.DataVenda.ToString().ToLower().Contains(parametros.Filter.ToLower())
                                            );
                }
                if (parametros.SortOrder.ToLower().Equals("asc"))
                {
                    if (parametros.OrdenarPor.ToLower().Equals("cliente"))
                    {
                        pedidos = pedidos.OrderBy(pedido => pedido.Cliente.Nome);
                    }
                    if (parametros.OrdenarPor.ToLower().Equals("dataVenda"))
                    {
                        pedidos = pedidos.OrderBy(pedido => pedido.DataVenda);
                    }
                    if (parametros.OrdenarPor.ToLower().Equals("valorTotal"))
                    {
                        pedidos = pedidos.OrderBy(pedido => pedido.ValorTotal);
                    }
                }
                if (parametros.SortOrder.ToLower().Equals("desc"))
                {
                    if (parametros.OrdenarPor.Equals("cliente"))
                    {
                        pedidos = pedidos.OrderByDescending(pedido => pedido.Cliente.Nome);
                    }
                    if (parametros.OrdenarPor.Equals("dataVenda"))
                    {
                        pedidos = pedidos.OrderByDescending(pedido => pedido.DataVenda);
                    }
                    if (parametros.OrdenarPor.Equals("valorTotal"))
                    {
                        pedidos = pedidos.OrderByDescending(pedido => pedido.ValorTotal);
                    }
                }

                var result = await pedidos.Select(
                    p => new PedidoVenda
                {
                    Id         = p.Id,
                    DataVenda  = p.DataVenda,
                    ValorTotal = p.ValorTotal,
                    Cliente    = new Cliente
                    {
                        Id       = p.Cliente.Id,
                        Nome     = p.Cliente.Nome,
                        CPF      = p.Cliente.CPF,
                        Endereco = p.Cliente.Endereco,
                        Telefone = p.Cliente.Telefone,
                        Pedidos  = new List <PedidoVenda>()
                    },
                    ItemPedidos = p.ItemPedidos.Select(ip => new ItemPedidoVenda
                    {
                        Id         = ip.Id,
                        IdPedido   = ip.IdPedido,
                        IdProduto  = ip.IdProduto,
                        Preco      = ip.Preco,
                        Quantidade = ip.Quantidade,
                        SubTotal   = ip.SubTotal,
                        Produto    = new Produto
                        {
                            Id        = ip.Produto.Id,
                            Nome      = ip.Produto.Nome,
                            Descricao = ip.Produto.Descricao,
                            Valor     = ip.Produto.Valor
                        }
                    }).ToList()
                }).ToListAsync();

                return(PagedList <PedidoVenda> .ToPagedList(result, parametros.NumeroDaPaginaAtual, parametros.TamanhoDaPagina));
            }
            catch (MySqlException ex)
            {
                _context.Dispose();
                throw new Exception(ex.Message);
            }
        }
コード例 #5
0
        public async Task <PagedList <OrdemCompra> > BuscarPorFiltroComPaginacao(OrdemCompraParams parametros)
        {
            try
            {
                var ordens = _context.OrdemCompras
                             .Include(ordem => ordem.Fornecedor)
                             .Include(ordem => ordem.ItemsOrdemCompra)
                             .ThenInclude(i => i.Produto).AsQueryable();


                if (parametros.Filter != null)
                {
                    ordens = ordens.Where(x =>
                                          x.Fornecedor.Nome.ToLower().Contains(parametros.Filter.ToLower()) ||
                                          x.ValorTotal.ToString().ToLower().Contains(parametros.Filter.ToLower()) ||
                                          x.DataEntrada.ToString().ToLower().Contains(parametros.Filter.ToLower())
                                          );
                }
                if (parametros.SortOrder.ToLower().Equals("asc"))
                {
                    if (parametros.OrdenarPor.ToLower().Equals("fornecedor"))
                    {
                        ordens = ordens.OrderBy(ordem => ordem.Fornecedor.Nome);
                    }
                    if (parametros.OrdenarPor.ToLower().Equals("dataEntrada"))
                    {
                        ordens = ordens.OrderBy(ordem => ordem.DataEntrada);
                    }
                    if (parametros.OrdenarPor.ToLower().Equals("valorTotal"))
                    {
                        ordens = ordens.OrderBy(ordem => ordem.ValorTotal);
                    }
                }
                if (parametros.SortOrder.ToLower().Equals("desc"))
                {
                    if (parametros.OrdenarPor.Equals("fornecedor"))
                    {
                        ordens = ordens.OrderByDescending(ordem => ordem.Fornecedor.Nome);
                    }
                    if (parametros.OrdenarPor.Equals("dataEntrada"))
                    {
                        ordens = ordens.OrderByDescending(ordem => ordem.DataEntrada);
                    }
                    if (parametros.OrdenarPor.Equals("valorTotal"))
                    {
                        ordens = ordens.OrderByDescending(ordem => ordem.ValorTotal);
                    }
                }

                var result = await ordens.Select(
                    ordem => new OrdemCompra
                {
                    Id          = ordem.Id,
                    DataEntrada = ordem.DataEntrada,
                    ValorTotal  = ordem.ValorTotal,
                    Fornecedor  = new Fornecedor
                    {
                        Id           = ordem.Fornecedor.Id,
                        Nome         = ordem.Fornecedor.Nome,
                        CNPJ         = ordem.Fornecedor.CNPJ,
                        Telefone     = ordem.Fornecedor.Telefone,
                        OrdemCompras = new List <OrdemCompra>()
                    },
                    ItemsOrdemCompra = ordem.ItemsOrdemCompra.Select(ip => new ItemOrdemCompra
                    {
                        Id            = ip.Id,
                        IdOrdemCompra = ip.IdOrdemCompra,
                        IdProduto     = ip.IdProduto,
                        Preco         = ip.Preco,
                        Quantidade    = ip.Quantidade,
                        SubTotal      = ip.SubTotal,
                        Produto       = new Produto
                        {
                            Id        = ip.Produto.Id,
                            Nome      = ip.Produto.Nome,
                            Descricao = ip.Produto.Descricao,
                            Valor     = ip.Produto.Valor
                        }
                    }).ToList()
                }).ToListAsync();

                return(PagedList <OrdemCompra> .ToPagedList(result, parametros.NumeroDaPaginaAtual, parametros.TamanhoDaPagina));
            }
            catch (MySqlException ex)
            {
                _context.Dispose();
                throw new Exception(ex.Message);
            }
        }