static void Main(string[] args) { //Al descomentar la siguiente línea, habrá un error de compilación. No se pueden crear objetos de clases abstractas. //Space newSpace = new Space("Sala de juntas", 30); //HotDesk es una clase final. No se puede heredar, pero sí instanciar. HotDesk single = new HotDesk("Puesto 5"); //A pesar de que el método getName fue definido en la clase base (Space), se puede acceder sin ningún problema. Console.WriteLine("Nombre del puesto: " + single.Name); //Cualquier objeto de una clase que implemente ISchedulable se puede añadir a la lista. List <ISchedulable> list = new List <ISchedulable>(); list.Add(new MeetingRoom("Sala creativa", 6)); list.Add(new Auditorium("Auditorio Múltiple", 30)); list.Add(new Speaker(500, true)); list.Add(new VideoBeam("SVGA")); DateTime start = DateTime.Now; DateTime end = start.AddDays(1); foreach (ISchedulable item in list) { String className = item.GetType().Name; bool isAvailable = item.IsAvailable(start, end); Console.WriteLine(className + " is available: " + isAvailable); if (item is MeetingRoom) { Console.WriteLine("Meeting room " + ((MeetingRoom)item).CalculatePricePerDay()); } } }
public ActionResult DeleteConfirmed(int id) { HotDesk hotDesk = db.HotDesks.Find(id); db.HotDesks.Remove(hotDesk); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,EmployeeId,CompanyId,CarNumber,Email,Date,LogInTime,LogOutTime,CurrentStatus")] HotDesk hotDesk) { if (ModelState.IsValid) { db.Entry(hotDesk).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View(hotDesk)); }
// GET: HotDesks/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } HotDesk hotDesk = db.HotDesks.Find(id); if (hotDesk == null) { return(HttpNotFound()); } return(View(hotDesk)); }
// GET: HotDesks/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } HotDesk hotDesk = db.HotDesks.Find(id); if (hotDesk == null) { return(HttpNotFound()); } ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View(hotDesk)); }
public ActionResult Create([Bind(Include = "Id,EmployeeId,CompanyId,CarNumber,Email,Date,LogInTime,LogOutTime,CurrentStatus")] HotDesk hotDesk, string pass, string type) { int EId = (hotDesk.EmployeeId - 100) ?? 0; var user = db.Employees.FirstOrDefault(x => x.Id == EId && x.Password == pass); if (user == null) { ViewBag.Message = "Wrong User Id or Password"; ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View()); } DateTime d = DateTime.Now; var data = db.HotDesks.ToArray().LastOrDefault(x => x.EmployeeId == EId); //-------------------------Log In------------------------------------------------------ if (type == "1") { if (data == null || data.CurrentStatus == "LogOut") { hotDesk.CurrentStatus = "LogIn"; hotDesk.LogInTime = d; hotDesk.EmployeeId = EId; db.HotDesks.Add(hotDesk); db.SaveChanges(); ViewBag.Message = "LogIn"; ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View()); } else { ViewBag.Message = "Sorry your are already Signed In"; ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View()); } } //----------------------------Log Out------------------------------------------------------ else { if (data == null || data.CurrentStatus == "LogOut") { ViewBag.Message = "Sorry you are not sign in"; ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View()); } var data1 = db.HotDesks.ToArray().LastOrDefault(x => x.EmployeeId == EId); HotDesk hotDesk1 = db.HotDesks.Find(data1.Id); if (ModelState.IsValid) { hotDesk1.LogOutTime = d; hotDesk1.CurrentStatus = "LogOut"; db.Entry(hotDesk1).State = EntityState.Modified; db.SaveChanges(); ViewBag.Message = "LogOut"; ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View()); } ViewBag.CompanyId = new SelectList(db.Companies, "Id", "Name", hotDesk.CompanyId); ViewBag.EmployeeId = new SelectList(db.Employees, "Id", "Name", hotDesk.EmployeeId); return(View(hotDesk)); } }