private void mainTTListview_ItemActivate(object sender, EventArgs e) { var moduleFullName = mainTTListview.SelectedItems[0].SubItems[0].Text; SavingAndReading data = new SavingAndReading(); data.ReadTermTimetableFile(); details_dataGridView1.Rows.Clear(); foreach (WebpageTermTimetable e1 in SystemList.TermTimetableList) { if (e1.ModuleFullName == moduleFullName && e1.ModuleShortName.Last() != '1') { ListViewItem item = new ListViewItem(); var shortName = e1.ModuleShortName; var roomName = e1.RoomName; var startHour = e1.StartHour; var endHour = e1.EndHour; var sessionProperty = e1.SessinonProperty; details_dataGridView1.Rows.Add(shortName, roomName, startHour, endHour, sessionProperty); } } }
public void prodceLecturer() { string docName = "TimetableTemplate.xlsx"; int position = 0, hour = 1, count = 0; SavingAndReading data = new SavingAndReading(); data.ReadSgFile(); data.ReadTemplateFile(); data.ReadTermTimetableFile(); foreach (Lecturer e1 in SystemList.LecturerList) { var workbook = new XLWorkbook(docName); var ws = workbook.Worksheet(1); foreach (WebpageTermTimetable e2 in SystemList.TermTimetableList) { if (e1.Id == e2.LecturerID) { var subHearder = e1.FirstName + e1.LastName; var moduleFullName = e2.ModuleFullName; var moduleShortName = e2.ModuleShortName.Substring(2); var roomName = e2.RoomName; var lecturerName = findLecturerName(e2.LecturerID); hour = e2.EndHour - e2.StartHour; insertTextToSubHeader(subHearder, ws); var startPosition = string.Format("{0}{1}", (char)(e2.StartHour - 9 + 66), (e2.Day + 4)); var endPosition = string.Format("{0}{1}", (char)(e2.StartHour - 9 + 66 + hour - 1), (e2.Day + 4)); //if a module over one hour then merge the cells if (hour > 1) { mergeCells(startPosition, endPosition, ws); insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } else { insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } } } createFolder(); string path = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Timetable System"); workbook.SaveAs(path + "\\LecturerTimetable\\" + e1.FirstName + e1.LastName + ".xlsx"); } }
private void changeSessionProperty(string ModuleShortName, string sessionProperty) { SavingAndReading data = new SavingAndReading(); data.ReadTermTimetableFile(); foreach (WebpageTermTimetable e1 in SystemList.TermTimetableList) { if (e1.ModuleShortName == ModuleShortName) { e1.SessinonProperty = sessionProperty; } } data.WriteTermTimetable(); }
public WebpageTermTimetable returnAnotherSameSession(WebpageTermTimetable abandonSession) { SavingAndReading data = new SavingAndReading(); data.ReadTermTimetableFile(); foreach (WebpageTermTimetable e1 in SystemList.TermTimetableList) { //if(abandonSession != e1) { if (e1.ModuleShortName != abandonSession.ModuleShortName && e1.ModuleFullName == abandonSession.ModuleFullName && e1.SessinonProperty == abandonSession.SessinonProperty) { return(e1); } } } return(null); }
private void displayModuleName() { SavingAndReading data = new SavingAndReading(); data.ReadTermTimetableFile(); foreach (WebpageTermTimetable e1 in SystemList.TermTimetableList) { if (e1.ModuleShortName.Last() == '1') { ListViewItem item = new ListViewItem(); //var moduleFullName = e1.ModuleFullName; item.Text = e1.ModuleFullName; mainTTListview.Items.Add(item); } } }
private void lecturerListView_ItemActivate(object sender, EventArgs e) { SavingAndReading data = new SavingAndReading(); data.ReadRoomFile(data.RoomFilename); data.ReadTermTimetableFile(); data.ReadLecturerFile(); removeControls(); //collect the modules a lecuter is teaching var id = lecturerListView.SelectedItems[0].SubItems[0].Text; //List<Module> tempModuleList = new List<Module>(); foreach (WebpageTermTimetable e1 in SystemList.TermTimetableList) { if (e1.LecturerID.ToString() == id) { var moduleShortName = e1.ModuleShortName.Substring(3); var roomName = e1.RoomName; var row = e1.Day + 1; var column = e1.StartHour - 8; var columnspan = e1.EndHour - e1.StartHour; Label newLabel = new Label(); newLabel.Dock = DockStyle.Fill; newLabel.Text = roomName + "\n" + moduleShortName + "\n"; newLabel.TextAlign = ContentAlignment.MiddleCenter; timetableLayoutPanel.Controls.Add(newLabel); timetableLayoutPanel.SetCellPosition(newLabel, new TableLayoutPanelCellPosition(column, row)); if (columnspan > 1) { timetableLayoutPanel.SetColumnSpan(newLabel, columnspan); } } } }
public void produceStudentTimetable(string yearX, string yearY, int degree, int grade, int term) { string docName = "TimetableTemplate.xlsx"; int position = 0, hour = 1, count = 0; SavingAndReading data = new SavingAndReading(); data.ReadSgFile(); data.ReadTemplateFile(); data.ReadTermTimetableFile(); //collect tempstudent List <Student> tempStudentList = new List <Student>(); foreach (Student e1 in SystemList.StudentList) { string x = e1.Id.ToString()[0].ToString(); string y = e1.Id.ToString()[1].ToString(); if (x == yearX && y == yearY && e1.Degree == degree && e1.Grade == grade && e1.Term == term) { tempStudentList.Add(e1); } } foreach (Student e1 in tempStudentList) { var workbook = new XLWorkbook(docName); var ws = workbook.Worksheet(1); foreach (TTTemplateList e2 in SystemList.TemplateList) { if (e2.StudentList.Exists(r => r.Id == e1.Id)) { foreach (WebpageTermTimetable e3 in e2.TttemPlateList) { var subHearder = e1.FirstName + e1.LastName; var moduleFullName = e3.ModuleFullName; var moduleShortName = e3.ModuleShortName.Substring(2); var roomName = e3.RoomName; var lecturerName = findLecturerName(e3.LecturerID); hour = e3.EndHour - e3.StartHour; insertTextToSubHeader(subHearder, ws); var startPosition = string.Format("{0}{1}", (char)(e3.StartHour - 9 + 66), (e3.Day + 4)); var endPosition = string.Format("{0}{1}", (char)(e3.StartHour - 9 + 66 + hour - 1), (e3.Day + 4)); //if a module over one hour then merge the cells if (hour > 1) { mergeCells(startPosition, endPosition, ws); insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } else { insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } } } } createFolder(); string path = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Timetable System"); workbook.SaveAs(path + "\\StudentTimetable\\" + e1.FirstName + e1.LastName + ".xlsx"); } foreach (Student e1 in tempStudentList) { string path = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Timetable System"); docName = path + "\\StudentTimetable\\" + e1.FirstName + e1.LastName + ".xlsx"; var workbook = new XLWorkbook(docName); var ws = workbook.Worksheet(1); foreach (SessionGroups e2 in SystemList.SessionGroupList) { foreach (Student e3 in e2.StudentGroup) { if (e3.Id == e1.Id) { var moduleFullName = e2.NonLectureSession.ModuleFullName; var moduleShortName = e2.NonLectureSession.ModuleShortName.Substring(2); var roomName = e2.NonLectureSession.RoomName; var lecturerName = findLecturerName(e2.NonLectureSession.LecturerID); hour = e2.NonLectureSession.EndHour - e2.NonLectureSession.StartHour; var startPosition = string.Format("{0}{1}", (char)(e2.NonLectureSession.StartHour - 9 + 66), (e2.NonLectureSession.Day + 4)); var endPosition = string.Format("{0}{1}", (char)(e2.NonLectureSession.StartHour - 9 + 66 + hour - 1), (e2.NonLectureSession.Day + 4)); //if a module over one hour then merge the cells if (hour > 1) { mergeCells(startPosition, endPosition, ws); insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } else { insertDetailsToCells(roomName, moduleShortName, lecturerName, ws, startPosition, endPosition); } } } } workbook.Save(); } }
private void roomListView_ItemActivate(object sender, EventArgs e) { SavingAndReading data = new SavingAndReading(); data.ReadRoomFile(data.RoomFilename); data.ReadTermTimetableFile(); data.ReadLecturerFile(); Room newRoom = new Room(); newRoom.RoomName = roomListView.SelectedItems[0].SubItems[0].Text; //timetableLayoutPanel.Controls.Clear(); removeControls(); //drawingTimetable(); foreach (Room e1 in SystemList.RoomsList) { if (e1.RoomName == newRoom.RoomName) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 9; j++) { if (e1.TtDimensionArray[i][j].HasSubject == true) { var position = e1.TtDimensionArray[i][j].TermTTListPosition; var ttDetails = SystemList.TermTimetableList[position]; var moduleFullName = ttDetails.ModuleFullName; var moduleShortName = ttDetails.ModuleShortName.Substring(3, ttDetails.ModuleShortName.Count() - 3); var roomName = ttDetails.RoomName; var lecturerName = findLecturerName(ttDetails.LecturerID); var row = ttDetails.Day + 1; var column = ttDetails.StartHour - 8; var columnspan = ttDetails.EndHour - ttDetails.StartHour; Label newLabel = new Label(); newLabel.Dock = DockStyle.Fill; newLabel.Text = newRoom.RoomName + "\n" + moduleShortName + "\n" + lecturerName; newLabel.TextAlign = ContentAlignment.MiddleCenter; timetableLayoutPanel.Controls.Add(newLabel); timetableLayoutPanel.SetCellPosition(newLabel, new TableLayoutPanelCellPosition(column, row)); if (columnspan > 1) { timetableLayoutPanel.SetColumnSpan(newLabel, columnspan); } } } } } } //Label newLabel = new Label(); //newLabel.Dock = DockStyle.Fill; //newLabel.Text = newRoom.RoomName; //timetableLayoutPanel.Controls.Add(newLabel); //timetableLayoutPanel.SetCellPosition(newLabel, new TableLayoutPanelCellPosition(1, 1)); //timetableLayoutPanel.SetColumnSpan(newLabel, 2); //timetableLayoutPanel.Controls.Add(new Label() {Text = "asdf", Dock = DockStyle.Fill }, 1,1); //timetableLayoutPanel.GetCellPosition; //timetableLayoutPanel.GetCellPosition() }