public void clear() { DBFirstName.Clear(); DBSurname.Clear(); DBEmail.Clear(); DBPhone.Clear(); DBAddress1.Clear(); DBAddress2.Clear(); DBCity.Clear(); DBCounty.Clear(); DBCourse.Clear(); txtStudID.Clear(); }
public static bool IsEmptyDB() { int UserSize = DBUser.ReadUsers().Count(); int AssignmentSize = DBAssignment.ReadAssignments().Count(); int StudentSize = DBStudent.ReadStudents().Count(); int CourseSize = DBCourse.ReadCourses().Count(); int TrainerSize = DBTrainer.ReadTrainers().Count(); bool basicEntities = UserSize == 0 && AssignmentSize == 0 && StudentSize == 0 && CourseSize == 0 && TrainerSize == 0; return(basicEntities); }
public void Read() { ICollection <Course> courses = DBCourse.ReadCourses(); if (courses.Count() == 0) { ConsoleUI.ShowLine("No courses yet"); } else { foreach (Course c in courses) { ConsoleUI.ShowLine(c); } } ConsoleUI.ReadKey(); ConsoleUI.Clear(); }
public static void AutoGenerate() { ConsoleUI.ShowLine("Creating headmaster with username: '******' and password: '******'"); string encryptedPassword = CryptoManager.EncryptPassword("12345", out string encryptedSalt); try { int headMasterSaved = DBUser.CreateUser("hm", encryptedPassword, encryptedSalt, "headmaster", out int id); if (headMasterSaved == 0) { throw new Exception("head master NOT saved"); } } catch (Exception e) { ConsoleUI.ShowLine(e.Message); ConsoleUI.ReadKey(); return; } ConsoleUI.ShowLine("head master created"); ConsoleUI.ShowLine("creating students"); List <int> studentIDs = new List <int>(); List <int> trainerIDs = new List <int>(); List <int> assignmentIDs = new List <int>(); List <int> courseIDs = new List <int>(); int studentID; string studentUsername; string plainTextPassword; string studentFName; string studentLName; // 3 students for (int i = 0; i < 3; i++) { studentUsername = "******" + i; plainTextPassword = "******" + i; encryptedPassword = CryptoManager.EncryptPassword(plainTextPassword, out encryptedSalt); DBUser.CreateUser(studentUsername, encryptedPassword, encryptedSalt, "student", out studentID); ConsoleUI.ShowLine($"student user created u:{studentUsername} p:{plainTextPassword}"); studentFName = "studentFirstName" + i; studentLName = "studentLastName" + i; DBStudent.CreateStudent(studentFName, studentLName, new DateTime(2000, 1, 1), 20000, studentID); ConsoleUI.ShowLine($"student {studentFName} {studentLName} created"); studentIDs.Add(studentID); ConsoleUI.ChangeLine(); } int trainerID; string trainerUsername; string trainerFName; string trainerLName; string trainerSubject; // 2 trainers for (int i = 0; i < 2; i++) { trainerUsername = "******" + i; plainTextPassword = "******" + i; encryptedPassword = CryptoManager.EncryptPassword(plainTextPassword, out encryptedSalt); DBUser.CreateUser(trainerUsername, encryptedPassword, encryptedSalt, "trainer", out trainerID); ConsoleUI.ShowLine($"trainer user created u:{trainerUsername} p:{plainTextPassword}"); trainerFName = "trainerFirstName" + i; trainerLName = "trainerLastName" + i; trainerSubject = "trainerSubject" + i; DBTrainer.CreateTrainer(trainerFName, trainerLName, trainerSubject, trainerID); ConsoleUI.ShowLine($"trainer {trainerFName} {trainerLName} created"); trainerIDs.Add(trainerID); ConsoleUI.ChangeLine(); } string title; string description; // 2 assignments for (int i = 0; i < 2; i++) { title = "assignmentTitle" + i; description = "assignmentDescription" + i; DBAssignment.CreateAssignment(title, description, new DateTime(2019, 1, 1), 100, 100, out int assignmentID); assignmentIDs.Add(assignmentID); ConsoleUI.ShowLine($"assignment {title} with id: {assignmentID} created"); ConsoleUI.ChangeLine(); } // 3 courses for (int i = 0; i < 3; i++) { title = "courseTitle" + i; DBCourse.CreateCourse(title, "C#", "Full time", new DateTime(2019, 1, 1), new DateTime(2019, 2, 2), out int courseID); courseIDs.Add(courseID); ConsoleUI.ShowLine($"course {title} with id: {courseID} created"); ConsoleUI.ChangeLine(); } AssignmentPerStudentManager a = new AssignmentPerStudentManager(); //assignments-courses //all assignments to course 1 #region DBAssignmentsPerCourse.CreateAssignmentPerCourse(assignmentIDs[0], courseIDs[0]); a.CreateFromNewAssignment(assignmentIDs[0], courseIDs[0]); DBAssignmentsPerCourse.CreateAssignmentPerCourse(assignmentIDs[1], courseIDs[0]); a.CreateFromNewAssignment(assignmentIDs[1], courseIDs[0]); #endregion //first 3 assignments to course 1 #region DBAssignmentsPerCourse.CreateAssignmentPerCourse(assignmentIDs[0], courseIDs[1]); a.CreateFromNewAssignment(assignmentIDs[0], courseIDs[1]); DBAssignmentsPerCourse.CreateAssignmentPerCourse(assignmentIDs[1], courseIDs[1]); a.CreateFromNewAssignment(assignmentIDs[1], courseIDs[1]); #endregion //student courses //all students to course 1 #region DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[0], courseIDs[0]); a.CreateFromNewStudent(studentIDs[0], courseIDs[0]); DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[1], courseIDs[0]); a.CreateFromNewStudent(studentIDs[1], courseIDs[0]); DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[2], courseIDs[0]); a.CreateFromNewStudent(studentIDs[2], courseIDs[0]); #endregion // 2 students to course 2 #region DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[0], courseIDs[1]); a.CreateFromNewStudent(studentIDs[0], courseIDs[1]); DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[1], courseIDs[1]); a.CreateFromNewStudent(studentIDs[1], courseIDs[1]); #endregion // 2 courses to student 1 #region DBStudentsPerCourse.CreateStudentPerCourse(studentIDs[0], courseIDs[2]); a.CreateFromNewStudent(studentIDs[0], courseIDs[2]); #endregion //trainer courses //all trainers to course 1 #region DBTrainersPerCourse.CreateTrainerPerCourse(trainerIDs[0], courseIDs[0]); DBTrainersPerCourse.CreateTrainerPerCourse(trainerIDs[1], courseIDs[0]); #endregion // 2 trainers to course 2 #region DBTrainersPerCourse.CreateTrainerPerCourse(trainerIDs[0], courseIDs[1]); DBTrainersPerCourse.CreateTrainerPerCourse(trainerIDs[1], courseIDs[1]); #endregion //2 courses to trainer 1 #region DBTrainersPerCourse.CreateTrainerPerCourse(trainerIDs[0], courseIDs[2]); #endregion ConsoleUI.ShowLine("done"); }
public void Delete() { bool exit; ICollection <Course> courses = DBCourse.ReadCourses(); if (courses.Count() == 0) { ConsoleUI.ShowLine("no courses yet"); ConsoleUI.ReadKey(); ConsoleUI.Clear(); return; } else { ConsoleUI.ShowLine("select course to delete, type 0 to exit"); foreach (Course c in courses) { ConsoleUI.ShowLine(c); } } exit = ConsoleUI.GetInt(out int CourseID, "give course id: "); if (exit) { return; } Course course; try { course = courses.Where(c => c.Id == CourseID).First(); } catch (Exception) { ConsoleUI.ShowLine($"NO COURSE FOUND WITH ID: {CourseID}"); ConsoleUI.ReadKey(); return; } bool confirmed = ConsoleUI.GetConfirmation($"are you sure you want to delete course {course.Title}? [y/n]: "); int result = 0; if (confirmed) { result = DBCourse.DeleteCourse(CourseID); if (result == 0) { ConsoleUI.ShowLine("delete failed"); } else { ConsoleUI.ShowLine("course deleted successfully"); } ConsoleUI.ReadKey(); } }
public void Create() { bool exit; while (true) { ConsoleUI.Clear(); string baseMessage = "type course's information or type 0 to exit \n"; exit = ConsoleUI.GetString(out string title, $"{baseMessage}Course's title: "); if (exit) { return; } exit = ConsoleUI.GetString(out string stream, $"{baseMessage}Course's stream: "); if (exit) { return; } exit = ConsoleUI.GetInt(out int typeInput, $"{baseMessage}Course's type (1 = Full time, 2 = Part time): "); if (exit) { return; } if (typeInput != 1 && typeInput != 2) { ConsoleUI.ShowLine("course type not accepted"); ConsoleUI.ReadKey(); continue; } string type = typeInput == 1 ? "Full time" : "Part time"; exit = ConsoleUI.GetDate(out DateTime? startDate, "Course's start date:\n"); if (exit) { return; } exit = ConsoleUI.GetDate(out DateTime? endDate, "Course's end date:\n"); if (exit) { return; } if (endDate <= startDate) { ConsoleUI.ShowLine("invalid dates: end date is before start date, IMPOSSIBRU!!"); ConsoleUI.ReadKey(); continue; } int result = DBCourse.CreateCourse(title, stream, type, (DateTime)startDate, (DateTime)endDate, out int id); if (result == 0) { ConsoleUI.ShowLine("course could NOT be saved"); } else { ConsoleUI.ShowLine($"course created with id: {id}"); } ConsoleUI.ReadKey(); } }
public void Update() { bool exit; ICollection <Course> courses = DBCourse.ReadCourses(); if (courses.Count() == 0) { ConsoleUI.ShowLine("no courses yet"); ConsoleUI.ReadKey(); ConsoleUI.Clear(); return; } else { ConsoleUI.ShowLine("select course to update, type 0 to exit"); foreach (Course c in courses) { ConsoleUI.ShowLine(c); } } exit = ConsoleUI.GetInt(out int CourseID, "give course id: "); if (exit) { return; } ConsoleUI.Clear(); Course course; try { course = courses.Where(c => c.Id == CourseID).First(); } catch (Exception) { ConsoleUI.ShowLine($"NO COURSE FOUND WITH ID: {CourseID}"); ConsoleUI.ReadKey(); return; } ConsoleUI.ShowLine($"you selected to edit course: {course.Title}"); ConsoleUI.ShowLine($"select attribute to edit, type 0 anytime to exit"); ConsoleUI.ShowLine("1. Title"); ConsoleUI.ShowLine("2. Stream"); ConsoleUI.ShowLine("3. Type"); ConsoleUI.ShowLine("4. Date of start"); ConsoleUI.ShowLine("5. Date of end"); exit = ConsoleUI.GetInt(out int choice); if (exit) { return; } ConsoleUI.Clear(); CourseAttributes attribute = (CourseAttributes)choice; string newInput = ""; DateTime? newStartDate; DateTime? newEndDate; int result = 0; switch (attribute) { case CourseAttributes.Title: exit = ConsoleUI.GetString(out newInput, "enter new title: "); if (exit) { return; } result = DBCourse.UpdateCourse(CourseID, attribute, newInput); break; case CourseAttributes.Stream: exit = ConsoleUI.GetString(out newInput, "enter new stream: "); if (exit) { return; } result = DBCourse.UpdateCourse(CourseID, attribute, newInput); break; case CourseAttributes.Type: exit = ConsoleUI.GetString(out newInput, "enter new type: "); if (exit) { return; } result = DBCourse.UpdateCourse(CourseID, attribute, newInput); break; case CourseAttributes.StartDate: exit = ConsoleUI.GetDate(out newStartDate, "enter new start date: "); if (exit) { return; } result = DBCourse.UpdateCourse(CourseID, attribute, newStartDate); break; case CourseAttributes.EndDate: exit = ConsoleUI.GetDate(out newEndDate, "enter new end date: "); if (exit) { return; } result = DBCourse.UpdateCourse(CourseID, attribute, newEndDate); break; default: break; } if (result == 0) { ConsoleUI.ShowLine("course update failed"); } else { ConsoleUI.ShowLine("course updated successfully"); } ConsoleUI.ReadKey(); }