Exemple #1
0
        public IActionResult BancasMaisVendem(int page = 1)
        {
            List <VendasBancaRelatorio> VendaRelatorio = new List <VendasBancaRelatorio>();
            List <VendasBancaRelatorio> ListaFinal     = new List <VendasBancaRelatorio>();
            List <Venda> listaDoForeach = new List <Venda>();
            var          bancasNome     = _context.Vendas.Include(b => b.Bancas).Select(b => b.Bancas.NomeBanca).Distinct().ToList();
            var          vendas         = _context.Vendas.Include(v => v.Clientes).Include(v => v.Status).Include(v => v.Bancas).ToList();

            foreach (var item in vendas)
            {
                item.ValorVenda = item.ValorVenda.Substring(2).Replace('.', ',');
                listaDoForeach.Add(item);
            }
            int posicao = 1;

            foreach (var data in bancasNome)
            {
                var soma = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Sum(v => Convert.ToDouble(v.ValorVenda));

                VendasBancaRelatorio vbr = new VendasBancaRelatorio();
                vbr.QuantidadeDeVendas = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Count();
                vbr.NomeBanca          = data;
                vbr.ValorTotalVenda    = "R$" + soma;
                vbr.Bairro             = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Select(v => v.Bancas.Bairro).FirstOrDefault();
                VendaRelatorio.Add(vbr);
            }
            VendaRelatorio = VendaRelatorio.OrderByDescending(b => b.QuantidadeDeVendas).ToList();
            foreach (var obj in VendaRelatorio)
            {
                obj.Posicao = posicao + "º";
                ListaFinal.Add(obj);
                posicao++;
            }
            ListaParaCsvBanca = ListaFinal;
            ViewBag.bancas    = ListaFinal;
            ViewBag.ceps      = _context.Vendas.Include(b => b.Bancas).Select(b => b.Bancas.CEPbanca).Distinct().ToList();
            ViewBag.countProd = ListaFinal.Select(p => p.NomeBanca).Distinct().Count();
            var query = ListaFinal.AsQueryable().OrderByDescending(b => b.QuantidadeDeVendas);
            var model = PagingList.Create(query, 500, page);

            model.Action     = "BancasMaisVendem";
            ViewBag.ordenado = "Ordenado por: Quantidade vendida";

            return(View(model));
        }
Exemple #2
0
        public List <VendasBancaRelatorio> resetarLista()
        {
            List <VendasBancaRelatorio> VendaRelatorio = new List <VendasBancaRelatorio>();
            List <VendasBancaRelatorio> ListaFinal     = new List <VendasBancaRelatorio>();
            List <Venda> listaDoForeach = new List <Venda>();
            var          bancasNome     = _context.Vendas.Include(b => b.Bancas).Select(b => b.Bancas.NomeBanca).Distinct().ToList();
            var          vendas         = _context.Vendas.Include(v => v.Clientes).Include(v => v.Status).Include(v => v.Bancas).ToList();

            foreach (var item in vendas)
            {
                item.ValorVenda = item.ValorVenda.Substring(2).Replace('.', ',');
                listaDoForeach.Add(item);
            }
            int posicao = 1;

            foreach (var data in bancasNome)
            {
                var soma = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Sum(v => Convert.ToDouble(v.ValorVenda));

                VendasBancaRelatorio vbr = new VendasBancaRelatorio();
                vbr.QuantidadeDeVendas = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Count();
                vbr.NomeBanca          = data;
                vbr.ValorTotalVenda    = "R$" + soma;
                vbr.Bairro             = vendas.Where(v => v.Bancas.NomeBanca.ToLower() == data.ToLower()).Select(v => v.Bancas.Bairro).FirstOrDefault();
                VendaRelatorio.Add(vbr);
            }
            VendaRelatorio = VendaRelatorio.OrderByDescending(b => b.QuantidadeDeVendas).ToList();
            foreach (var obj in VendaRelatorio)
            {
                obj.Posicao = posicao + "º";
                ListaFinal.Add(obj);
                posicao++;
            }
            ListaParaCsvBanca = ListaFinal;
            ViewBag.bancas    = ListaFinal;
            ViewBag.ceps      = _context.Vendas.Include(b => b.Bancas).Select(b => b.Bancas.CEPbanca).Distinct().ToList();
            ViewBag.countProd = ListaFinal.Select(p => p.NomeBanca).Distinct().Count();
            return(ListaFinal.OrderByDescending(b => b.QuantidadeDeVendas).ToList());
        }