public ActionResult Create(RatingVm ratingViewModel) { if (ModelState.IsValid) { try { var rating = Mapper.Map <RatingVm, Rating>(ratingViewModel); rating.Carrier = _carrierRepository.GetById(ratingViewModel.IdCarrier); rating.User = (User)Session["User"]; _ratingRepository.Add(rating); } catch (DbEntityValidationException ex) { StringBuilder sb = new StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation\n", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } } return(RedirectToAction("Index")); } return(View(ratingViewModel)); }
public IEnumerable <RatingVm> GetById(int id) { var model = new List <RatingVm>(); try { var rating = _dbContext.Ratings.Where(x => x.FreelancerId == id).Include(x => x.ApplicationUser).ToList(); foreach (var i in rating) { RatingVm r = new RatingVm { Id = i.Id, Coments = i.Comment, FullName = i.ApplicationUser.Name + " " + i.ApplicationUser.LastName, Rating = i.Rate, Avatar = $"{_imgServer}{i.ApplicationUser.Avatar}" }; model.Add(r); } } catch (Exception) { model = null; } return(model); }
public async Task RemoveRating(int ProId, string UserName) { RatingVm ratingVms = await SearchRating(ProId, UserName); var client = new HttpClient(); await client.DeleteAsync(_configuration["local:BackEndUrl"] + "api/ratings/" + ratingVms.Id); }
public IViewComponentResult Invoke(int IDProduct) { RatingVm ratingVm = new RatingVm(); ratingVm.IDProduct = IDProduct; return(View(ratingVm)); }
public async Task <RatingVm> PostRating(RatingCreateRequest request) { var claimsIdentity = User.Identity as ClaimsIdentity; string userId = claimsIdentity.FindFirst("sub").Value; var rating = new RatingProduct { TotalStar = request.TotalStar, Comment = request.Comment, Date = DateTime.Now, ApplicationUserId = userId, IDProduct = request.IDProduct }; _context.RatingProducts.Add(rating); await _context.SaveChangesAsync(); var ratingVm = new RatingVm() { IDRating = rating.IDRating, TotalStar = rating.TotalStar, Comment = rating.Comment, Date = rating.Date, UserId = rating.ApplicationUserId, IDProduct = rating.IDProduct }; return(ratingVm); }
public async Task <RatingVm> PostRating(RatingCreateRequest request) { var rating = new EcommerceShop.Application.Models.Rating() { RateValue = request.RateValue, FeedBack = request.FeedBack, UserId = request.UserId, ProductId = request.ProductId }; var result = await _context.Ratings.Where(r => r.UserId == request.UserId && r.ProductId == request.ProductId).FirstOrDefaultAsync(); if (result != null) { return(new RatingVm()); } else { _context.Ratings.Add(rating); await _context.SaveChangesAsync(); } var ratingVm = new RatingVm() { RatingId = rating.RatingId, RateValue = rating.RateValue, FeedBack = rating.FeedBack, UserId = rating.UserId, ProductId = rating.ProductId }; return(ratingVm); }
public async Task PostRatingByID(int ProId, string UserName, double RatingText) { var client = new HttpClient(); RatingVm jsonInString = new RatingVm { ProductID = ProId, UserName = UserName, RatingText = RatingText }; await client.PostAsync(_configuration["local:BackEndUrl"] + "api/ratings", new StringContent(JsonConvert.SerializeObject(jsonInString), Encoding.UTF8, "application/json")); }
public ActionResult Delete(RatingVm carrierViewModel) { //var carrier = Mapper.Map<CarrierVm, Carrier>(carrierViewModel); var rating = _ratingRepository.GetById(carrierViewModel.Id); _ratingRepository.Remove(rating); return(RedirectToAction("Index")); }
public ActionResult Create(int id) { var user = (User)Session["User"]; var carrier = _carrierRepository.GetById(id); var ratingVm = new RatingVm { IdCarrier = carrier.Id, IdUser = user.Id }; return(View("~/Views/Rating/Create.cshtml", ratingVm)); }
public ActionResult Edit(RatingVm ratingViewModel) { if (ModelState.IsValid) { var rating = Mapper.Map <RatingVm, Rating>(ratingViewModel); _ratingRepository.Update(rating); return(RedirectToAction("Index")); } return(View(ratingViewModel)); }
public async Task <ActionResult <RatingVm> > PostRating(RatingVm x) { var rating = new Rating { RatingText = x.RatingText, ProductID = x.ProductID, UserName = x.UserName }; _dataContext.Rating.Add(rating); await _dataContext.SaveChangesAsync(); return(Accepted()); }
public async Task <ActionResult <Rating> > GetRating(string userid, int productid) { var rating = await _context.Ratings.FirstOrDefaultAsync(x => x.UserId == userid && x.ProductId == productid); if (rating == null) { return(rating); } var ratingvm = new RatingVm { UserId = rating.UserId, ProductId = rating.ProductId, Star = rating.Star, }; return(rating); }
public async Task <ActionResult <RatingVm> > GetRatingById(int id) { var rating = await _dataContext.Rating.FindAsync(id); if (rating == null) { return(NotFound()); } var product = new RatingVm { Id = rating.RatingID, UserName = rating.UserName, ProductID = rating.ProductID, RatingText = rating.RatingText }; return(product); }
public async Task <ActionResult <RatingVm> > GetRating(int id) { var rating = await _context.Ratings.FindAsync(id); if (rating == null) { return(NotFound()); } var ratingVm = new RatingVm { RatingId = rating.RatingId, RatingValue = rating.RatingValue, RatingBody = rating.RatingBody, RatingTime = rating.RatingTime }; return(ratingVm); }