public IActionResult DetalhesVendasPorVendedor(int id_vendedor, int mes, int ano) { try { List <Venda> listaVendas = _relatorio.RetornarDetalhesVendasPorVendedor(id_vendedor, mes, ano); ViewBag.Ano = ano; ViewBag.Mes = mes; ViewBag.IdVendedor = id_vendedor; List <VendasPorPeriodo> lista = new List <VendasPorPeriodo>(); VendasPorPeriodo item; var cliente = ""; var vendedor = ""; var total = 0; foreach (var ls in listaVendas) { cliente = _context.Cliente.Where(e => e.Id == Convert.ToInt32(ls.ClienteId)).Select(e => e.Nome).FirstOrDefault(); vendedor = _context.Vendedor.Where(e => e.Id == Convert.ToInt32(ls.VendedorId)).Select(e => e.Nome).FirstOrDefault(); item = new VendasPorPeriodo { Id = ls.Id, Data = ls.Data, Vendedor = vendedor, Cliente = cliente, Total = ls.Total }; lista.Add(item); total += Convert.ToInt32(item.Total); } ViewBag.TotalVendas = total; ViewBag.ListaVendas = lista; ViewBag.Vendedor = _context.Vendedor.ToList(); if (ViewBag.ListaVendas.Count == 0) { TempData["MSG_E"] = Mensagem.MSG_E009; } return(View()); } catch (Exception e) { return(RedirectToAction(nameof(Error), new { message = "Erro ao gerar relatório. Tente novamente mais tarde. \n\n" + e.Message })); } }
public IActionResult Vendas(Relatorio relatorio) { try { DateTime dataDe = relatorio.DataDe; DateTime dataAte = relatorio.DataAte.AddDays(1); List <Venda> listaVendas = _daoVenda.ListagemVendas(dataDe, dataAte); List <VendasPorPeriodo> lista = new List <VendasPorPeriodo>(); VendasPorPeriodo item; var cliente = ""; var vendedor = ""; foreach (var ls in listaVendas) { cliente = _context.Cliente.Where(e => e.Id == Convert.ToInt32(ls.ClienteId)).Select(e => e.Nome).FirstOrDefault(); vendedor = _context.Vendedor.Where(e => e.Id == Convert.ToInt32(ls.VendedorId)).Select(e => e.Nome).FirstOrDefault(); item = new VendasPorPeriodo { Id = ls.Id, Data = ls.Data, Vendedor = vendedor, Cliente = cliente, Total = ls.Total, }; lista.Add(item); } ViewBag.ListaVendas = lista; if (ViewBag.ListaVendas.Count == 0) { TempData["MSG_E"] = Mensagem.MSG_E007; } return(View()); } catch (Exception e) { return(RedirectToAction(nameof(Error), new { message = "Erro ao gerar relatório. Tente novamente mais tarde. \n\n" + e.Message })); } }