public bool CheckFromTimeGreaterToTime(RoomAlloted room) { DateTime fromInsertDayTime = DateTime.ParseExact(room.FormTime(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan fromTime = fromInsertDayTime.TimeOfDay; DateTime toInsertDayTime = DateTime.ParseExact(room.EndTime(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan toTime = toInsertDayTime.TimeOfDay; if (toTime > fromTime) { return(true); } else { return(false); } }
//To save data in AllocateRoom table// public bool AllocateRoom(RoomAlloted allotedroom) { AllotedRoom alloted = new AllotedRoom(); alloted.Assign = true; alloted.depCode = allotedroom.depCode; alloted.CourseID = allotedroom.CourseID; alloted.dayID = allotedroom.dayID; alloted.roomID = allotedroom.roomID; alloted.fromTime = allotedroom.FormTime(); alloted.toTime = allotedroom.EndTime(); dbContext.AllotedRooms.Add(alloted); int rowaffected = dbContext.SaveChanges(); return(rowaffected > 0); }
//To check time overlapping when aalocating room for class// public bool CheckTimeOverlapping(RoomAlloted room) { DateTime fromInsertDaytime = DateTime.ParseExact(room.FormTime(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan fromInsertTime = fromInsertDaytime.TimeOfDay; DateTime toInsertDayTime = DateTime.ParseExact(room.EndTime(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan toInsertTime = toInsertDayTime.TimeOfDay; bool checkTime = false; var allotedTime = dbContext.AllotedRooms.Where(x => x.roomID == room.roomID && x.dayID == room.dayID).Select(x => new { fromTime = x.fromTime, toTime = x.toTime }); foreach (var time in allotedTime) { DateTime fromDayTime = DateTime.ParseExact(time.fromTime.ToString(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan fromTime = fromDayTime.TimeOfDay; DateTime toIDayTime = DateTime.ParseExact(time.toTime.ToString(), "hh:mm tt", CultureInfo.InvariantCulture); TimeSpan toTime = toIDayTime.TimeOfDay; if (fromInsertTime >= fromTime && fromInsertTime < toTime) { checkTime = true; break; } else if (fromTime > toInsertTime && toInsertTime >= toTime) { checkTime = true; break; } else { checkTime = false; } } return(checkTime); }
public ActionResult AllocateRoom(RoomAlloted allotedroom) { if (ModelState.IsValid) { if (!roomManager.CheckTimeOverlapping(allotedroom)) { if (roomManager.CheckFromTimeGreaterToTime(allotedroom)) { bool IsAllocated = roomManager.AllocateRoom(allotedroom); if (IsAllocated) { ViewBag.Message = "Class room allocated successfully"; } else { ViewBag.errMessage = "Class room failed allocate"; } } else { ViewBag.errMessage = "Starting time is greater than end Time"; } } else { ViewBag.errMessage = "Class room is already scheduled"; } ModelState.Clear(); } ViewBag.days = new SelectList(roomManager.GetAllDay(), "dayID", "daysName"); ViewBag.departments = new SelectList(departmentManager.GetAllDepartment(), "depCode", "depName"); ViewBag.rooms = new SelectList(roomManager.GetAllRoom(), "roomID", "roomName"); return(View()); }
public bool CheckTimeOverlapping(RoomAlloted room) { return(roomGetway.CheckTimeOverlapping(room)); }
public bool AllocateRoom(RoomAlloted allotedroom) { return(roomGetway.AllocateRoom(allotedroom)); }