public ActionResult Create(Pedido pedido) { try { if (ModelState.IsValid) { // Recupera os dados do usuário na sessão UsuarioService usuarioService = new UsuarioService(); pedido.UsuarioId = usuarioService.GetIdByLogin(User.Identity.Name); // Insere o valor do lanche para histórico pedido.ValorLanche = pedido.Valor; PedidoService pedidoService = new PedidoService(); pedidoService.Insert(pedido); TempData["message"] = "Pedido realizado com sucesso"; return RedirectToAction("Index"); } pedido = InicializaTela(pedido); } catch (Exception ex) { ViewBag.Error = ex.Message; } ViewBag.Message = "Realizar Pedido"; return View(pedido); }
// // GET: /Pedido/Delete/5 public ActionResult Delete(int id) { Pedido pedido = null; try { PedidoService pedidoService = new PedidoService(); pedido = pedidoService.Find(id); } catch (Exception ex) { ViewBag.Error = ex.Message; } return View(pedido); }
// // GET: /Fechamento/ public ActionResult Index() { Fechamento fechamento = new Fechamento(); try { PedidoService pedidoService = new PedidoService(); fechamento.Pedidos = pedidoService.ListPedidosAbertos(false); fechamento.BebidasSugeridas = pedidoService.ListBebidasSugeridas(); } catch (Exception ex) { ViewBag.Error = ex.Message; } fechamento = InicializaTela(fechamento); return View(fechamento); }
public ActionResult Index(Fechamento fechamento) { try { if (ModelState.IsValid) { // Carrega os pedidos em aberto PedidoService pedidoService = new PedidoService(); fechamento.Pedidos = pedidoService.ListPedidosAbertos(true); // Carrega os parãmetros ParametroService parametroService = new ParametroService(); fechamento.Parametro = parametroService.Find(); // Fecha o pedido FechamentoService fechamentoService = new FechamentoService(); fechamentoService.FechaPedido(fechamento); // Envia os emails fechamentoService.EnviaEmailContato(fechamento); fechamentoService.EnviaEmailUsuarios(fechamento); TempData["message"] = "Pedido finalizado com sucesso - Valor total R$ " + String.Format("{0:0.00}", fechamento.Pedidos.Sum(p => p.Valor)); return RedirectToAction("Index", "Home"); } } catch (Exception ex) { ViewBag.Error = ex.Message; } fechamento = InicializaTela(fechamento); return View(); }
public ActionResult DeleteConfirmed(int id) { try { PedidoService pedidoService = new PedidoService(); pedidoService.Delete(id); } catch (Exception ex) { ViewBag.Error = ex.Message; } if(ModelState.IsValid) TempData["message"] = "Pedido excluído com sucesso"; return RedirectToAction("Index"); }
// // GET: /Pedido/ public ViewResult Index() { IList<Pedido> pedidos = null; Usuario usuario = null; try { UsuarioService usuarioService = new UsuarioService(); usuario = usuarioService.FindByLogin(User.Identity.Name); PedidoService pedidoService = new PedidoService(); if (IsAdministrador) { pedidos = pedidoService.ListAllPedidos(); } else { pedidos = pedidoService.ListPedidosAbertosByUsuario(usuario.Id); } } catch (Exception ex) { ViewBag.Error = ex.Message; } return View(pedidos); }
public ActionResult Edit(Pedido pedido) { try { if (ModelState.IsValid) { PedidoService pedidoService = new PedidoService(); pedidoService.Update(pedido); TempData["message"] = "Pedido alterado com sucesso"; return RedirectToAction("Index"); } pedido = InicializaTela(pedido); } catch (Exception ex) { ViewBag.Error = ex.Message; } ViewBag.Message = "Alterar Pedido"; return View(pedido); }
// // GET: /Pedido/Edit/5 public ActionResult Edit(int id) { Pedido pedido = null; try { PedidoService pedidoService = new PedidoService(); pedido = pedidoService.Find(id); pedido = InicializaTela(pedido); } catch (Exception ex) { ViewBag.Error = ex.Message; } ViewBag.Message = "Alterar Pedido"; return View(pedido); }
public void FechaPedido(Fechamento fechamento) { // Calcula o valor da tele-entrega if (fechamento.PossuiTeleEntrega) { decimal parcelaTeleEntrega = Decimal.Round((fechamento.Parametro.ValorTeleEntrega / fechamento.Pedidos.Count()), 2); foreach (Pedido pedido in fechamento.Pedidos) { pedido.ValorEntrega = parcelaTeleEntrega; } // Calcula o valor das bebidas if (fechamento.PossuiBebida) { BebidaService bebidaService = new BebidaService(); decimal totalBebida = 0; decimal parcelaBebida; for (short i = 0; i < fechamento.PedidoIdBebidas.Length; i++) { totalBebida += fechamento.PedidoQuantidadeBebidas[i] * bebidaService.GetValor(fechamento.PedidoIdBebidas[i]); } parcelaBebida = Decimal.Round((totalBebida / fechamento.Pedidos.Where(p => p.BebidaId != null).Count()), 2); foreach (Pedido pedido in fechamento.Pedidos) { if(pedido.BebidaId != null) pedido.ValorBebida = parcelaBebida; } } } // Atualiza o valor de todos os pedidos em aberto PedidoService pedidoService = new PedidoService(); foreach (Pedido pedido in fechamento.Pedidos) { pedido.Valor = pedido.Valor + (pedido.ValorBebida != null ? pedido.ValorBebida.Value : 0) + (pedido.ValorEntrega != null ? pedido.ValorEntrega.Value : 0); // Marca o pedido como atendido pedido.Atendido = 1; pedidoService.UpdateSimple(pedido); } }