public async Task <IActionResult> AddRating(Guid recipeId, [FromBody] SaveRatingDto ratingDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var result = await _service.CreateRatingAsync(ratingDto, recipeId, UserId);

            return(CreatedAtRoute("GetRating", new { recipeId, ratingId = result.Id }, result));
        }
        public async Task <IActionResult> UpdateRating(Guid recipeId, Guid ratingId, [FromBody] SaveRatingDto ratingDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            await _service.UpdateRatingAsync(ratingDto, recipeId, ratingId);

            return(Ok());
        }
Beispiel #3
0
        public async Task <RatingDto> CreateRatingAsync(SaveRatingDto saveRatingDto, Guid recipeId, Guid userId)
        {
            if (!await _recipeRepository.ExistAsync(a => a.Id == recipeId))
            {
                throw new Exception("Nie ma takiego Przepisu");
            }
            var rating = _mapper.Map <SaveRatingDto, Rating>(saveRatingDto);

            rating.UserId   = userId;
            rating.RecipeId = recipeId;
            await _ratingRepository.AddAsyn(rating);

            return(await GetRatingAsync(rating.RecipeId, rating.Id));
        }
Beispiel #4
0
        public async Task UpdateRatingAsync(SaveRatingDto saveRatingDto, Guid recipeId, Guid ratingId)
        {
            if (!await _recipeRepository.ExistAsync(a => a.Id == recipeId))
            {
                throw new Exception("Nie ma takiego Przepisu");
            }

            if (!await _ratingRepository.ExistAsync(a => a.Id == ratingId))
            {
                throw new Exception("Nie ma takiej oceny");
            }
            var rating = await _ratingRepository.FindByAsyn(a => a.RecipeId == recipeId, s => s.Id == ratingId);

            _mapper.Map(saveRatingDto, rating);
            await _ratingRepository.SaveAsync();
        }