}// end of the lstUserName Select Event: // // UserReview button which will display movie name and review given in the movie with username on the top: // private void cndUserReview_Click(object sender, EventArgs e) { this.lstReview1.Items.Clear(); if (this.lstUserName.SelectedIndex < 0) { MessageBox.Show("Please select a user..."); return; } string username = this.lstUserName.Text; int userID = System.Int32.Parse(this.txtUserID.Text); this.lstReview1.Items.Add(username); this.lstReview1.Items.Add(""); BusinessTier.Business biztier = new BusinessTier.Business(this.txtDatabase.Text); BusinessTier.UserDetail details = biztier.GetUserDetail(userID); var reviews = details.Reviews; foreach (var review in reviews) { var movieID = review.MovieID; BusinessTier.MovieDetail detail = biztier.GetMovieDetail(movieID); string line = string.Format("{0}-> {1}", detail.movie.MovieName, review.Rating); this.lstReview1.Items.Add(line); } }//end of the username review button:
private void button9_Click(object sender, EventArgs e) { String uname; String dbfilename = this.dbname.Text; // get DB name from text box: BusinessTier.Business biztier = new BusinessTier.Business(dbfilename); if (biztier.TestConnection()) { if (this.listBox2.SelectedIndex < 0) { MessageBox.Show("Please select a user"); return; } else { uname = this.listBox2.Text; BusinessTier.UserDetail userdetails = biztier.GetUserDetail(System.Int32.Parse(this.textBox1.Text)); BusinessTier.Movie mDetails; this.listBox1.Items.Clear(); this.listBox1.Items.Add(uname); this.listBox1.Items.Add(""); foreach (var j in userdetails.Reviews) { mDetails = biztier.GetMovie(j.MovieID); this.listBox1.Items.Add(mDetails.MovieName + " -> " + j.Rating); } } } else { MessageBox.Show("Connection could not be established"); return; } }
private void getuserreviews() { this.listBox4.Items.Clear(); string dbfilename = this.textBox1.Text; BusinessTier.Business biztier = new BusinessTier.Business(dbfilename); if (!biztier.TestConnection()) { return; } if (textBox6.Text.Length == 0) { return; } int userID = Convert.ToInt32(textBox6.Text); BusinessTier.UserDetail details = biztier.GetUserDetail(userID); var reviews = details.Reviews; foreach (var review in reviews) { string moviename = biztier.GetMovie(review.MovieID).MovieName; string line = string.Format("{0}-> {1}", moviename, review.Rating); listBox4.Items.Add(line); } }
private void userReviewsBUTTON_Click(object sender, EventArgs e) { this.displayLISTBOX.Items.Clear(); //this.typeMovieNameTEXTBOX.Text = " "; string filename = this.filenameTEXTBOX.Text; BusinessTier.Business biztier = new BusinessTier.Business(filename); var user = biztier.GetNamedUser(this.typeUserNameTEXTBOX.Text); if (user == null) { MessageBox.Show("Wrong user name!"); } else { displayLISTBOX.Items.Add(this.typeUserNameTEXTBOX.Text); displayLISTBOX.Items.Add(" "); BusinessTier.UserDetail userDetail = biztier.GetUserDetail(user.UserID); foreach (var review in userDetail.Reviews) { BusinessTier.Movie movie = biztier.GetMovie(review.MovieID); displayLISTBOX.Items.Add(movie.MovieName + " -> " + review.Rating); } } }
//----------------------------------------------------------------------------------------------------------------------------------------- private void button3_Click(object sender, EventArgs e) // Search User Reviews { listBox2.Items.Clear(); // clear display string dbfilename = this.textBox3.Text; //get DB name from text box: //where the database is located BusinessTier.Business biztier = new BusinessTier.Business(dbfilename); string username = this.textBox10.Text; //get user’s input from where they are clicking BusinessTier.User user = biztier.GetNamedUser(username); if (user == null) { MessageBox.Show("Invalid User"); return; } BusinessTier.UserDetail ratings = biztier.GetUserDetail(user.UserID); // from Object browser listBox2.Items.Add(username); listBox2.Items.Add(" "); foreach (var x in ratings.Reviews) { var movie = biztier.GetMovie(x.MovieID); string movieName = movie.MovieName; listBox2.Items.Add(movieName + " -> " + x.Rating); } this.textBox10.Clear();// clear textBox }
//--------------------------------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------------------------------- // // Get User Reviews // private void button4_Click(object sender, EventArgs e) { // Clear list box this.lstUserReviews.Items.Clear(); // Wait for user to select a user if (this.lstUsers.SelectedIndex < 0) { MessageBox.Show("Please select a user..."); return; } // Get user name string username = this.lstUsers.Text; // Check if user is not found, display error message if (username == null) { MessageBox.Show("User not found"); return; } int userID = System.Int32.Parse(this.txtUserID.Text); this.lstUserReviews.Items.Add(username); this.lstUserReviews.Items.Add(""); BusinessTier.Business biztier = new BusinessTier.Business(this.txtDatabase.Text); BusinessTier.UserDetail details = biztier.GetUserDetail(userID); // No reviews if (details == null) { MessageBox.Show("No Reviews"); return; } var reviews = details.Reviews; // Display movie name and rating foreach (var review in reviews) { BusinessTier.Movie movie = biztier.GetMovie(review.MovieID); string line = string.Format("{0} -> {1}", movie.MovieName, review.Rating); this.lstUserReviews.Items.Add(line); } }
// Get all reviews entered by a particular Netflix user private void btn_getUserReviews_Click(object sender, EventArgs e) { this.listBox_reviews.Items.Clear(); if (this.listBox_users.SelectedIndex < 0) { MessageBox.Show("Please select a user..."); return; } string filename = this.textBox_filename.Text; if (!fileExists(filename)) { return; } string userName = this.listBox_users.Text; int userID = System.Int32.Parse(this.textBox_userID.Text); this.listBox_reviews.Items.Add(userName); this.listBox_reviews.Items.Add(""); BusinessTier.Business biztier = new BusinessTier.Business(filename); BusinessTier.UserDetail details2 = biztier.GetUserDetail(userID); var reviews2 = details2.Reviews; if (reviews2.Count <= 0) { string line = "-No reviews-"; this.listBox_reviews.Items.Add(line); return; } this.Cursor = Cursors.WaitCursor; foreach (var review in reviews2) { BusinessTier.MovieDetail details = biztier.GetMovieDetail(review.MovieID); string line = string.Format("{0} -> {1}", details.movie.MovieName, review.Rating); this.listBox_reviews.Items.Add(line); } this.Cursor = Cursors.Default; }
// // GetUserDetail: // // Given a USER ID, returns detailed information about this user --- all // the reviews submitted by this user, the total number of reviews, average // rating given, etc. If the user cannot be found, null is returned. // public UserDetail GetUserDetail(int UserID) { // USER OBJECT ----------------------------------------------------------------------------- BusinessTier.User User = GetUser(UserID); // ----------------------------------------------------------------------------------------- // AVG RATING ------------------------------------------------------------------------------ double avgRating; string sql = string.Format(@"SELECT AVG(CAST(Rating as float)) FROM Reviews WHERE UserID = {0};", UserID); object query = dataTier.ExecuteScalarQuery(sql); if (query.ToString() != "") { avgRating = Convert.ToDouble(query.ToString()); } else { avgRating = 0.0; } // ----------------------------------------------------------------------------------------- // NUM OF REVIEWS -------------------------------------------------------------------------- sql = string.Format(@"SELECT Count(UserID) FROM Reviews WHERE UserID = {0};", UserID); query = dataTier.ExecuteScalarQuery(sql); int numReviews = Convert.ToInt32(query.ToString()); // ----------------------------------------------------------------------------------------- // BUILDING LIST OF REVIEWS ---------------------------------------------------------------- List <Review> reviews = new List <Review>(); // HARVESTS ALL DATA WE NEED EXCEPT MOVIEID (ALREADY HAVE) sql = string.Format(@"SELECT DISTINCT ReviewID, Rating, MovieID FROM Reviews WHERE UserID = {0} ORDER BY Rating DESC, ReviewID ASC;", UserID); DataSet reviewsSet = dataTier.ExecuteNonScalarQuery(sql); foreach (DataRow row in reviewsSet.Tables["TABLE"].Rows) { reviews.Add(new BusinessTier.Review(Convert.ToInt32(row["ReviewID"]), Convert.ToInt32(row["MovieID"]), UserID, Convert.ToInt32(row["Rating"]))); } // ----------------------------------------------------------------------------------------- BusinessTier.UserDetail UserDetail = new BusinessTier.UserDetail(User, avgRating, numReviews, reviews); return(UserDetail); }
/* Displays all of the users reviews in a listbox */ public void getAllUserReviews() { int index = this.listBox1.SelectedIndex; BusinessTier.Business btier = new BusinessTier.Business(this.textBox1.Text); // test connection to database if (!btier.TestConnection()) { MessageBox.Show("Can't connect to the database!"); return; } // Get user if the user exists BusinessTier.User user = btier.GetNamedUser(this.listBox1.Items[index].ToString()); if (user == null) { MessageBox.Show("User does not exist!"); return; } else { // Get all of the users reviews this.listBox2.Items.Clear(); BusinessTier.UserDetail userDetails = btier.GetUserDetail(user.UserID); if (userDetails.NumReviews == 0) { this.listBox2.Items.Add("No Reviews"); } else { // For all reviews, get movie name + rating and insert this.listBox2.Items.Add(user.UserName); this.listBox2.Items.Add(""); foreach (BusinessTier.Review U in userDetails.Reviews) { BusinessTier.Movie m = btier.GetMovie(U.MovieID); this.listBox2.Items.Add(m.MovieName + "->" + U.Rating); } } } }
private void listLISTBOX_SelectedIndexChanged(object sender, EventArgs e) { if (LIST_STATUS != 3) { this.displayLISTBOX.Items.Clear(); } string filename = this.filenameTEXTBOX.Text; BusinessTier.Business biztier = new BusinessTier.Business(filename); if (LIST_STATUS == 1) // movie button { if (this.listLISTBOX != null) { // movie name var movie = biztier.GetMovie(this.listLISTBOX.Text); movieIdTEXTBOX.Text = movie.MovieID.ToString(); //typeMovieNameTEXTBOX.Text = movie.MovieName.ToString(); typeMovieNameTEXTBOX.Text = ""; typeUserNameTEXTBOX.Text = ""; // avg rating var movie2 = biztier.GetMovieDetail(movie.MovieID); avgRatingTEXTBOX.Text = movie2.AvgRating.ToString(); displayLISTBOX.Items.Add(this.listLISTBOX.Text); displayLISTBOX.Items.Add(" "); BusinessTier.MovieDetail movieDetail = biztier.GetMovieDetail(movie.MovieID); foreach (var review in movieDetail.Reviews) { displayLISTBOX.Items.Add(review.UserID + ": " + review.Rating); } } } else if (LIST_STATUS == 2) // user button { if (this.listLISTBOX != null) { // user id var user = biztier.GetNamedUser(this.listLISTBOX.Text); userIdTEXTBOX.Text = user.UserID.ToString(); //typeUserNameTEXTBOX.Text = user.UserName.ToString(); typeMovieNameTEXTBOX.Text = ""; typeUserNameTEXTBOX.Text = ""; // occupation occupationTEXTBOX.Text = user.Occupation.ToString(); displayLISTBOX.Items.Add(this.listLISTBOX.Text); displayLISTBOX.Items.Add(" "); BusinessTier.UserDetail userDetail = biztier.GetUserDetail(user.UserID); foreach (var review in userDetail.Reviews) { BusinessTier.Movie movie = biztier.GetMovie(review.MovieID); displayLISTBOX.Items.Add(movie.MovieName + " -> " + review.Rating); } } } else if (LIST_STATUS == 3) { insertReviewMovieTEXTBOX.Text = this.listLISTBOX.Text; } }