public async Task <ActionResult> ShowRecensionForLocation(Guid lokacija) { ApplicationDbContext dbCtx = ApplicationDbContext.Create(); Location lokacijaCela = dbCtx.Locations.Include(x => x.ProjectionsList).FirstOrDefault(x => x.Id == lokacija); // HallTimeProjection projekcija = dbCtx.HallTimeProjection.Include(x => x.Projection).FirstOrDefault(x => x.Id == rezKarta.Projection.Id); string id = User.Identity.GetUserId(); List <Recension> recenzije = dbCtx.Recensions.ToList(); foreach (Recension r in recenzije) { Recension re = dbCtx.Recensions.Include(x => x.RecensionUser).FirstOrDefault(x => x.Id == r.Id); Recension rec = dbCtx.Recensions.Include(x => x.location).FirstOrDefault(x => x.Id == re.Id); if (rec.location != null) { if (re.location.Id.Equals(rec.location.Id) && re.RecensionUser.Id.Equals(id)) { return(View("AlreadyGaveRecensionLocation", rec)); } } } return(View("ShowRecensionForLocation", lokacijaCela)); }
public async Task <ActionResult> ShowRecension(Guid rezervacija) { ApplicationDbContext dbCtx = ApplicationDbContext.Create(); Ticket rezKarta = dbCtx.Reservations.Include(x => x.Projection).FirstOrDefault(x => x.Id == rezervacija); HallTimeProjection projekcija = dbCtx.HallTimeProjection.Include(x => x.Projection).FirstOrDefault(x => x.Id == rezKarta.Projection.Id); string id = User.Identity.GetUserId(); Guid idproj = projekcija.Projection.Id; List <Recension> recenzije = dbCtx.Recensions.ToList(); foreach (Recension r in recenzije) { Recension re = dbCtx.Recensions.Include(x => x.RecensionUser).FirstOrDefault(x => x.Id == r.Id); if (re.projection != null) { if (re.projection.Id.Equals(idproj) && re.RecensionUser.Id.Equals(id)) { return(View("AlreadyGaveRecensionProjection", r)); } } } return(View("ShowRecension", projekcija.Projection)); }
public JsonResult RateProjection(String[] arr) { ApplicationDbContext dbCtx = ApplicationDbContext.Create(); Guid idProjekcije = new Guid(arr[0]); int ocena = -1; int.TryParse(arr[1], out ocena); Projection projekcija = dbCtx.Projections.Include(x => x.ProjHallsTimeList).FirstOrDefault(x => x.Id == idProjekcije); string userId = User.Identity.GetUserId(); var reserver = dbCtx.Users.Include(x => x.RecensionList).FirstOrDefault(x => x.Id == userId); Recension newRecension = new Recension { location = null, projection = projekcija, RatingLocation = -1, RatingProjection = ocena, RecensionUser = reserver }; reserver.RecensionList.Add(newRecension); dbCtx.Recensions.Add(newRecension); dbCtx.SaveChanges(); var recenzije = dbCtx.Database.SqlQuery <Recension>("select * from Recensions where projection_Id = '" + projekcija.Id + "'").ToList(); double suma = 0; foreach (Recension rec in recenzije) { suma += rec.RatingProjection; } double prosecna = suma / recenzije.Count; projekcija.AvgRating = prosecna; dbCtx.SaveChanges(); var obj = new { tr = true }; return(Json(obj)); }
/// <summary> /// Uppdaterar en post. /// </summary> /// <param name="contact">Posten som ska uppdateras.</param> public void UpdateReview(Recension toEdit) { using (var con = CreateConnection()) { try { var cmd = new SqlCommand("appSchema.usp_UpdateReview", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@RecID", SqlDbType.Int, 4).Value = toEdit.RecID; cmd.Parameters.Add("@FilmID", SqlDbType.Int, 4).Value = toEdit.FilmID; cmd.Parameters.Add("@MedlemID", SqlDbType.Int, 4).Value = toEdit.MedlemID; cmd.Parameters.Add("@Recension", SqlDbType.NVarChar, 150).Value = toEdit.Recensionen; con.Open(); cmd.ExecuteNonQuery(); } catch { throw new ApplicationException("Ett fel uppstod i samband med uppkopplingen mot databasen."); } } }
public void AddRecension(Recension toAdd) { var validationContext = new ValidationContext(toAdd); var validationResults = new List <ValidationResult>(); if (!Validator.TryValidateObject(toAdd, validationContext, validationResults)) { var ex = new ValidationException("Objektet klarade inte valideringen."); ex.Data.Add("ValidationResults", validationResults); throw ex; } //if (toAdd.RecID == 0) //{ // RecDAL.AddReview(toAdd); //} //else //{ // RecDAL.AddReview(toAdd); //} RecDAL.AddReview(toAdd); }