public void Post(ReviewSubmitModel comment) { BookReview br = new BookReview { Name = comment.Name, Isbn = comment.ISBN, Rating = comment.Rating, ReviewComments = comment.ReviewComment, ReviewedBy = comment.ReviewBy, CreatedOn = DateTime.Now }; bookReviewProvider.SaveReviewComment(br); string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(comment); //SendMessages(jsonString).Wait(); }
public HttpResponseMessage Post(ReviewSubmitModel reviewModel) { Wine wine; Review review = new Review() { UserId = "UnknownUser", UserName = reviewModel.UserName, Text = reviewModel.Text, Rating = reviewModel.Rating }; using (var session = ravenStore.OpenSession()) { wine = session.Load <Wine>(reviewModel.SubjectId); var userId = session.Query <UserProfile>().FirstOrDefault(x => x.Username == reviewModel.UserName); if (userId != null) { review.UserId = userId.UserId; } if (wine.Reviews == null) { wine.Reviews = new List <Review>(); } wine.Reviews.Add(review); var rating = wine.Reviews.Average(x => x.Rating); wine.Rating = rating; session.SaveChanges(); } var response = new HttpResponseMessage(HttpStatusCode.Created); return(response); }
public HttpResponseMessage Put(ReviewSubmitModel reviewModel) { var response = new HttpResponseMessage(HttpStatusCode.NotFound); using (var session = ravenStore.OpenSession()) { Winery winery = session.Load <Winery>(reviewModel.SubjectId); var review = winery.Reviews.FirstOrDefault(x => x.UserId == reviewModel.UserId); review.Rating = reviewModel.Rating; review.Text = reviewModel.Text; var rating = winery.Reviews.Average(x => x.Rating); winery.Rating = rating; session.SaveChanges(); response = new HttpResponseMessage(HttpStatusCode.OK); } return(response); }
public void WinePostReview() { ReviewSubmitModel testReview = new ReviewSubmitModel() { Rating = 4, Text = "This is a test review", UserId = "1-A", UserName = "******" }; var response = _wineController.Post(testReview); Assert.Equal(HttpStatusCode.Created, response.StatusCode); var wine = _wineController.Get("wines/1-A"); var review = wine.Reviews.FirstOrDefault(x => x.UserId == "1-A"); Assert.Equal(review.UserId, testReview.UserId); Assert.Equal(review.UserName, testReview.UserName); Assert.Equal(review.Rating, testReview.Rating); Assert.Equal(review.Text, testReview.Text); }
public void WineryPostReview() { ReviewSubmitModel testReview = new ReviewSubmitModel() { SubjectId = "wineries/2c7b2ef5-ffb2-408c-b8a1-eb44553cd7d2", Rating = 3, Text = "This is a medium test review for me", UserId = "4-A", UserName = "******" }; var response = _wineryController.Post(testReview); Assert.Equal(HttpStatusCode.Created, response.StatusCode); var winery = _wineryController.Get("wineries/2c7b2ef5-ffb2-408c-b8a1-eb44553cd7d2"); var review = winery.Reviews.FirstOrDefault(x => x.UserId == "4-A"); Assert.Equal(review.UserId, testReview.UserId); Assert.Equal(review.UserName, testReview.UserName); Assert.Equal(review.Rating, testReview.Rating); Assert.Equal(review.Text, testReview.Text); }