Beispiel #1
0
        public async Task <IActionResult> AddRating(AddRatingDTO addRatingDto)
        {
            var email = GetEmailFromHttpContextAsync();
            await _ratingService.AddRating(addRatingDto, email);

            _logger.LogInfo($"Add rating by user with email: {email}.");

            return(Ok());
        }
        public async Task AddRating(AddRatingDTO addRatingDto, string email)
        {
            var user = await _userManager.FindByEmailAsync(email);

            var rating = new Rating
            {
                AuthorName = user.DisplayName,
                UserId     = user.Id,
                ShirtId    = addRatingDto.ShirtId,
                Value      = addRatingDto.Value
            };

            _repositoryManager.Rating.AddRating(rating);
            await _repositoryManager.SaveAsync();

            var ratingDto = await GetRatingByShirt(addRatingDto.ShirtId);

            await _hub.Clients.All.SendAsync("Rating Added", ratingDto);
        }