public void Restore(int ID) { foreach (Hall x in (db.CinemaSet.Find(ID)).Hall) {//восстанавливаем все кинотеатры данного фильма HallRepository ha = new HallRepository(db); ha.Restore(x.ID); } db.CinemaSet.Find((db.CinemaSet.Find(ID)).ID).Deleted = false; db.SaveChanges(); }
public DataManager() { cont = new Model1Container(); BR = new BookingRepository(cont); CShR = new CashierRepository(cont); CR = new CinemaRepository(cont); FR = new FilmRepository(cont); HR = new HallRepository(cont); SR = new SeatRepository(cont); SsR = new SessionRepository(cont); TR = new TicketRepository(cont); }
public void Delete(int ID) { List <Hall> h = (db.CinemaSet.Find(ID)).Hall.ToList(); foreach (Hall x in h) {//удаляем все кинотеатры данного фильма HallRepository ha = new HallRepository(db); ha.Delete(x.ID); } List <Cashier> c = (db.CinemaSet.Find(ID)).Сashier.ToList(); foreach (Cashier x in c) { db.CashierSet.Remove(x); } db.CinemaSet.Find(ID).Deleted = true; db.SaveChanges(); }
/// <summary> /// Многопараметрический поиск Сеанса /// </summary> /// <param name="f"></param> /// <param name="ent"></param> /// <param name="atr"></param> /// <param name="sign"></param> /// <param name="eqv"></param> /// <param name="eqv2"></param> /// <returns></returns> public List <Session> Find(List <Session> f, string ent, string atr, string sign, string eqv, string eqv2) { List <Session> result = new List <Session>(); switch (ent) { case "Фильм": { FilmRepository fil = new FilmRepository(db); List <Film> cin = fil.Find(db.FilmSet.ToList(), atr, sign, eqv, eqv2); List <Session> cash = new List <Session>(); foreach (Film x in cin) { cash.AddRange(x.Session); } result = (from d in f select d).Intersect(from a in cash select a).ToList(); break; } case "Сеанс": { switch (atr) { case "Дата": { switch (sign) { case "=": { result = (from d in f where d.Time.Date == DateTime.Parse(eqv).Date select d).ToList(); break; } case "!=": { result = (from d in f where d.Time.Date != DateTime.Parse(eqv).Date select d).ToList(); break; } case ">": { result = (from d in f where d.Time.Date > DateTime.Parse(eqv).Date select d).ToList(); break; } case "<": { result = (from d in f where d.Time.Date < DateTime.Parse(eqv).Date select d).ToList(); break; } case ">=": { result = (from d in f where d.Time.Date >= DateTime.Parse(eqv).Date select d).ToList(); break; } case "<=": { result = (from d in f where d.Time.Date <= DateTime.Parse(eqv).Date select d).ToList(); break; } } break; } case "Цена": { switch (sign) { case "=": { result = (from d in f where d.Price == int.Parse(eqv) select d).ToList(); break; } case "!=": { result = (from d in f where d.Price != int.Parse(eqv) select d).ToList(); break; } case ">": { result = (from d in f where d.Price > int.Parse(eqv) select d).ToList(); break; } case "<": { result = (from d in f where d.Price < int.Parse(eqv) select d).ToList(); break; } case ">=": { result = (from d in f where d.Price >= int.Parse(eqv) select d).ToList(); break; } case "<=": { result = (from d in f where d.Price <= int.Parse(eqv) select d).ToList(); break; } } break; } case "Время": { switch (sign) { case "=": { result = (from d in f where d.Time.TimeOfDay == TimeSpan.Parse(eqv) select d).ToList(); break; } case "!=": { result = (from d in f where d.Time.TimeOfDay != TimeSpan.Parse(eqv) select d).ToList(); break; } case ">": { result = (from d in f where d.Time.TimeOfDay > TimeSpan.Parse(eqv) select d).ToList(); break; } case "<": { result = (from d in f where d.Time.TimeOfDay < TimeSpan.Parse(eqv) select d).ToList(); break; } case ">=": { result = (from d in f where d.Time.TimeOfDay >= TimeSpan.Parse(eqv) select d).ToList(); break; } case "<=": { result = (from d in f where d.Time.TimeOfDay <= TimeSpan.Parse(eqv) select d).ToList(); break; } } break; } } break; } default: { HallRepository c = new HallRepository(db); List <Hall> cin = c.Search(db.HallSet.ToList(), ent, atr, sign, eqv, eqv2); List <Session> cash = new List <Session>(); foreach (Hall x in cin) { cash.AddRange(x.Session); } result = (from d in f select d).Intersect(from a in cash select a).ToList(); break; } } return(result); }