public List <ClassScheduleFinal> GenerateFinalClassScheduleByDeptId(int deptId) { List <ClassScheduleTemp> classScheduleTemps = GenerateTemporaryClassScheduleByDeptId(deptId).OrderBy(a => a.CourseCode).ThenBy(a => DayIndex(a.Day)).ThenBy(a => a.From).ToList(); //List<ClassScheduleTemp> classScheduleTemps = GenerateTemporaryClassScheduleByDeptId(deptId).OrderBy(a => a.CourseCode).ToList(); List <ClassScheduleFinal> classScheduleFinals = new List <ClassScheduleFinal>(); if (classScheduleTemps.Count == 0) { return(classScheduleFinals); } string code, name, info, prev; info = ""; code = classScheduleTemps[0].CourseCode; name = classScheduleTemps[0].CourseName; info += GenerateInfoString(classScheduleTemps[0]); prev = code; for (int i = 1; i < classScheduleTemps.Count; i++) { ClassScheduleTemp aClassScheduleTemp = classScheduleTemps[i]; if (aClassScheduleTemp.CourseCode != prev) { ClassScheduleFinal aClassScheduleFinal = new ClassScheduleFinal(); aClassScheduleFinal.CourseCode = code; aClassScheduleFinal.CourseName = name; if (info == "") { aClassScheduleFinal.Info = "not scheduled yet"; } else { aClassScheduleFinal.Info = info; } classScheduleFinals.Add(aClassScheduleFinal); code = aClassScheduleTemp.CourseCode; name = aClassScheduleTemp.CourseName; info = ""; } info += GenerateInfoString(aClassScheduleTemp); prev = aClassScheduleTemp.CourseCode; } ClassScheduleFinal aClassScheduleFinal2 = new ClassScheduleFinal(); aClassScheduleFinal2.CourseCode = code; aClassScheduleFinal2.CourseName = name; if (info == "") { aClassScheduleFinal2.Info = "not scheduled yet"; } else { aClassScheduleFinal2.Info = info; } classScheduleFinals.Add(aClassScheduleFinal2); return(classScheduleFinals); }
public string GenerateInfoString(ClassScheduleTemp aClassScheduleTemp) { string str = ""; if (aClassScheduleTemp.Valid != "true") { return(str); } str += "Room No.: " + aClassScheduleTemp.RoomNo + ", Day : " + aClassScheduleTemp.Day + ", "; str += " Time : " + GetTimeString(aClassScheduleTemp.From); str += " - " + GetTimeString(aClassScheduleTemp.To); str += ";<br/><br/>"; return(str); }
public List <ClassScheduleTemp> GenerateTemporaryClassScheduleByDeptId(int deptId) { List <ClassScheduleTemp> classScheduleTemps = new List <ClassScheduleTemp>(); Query = "Select * From ClassScheduleView Where DeptId = '" + deptId + "'"; Command = new SqlCommand(Query, Connection); Connection.Open(); Reader = Command.ExecuteReader(); while (Reader.Read()) { ClassScheduleTemp aClassScheduleTemp = new ClassScheduleTemp(); aClassScheduleTemp.CourseCode = Reader["CourseCode"].ToString(); aClassScheduleTemp.CourseName = Reader["CourseName"].ToString(); aClassScheduleTemp.Day = Reader["Day"].ToString(); aClassScheduleTemp.RoomNo = Reader["RoomNo"].ToString(); if (Reader["FromTime"] != System.DBNull.Value) { aClassScheduleTemp.From = (int)Reader["FromTime"]; } else { aClassScheduleTemp.From = -1; } if (Reader["ToTime"] != System.DBNull.Value) { aClassScheduleTemp.To = (int)Reader["ToTime"]; } else { aClassScheduleTemp.To = -1; } aClassScheduleTemp.Valid = Reader["Valid"].ToString(); classScheduleTemps.Add(aClassScheduleTemp); } Reader.Close(); Connection.Close(); return(classScheduleTemps); }