public static bool ingresar(WebRestauranteContext db, int IdM, Guid IdC, string[] selectedMenu, string[] DCantida, int?IdMesaO, string CPersona, bool?TR) { int horaS = DateTime.Now.TimeOfDay.Hours; horaS = horaS + 2; if (IdMesaO != 0) { var MO = db.MesasOcupadas.Find(IdMesaO); Reserva.DetalleMenuCliente(IdC, "," + MO.Cod_MesasO, MO.Reservada, db, SeparadorMenu.Menu(selectedMenu, DCantida), IdMesaO, TR); return(true); } else { Mover.Mesas(IdM, db); int A = DateTime.Now.Year; var mesasO = new MesasOcupadas { Cod_Mesa = IdM, Estado_MesasO = true, ConfirmarMesa = true, CPersonas_Mesas = Convert.ToInt32(CPersona), Fecha_MesasO = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day), HoraIngreso_MesasO = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.TimeOfDay.Hours, DateTime.Now.TimeOfDay.Minutes, DateTime.Now.TimeOfDay.Seconds), HoraSalida_MesasO = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, horaS, DateTime.Now.TimeOfDay.Minutes, DateTime.Now.TimeOfDay.Seconds), Llegada_MesasO = true, Reservada = "Restaurante" }; db.MesasOcupadas.Add(mesasO); db.SaveChanges(); var codMesas = MesasOcupada.Lista(IdM, mesasO.Fecha_MesasO, db, mesasO.HoraIngreso_MesasO).Max(mo => mo.Cod_MesasO); Reserva.DetalleMenuCliente(IdC, "," + codMesas, "Restaurante-" + Ramdon.Numero(), db, SeparadorMenu.Menu(selectedMenu, DCantida), IdMesaO, TR); return(true); } }
public static int CMesa(DateTime fecha, DateTime hora, WebRestauranteContext db) { int i2 = 0; MesasOcupada.Desactivar(db); MesasOcupada.Desactivar2(db); var mesa = db.Mesas.ToList(); foreach (var item in mesa) { var MesasOcupada = db.MesasOcupadas.Where(mo => mo.Cod_Mesa == item.Cod_Mesa).ToList(); var MesasODate = MesasOcupada.Where(mo => (mo.Fecha_MesasO == fecha)).ToList(); var MesasOHora = MesasODate.Where(mo => (hora >= mo.HoraIngreso_MesasO) && (mo.HoraSalida_MesasO >= hora)).ToList(); var MesasOcupadas = MesasOHora.Where(mo => mo.Estado_MesasO == true).ToList(); if (MesasOcupadas.Count() == 0) { i2++; } } return(i2); }
// cuenta las mesas disponible asta la hora actual public static int CMesas(WebRestauranteContext db) { int i2 = 0; MesasOcupada.Desactivar(db); MesasOcupada.Desactivar2(db); var mesa = db.Mesas.ToList(); DateTime fecha = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); DateTime hora = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.TimeOfDay.Hours, DateTime.Now.TimeOfDay.Minutes, DateTime.Now.TimeOfDay.Seconds); foreach (var item in mesa) { var MesasOcupada = db.MesasOcupadas.Where(mo => mo.Cod_Mesa == item.Cod_Mesa).ToList(); var MesasODate = MesasOcupada.Where(mo => (mo.Fecha_MesasO == fecha)).ToList(); var MesasOHora = MesasODate.Where(mo => (hora >= mo.HoraIngreso_MesasO) /*&& (mo.HoraSalida_MesasO >= hora)*/).ToList(); var MesasOcupadas = MesasOHora.Where(mo => mo.Estado_MesasO == true).ToList(); if (MesasOcupadas.Count() == 0) { i2++; } } return(i2); }