public EnrollStudentResponse EnrollStudent(EnrollStudentRequest request) { var response = new EnrollStudentResponse(); response.setStatus(400, "Unknown Error"); // domyślnie - błąd var _studies = _context.Studies.Where(p => p.Name == request.Studies).FirstOrDefault(); if (_studies == null) { response.setStatus(400, "ERROR: Nie istnieją studia przekazane przez klienta"); return(response); } var _enrollment = _context.Enrollment.Where(e => e.IdStudy == _studies.IdStudy && e.Semester == 1).FirstOrDefault(); if (_enrollment == null) { _enrollment = new Enrollment() { IdEnrollment = _context.Enrollment.Max(p => p.IdEnrollment) + 1, Semester = 1, IdStudy = _studies.IdStudy, StartDate = DateTime.Now.Date }; _context.Enrollment.Add(_enrollment); _context.SaveChanges(); } var _student = _context.Student.Where(p => p.IndexNumber == request.IndexNumber).FirstOrDefault(); if (_student == null) { DateTime dateValue; DateTime.TryParseExact(request.BirthDate, "dd.MM.yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out dateValue); _student = new Student { IndexNumber = request.IndexNumber, FirstName = request.FirstName, LastName = request.LastName, BirthDate = dateValue, IdEnrollment = _enrollment.IdEnrollment }; _context.Student.Add(_student); _context.SaveChanges(); response.setStatus(201, "Student został poprawnie zapisany na semestr"); // student został poprawnie zapisany na semestr } else { response.setStatus(400, "Taki student już istnieje"); } response.LastName = _student.LastName; response.Semester = _enrollment.Semester; response.StartDate = _enrollment.StartDate.ToString(); response.Studies = request.Studies; return(response); }
public Boolean AddStudent(Student student) { if (!_context.Student.Contains(student)) { _context.Student.Add(student); _context.SaveChanges(); return(true); } else { return(false); } }