Esempio n. 1
0
        public async Task <IActionResult> PutUserReview([FromRoute] long id, [FromBody] UserReview userReview)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != userReview.Id)
            {
                return(BadRequest());
            }

            _context.Entry(userReview).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UserReviewExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 2
0
        public async Task GiveUserReviewCommand(GiveReviewForUserRequest request, string userId, UserManager <UserModel> userManager)
        {
            try
            {
                var user = await userManager.FindByIdAsync(request.OwnerId);

                var userReviewOwner = await userManager.FindByIdAsync(userId);

                var review = new UserReview()
                {
                    ReviewDate        = DateTime.Now,
                    ReviewDescription = request.ReviewDescription,
                    UserRefId         = user.Id,
                    ReviewOwnerRefId  = userId,
                    ReviewTitle       = request.ReviewTitle,
                    UpVoteNum         = Convert.ToString(request.UpVotePoints),
                    ReviewUsername    = userReviewOwner.UserName
                };


                await _userRepository.AddUserReview(review);

                user.UpVote += request.UpVotePoints;

                await userManager.UpdateAsync(user);
            }
            catch (Exception ex)
            {
                _logger.LogError($"error while saving user review to database: {ex}");
                throw ex.GetBaseException();
            }
        }
Esempio n. 3
0
        public UserReview Map(UserReviewDb userReview)
        {
            UserReview userReview_newType = new UserReview();

            #region Transfer main attributes

            userReview_newType.Id         = userReview.Id;
            userReview_newType.Content    = userReview.Content;
            userReview_newType.CreateDate = userReview.CreateDate;
            userReview_newType.Rating     = userReview.Rating;

            #endregion

            #region Transfering interop attributes

            userReview_newType.IdReviewer = new User()
            {
                Id = userReview.IdReviewer
            };
            userReview_newType.IdReviewed = new User()
            {
                Id = userReview.IdReviewed
            };

            #endregion

            return(userReview_newType);
        }
Esempio n. 4
0
        public bool addUserReview(UserReview review, Book book)
        {
            string userId;

            using (MySqlConnection con = new MySqlConnection(conString))
            {
                con.Open();
                string cmdString = "select UserId from userreview where UserUname = @userUname";
                using (MySqlCommand cmd = new MySqlCommand(cmdString))
                {
                    cmd.Parameters.Add(new MySqlParameter("@userUname", review.ReviewOwner.UserName));
                    MySqlDataReader dataSet = cmd.ExecuteReader();
                    if (dataSet.HasRows)
                    {
                        userId = dataSet["UserId"].ToString();
                    }
                    else
                    {
                        dataSet.Close();
                        con.Close();
                        return(false);
                    }
                }
                cmdString = "INSERT INTO `bookstore`.`customerreview`(`CustomerId`,`BookId`,`CustomerRating`,`CustomerComment`) VALUES(@userId,@bookId,@bookRating,@bookComment)";
                using (MySqlCommand cmd = new MySqlCommand(cmdString))
                {
                    cmd.Parameters.Add(new MySqlParameter("@userId", userId));
                    cmd.Parameters.Add(new MySqlParameter("@bookId", book.BookId));
                    cmd.Parameters.Add(new MySqlParameter("@bookRating", review.ReviewRating));
                    cmd.Parameters.Add(new MySqlParameter("@bookComment", review.ReviewComment));
                    cmd.ExecuteNonQuery();
                }
            }
            return(true);
        }
Esempio n. 5
0
        public static List <UserReview> GetUserDetails(int UserID)
        {
            DataSet           ds;
            List <UserReview> list = new List <UserReview>();

            using (MySqlConnection conn = new MySqlConnection(ConfigurationManager.ConnectionStrings["DB"].ConnectionString))
            {
                ds = MySqlHelper.ExecuteDataset(conn, "GetUserDetails");
            }
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                UserReview u = new UserReview();
                u.ID         = (int)row["ID"];
                u.UserID     = (int)row["UserID"];
                u.Name       = row["Name"].ToString();
                u.PreparedBy = row["PreparedBy"].ToString();
                u.Rating     = (int)row["rating"];
                u.Approval   = (int)row["Approval"];
                u.Comment    = row["Comment"].ToString();
                list.Add(u);
            }

            List <UserReview> UserReview = new List <UserReview>();

            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].UserID == UserID)
                {
                    UserReview.Add(list[i]);
                }
            }

            return(UserReview);
        }
Esempio n. 6
0
 public IActionResult Create(UserReview nr)
 {
     if (ModelState.IsValid)
     {
         UserReview NewUserReview = new UserReview
         {
             Reviewer    = nr.Reviewer,
             Restaurants = nr.Restaurants,
             Review      = nr.Review,
             Visit       = nr.Visit,
             Stars       = nr.Stars,
         };
         if (nr.Visit > DateTime.Now)
         {
             TempData["InvalidDate"] = "Date has to be before todays date";
         }
         else
         {
             _context.Add(NewUserReview);
             _context.SaveChanges();
             return(RedirectToAction("Reviews"));
         }
     }
     return(RedirectToAction("Index"));
 }
Esempio n. 7
0
        public UserReview AddUserReview(UserReview userReview)
        {
            _repositoryWrapper.UserReview.AddUserReview(userReview);
            //_logger.WriteInfo($"Added user with id: {user.Id}.");

            return(userReview);
        }
Esempio n. 8
0
        public async Task <ActionResult <UserReview> > PostUserReview(UserReview UserReview)
        {
            _context.UserReview.Add(UserReview);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetUserReview", new { id = UserReview.LngReviewId }, UserReview));
        }
Esempio n. 9
0
        public void TestAddLongerDescriptionUserReview()
        {
            var userReview = new AuctionUser {
                Id = 1, FirstName = "Ionel", LastName = "Pascu", Gender = "M"
            };
            var reviewUser = new AuctionUser {
                Id = 2, FirstName = "Popa", LastName = "Andrei", Gender = "M"
            };
            var resultUser1 = this.auctionUserService.AddAuctionUser(userReview, Role.Buyer);
            var resultUser2 = this.auctionUserService.AddAuctionUser(reviewUser, Role.Buyer);
            var user1       = this.auctionUserService.GetAuctionUserByFistNameAndLastName("Ionel", "Pascu");
            var user2       = this.auctionUserService.GetAuctionUserByFistNameAndLastName("Popa", "Andrei");

            var review1 = new UserReview
            {
                Description =
                    "bFuDu3e8H7LuEGyZbYTUfxdKm9gweGGho3e8H9m2hlgBHgglrMME0Rf6CI99bdLg1wnSwBj3dKsJ2LpRENQIloUp4m7oj4Xs9mMbxbFuDu3e8H7LuEGyZbYTUfxdKm9gweGGho3e8H9m2hlgBHgglrMME0Rf6CI99bdLg1wnSwBj3dKsJ2LpRENQIloUp4m7oj4Xs9mMbx",
                Score         = 4,
                ReviewByUser  = user2,
                ReviewForUser = user1
            };
            var resultReview1 = this.userReviewService.AddUserReview(review1);

            Assert.True(!this.libraryContextMock.UserReviews.Any());
        }
Esempio n. 10
0
        public UserReview UpdateUserReview(UserReview existing, UserReview userReview)
        {
            _repositoryWrapper.UserReview.UpdateUserReview(existing, userReview);
            // _logger.WriteInfo($"Updated user with id: {user.Id}.");

            return(userReview);
        }
Esempio n. 11
0
        public void apiLogic(bool post, UserReview userReview)
        {
            JObject obj;

            if (post)
            {
                obj = new APICaller("postReview.php")
                      .AddParam("privateKey", PrivateKey)
                      .AddParam("message", userReview.Message)
                      .AddParam("username", userReview.Username)
                      .AddParam("positive", (userReview.Karma > 0).ToString())
                      .Call();
            }
            else
            {
                obj = new APICaller("removeReview.php")
                      .AddParam("privateKey", PrivateKey)
                      .AddParam("username", userReview.Username)
                      .Call();
            }
            ManagerStatus status = ManagerStatus.UnknownError;

            if (!Enum.TryParse <ManagerStatus>(obj["message"].ToString(), out status))
            {
                status = ManagerStatus.UnknownError;
            }
            if (post)
            {
                PostUserReviewResult(status, userReview);
            }
            else
            {
                RemoveUserReviewResult(status, userReview);
            }
        }
Esempio n. 12
0
        public void TestGetAllUserReviewsWithAWrongUser()
        {
            var userReview = new AuctionUser {
                Id = 1, FirstName = "Ionel", LastName = "Pascu", Gender = "M"
            };
            var reviewUser = new AuctionUser {
                Id = 2, FirstName = "Popa", LastName = "Andrei", Gender = "M"
            };
            var resultUser1 = this.auctionUserService.AddAuctionUser(userReview, Role.Buyer);
            var resultUser2 = this.auctionUserService.AddAuctionUser(reviewUser, Role.Buyer);
            var user1       = this.auctionUserService.GetAuctionUserByFistNameAndLastName("Ionel", "Pascu");
            var user2       = this.auctionUserService.GetAuctionUserByFistNameAndLastName("Popa", "Andrei");

            var review1 = new UserReview
            {
                Description = "He is a good man", Score = 4, ReviewByUser = user2, ReviewForUser = user1
            };
            var review2 = new UserReview
            {
                Description = null, Score = 2, ReviewByUser = userReview, ReviewForUser = user2
            };
            var resultReview1 = this.userReviewService.AddUserReview(review1);
            var resultReview2 = this.userReviewService.AddUserReview(review2);

            var reviews = this.userReviewService.GetUserReviews();

            Assert.IsFalse(reviews.Count() == 2);
        }
Esempio n. 13
0
        public void postReview(UserReview userReview)
        {
            if (UserReviewManagerThread != null && UserReviewManagerThread.IsAlive) // Jau vyksta užklausa
            {
                return;
            }
            if (String.IsNullOrEmpty(userReview.Username) || String.IsNullOrWhiteSpace(userReview.Username))
            {
                PostUserReviewResult(ManagerStatus.UsernameEmpty, null);
                return;
            }
            if (String.IsNullOrEmpty(userReview.Message) || String.IsNullOrWhiteSpace(userReview.Message))
            {
                PostUserReviewResult(ManagerStatus.MessageEmpty, null);
                return;
            }
            if (userReview.Message.Length > 2000)
            {
                PostUserReviewResult(ManagerStatus.MessageTooLong, null);
                return;
            }

            UserReviewManagerThread = new Thread(() => apiLogic(true, userReview)); // There's probably a better way
            UserReviewManagerThread.Start();
        }
Esempio n. 14
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,name,game,rating,review")] UserReview userReview)
        {
            if (id != userReview.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(userReview);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserReviewExists(userReview.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(userReview));
        }
        private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (listBox2.SelectedIndex != -1)
            {
                var showHist = ((UserShowHistory)listBox2.SelectedItem);

                Tuple <int, int> data = new Tuple <int, int>(this.user.Id, showHist.Id);
                var review            = new ApiConnector <UserReview>().ForController("userReview")
                                        .AddParameter("userId", this.user.Id)
                                        .AddParameter("historyId", showHist.Id)
                                        .Get();

                if (review == null)
                {
                    review = new UserReview();
                }

                numericUpDown2.Value = review.Rating;
                textBox6.Text        = review.Review;
            }
            else
            {
                numericUpDown2.Value = 0;
                textBox6.Clear();
            }
        }
Esempio n. 16
0
        public async Task <ActionResult <UserReview> > PostUserReview([FromBody] PostUserReviewDto model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (model.UserId == User.Identity.Name)
            {
                return(BadRequest("You can't review yourself"));
            }

            if (await _context.UserReviews.Where(x => x.UserId == model.UserId && x.ReviewerId == User.Identity.Name).FirstOrDefaultAsync() != null)
            {
                return(BadRequest("You can review only once"));
            }

            var review = new UserReview()
            {
                UserId     = model.UserId,
                ReviewerId = User.Identity.Name,
                Review     = model.Review,
                Comment    = model.Comment
            };

            await _context.UserReviews.AddAsync(review);

            try { await _context.SaveChangesAsync(); }

            catch (Exception error) { BadRequest(error); }

            return(Ok("Thanks for your review"));
        }
        public void Run()
        {
            var userReviews = new List <UserReview>();

            foreach (string line in threadLines)
            {
                string[] data = line.Split("::");

                if (data.Length >= 4 &&
                    int.TryParse(data[0], out int userId) &&
                    int.TryParse(data[1], out int movieId) &&
                    byte.TryParse(data[2], out byte movieRating) &&
                    int.TryParse(data[3], out int timestamp))
                {
                    var newUserReview = new UserReview()
                    {
                        MovieId   = movieId,
                        Rating    = movieRating,
                        Timestamp = timestamp,
                        UserId    = userId
                    };
                    userReviews.Add(newUserReview);
                }
                else
                {
                    Console.WriteLine($"Error: {line}");
                }
            }

            aggregator.Aggregate(userReviews);
        }
Esempio n. 18
0
 public WriteUserReviewForm(LocalUser localUser, User user)
 {
     this.localUser = localUser;
     this.user      = user;
     InitializeComponent();
     userReview = new UserReview();
 }
Esempio n. 19
0
        public DistinctReviewList <UserReview> GetUserReviewData(string category)
        {
            MySqlCommand command = new MySqlCommand("SELECT * FROM Review WHERE isCriticReview<>1 AND productType = \"" + category + "\"", connection);
            DistinctReviewList <UserReview> result = new DistinctReviewList <UserReview>();
            MySqlDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                object[] tempResult = new object[reader.FieldCount];
                reader.GetValues(tempResult);

                UserReview row = new UserReview((int)tempResult[0], reader.GetBoolean(10), (float)tempResult[4], (float)tempResult[14],
                                                reader.GetDateTime(1),
                                                (string)tempResult[13], (string)tempResult[12], (string)tempResult[11], reader.GetBoolean(9),
                                                (string)tempResult[3], //content
                                                (string)tempResult[6]  //author
                                                );
                if (!reader.IsDBNull(7) && !reader.IsDBNull(8))
                {
                    row.positiveReception = (int)tempResult[7];
                    row.negativeReception = (int)tempResult[8];
                }


                result.Add(row);
            }

            reader.Close();

            return(result);
        }
Esempio n. 20
0
        public override void OnStart()
        {
            Film         f  = SharedComponents.CurrentFilm;
            DetailedFilm df = WaitForItBLL.Singleton.GetMovie(f);

            _userReview = SharedComponents.CurrentUser.GetUserReview(f.Id);

            _movieTitleTextView       = Activity.FindViewById <TextView>(Resource.Id.filmNameTextView);
            _movieReleaseDateTextView = Activity.FindViewById <TextView>(Resource.Id.filmRealeaseDateTextView);
            _movieOverviewTextView    = Activity.FindViewById <TextView>(Resource.Id.filmOverviewTextView);
            _moviePosterImageView     = Activity.FindViewById <ImageView>(Resource.Id.filmPosterImageView);
            _movieDirectorTextView    = Activity.FindViewById <TextView>(Resource.Id.filmDirectorTextView);
            _movieActorsTextView      = Activity.FindViewById <TextView>(Resource.Id.filmCastTextView);
            _movieNoteTextView        = Activity.FindViewById <TextView>(Resource.Id.filmNotesTextView);
            _movieNoteCountTextView   = Activity.FindViewById <TextView>(Resource.Id.filmNotesCountTextView);
            _movieRuntimeTextView     = Activity.FindViewById <TextView>(Resource.Id.filmRuntimeTextView);
            _movieGenresTextView      = Activity.FindViewById <TextView>(Resource.Id.filmGenresTextView);
            _yepButton               = Activity.FindViewById <Button>(Resource.Id.yepButton);
            _nopButton               = Activity.FindViewById <Button>(Resource.Id.nopButton);
            _reviewStatusTextView    = Activity.FindViewById <TextView>(Resource.Id.reviewStatusTextView);
            _positiveReviewsTextView = Activity.FindViewById <TextView>(Resource.Id.positiveReviewsTextView);
            _negativeReviewsTextView = Activity.FindViewById <TextView>(Resource.Id.negativeReviewsTextView);
            _percentageTextView      = Activity.FindViewById <TextView>(Resource.Id.percentageTextView);
            _percentageProgressBar   = Activity.FindViewById <ProgressBar>(Resource.Id.percentageProgressBar);


            _movieTitleTextView.Text       = df.Title;
            _movieReleaseDateTextView.Text = Resources.GetString(Resource.String.Released, df.ReleaseDate.ToLongDateString());
            _movieOverviewTextView.Text    = (df.Overview == null || df.Overview == string.Empty) ? Resources.GetString(Resource.String.EmptyOverview) : df.Overview;
            _movieActorsTextView.Text      = df.Acteurs;
            _movieDirectorTextView.Text    = Resources.GetString(Resource.String.By, df.Realisateur);
            _movieNoteTextView.Text        = $"{df.VoteAverage}/10";
            _movieNoteCountTextView.Text   = Resources.GetQuantityString(Resource.Plurals.ReviewsCount, df.VoteCount, df.VoteCount);
            _movieRuntimeTextView.Text     = df.Duree.ToString();
            _movieGenresTextView.Text      = df.Genres;

            if (df.Duree == TimeSpan.Zero)
            {
                _movieRuntimeTextView.Visibility = ViewStates.Gone;
            }
            if (df.Realisateur == null)
            {
                _movieDirectorTextView.Visibility = ViewStates.Gone;
            }


            _moviePosterImageView.SetUrlDrawable(df.PosterBigImagePath, Android.Resource.Drawable.IcMenuGallery);
            _positiveReviewsTextView.Text = Resources.GetString(Resource.String.SaidYes, df.PositiveReviewsCount);
            _negativeReviewsTextView.Text = Resources.GetString(Resource.String.SaidNo, df.NegativeReviewsCount);
            _percentageTextView.Text      = $"{f.YesPercentage}%";
            _percentageProgressBar.SetProgress(f.YesPercentage, false);
            _percentageProgressBar.ProgressDrawable.SetColorFilter(GetGradientColor(f.YesPercentage), PorterDuff.Mode.SrcIn);

            _yepButton.Click += _yepButton_Click;
            _nopButton.Click += _nopButton_Click;

            GestionAffichageUtilisateur();
            base.OnStart();
        }
Esempio n. 21
0
 public void Print()
 {
     Console.WriteLine("User Name: {0}\t Rate:{1}", this.Name, this.UserRate);
     if (!UserReview.Equals(""))
     {
         Console.WriteLine("    Review: " + UserReview);
     }
 }
Esempio n. 22
0
    public void addReview(User submitter, string review_text, int rating)
    {
        //How is review_id determined?
        int        review_id = 0;
        UserReview newReview = new UserReview(review_id, submitter.Id, this.Id, review_text, DateTime.Now, rating);

        reviews.Add(newReview);
    }
Esempio n. 23
0
        public ActionResult DeleteConfirmed(int id)
        {
            UserReview userReview = db.UserReviews.Find(id);

            db.UserReviews.Remove(userReview);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 24
0
 public void removeUserReview(UserReview userReview)
 {
     if (UserReviewManagerThread != null && UserReviewManagerThread.IsAlive) // Jau vyksta užklausa
     {
         return;
     }
     UserReviewManagerThread = new Thread(() => apiLogic(false, userReview)); // There's probably a better way
     UserReviewManagerThread.Start();
 }
Esempio n. 25
0
        public async Task GetUserReviewsAsync_ValidId_ReturnsValidResult(string id)
        {
            ITelevisionApi apiUnderTest = new TelevisionApi(_clientWithNoApiKey);

            UserReview result = await apiUnderTest.GetUserReviewsAsync(id, apiKey : _userApiKey);

            Assert.IsNotNull(result);
            Assert.IsNotEmpty(result.Results);
        }
        public ViewResult Create(int id)
        {
            var newUserReview = new UserReview()
            {
                BeerId = id
            };

            return(View(newUserReview));
        }
        /// <summary>
        /// Update an UserReview.
        /// </summary>
        /// <param name="userReview">The UserReview.</param>
        /// <returns>If UserReview was updated.</returns>
        public bool UpdateUserReview(UserReview userReview)
        {
            if (this.ValidateUserReview(userReview))
            {
                return(this.userReviewRepository.UpdateUserReview(userReview));
            }

            return(false);
        }
Esempio n. 28
0
        int IUserReviewsDataAdapter.AddNewUserReview(UserReviewDM userReviewDM)
        {
            IModelBuilder <UserReview, UserReviewDM> domainToEntityModelBuilder = new UserReviewDomainEntityModelBuilder();

            AddNewUserReviewOperation addNewUserReviewOperation = new AddNewUserReviewOperation();

            UserReview userReviewDataEntity = domainToEntityModelBuilder.Build(userReviewDM);

            return(addNewUserReviewOperation.AddNewUserReview(userReviewDataEntity));
        }
Esempio n. 29
0
        public void AddOrUpdateReview(UserReviewDto user)
        {
            var entity   = new UserReview();
            var document = user.ToTextAnalyticsDocuments();

            user.TextAnalyticRespons = GetTextAnalyticsSentiment(document);
            entity.FromUserReviewDto(user);
            userReviewRepository.Insert(entity);
            userReviewRepository.Save();
        }
Esempio n. 30
0
        public async Task <IActionResult> Create([Bind("ID,name,game,rating,review")] UserReview userReview)
        {
            if (ModelState.IsValid)
            {
                _context.Add(userReview);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(userReview));
        }
Esempio n. 31
0
 public void addReview(User submitter, string review_text, int rating)
 {
     //How is review_id determined?
     int review_id = 0;
     UserReview newReview = new UserReview(review_id, submitter.Id, this.Id, review_text, DateTime.Now, rating);
     reviews.Add(newReview);
 }
Esempio n. 32
0
        /// <summary>
        ///  
        /// </summary>
        /// <param name="publicRecipeId"></param>
        /// <param name="reviewerUserId"></param>
        /// <param name="rating"></param>
        /// <param name="comment"></param>
        /// <param name="requestUserId"></param>
        /// <returns>Any error message. Empty message indicates success</returns>
        public string Review(int publicRecipeId, string reviewerUserId, double rating, string comment)
        {
            var pubR = _publicRecipeRepo.GetById(publicRecipeId);
            if (pubR == null) return "Recipe does not exist";

            if (pubR.Author == reviewerUserId) return "Recipe author cannot review his/her own recipe";

            if (pubR.Reviews != null && pubR.Reviews.Count > 0)
            {
                foreach (var userReview in pubR.Reviews)
                {
                    if (userReview.ReviewerUserId == reviewerUserId)
                    {
                        return $"User {reviewerUserId} already reviewed this recipe";
                    }
                }
            }

            var review = new UserReview
            {
               ReviewerUserId = reviewerUserId,
               Rating = rating,
               Comment = comment,
               PublicRecipe = pubR
            };

            pubR.AddReview(review);
            _publicRecipeRepo.Update(pubR);  //Save entire graph of data
            return string.Empty;
        }
Esempio n. 33
0
 public bool AddReview(UserReview review)
 {
     if (this.Reviews == null) this.Reviews = new List<UserReview>();
     this.Reviews.Add(review);
     return true;
 }