public async Task <IActionResult> CreateEnrollment([FromBody] EnrollmentResource enrollmentResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var enrollment = mapper.Map <EnrollmentResource, Enrollment>(enrollmentResource); var student = await studentRepository.GetStudentByEmail(enrollmentResource.StudentEmail); enrollment.Student = student; var lecturer = await lecturerRepository.GetLecturer(enrollmentResource.LecturerId); enrollment.Lecturer = lecturer; SendMail(student.Name, lecturer.Email); //case: enrollment's type and project's type is different and the student has been already in group var group = await groupRepository.GetGroup(enrollmentResource.GroupId); if (group != null && group.Project.Type != enrollmentResource.Type) { ModelState.AddModelError("Error", "Enrollment's type and Project Type of Group are not the same."); return(BadRequest(ModelState)); } else if (group != null && !groupRepository.CheckEnrollment(group, enrollment)) { ModelState.AddModelError("Warning", "This group already has this student."); return(BadRequest(ModelState)); } else { enrollment.Group = group; } var quarter = await quarterRepository.GetQuarter(enrollmentResource.QuarterId); enrollment.Quarter = quarter; enrollmentRepository.AddEnrollment(enrollment); await unitOfWork.Complete(); enrollment = await enrollmentRepository.GetEnrollment(enrollment.EnrollmentId); var result = mapper.Map <Enrollment, EnrollmentResource>(enrollment); return(Ok(result)); }
public async Task <ActionResult <Enrollment> > Post( int orgId, int siteId, Enrollment enrollment ) { // Creating enrollment with Id not allowed if (enrollment.Id != 0) { return(BadRequest()); } _enrollments.AddEnrollment(enrollment); await _enrollments.SaveChangesAsync(); return(CreatedAtAction( nameof(Get), new { id = enrollment.Id, orgId = orgId, siteId = siteId }, enrollment )); }
public IActionResult AddEnrollment(Enrollment enrollment) { _EnrollmentRepository.AddEnrollment(enrollment); return(RedirectToAction("Index", "Home")); }
public IActionResult AddEnrollment(Enrollement Enrollment) { var Enroll = _EnrollRepository.AddEnrollment(Enrollment); return(Created(HttpContext.Request.Scheme + "://" + HttpContext.Request.Host + HttpContext.Request.Path + "/" + Enroll.CourseCode, Enroll)); }