public IHttpActionResult Get() { List <MesaView> mesaViews = new List <MesaView>(); db.Mesas.ToList().ForEach(x => { MesaView vlmesaView = new MesaView(); vlmesaView.Id = x.Id; vlmesaView.Nome = x.Nome; List <Pedido> lvpedidos = db.Pedidoes.Where(y => y.MesaId == x.Id && y.Status.Equals("CONSUMO_FINALIZADO")).ToList(); vlmesaView.Status = "CONSUMO_FINALIZADO";// (lvpedidos.Count <= 0) ? ConfigurationManager.AppSettings["LIVRE"].ToString() : (lvpedidos.FirstOrDefault().Status == "CONSUMO_FINALIZADO")? "CONSUMO_FINALIZADO" : ConfigurationManager.AppSettings["OCUPADO"].ToString(); mesaViews.Add(vlmesaView); }); return(Json(mesaViews)); }
public IHttpActionResult Post(MesaView mesaView) { if (mesaView != null) { if (mesaView.Id > 0) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } List <Pedido> lvpedidos = db.Pedidoes.Include(i => i.Cliente) .Include(i => i.Funcionario) .Include(i => i.Mesa) .Where(x => x.MesaId == mesaView.Id && x.Status.Equals("CONSUMO_FINALIZADO")).ToList(); try { lvpedidos.ForEach(X => { X.Status = "PAGO"; db.Entry(X).State = EntityState.Modified; }); db.SaveChanges(); return(Ok("Pago com Sucesso")); } catch (Exception e) { DebugLog.Logar(e.Message); DebugLog.Logar(e.StackTrace); return(Json(e.Message)); } } } return(Ok()); }