public async Task CreateReviewProposition(string email, ReviewPropositionCreationDto reviewPropositionDto)
        {
            var user = await _userManager.FindByEmailAsync(email);

            using (IUnitOfWork unitOfWork = _unitOfWorkFactory.Create())
            {
                var reviewProposition = unitOfWork.Repository <ReviewProposition>();

                var review = reviewProposition.Find(r => r.OrderId == reviewPropositionDto.OrderId && r.MechanicId == user.Id);
                if (review != null)
                {
                    return;
                }

                reviewProposition.Add(new ReviewProposition
                {
                    MechanicId = user.Id,
                    OrderId    = reviewPropositionDto.OrderId,
                    Comment    = reviewPropositionDto.ReviewComment,
                    Price      = reviewPropositionDto.ReviewPrice,
                    Date       = DateTime.Now.ToUniversalTime()
                });
                unitOfWork.Save();
            }
        }
        public async Task <IActionResult> CreateReviewProposition([FromBody] ReviewPropositionCreationDto reviewPropositionDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            string email = User.Identity.Name;

            await _orderService.CreateReviewProposition(email, reviewPropositionDto);

            return(Ok());
        }