public ActionResult CreateTimeTable(TimeTableVM aTimeTable) { ViewBag.Buildings = aTimeTableManager.GetAllBuilding(); ViewBag.Departments = anAcademicManager.GetAllDepartment(); ViewBag.Message = aTimeTableManager.Create(aTimeTable); return(View()); }
public List <ClassRoom> GetAllRoom(TimeTableVM timeTable) { Query = "SELECT * FROM Room Where BuildingId = @id"; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.Clear(); Command.Parameters.Add("id", SqlDbType.Int); Command.Parameters["id"].Value = timeTable.BuildingId; Reader = Command.ExecuteReader(); List <ClassRoom> classRooms = new List <ClassRoom>(); while (Reader.Read()) { ClassRoom room = new ClassRoom() { Id = (int)Reader["Id"], RoomNo = Reader["RoomNo"].ToString() }; classRooms.Add(room); } Reader.Close(); Connection.Close(); return(classRooms); }
public List <Course> GetAllCourses(TimeTableVM timeTable) { Query = "SELECT * FROM Course Where DepartmentId = @id"; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.Clear(); Command.Parameters.Add("id", SqlDbType.Int); Command.Parameters["id"].Value = timeTable.DepartmentId; Reader = Command.ExecuteReader(); List <Course> courses = new List <Course>(); while (Reader.Read()) { Course course = new Course() { Id = (int)Reader["Id"], CourseName = Reader["Name"].ToString() }; courses.Add(course); } Reader.Close(); Connection.Close(); return(courses); }
public ActionResult ViewTimeTable(TimeTableVM aTimeTableVm) { ViewBag.Semesters = anAcademicManager.GetAllSemester(); ViewBag.Departments = anAcademicManager.GetAllDepartment(); ViewBag.TimeTables = aTimeTableManager.GetSchedule(aTimeTableVm); return(View()); }
public List <TimeTableVM> IsScheduleExists(TimeTableVM aTimeTable) { Query = "SELECT * FROM TimeTable WHERE RoomId = @roomId AND Day = @day AND Allocate =@allocate "; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.Clear(); Command.Parameters.Add("roomId", SqlDbType.Int); Command.Parameters["roomId"].Value = aTimeTable.RoomId; Command.Parameters.Add("day", SqlDbType.VarChar); Command.Parameters["day"].Value = aTimeTable.Day; Command.Parameters.Add("allocate", SqlDbType.Bit); Command.Parameters["allocate"].Value = 1; Reader = Command.ExecuteReader(); List <TimeTableVM> timeTableVms = new List <TimeTableVM>(); if (Reader.Read()) { TimeTableVM timeTable = new TimeTableVM() { FromTime = Reader["FromTime"].ToString(), ToTime = Reader["ToTime"].ToString(), Allocate = Reader["Allocate"].ToString() }; timeTableVms.Add(timeTable); } Reader.Close(); Connection.Close(); return(timeTableVms); }
public async Task <IActionResult> TimeTable(string dateTime) { DateTime dateTime1; DateTime.TryParse(dateTime, out dateTime1); if (dateTime1 == null) { return(RedirectToAction("TimeTable", "Home", new { area = "Doctor" })); } DateTime StartTime = dateTime1.DayOfWeek == DayOfWeek.Monday ? dateTime1.SetHour(8).SetMinute(0).SetSecond(0) : dateTime1.Previous(DayOfWeek.Monday).SetHour(8).SetMinute(0).SetSecond(0); var user = await _userManager.GetUserAsync(HttpContext.User); var doctor = await _doctorService.GetDoctorById(user.Id); var visits = await _doctorService.GetAllDoctorVisitsByDoctorID(doctor.Id); var result = visits.Where(x => x.Date >= StartTime && x.Date < StartTime.AddDays(7)).ToList(); var dto = new TimeTableVM() { DateTime = StartTime, Visits = result.Select(x => new CurrentVisitOutDTO() { Id = x.Id, State = x.State, DateTime = x.Date }).ToList() }; return(View(dto)); }
public IEnumerable <TimeTableVM> FindAll(int schoolId, int classId, int sectionId) { var entities = this._dbContext.TimeTables.Where(tt => tt.ClassId == classId && tt.SectionId == sectionId).ToList().OrderBy(t => t.LectureId); List <TimeTableVM> vms = new List <TimeTableVM>(); var lectures = entities.Select(e => e.LectureId).Distinct(); foreach (var lecture in lectures) { var lecEntities = entities.Where(e => e.LectureId == lecture).ToList(); var vm = new TimeTableVM { Lecture = lecEntities.First().LectureDuration.Duration }; foreach (var le in lecEntities) { var days = le.Days.Split(','); foreach (var day in days) { switch (day) { case "ALL": vm.Monday = vm.Tuesday = vm.Wednessday = vm.Thursday = vm.Friday = le.Subject.SubjectName; break; case "M": case "MO": vm.Monday = le.Subject.SubjectName; break; case "T": case "TU": vm.Tuesday = le.Subject.SubjectName; break; case "W": case "WE": vm.Wednessday = le.Subject.SubjectName; break; case "TH": vm.Thursday = le.Subject.SubjectName; break; case "F": case "FR": vm.Friday = le.Subject.SubjectName; break; } } } vms.Add(vm); } return(vms); }
public ActionResult DownloadTimeTable(TimeTableVM timeTable) { ViewBag.Semesters = anAcademicManager.GetAllSemester(); ViewBag.Departments = anAcademicManager.GetAllDepartment(); TempData["deptId"] = timeTable.DepartmentId; int semId = timeTable.SemesterId; TempData["semesterId"] = semId; return(RedirectToAction("GenerateTimeTablePdf", "TimeTable")); return(View()); }
public int Create(TimeTableVM aTimeTable) { Query = "INSERT INTO TimeTable VALUES (@deptId, @courseId,@buildingId, @roomId, @from, @to, @allocate, @day)"; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.Clear(); string fromH = aTimeTable.FromTime; string fromHSub = fromH.Substring(0, 2); string fromM = aTimeTable.FromTime; string fromMSub = fromM.Substring(3, 2); int fromMin = Convert.ToInt32(fromHSub) * 60 + Convert.ToInt32(fromMSub); string toH = aTimeTable.ToTime; string toHSub = toH.Substring(0, 2); string toM = aTimeTable.ToTime; string toMSub = toM.Substring(3, 2); int toMin = Convert.ToInt32(toHSub) * 60 + Convert.ToInt32(toMSub); Command.Parameters.Add("deptId", SqlDbType.Int); Command.Parameters["deptId"].Value = aTimeTable.DepartmentId; Command.Parameters.Add("courseId", SqlDbType.Int); Command.Parameters["courseId"].Value = aTimeTable.CourseId; Command.Parameters.Add("buildingId", SqlDbType.Int); Command.Parameters["buildingId"].Value = aTimeTable.BuildingId; Command.Parameters.Add("roomId", SqlDbType.Int); Command.Parameters["roomId"].Value = aTimeTable.RoomId; Command.Parameters.Add("from", SqlDbType.Int); Command.Parameters["from"].Value = fromMin; Command.Parameters.Add("to", SqlDbType.Int); Command.Parameters["to"].Value = toMin; Command.Parameters.Add("allocate", SqlDbType.Bit); Command.Parameters["allocate"].Value = 1; Command.Parameters.Add("day", SqlDbType.VarChar); Command.Parameters["day"].Value = aTimeTable.Day; int isRowEffected = Command.ExecuteNonQuery(); Connection.Close(); return(isRowEffected); }
public ActionResult GenerateTimeTablePdf() { int deptId = (int)TempData["deptId"]; int semId = (int)TempData["semesterId"]; List <TimeTableVM> days = aTimeTableManager.GetDays(); List <Semester> semesters = (List <Semester>)anAcademicManager.GetAllSemester(); List <TimeTableVM> timeTables = new List <TimeTableVM>(); List <DepartmentScheduleVm> departmentSchedules = new List <DepartmentScheduleVm>(); foreach (Semester semester in semesters) { foreach (TimeTableVM day in days) { string Day = day.Day; TimeTableVM aTimeTableVm = new TimeTableVM(); aTimeTableVm.Schedules = aTimeTableManager.GetAllSchedule(deptId, semester, Day); aTimeTableVm.Day = Day; aTimeTableVm.Semester = semester.SemesterName; timeTables.Add(aTimeTableVm); } DepartmentScheduleVm aDepartmentScheduleVm = new DepartmentScheduleVm(); aDepartmentScheduleVm.Semester = semester.SemesterName; aDepartmentScheduleVm.DeptTimeTables = timeTables; departmentSchedules.Add(aDepartmentScheduleVm); } ViewBag.Days = days; ViewBag.TimeTables = timeTables; ViewBag.DepartmentShceduls = departmentSchedules; ViewBag.Semesters = semesters; return(new ViewAsPdf("GenerateTimeTablePdf", "TimeTable") { FileName = "Class Schedule.pdf" }); }
public List <TimeTableVM> GetDays() { Query = "SELECT Day FROM Day "; Command = new SqlCommand(Query, Connection); Connection.Open(); Reader = Command.ExecuteReader(); List <TimeTableVM> timeTableVms = new List <TimeTableVM>(); while (Reader.Read()) { TimeTableVM timeTable = new TimeTableVM() { Day = Reader["Day"].ToString() }; timeTableVms.Add(timeTable); } Reader.Close(); Connection.Close(); return(timeTableVms); }
public List <TimeTableVM> GetSchedule(TimeTableVM aTimeTableVm) { Query = "SELECT c.Name CourseName, c.Code CourseCode,r.RoomNo , b.BuildingName, tt.FromTime, tt.ToTime" + " FROM TimeTable tt join Room r on r.Id = tt.RoomId " + "JOIN Building b on b.Id = tt.BuildingId " + "join course c on c.Id = tt.CourseId " + "where tt.DepartmentId = @deptId and c.SemesterId = @semId and Day = @day "; Command = new SqlCommand(Query, Connection); Connection.Open(); Command.Parameters.Clear(); Command.Parameters.Add("deptId", SqlDbType.Int); Command.Parameters["deptId"].Value = aTimeTableVm.DepartmentId; Command.Parameters.Add("semId", SqlDbType.Int); Command.Parameters["semId"].Value = aTimeTableVm.SemesterId; Command.Parameters.Add("day", SqlDbType.VarChar); Command.Parameters["day"].Value = aTimeTableVm.Day; Reader = Command.ExecuteReader(); List <TimeTableVM> timeTables = new List <TimeTableVM>(); while (Reader.Read()) { string sFrom = null; string sTo = null; int fHr; int tHr; int from = Convert.ToInt32(Reader["FromTime"]); if (from > 719) { sFrom = "PM"; } else { sFrom = "AM"; } int to = Convert.ToInt32(Reader["ToTime"]); if (to > 719) { sTo = "PM"; } else { sTo = "AM"; } string FromMin = Convert.ToString(from % 60); if (FromMin.Length == 1) { FromMin = FromMin + "0"; } int FromHr = from / 60; if (FromHr > 12) { fHr = FromHr - 12; } else { fHr = FromHr; } string ToMin = Convert.ToString(to % 60); if (ToMin.Length == 1) { ToMin = ToMin + "0"; } int ToHr = to / 60; if (ToHr > 12) { tHr = ToHr - 12; } else { tHr = ToHr; } string fTime = fHr + ":" + FromMin + " " + sFrom; string tTime = tHr + ":" + ToMin + " " + sTo; TimeTableVM timeTable = new TimeTableVM() { //Id = (int)Reader["Id"], RoomNo = Reader["RoomNo"].ToString(), CourseName = Reader["CourseName"].ToString(), CourseCode = Reader["CourseCode"].ToString(), BuildingName = Reader["BuildingName"].ToString(), Time = fTime + "-" + tTime }; timeTables.Add(timeTable); } Reader.Close(); Connection.Close(); return(timeTables); }
public List <ClassRoom> GetAllRoom(TimeTableVM timeTable) { return(aTimeTableGateway.GetAllRoom(timeTable)); }
public JsonResult GetCourseByDepartmentId(TimeTableVM timeTable) { var courses = aTimeTableManager.GetAllCourses(timeTable); return(Json(courses)); }
public JsonResult GetRoomByBuildingId(TimeTableVM timeTable) { var rooms = aTimeTableManager.GetAllRoom(timeTable); return(Json(rooms)); }
public List <TimeTableVM> GetSchedule(TimeTableVM aTimeTableVm) { return(aTimeTableGateway.GetSchedule(aTimeTableVm)); }
public List <Course> GetAllCourses(TimeTableVM timeTable) { return(aTimeTableGateway.GetAllCourses(timeTable)); }
public string Create(TimeTableVM aTimeTable) { string fromH = aTimeTable.FromTime; string fromHSub = fromH.Substring(0, 2); string fromM = aTimeTable.FromTime; string fromMSub = fromM.Substring(3, 2); int fromMin = Convert.ToInt32(fromHSub) * 60 + Convert.ToInt32(fromMSub); string toH = aTimeTable.ToTime; string toHSub = toH.Substring(0, 2); string toM = aTimeTable.ToTime; string toMSub = toM.Substring(3, 2); int toMin = Convert.ToInt32(toHSub) * 60 + Convert.ToInt32(toMSub); List <TimeTableVM> classrooms = aTimeTableGateway.IsScheduleExists(aTimeTable); if (classrooms.Count > 0) { foreach (TimeTableVM allocate in classrooms) { int from = Convert.ToInt32(allocate.FromTime); int to = Convert.ToInt32(allocate.ToTime); string allocation = allocate.Allocate; if (fromMin >= from && fromMin < to) { return("Schedule allready allocated"); } else if (toMin > from && toMin <= to) { return("Schedule allready allocated"); } else if (fromMin <= from && toMin >= to) { return("Schedule allready allocated"); } else { //Save(allocateClassroom); int isRowAffected = aTimeTableGateway.Create(aTimeTable); if (isRowAffected > 0) { return("TimeTable created successfully!"); } else { return("Failed to create timetable.."); } } } return("TimeTable created successfully!"); } else { int isRowAffected = aTimeTableGateway.Create(aTimeTable); if (isRowAffected > 0) { return("TimeTable created successfully!"); } else { return("Failed to create timetable.."); } } }