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/Create public ActionResult Create() { Pedido pedido = new Pedido(); try { pedido = InicializaTela(pedido); } catch (Exception ex) { ViewBag.Error = ex.Message; } ViewBag.Message = "Realizar Pedido"; return View(pedido); }
public void Insert(Pedido pedido) { using(Context db = new Context()) { OpcionalPedido opcionalPedido; // Insere os opcionais selecionados if (pedido.SelectedOpcionais != null) { for (short i = 0; i < pedido.SelectedOpcionais.Length; i++) { opcionalPedido = new OpcionalPedido() { OpcionalId = pedido.SelectedOpcionais[i], PedidoId = pedido.Id }; db.OpcionalPedido.Add(opcionalPedido); } } db.Pedido.Add(pedido); db.SaveChanges(); } }
/// <summary> /// Atualiza o pedido desconsiderando os opcionais (somente tabela 'Pedido') /// </summary> /// <param name="pedido"></param> public void UpdateSimple(Pedido pedido) { using (Context db = new Context()) { db.Entry(pedido).State = EntityState.Modified; db.SaveChanges(); } }
public void Update(Pedido pedido) { using(Context db = new Context()) { OpcionalPedido opcionalPedido; // Remove todos os opcionais var opcionais = from op in db.OpcionalPedido where op.PedidoId == pedido.Id select op; foreach (var opcional in opcionais) { db.OpcionalPedido.Remove(opcional); } // Inclui todos os opcionais if (pedido.SelectedOpcionais != null) { for (short i = 0; i < pedido.SelectedOpcionais.Length; i++) { opcionalPedido = new OpcionalPedido() { OpcionalId = pedido.SelectedOpcionais[i], PedidoId = pedido.Id }; db.OpcionalPedido.Add(opcionalPedido); } } db.Entry(pedido).State = EntityState.Modified; db.SaveChanges(); } }
private Pedido InicializaTela(Pedido pedido) { // Opcionais OpcionalService opcionalService = new OpcionalService(); pedido.Opcionais = opcionalService.List(); using (Context db = new Context()) { // DropDownList Bebida if(pedido.BebidaId != 0) ViewBag.BebidaId = new SelectList(db.Bebida.ToList(), "Id", "Nome", pedido.BebidaId); else ViewBag.BebidaId = new SelectList(db.Bebida.ToList(), "Id", "Nome"); // DropDownList Lanche if(pedido.LancheId != 0) ViewBag.LancheId = new SelectList(db.Lanche.ToList(), "Id", "Nome", pedido.LancheId); else ViewBag.LancheId = new SelectList(db.Lanche.ToList(), "Id", "Nome"); } return pedido; }
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); }