Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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));
        }
Ejemplo n.º 3
0
        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));
        }
Ejemplo n.º 4
0
        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));
        }
Ejemplo n.º 6
0
        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));
        }