public void SubmitRating(CreateUpdateRatingViewModel model) { _unitOfWork.BeginTransaction(); var user = _userRepository.GetById(model.UserId); if (user == null) { _unitOfWork.Commit(); throw new Exception(ExceptionMessages.UserException.NOT_FOUND); } var rate = _ratingRepository.GetById(model.Id); if (rate == null) { var rating = new Rating(user, model.ObjectId, model.ObjectType, model.Value, model.Comment, model.ShowName); _ratingRepository.Add(rating); _unitOfWork.Commit(); } else { rate.Comment = model.Comment; rate.Value = model.Value; rate.ShowName = model.ShowName; _ratingRepository.Update(rate); _unitOfWork.Commit(); } }
public static CreateUpdateRatingViewModel MapToCreateUpdateViewModel(this Rating rating) { var viewModel = new CreateUpdateRatingViewModel(); viewModel.Id = rating.Id; viewModel.UserId = rating.User.Id; viewModel.ObjectId = rating.ObjectId; viewModel.ObjectType = rating.ObjectType; viewModel.Value = rating.Value; viewModel.Comment = rating.Comment; viewModel.ShowName = rating.ShowName; return(viewModel); }
public ActionResult SubmitRating(CreateUpdateRatingViewModel model) { _ratingService.SubmitRating(model); return(Json(true)); }