Beispiel #1
0
        public async Task <bool> RateTitleAsync(int titleId, bool score)
        {
            var user = await _userManager.FindByNameAsync(
                _httpContext.User.FindFirst(ClaimTypes.NameIdentifier)?.Value);

            var profile = await _profileContext.FirstOrDefaultAsync(x => x.User == user);

            var currentRating = await _ratingContext.FirstOrDefaultAsync(x => x.ProfileId == profile.Id && x.TitleId == titleId);

            if (currentRating != null)
            {
                if (currentRating.Liked == score)
                {
                    _ratingContext.Remove(currentRating);
                }
                else
                {
                    currentRating.Liked = score;
                    _ratingContext.Update(currentRating);
                }

                return(await SaveCangesAsync());
            }

            var rating = new Models.Rating
            {
                ProfileId = profile.Id,
                TitleId   = titleId,
                Liked     = score
            };

            await _ratingContext.AddAsync(rating);

            return(await SaveCangesAsync());
        }
Beispiel #2
0
        public void PostRatings(RatingInformationDTO RatingToAdd)
        {
            var user = RequestContext.Principal;

            //try
            //{


            foreach (RatingDTO rating in RatingToAdd.Ratings)
            {
                Models.Rating newRating = new Models.Rating();
                newRating.ProductID      = RatingToAdd.ProductID;
                newRating.userID         = user.Identity.Name;
                newRating.RatingCategory = rating.RatedArea;
                newRating.rating         = rating.Score;
                //db.RatingDetails.Add(newRating);
                db.SaveChanges();
            }

            // do stuff to store the rating here

            //catch (Exception ex)
            //{
            //    throw new Exception("Cannot add a rating", ex);
            //}
        }
        public ActionResult RateUser(int?id, ShowsViewModel model)
        {
            User_Show      show      = db.User_Show.Where(s => s.ShowID == id).FirstOrDefault();
            ShowsViewModel viewModel = new ShowsViewModel(show);
            // Converting string into int
            int    numStars = getRating(model.RatingValue);
            string comment  = model.Comment;

            Models.Rating userRating = new Models.Rating();

            if (User.IsInRole("VenueOwner"))
            {
                User user = db.Users.Where(u => u.ID == viewModel.MusicianID).FirstOrDefault();
                userRating.UserID  = viewModel.MusicianID;
                userRating.Value   = numStars;
                userRating.Comment = comment;
                show.VenueRated    = true;
                user.AveRating     = CalcAveRating(user.ID, numStars);
            }
            else if (User.IsInRole("Musician"))
            {
                User user = db.Users.Where(u => u.ID == viewModel.VenueID).FirstOrDefault();
                userRating.UserID  = viewModel.VenueID;
                userRating.Value   = numStars;
                userRating.Comment = comment;
                show.MusicianRated = true;
                user.AveRating     = CalcAveRating(user.ID, numStars);
            }

            db.Ratings.Add(userRating);
            db.SaveChanges();

            return(RedirectToAction("MyShows"));
        }
Beispiel #4
0
 private void CreateQualifyClientFromInputData()
 {
     rating           = new Models.Rating();
     rating.comment   = TextBoxComment.Text;
     rating.isClient  = 1;
     rating.idRequest = Request.idRequest;
     rating.rating    = RatingBarQualify.Value;
 }
        public int Create(Models.Rating rating)
        {
            Data.Rating newRating = new Data.Rating {
                Description = rating.Description
            };
            db.Ratings.Add(newRating);

            db.SaveChanges();
            return(newRating.Id);
        }
        public IHttpActionResult PostRating(RatingInformationDTO RatingToAdd)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var user = RequestContext.Principal;

            //try
            //{


            foreach (RatingDTO rating in RatingToAdd.Ratings)
            {
                Models.Rating newRating = new Models.Rating();
                newRating.ProductID      = RatingToAdd.ProductID;
                newRating.userID         = user.Identity.Name;
                newRating.RatingCategory = rating.RatedArea;
                newRating.rating         = rating.Score;


                if (db.Ratings.Any(x => x.ProductID == newRating.ProductID && x.userID == newRating.userID && x.RatingCategory == newRating.RatingCategory))
                {
                    db.Ratings.Single(x => x.ProductID == newRating.ProductID && x.userID == newRating.userID && x.RatingCategory == newRating.RatingCategory).rating = newRating.rating;
                }
                else
                {
                    db.Ratings.Add(newRating);
                }
                db.SaveChanges();
            }



            //db.Ratings.Add(rating);

            //try
            //{
            //    db.SaveChanges();
            // }
            //catch (DbUpdateException)
            // {
            //    if (RatingExists(rating.userID))
            //    {
            //        return Conflict();
            //    }
            //    else
            //    {
            //        throw;
            //    }
            // }

            return(CreatedAtRoute("DefaultApi", new { id = RatingToAdd.ProductID }, RatingToAdd));
        }
 public void Checkrating(Models.Rating rating, Project project)
 {
     if (rating == null)
     {
         project.UserRating = 0;
     }
     else
     {
         project.UserRating = rating.Value;
     }
 }
        public Models.Rating Update(Models.Rating rating)
        {
            var exsiting = db.Ratings.SingleOrDefault(x => x.Id == rating.Id);

            if (exsiting != null)
            {
                exsiting.Description = rating.Description;
                db.SaveChanges();
            }
            return(null);
        }
        // GET: Ratings/Details/5
        public ActionResult Details(int id)
        {
            var curRatingRaw = clientRating.GetRatingAsync(id).Result;

            var allRatingTypesRaw = clientRatingType.GetRatingTypeAllAsync().Result;

            var curRating = new Models.Rating();

            curRating.FromClient(curRatingRaw, allRatingTypesRaw);

            return(View(curRating));
        }
Beispiel #10
0
        private void RegisterQualify()
        {
            RestClient client = new RestClient(urlBase);

            client.Timeout = -1;
            var request = new RestRequest("ratings", Method.POST);

            foreach (RestResponseCookie cookie in Login.cookies)
            {
                request.AddCookie(cookie.Name, cookie.Value);
            }
            var json = JsonConvert.SerializeObject(rating);

            request.AddHeader("Token", Login.tokenAccount.token);
            request.AddParameter("application/json", json, ParameterType.RequestBody);
            System.Net.ServicePointManager.ServerCertificateValidationCallback = (senderX, certificate, chain, sslPolicyErrors) => { return(true); };
            try
            {
                IRestResponse response = client.Execute(request);
                if (response.StatusCode == System.Net.HttpStatusCode.Created || response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    rating = JsonConvert.DeserializeObject <Models.Rating>(response.Content);
                    MessageBox.Show("La calificación se registró exitosamente", "Registro exitoso", MessageBoxButton.OK, MessageBoxImage.Information);
                    Close();
                }
                else
                {
                    Models.Error responseError = JsonConvert.DeserializeObject <Models.Error>(response.Content);
                    MessageBox.Show(responseError.error, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    if (response.StatusCode == System.Net.HttpStatusCode.Forbidden || response.StatusCode == System.Net.HttpStatusCode.Unauthorized ||
                        response.StatusCode == System.Net.HttpStatusCode.RequestTimeout)
                    {
                        Login login = new Login();
                        login.Show();
                        Close();
                    }
                    else
                    {
                        if (response.StatusCode != System.Net.HttpStatusCode.Conflict && response.StatusCode != System.Net.HttpStatusCode.BadRequest)
                        {
                            Close();
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                TelegramBot.SendToTelegram(exception);
                LogException.Log(this, exception);
                MessageBox.Show("No hay conexión. Por favor intente más tarde", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                Close();
            }
        }
        public Models.Rating GetById(int id)
        {
            var existing = db.Ratings.SingleOrDefault(x => x.Id == id);

            if (existing == null)
            {
                return(null);
            }
            Models.Rating r = new Models.Rating {
                Id = existing.Id, Description = existing.Description
            };
            return(r);
        }
        public int Rating(Models.Rating Rating)
        {
            int status = 0;

            try
            {
                status = repo.Rating(Rating.Email, Rating.SongId, Rating.rating);
            }
            catch (Exception)
            {
                status = -99;
            }
            return(status);
        }
Beispiel #13
0
 public void Rate(short rating, int game_id)
 {
     Models.GameShopContext gameShopContext = new Models.GameShopContext();
     if (Session["user"] != null)
     {
         var    rate     = new Models.Rating();
         string username = Session["user"].ToString();
         rate.game_id = game_id;
         rate.user_id = gameShopContext.Users.Single(x => x.username == username).id;
         rate.rating1 = rating;
         gameShopContext.Ratings.Add(rate);
         gameShopContext.SaveChanges();
     }
 }
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rating = await _context.Ratings
                     .Include(r => r.Department).FirstOrDefaultAsync(m => m.Id == id);

            if (Rating == null)
            {
                return(NotFound());
            }
            return(Page());
        }
        // GET: Ratings/Create
        public ActionResult Create()
        {
            var newRating         = new Models.Rating();
            var allRatingTypesRaw = clientRatingType.GetRatingTypeAllAsync().Result;

            foreach (var curType in allRatingTypesRaw)
            {
                newRating.RatingTypeNames.Add(new SelectListItem()
                {
                    Value = curType.Id.ToString(), Text = curType.Name
                });
            }


            return(View(newRating));
        }
        private async void frmSuppliersFeedbacks_Load(object sender, System.EventArgs e)
        {
            var user = await _authService.GetById(_userId);

            lblTitle.Text = "Feedbacks for " + user.Company;

            var ratingRequest = new RatingSearchRequest
            {
                SupplierId = _userId
            };

            var ratingList = await _ratingService.GetAll <List <Rating> >(ratingRequest);

            foreach (var rating in ratingList)
            {
                var request = await _requestService.GetById <Request>((int)rating.RequestId);

                var ratingGivenBy = await _authService.GetById(request.ClientId);

                var newRatingModel = new Models.Rating
                {
                    Description  = rating.Description,
                    RatingTypeId = (int)rating.RatingTypeId
                };

                string ratingType;
                if (rating.RatingTypeId == (int)ERatingType.Positive)
                {
                    ratingType = "Postive";
                }
                else if (rating.RatingTypeId == (int)ERatingType.Negative)
                {
                    ratingType = "Negative";
                }
                else
                {
                    ratingType = "Neutral";
                }

                newRatingModel.Details = $"{ratingType} feedback from " + ratingGivenBy.FirstName + " " + ratingGivenBy.LastName;

                RatingList.Add(newRatingModel);
            }

            InitCounters();
            dgvRating.DataSource = RatingList;
        }
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rating = await _context.Ratings
                     .Include(r => r.Department).FirstOrDefaultAsync(m => m.Id == id);

            if (Rating == null)
            {
                return(NotFound());
            }
            ViewData["DepartmentId"] = new SelectList(_context.Departments, "Id", "DepartmentName");
            return(Page());
        }
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rating = await _context.Ratings.FindAsync(id);

            if (Rating != null)
            {
                _context.Ratings.Remove(Rating);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
        // GET: Ratings
        public ActionResult Index()
        {
            var allRatingsRaw = clientRating.GetRatingAllAsync().Result;
            var lstAllRatings = new List <Models.Rating>();

            var allRatingTypesRaw = clientRatingType.GetRatingTypeAllAsync().Result;

            foreach (var rating in allRatingsRaw)
            {
                var curRating = new Models.Rating();
                curRating.FromClient(rating, allRatingTypesRaw);
                lstAllRatings.Add(curRating);
            }


            return(View(lstAllRatings));
        }
Beispiel #20
0
        public IEnumerable <Models.RatingSummary> LoadRatings()
        {
            var dict = new Dictionary <string, Models.RatingSummary>();

            foreach (var line in ReadLines("ratings.csv"))
            {
                var fields = Data.CsvParser.Instance.ParseLine(line);
                if (fields.Count < 4)
                {
                    continue;
                }
                var item = new Models.Rating();
                int num;
                if (!int.TryParse(fields[0], out num))
                {
                    continue;
                }
                item.UserId = num;
                if (!int.TryParse(fields[1], out num))
                {
                    continue;
                }
                item.MovieId = num;
                float num2;
                if (!float.TryParse(fields[2], out num2))
                {
                    continue;
                }
                item.Value   = num2;
                item.Created = Data.DateTimeUtils.ParseFromJava(fields[3], 1000);
                var dictId = string.Format("{0}-{1}", item.MovieId, item.Created.Year);
                if (!dict.ContainsKey(dictId))
                {
                    dict[dictId] = new Models.RatingSummary();
                }
                var record = dict[dictId];
                record.MovieId     = item.MovieId;
                record.CreatedYear = item.Created.Year;
                record.Value      += item.Value;
                record.Count++;
            }

            return(dict.Values);
        }
Beispiel #21
0
        public static Tuple <string, bool> Insert(int eventId, int userId, int ratingValue)
        {
            using (var db = new Models.ModelContext())
            {
                var currEvent = db.Events.Where(e => e.Id.Equals(eventId));
                var currUser  = db.Users.Where(u => u.Id.Equals(userId));

                // If any of the elements are not present in db
                if (!(currEvent.Any() && currUser.Any()))
                {
                    return(new Tuple <string, bool>("Atleiskite, įvyko klaida", false));
                }

                var rating = db.Ratings.Where(s => (s.Event_id == eventId) && (s.User_id == userId));
                if (!Validate(ratingValue))
                {
                    return(new Tuple <string, bool>("Jūsų įvertinimas yra netinkamas", false));
                }
                else if (rating.Any())
                {
                    foreach (var score in rating)
                    {
                        score.Score = ratingValue;
                    }
                    db.SaveChanges();
                    return(new Tuple <string, bool>("Jūsų įvertinimas pakeistas", false));
                }
                else
                {
                    var newRating = new Models.Rating();
                    newRating.Event_id = eventId;
                    newRating.User_id  = userId;
                    newRating.Score    = ratingValue;
                    db.Ratings.Add(newRating);
                    db.SaveChanges();
                    return(new Tuple <string, bool>("Renginys sėkmingai įvertintas.", true));
                }
            }
        }
        public IActionResult AddRating([FromBody] ViewModels.Rating model)
        {
            var project = _db.Project.FirstOrDefault(p => p.Id == model.ProjectId);

            if (model.Value > 5 && model.Value < 0)
            {
                return(BadRequest("Pashel nahuy pidor, naebat on reshil"));
            }
            var rating = new Models.Rating
            {
                ProjectId = model.ProjectId,
                UserId    = model.UserPofileId,
                Value     = model.Value
            };
            var usersCount = _db.Rating.ToList().FindAll(p => p.ProjectId == model.ProjectId).Count + 1;

            project.Rating = (int)(((float)project.Rating + (float)model.Value) / (float)usersCount);
            _db.Rating.Add(rating);
            _db.Project.Update(project);
            _db.SaveChanges();
            return(new ObjectResult(project.Rating));
        }
        public IHttpActionResult PostRating(RatingInformationDTO RatingToAdd)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var user = RequestContext.Principal;

            //try
            //{

            foreach (RatingDTO rating in RatingToAdd.Ratings)
            {
                Models.Rating newRating = new Models.Rating();
                newRating.ProductID = RatingToAdd.ProductID;
                newRating.userID = user.Identity.Name;
                newRating.RatingCategory = rating.RatedArea;
                newRating.rating = rating.Score;

                if (db.Ratings.Any(x => x.ProductID == newRating.ProductID && x.userID == newRating.userID && x.RatingCategory == newRating.RatingCategory))
                {
                    db.Ratings.Single(x => x.ProductID == newRating.ProductID && x.userID == newRating.userID && x.RatingCategory == newRating.RatingCategory).rating = newRating.rating;
                }
                else
                {
                    db.Ratings.Add(newRating);
                }
                db.SaveChanges();

            }

            //db.Ratings.Add(rating);

            //try
            //{
            //    db.SaveChanges();
               // }
            //catch (DbUpdateException)
               // {
            //    if (RatingExists(rating.userID))
            //    {
            //        return Conflict();
            //    }
            //    else
            //    {
            //        throw;
            //    }
               // }

            return CreatedAtRoute("DefaultApi", new { id = RatingToAdd.ProductID  }, RatingToAdd);
        }
Beispiel #24
0
 public System.Threading.Tasks.Task <bool> AddRatingAsync(Models.Rating rating)
 {
     return(base.Channel.AddRatingAsync(rating));
 }
Beispiel #25
0
 public bool AddRating(Models.Rating rating)
 {
     return(base.Channel.AddRating(rating));
 }
        public void PostRatings(RatingInformationDTO RatingToAdd)
        {
            var user = RequestContext.Principal;

            //try
            //{

            foreach (RatingDTO rating in RatingToAdd.Ratings)
            {
                Models.Rating newRating = new Models.Rating();
                newRating.ProductID = RatingToAdd.ProductID;
                newRating.userID = user.Identity.Name;
                newRating.RatingCategory = rating.RatedArea;
                newRating.rating = rating.Score;
                //db.RatingDetails.Add(newRating);
                db.SaveChanges();
            }

            // do stuff to store the rating here

            //catch (Exception ex)
            //{
            //    throw new Exception("Cannot add a rating", ex);
            //}
        }
Beispiel #27
0
 public bool DeleteRating(Models.Rating rating)
 {
     return(base.Channel.DeleteRating(rating));
 }