示例#1
0
 public async Task<IActionResult> AddExamResultAsync([FromBody] ExamResultAddDTO examResultAddDTO)
 {
     if (!ModelState.IsValid)
     {
         return BadRequest(ModelState);
     }
     var result = await _service.AddExamResultAsync(examResultAddDTO);
     return Ok(result);
 }
示例#2
0
        public async Task <BadgeDTO> AddExamResultAsync(ExamResultAddDTO examResultAddDTO)
        {
            // pobranie danych do zaaktualizowanie pkt doświadczenia
            int categoryId = await _userRepository.GetCategoryId(examResultAddDTO.ExamId);

            int   userId = examResultAddDTO.UserId;
            Badge badge  = new Badge();
            // dodanie doświadczenia
            var badgeId = await _userService.AddOrUpdateExperienceAsync(new ExperienceAddDTO(examResultAddDTO.Points, categoryId, userId ));

            if (badgeId != 999)
            {
                badge = await _userRepository.GetBadgeAsync(badgeId);

                var badgeMapped = _mapper.Map <BadgeDTO>(badge);
                return(badgeMapped);
            }

            var examResult = _mapper.Map <ExamResult>(examResultAddDTO);
            await _repository.AddResultAsync(examResult);

            return(null);
        }