public IActionResult CreateAssignmentForCourse(Guid courseId, [FromBody] AssignmentForCreationDto assignment) { if (assignment == null) { _logger.LogError("AssignmentForCreationDto object sent from client is null."); return(BadRequest("AssignmentForCreationDto object is null")); } var course = _repository.Course.GetCourse(courseId, trackChanges: false); if (course == null) { _logger.LogInfo($"Course with id: {courseId} doesn't exist in the database."); return(NotFound()); } var assignmentEntity = _mapper.Map <Assignment>(assignment); _repository.Assignment.CreateAssignmentForCourse(courseId, assignmentEntity); _repository.Save(); var assignmentToReturn = _mapper.Map <AssignmentDto>(assignmentEntity); return(CreatedAtRoute("GetAssignmentForCourse", new { courseId, id = assignmentToReturn.Id }, assignmentToReturn)); }
public IActionResult CreateAssinmentForEnrollment(Guid enrollmentId, [FromBody] AssignmentForCreationDto assignment) { if (assignment == null) { _logger.LogError("AssignmentForCreationDto object sent from client is null."); return(BadRequest("AssignmentForCreationDto object is null")); } // var organization = _repository.Company.GetCompany(companyId, trackChanges: false); var enrollment = _repository.Enrollment.GetEnrollments(enrollmentId, trackChanges: false); if (enrollment == null) { _logger.LogInfo($"Section with id: {enrollmentId} doesn't exist in the database."); return(NotFound()); } var assignmentEntity = _mapper.Map <Assignment>(assignment); // _repository.Employee.CreateEmployeeForCompany(companyId, employeeEntity); _repository.Assignment.CreateAssignmentForEnrollment(enrollmentId, assignmentEntity); _repository.Save(); var assignmentToReturn = _mapper.Map <AssignmentDto>(assignmentEntity); return(CreatedAtRoute(new { enrollmentId, id = assignmentToReturn.Id }, assignmentToReturn)); }
public async Task <IActionResult> CreateAssignmentForCourse(Guid courseId, [FromBody] AssignmentForCreationDto assignment) { if (assignment == null) { _logger.LogError("AssignmentForCreationDto object sent from client is null."); return(BadRequest("AssignmentForCreationDto object is null")); } if (!ModelState.IsValid) { _logger.LogError("Invalid model state for the AssignmentForCreationDto object"); return(UnprocessableEntity(ModelState)); } var course = await _repository.CourseMgt.GetCourseAsync(courseId, trackChanges : false); if (course == null) { _logger.LogInfo($"Course with id: {courseId} doesn't exist in the database."); return(NotFound()); } var assignmentEntity = _mapper.Map <Assignment>(assignment); _repository.Assignment.CreateAssignmentForCourse(courseId, assignmentEntity); await _repository.SaveAsync(); var assignmentToReturn = _mapper.Map <AssignmentDto>(assignmentEntity); return(CreatedAtRoute("GetAssignmentForCourse", new { courseId, id = assignmentToReturn.Id }, assignmentToReturn)); }
public async Task <IActionResult> CreateAssignment(int creatorId, [FromBody] AssignmentForCreationDto assignmentForCreationDto) { var assignmentCreator = await _repo.GetUser(creatorId); if (assignmentCreator.Id != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value)) { return(Unauthorized()); } assignmentForCreationDto.CreatedBy = assignmentCreator; var assignment = _mapper.Map <Assignment>(assignmentForCreationDto); if (assignment.Assigned) { assignment.DateAssigned = DateTime.Now; } var students = _repo.GetStudents(assignmentForCreationDto.StudentLevel); _repo.Add(assignment); foreach (var student in students.Result) { var userAssignment = new UserAssignment() { UserId = student.Id, AssignmentId = assignment.Id, Completed = false }; if (!student.UserAssignments.Contains(userAssignment)) { _repo.Add(userAssignment); } } if (await _repo.SaveAll()) { // _repo.SqlCmdHelper("SET IDENTITY_INSERT dbo.UserAssignments OFF"); var assignmentToReturn = _mapper.Map <AssignmentToReturnDto>(assignment); return(CreatedAtRoute("GetAssignment", new { id = assignment.Id }, assignmentToReturn)); } throw new Exception("Creating the assignment failed on save"); }
public async Task <IActionResult> CreateAssignment([FromBody] AssignmentForCreationDto assignment) { if (assignment == null) { _logger.LogError("AssignmentForCreationDto object sent from client is null."); return(BadRequest("AssignmentForCreationDto object is null")); } if (!ModelState.IsValid) { _logger.LogError("Invalid model state for the AssignmentForCreationDto object"); return(UnprocessableEntity(ModelState)); } var assignmentEntity = _mapper.Map <Assignment>(assignment); _repository.Assignment.CreateAssignmentForSec(assignmentEntity); await _repository.SaveAsync(); var assignmentToReturn = _mapper.Map <AssignmentDto>(assignmentEntity); return(CreatedAtRoute("GetAssignmentForSecById", new { id = assignmentToReturn.Id }, assignmentToReturn)); }
public async Task <IActionResult> CreateAssinmentForEnrollment(Guid enrollmentId, [FromBody] AssignmentForCreationDto assignment) { var assignmentEntity = _mapper.Map <Assignment>(assignment); // _repository.Employee.CreateEmployeeForCompany(companyId, employeeEntity); _repository.Assignment.CreateAssignmentForEnrollment(enrollmentId, assignmentEntity); await _repository.SaveAsync(); var assignmentToReturn = _mapper.Map <AssignmentDto>(assignmentEntity); return(CreatedAtRoute(new { enrollmentId, id = assignmentToReturn.Id }, assignmentToReturn)); }