public ActionResult VisualizarCliente(int id) { Cliente cliente; List <Venda> comprasDoCliente = new List <Venda>(); List <Venda> comprasDoMes = new List <Venda>(); List <ProdutoVenda> produtos; List <ProdutoVenda> produtosDoMes = new List <ProdutoVenda>(); decimal ValorTotal = 0; decimal ValorMensal = 0; using (var dao = new ClienteDaoEntity()) { cliente = dao.Pegar(id); } using (var dao = new VendaDaoEntity()) { List <Venda> lista = dao.PegarLista() as List <Venda>; comprasDoCliente.AddRange(from v in lista where v.IdCliente == cliente.IdCliente select v); } using (var dao = new ProdutoVendaDaoEntity()) { produtos = dao.PegarLista() as List <ProdutoVenda>; } foreach (ProdutoVenda pv in produtos) { ValorTotal += pv.Valor; } comprasDoMes.AddRange(from v in comprasDoCliente where v.DataDaVenda.Month.Equals(DateTime.Today.Month) select v); List <int> ids = new List <int>(); foreach (Venda compra in comprasDoMes) { ids.Add(compra.IdVenda); } produtosDoMes.AddRange(from p in produtos where ids.Contains(p.IdVenda) select p); foreach (ProdutoVenda pv in produtosDoMes) { ValorMensal += pv.Valor; } VisualizarComprasClientesViewModel vm = new VisualizarComprasClientesViewModel { Cliente = cliente, Compras = comprasDoCliente, Produtos = produtos, ValorTotal = ValorTotal, ValorMensal = ValorMensal, VolumeCompras = comprasDoCliente.Count, VolumeComprasMes = comprasDoMes.Count }; return(View(vm)); }
public ActionResult AdicionarVenda(FormularioVenda formularioVenda) { Cliente cliente; using (var dao = new ClienteDaoEntity()) { cliente = dao.Pegar(formularioVenda.Cpf); } Vendedor vendedor; using (var dao = new VendedorDaoEntity()) { vendedor = dao.Pegar(Convert.ToInt32(System.Web.HttpContext.Current.Session["IdVendedor"].ToString())); } formularioVenda.Venda.IdCliente = cliente.IdCliente; formularioVenda.Venda.IdVendedor = vendedor.IdVendedor; formularioVenda.Venda.DataDaVenda = DateTime.Now; if (PasswordEncrypt.CompareHash(formularioVenda.Senha, vendedor.Senha, vendedor.SaltSenha)) { int idDaVenda; using (var dao = new VendaDaoEntity()) { dao.Adicionar(formularioVenda.Venda); List <Venda> lista = dao.PegarLista() as List <Venda>; idDaVenda = lista.Last().IdVenda; } Produto p; using (var daoProduto = new ProdutoDaoEntity()) { using (var dao = new ProdutoVendaDaoEntity()) { foreach (var produto in formularioVenda.Produtos) { p = daoProduto.Pegar(produto.IdProduto); p.QuantidadeEmEstoque--; daoProduto.Alterar(p); produto.IdVenda = idDaVenda; produto.Valor = produto.Quantidade * p.ValorUnitario; dao.Adicionar(produto); } } } return(RedirectToAction("ListarVendas")); } return(RedirectToAction("Form")); }
public ActionResult Form(int id, string acao) { ClienteFormViewModel vm = new ClienteFormViewModel { Acao = $"../{acao}" }; if (id == 0) { vm.Cliente = new Cliente(); } else { using (var dao = new ClienteDaoEntity()) { vm.Cliente = dao.Pegar(id); } } return(View(vm)); }