protected void Page_Load(object sender, EventArgs e) { //if the sessiom is null if (Session["attraction"] == null) { Response.Redirect("AttractionPage.aspx"); //brings back to the attraction page } else { //create a new list for attraction List <Attraction> attList = new List <Attraction>(); //retrieve the attraction id from the session and use it to get a attraction from the database Attraction att = AttractionDB.getAttractionByID(Session["attraction"].ToString()); attList.Add(att); //add a vehicle to attraction list lvAttraction.DataSource = attList; //add the attraction list to a list view data source lvAttraction.DataBind(); //bind the data into listview //get all feedbacks of a vehicle List <Review> rvList = ReviewDB.getAllAttractionReviewByID(Convert.ToInt32(Session["attraction"])); attReviews.DataSource = rvList; attReviews.DataBind(); if (rvList.Count == 0) //checking whether there is no feedback available for attraction { lblOutput.Text = "No feedback available for this attraction"; //show the message } } }
protected void btnSearch_Click(object sender, EventArgs e) { gvReviewReportedAttraction.Visible = false; gvReviewReportedHotel.Visible = false; gvReviewReportedRestaurant.Visible = false; gvReviewH.Visible = false; gvReviewA.Visible = false; gvReviewR.Visible = false; lblDelete.Visible = false; pnlEdit.Visible = false; if (ddlSP.SelectedItem.Text == "Attraction Owner") { gvReviewReportedAttraction.Visible = true; gvReviewA.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllAttractionReportedReviewByName(tbxName.Text); gvReviewReportedAttraction.DataSource = revList; gvReviewReportedAttraction.DataBind(); List <Review> rvList = ReviewDB.getAllAttractionReportedReview(); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllAttractionReviewByName(tbxName.Text); gvReviewA.DataSource = dvList; gvReviewA.DataBind(); List <Review> fbNormalList = ReviewDB.getAllAttractionReview(); } else if (ddlSP.SelectedItem.Text == "Hotel Owner") { gvReviewReportedHotel.Visible = true; gvReviewH.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllHotelReportedReviewByName(tbxName.Text); gvReviewReportedHotel.DataSource = revList; gvReviewReportedHotel.DataBind(); List <Review> rvList = ReviewDB.getAllHotelReportedReviewByName(tbxName.Text); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllHotelReviewByName(tbxName.Text); gvReviewH.DataSource = dvList; gvReviewH.DataBind(); List <Review> fbNormalList = ReviewDB.getAllHotelReviewByName(tbxName.Text); } else if (ddlSP.SelectedItem.Text == "Restaurant Owner") { gvReviewReportedRestaurant.Visible = true; gvReviewR.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllRestaurantReportedReviewByName(tbxName.Text); gvReviewReportedRestaurant.DataSource = revList; gvReviewReportedRestaurant.DataBind(); List <Review> rvList = ReviewDB.getAllRestaurantReportedReviewByName(tbxName.Text); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllRestaurantReviewByName(tbxName.Text); gvReviewR.DataSource = dvList; gvReviewR.DataBind(); List <Review> fbNormalList = ReviewDB.getAllRestaurantReviewByName(tbxName.Text); } }
protected void btnGiveFeedback_Click(object sender, EventArgs e) { //Recording the feedback when user clicked to add feedback pnlFeedback.Visible = false; //Retrieving the clicked feedback panel ItemBooking item = (ItemBooking)Session["retrieve"]; Review review = new Review(); //Receiving the written comment and rating to add in the database review.Date = DateTime.Now; review.Time = DateTime.Now; review.Feedback = tbxComment.Text; review.Rating = Convert.ToInt32(tbxRatings.Text); review.ReportStatus = ddlHotel.SelectedItem.Text; review.HotelID = item.RoomID.Hotel; Customer c = (Customer)Session["user"]; review.CustEmail = c; //Adding feedback with method int add = ReviewDB.addReviewRoom(review); lbladded.Visible = true; //Displaying message to inform user lbladded.Text = "Feedback submitted successfully! Thanks for your feedback................"; }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Session["restaurant"] == null) { Response.Redirect("HomePage.aspx"); } else { List <Restaurant> resList = new List <Restaurant>(); //get a restaurant by using restaurant id store in session Restaurant r = RestaurantDB.getRestaurantByID(Session["restaurant"].ToString()); //add tour guide to the tour guide list resList.Add(r); //add the list to the list view data source lvRestaurant.DataSource = resList; lvRestaurant.DataBind(); //get all the feedback of a tour guide List <Review> revList = ReviewDB.getAllRestaurantReviewByID(Convert.ToInt32(Session["restaurant"])); //add the feedback list to the grid view data source resReviews.DataSource = revList; resReviews.DataBind(); if (revList.Count == 0) //checking whether there is a feedback available for a review { lblOutput.Text = "No feedback available for this restaurant"; } } } }
protected void Page_Load(object sender, EventArgs e) { if (Session["HotelID"] != null) { List <Hotel> hotels = new List <Hotel>(); //get the hotel from the database using hotel id Hotel h = HotelDB.getHotelByID(Session["HotelID"].ToString()); hotels.Add(h); //add the account to the hotel list lvAccommodation.DataSource = hotels; //add the hotel list to list view data source lvAccommodation.DataBind(); //bind the list view data //retrieve all the feedback available for an hotel from the database and store them in a list List <Review> rvList = ReviewDB.getAllHotelReviewByID(Convert.ToInt32(Session["HotelID"])); AcmReviews.DataSource = rvList; //add the datasource to the grid view AcmReviews.DataBind(); // bind the grid view data if (rvList.Count == 0) //checking whether there is a feedback availble for that hotel { lblOutput.Text = "No feedback available for this hotel"; } } else { Response.Redirect("HomePage.aspx"); //transfer the page to view hotel } }
protected void Page_Load(object sender, EventArgs e) { //if user hotel is null if (Session["userHotel"] == null) { Response.Redirect("LoginForm.aspx"); //brings to the loginform page } lblNoResult.Text = ""; lblFeedback.Visible = false; if (!IsPostBack) { //Displaying upcoming and past bookings lblCustomer.Visible = false; dlCustomer.Visible = false; gvFeedback.Visible = false; lblTitle.Text = "Upcoming Booking"; gvHistory.Visible = false; //Getting current signed in user Hotel hotel = (Hotel)Session["userHotel"]; //Getting booked rooms from database and display them List <ItemBooking> itemList = ItemBookingDB.getAllRoomItemBooking(); List <ItemBooking> upcoming = new List <ItemBooking>(); List <ItemBooking> history = new List <ItemBooking>(); foreach (ItemBooking it in itemList) { //Checking the date to show only the upcoming events if (it.RoomID.Hotel.OrgEmail == hotel.OrgEmail) { if (it.StartDate > DateTime.Now && it.ItemBookingStatus != "Canceled") { ItemBooking item = it; upcoming.Add(item); gvUpcoming.DataSource = upcoming; gvUpcoming.DataBind(); //Keep the list of upcoming bookings in a session for further use Session["upcoming"] = upcoming; } //Displaying the past bookings else { ItemBooking item = it; history.Add(item); gvHistory.DataSource = history; gvHistory.DataBind(); //Keep the list of past bookings in a session for further use Session["history"] = history; } } } Hotel acc = (Hotel)Session["userHotel"]; //Getting feedback from database and display them List <Review> feedbackList = ReviewDB.getAllHotelReviewByID(acc.HotelID); gvFeedback.DataSource = feedbackList; gvFeedback.DataBind(); Session["Feedback"] = feedbackList; } }
internal Review Map(ReviewDB dbReview) { if (dbReview == null) return null; var personRev = new PersonRepository(); var author = personRev.Get(dbReview.AuthorID); return new Review() { Id = dbReview.Id, Content = dbReview.Content, Score = dbReview.Score, Author = author, MovieId = dbReview.MovieId }; }
private Review Map(ReviewDB dbReview) { if (dbReview == null) { return(null); } return(new Review() { Id = dbReview.Id, Content = dbReview.Content, Author = Map(dbReview.Author), MovieId = dbReview.MovieId, Score = dbReview.Score }); }
public void SetUp() { reviewDB = new ReviewDB(connectionString); userLogic = new UserLogic(connectionString); userDB = new UserDB(connectionString); productDB = new ProductDB(connectionString); user = userDB.GetUser("email", "*****@*****.**"); if (user.ID < 1) { userLogic.CreateUserWithPassword("Rune", "G", "G-Street", 9000, "G-Borg", "*****@*****.**", 81238123, "SuperTester123!"); } }
private Review Map(ReviewDB dbSecond) { if (dbSecond == null) { return(null); } return(new Review() { Id = dbSecond.Id, Content = dbSecond.Content, Score = dbSecond.Score, Author = dbSecond.Author, MovieId = dbSecond.MovieId }); }
protected void btnUpdate_Click(object sender, EventArgs e) { //to get all the data from feedbackDb by calling methold and search by ID Review d = ReviewDB.getReviewByID(lblFeedbackID.Text); //get the selected item d.ReportStatus = ddlStatus.SelectedItem.Text; //to update the feedback by calling method from feedbackDB int result = ReviewDB.updateReview(d); if (result > 0) { Page_Load(sender, e); } }
public async Task <Result <ReviewView> > UpdateAsync(ReviewToUpdate review, CancellationToken cancellationToken = default) { ReviewDB reviewForUpdate = _mapper.Map <ReviewDB>(review); ReviewDB reviewOld = await _context.Reviews.AsNoTracking().FirstOrDefaultAsync(_ => _.Id == Guid.Parse(review.Id)); if (reviewOld is null) { return(Result <ReviewView> .Quite <ReviewView>(ExceptionConstants.REVIEW_WAS_NOT_FOUND)); } var rating = await _context.Rating.AsNoTracking().FirstOrDefaultAsync(cancellationToken); if (rating is null) { rating = new RatingDB() { Count = 0, Sum = 0 }; _context.Rating.Add(rating); } rating.Sum = rating.Sum.Value - reviewOld.Rating + reviewForUpdate.Rating; _context.Entry(rating).Property(c => c.Sum).IsModified = true; reviewForUpdate.Id = Guid.Parse(review.Id); reviewForUpdate.ModificationTime = DateTime.Now; _context.Entry(reviewForUpdate).Property(c => c.Headline).IsModified = true; _context.Entry(reviewForUpdate).Property(c => c.Rating).IsModified = true; _context.Entry(reviewForUpdate).Property(c => c.Content).IsModified = true; _context.Entry(reviewForUpdate).Property(c => c.ModificationTime).IsModified = true; try { await _context.SaveChangesAsync(); var reviewAfterUpdate = await _context.Reviews.Where(_ => _.Id == Guid.Parse(review.Id)).AsNoTracking().FirstOrDefaultAsync(cancellationToken); return(reviewAfterUpdate is null ? Result <ReviewView> .Quite <ReviewView>(ExceptionConstants.REVIEW_WAS_NOT_FOUND) : Result <ReviewView> .Ok(_mapper.Map <ReviewView>(reviewAfterUpdate))); } catch (DbUpdateConcurrencyException ex) { return(Result <ReviewView> .Fail <ReviewView>(ExceptionConstants.CANNOT_UPDATE_MODEL + ex.Message)); } catch (DbUpdateException ex) { return(Result <ReviewView> .Fail <ReviewView>(ExceptionConstants.CANNOT_UPDATE_MODEL + ex.Message)); } }
protected void gvReviewReportedRestaurant_RowCommand(object sender, GridViewCommandEventArgs e) { pnlEdit.Visible = true; //to get all the data from feedbackDb by calling methold and select the index Review d = ReviewDB.getReviewByID(e.CommandArgument.ToString()); if (d == null) { lblFeedbackID.Text = ""; ddlStatus.Text = "Reported!"; } else { lblFeedbackID.Text = d.RevID.ToString(); ddlStatus.Text = d.ReportStatus.ToString(); } }
protected void gvReviewR_PageIndexChanging(object sender, GridViewPageEventArgs e) { gvReviewH.PageIndex = e.NewPageIndex; if (tbxName.Text == "") { //to get all the data from feedbackDB by calling method List <Review> dvList = ReviewDB.getAllRestaurantReview(); gvReviewR.DataSource = dvList; gvReviewR.DataBind(); } else { //to get all the data from feedbackDB by calling method and search by name List <Review> revList = ReviewDB.getAllHotelReviewByName(tbxName.Text); gvReviewR.DataSource = revList; gvReviewR.DataBind(); } }
private Review Map(ReviewDB reviewDB) { if (reviewDB == null) { return(null); } var personRepo = new PersonRepository(); Person person = personRepo.Get(reviewDB.AuthorId); return(new Review() { Id = reviewDB.Id, Content = reviewDB.Content, Score = reviewDB.Score, Author = person, MovieId = reviewDB.MovieId }); }
protected void gvFeedback_RowUpdating(object sender, GridViewUpdateEventArgs e) { //Allowing access to report feedbacks lblCustomer.Visible = false; dlCustomer.Visible = false; gvFeedback.Visible = true; List <Review> feedbackList = (List <Review>)Session["Feedback"]; //Calculating selected feedback with paging Review feedback = feedbackList[Convert.ToInt32(gvFeedback.PageSize * gvFeedback.PageIndex + e.RowIndex)]; feedback.RevID = feedback.RevID.ToString(); feedback.ReportStatus = "Reported!"; //updating report status into database int update = ReviewDB.updateReview(feedback); gvFeedback.EditIndex = -1; bindF(); }
public async Task <Result <ReviewView> > AddAsync(ReviewToAdd review, string userIdFromIdentity, CancellationToken cancellationToken = default) { UserDB userDB = await _context.Users.Where(_ => _.IdFromIdentity == userIdFromIdentity).Select(_ => _).AsNoTracking().FirstOrDefaultAsync(cancellationToken); var reviewToAdd = _mapper.Map <ReviewDB>(review); reviewToAdd.UserId = userDB.Id; reviewToAdd.OrderId = Guid.Parse(review.OrderId); _context.Reviews.Add(reviewToAdd); var rating = await _context.Rating.FirstOrDefaultAsync(cancellationToken); if (rating is null) { rating = new RatingDB() { Count = 0, Sum = 0 }; _context.Rating.Add(rating); } rating.Sum += reviewToAdd.Rating; rating.Count++; _context.Entry(rating).Property(c => c.Sum).IsModified = true; _context.Entry(rating).Property(c => c.Count).IsModified = true; try { await _context.SaveChangesAsync(cancellationToken); ReviewDB reviewAfterAdding = await _context.Reviews.Where(_ => _.Id == reviewToAdd.Id).Select(_ => _).AsNoTracking().FirstOrDefaultAsync(cancellationToken); return(Result <ReviewView> .Ok(_mapper.Map <ReviewView>(reviewAfterAdding))); } catch (DbUpdateConcurrencyException ex) { return(Result <ReviewView> .Fail <ReviewView>(ExceptionConstants.CANNOT_SAVE_MODEL + ex.Message)); } catch (DbUpdateException ex) { return(Result <ReviewView> .Fail <ReviewView>(ExceptionConstants.CANNOT_SAVE_MODEL + ex.Message)); } catch (ArgumentNullException ex) { return(Result <ReviewView> .Fail <ReviewView>(ExceptionConstants.SOURCE_IS_NULL + ex.Message)); } }
protected void gvReviewR_RowDeleting(object sender, GridViewDeleteEventArgs e) { lblDelete.Visible = true; //get the list from FeedbackDB by calling the method and get the session List <Review> fbNormalList = ReviewDB.getAllRestaurantReview(); //to perform paging Review fb = fbNormalList[gvReviewR.PageIndex * gvReviewR.PageSize + e.RowIndex]; pnlEdit.Visible = false; //call the delete method from FeedbackDB int result = ReviewDB.deleteReview(fb); if (result > 0) { lblDelete.Text = "Feedback Deleted!"; gvReviewR.DataSource = ReviewDB.getAllRestaurantReview(); gvReviewR.DataBind(); } }
protected void gvReviewReportedAttraction_PageIndexChanging(object sender, GridViewPageEventArgs e) { pnlEdit.Visible = false; //to perform paging gvReviewReportedAttraction.PageIndex = e.NewPageIndex; if (tbxName.Text == "") { //to get all the data from feedbackDB by calling method List <Review> revList = ReviewDB.getAllAttractionReportedReview(); gvReviewReportedAttraction.DataSource = revList; gvReviewReportedAttraction.DataBind(); } else { //to get all the data from feedbackDB by calling method and search by name List <Review> revList = ReviewDB.getAllAttractionReportedReviewByName(tbxName.Text); gvReviewReportedAttraction.DataSource = revList; gvReviewReportedAttraction.DataBind(); } }
protected void btnGiveFeedback0_Click(object sender, EventArgs e) { //Recording the feedback when user clicked to add feedback pnlFeedback0.Visible = false; ItemBooking item = (ItemBooking)Session["retrieve"]; Review review = new Review(); //Receiving the written comment and rating to add in the database review.Feedback = tbxComment0.Text; review.Rating = Convert.ToInt32(tbxRatings0.Text); review.AttractionID = item.TicketID.Attraction; review.ReportStatus = ddlTicket.SelectedItem.Text; review.Date = DateTime.Now; review.Time = DateTime.Now; Customer c = (Customer)Session["user"]; review.CustEmail = c; //Adding feedback with method int add = ReviewDB.addReviewTicket(review); lbladded.Visible = true; lbladded.Text = "Feedback submitted successfully! Thanks for your feedback"; }
// Constructor used for testing public ProductLogic(string connectionString) { productDB = new ProductDB(connectionString); reviewDB = new ReviewDB(connectionString); userDB = new UserDB(connectionString); }
public ProductLogic() { productDB = new ProductDB(); reviewDB = new ReviewDB(); userDB = new UserDB(); }
public ProductService() { productDb = new ProductDB(); reviewDB = new ReviewDB(); productLogic = new ProductLogic(); }
protected void Page_Load(object sender, EventArgs e) { //if session for admin is null if (Session["admin"] == null) { Response.Redirect("LoginForm.aspx"); //redirect to the loginform page } gvReviewReportedAttraction.Visible = false; gvReviewReportedHotel.Visible = false; gvReviewReportedRestaurant.Visible = false; gvReviewH.Visible = false; gvReviewA.Visible = false; gvReviewR.Visible = false; lblDelete.Visible = false; pnlEdit.Visible = false; if (ddlSP.SelectedItem.Text == "Attraction Owner") //admin checks the review for attraction owner { gvReviewReportedAttraction.Visible = true; gvReviewA.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllAttractionReportedReview(); gvReviewReportedAttraction.DataSource = revList; gvReviewReportedAttraction.DataBind(); List <Review> rvList = ReviewDB.getAllAttractionReportedReview(); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllAttractionReview(); gvReviewA.DataSource = dvList; gvReviewA.DataBind(); List <Review> fbNormalList = ReviewDB.getAllAttractionReview(); } else if (ddlSP.SelectedItem.Text == "Hotel Owner") //admin checks the review for hotel owner { gvReviewReportedHotel.Visible = true; gvReviewH.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllHotelReportedReview(); gvReviewReportedHotel.DataSource = revList; gvReviewReportedHotel.DataBind(); List <Review> rvList = ReviewDB.getAllHotelReportedReview(); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllHotelReview(); gvReviewH.DataSource = dvList; gvReviewH.DataBind(); List <Review> fbNormalList = ReviewDB.getAllHotelReview(); } else if (ddlSP.SelectedItem.Text == "Restaurant Owner") //admin checks the review for restaurant owner { gvReviewReportedRestaurant.Visible = true; gvReviewR.Visible = true; //get all the data from feedbackDB by calling the method List <Review> revList = ReviewDB.getAllRestaurantReportedReview(); gvReviewReportedRestaurant.DataSource = revList; gvReviewReportedRestaurant.DataBind(); List <Review> rvList = ReviewDB.getAllRestaurantReportedReview(); //get all the data from feedbackDB by calling the method List <Review> dvList = ReviewDB.getAllRestaurantReview(); gvReviewR.DataSource = dvList; gvReviewR.DataBind(); List <Review> fbNormalList = ReviewDB.getAllRestaurantReview(); } }