public IActionResult EnrollStudent(EnrollStudentRequest request) { var st = new Student(); st.FirstName = request.FirstName; st.BirthDate = request.Birthdate; st.LastName = request.LastName; st.IndexNumber = request.IndexNumber; var s = db.Student.Where(s => s.IndexNumber.Equals(request.IndexNumber)).ToList().First(); if (s != null) { return(BadRequest("Student with that index already exists")); } var studies = db.Studies.Where(s => s.IdStudy.Equals(request.Studies)).ToList().First(); if (studies == null) { return(NotFound("Studies does not exist")); } var enroll = db.Enrollment.Where(e => e.IdStudy.Equals(request.Studies)) .Where(e => e.Semester.Equals(1)).ToList().First(); if (enroll == null) { DateTime now = DateTime.Now; enroll = new Enrollment(); enroll.IdStudy = request.Studies; enroll.Semester = 1; enroll.StartDate = now; db.Enrollment.Add(enroll); db.SaveChanges(); } enroll = db.Enrollment.Where(e => e.IdStudy.Equals(request.Studies)) .Where(e => e.Semester.Equals(1)).ToList().First(); if (enroll == null) { return(BadRequest("SOMETHING WENT VERY VERY WRONG")); } st.IdEnrollment = enroll.IdEnrollment; db.Student.Add(st); db.SaveChanges(); return(Ok("Student added")); }
public IActionResult ModifyStudent(ModifyStudentRequest request) { if (request == null || request.IndexNumber == null) { return(BadRequest("Brak danych wejściowych")); } var student = db.Student.Where(s => s.IndexNumber.Equals(request.IndexNumber)).ToList().First(); if (student == null) { return(NotFound("Student with index: @index not found")); } if (request.FirstName != null) { student.FirstName = request.FirstName; } if (request.LastName != null) { student.LastName = request.LastName; } if (request.BirthDate != null) { student.BirthDate = request.BirthDate; } if (request.IdEnrollment != 0) { student.IdEnrollment = request.IdEnrollment; } db.Student.Update(student); db.SaveChanges(); return(Ok()); }
public IActionResult PromoteStudents(PromotionRequest request) { var studies = db.Studies.Where(s => s.Name.Equals(request.Studies)).ToList().First(); if (studies == null) return NotFound("Studies not found"); var enroll = db.Enrollment.Where(e => e.Semester.Equals(request.Semester)) .Where(e => e.IdStudy.Equals(studies.IdStudy)).ToList().First(); if (enroll == null) return NotFound("Enrollment does not exist"); enroll.Semester++; db.Enrollment.Update(enroll); db.SaveChanges(); return Ok("Semester updated"); }