Beispiel #1
0
        public ActionResult DelRate(RatingViewModel s)
        {
            foreach (Rating r in db.Ratings)
            {
                if (r.UserId == s.UserId && r.WorkerId == Convert.ToInt32(s.WorkerId))
                {
                    db.Ratings.Remove(r);

                    break;
                }

            }
            db.SaveChanges();
            return GetRate(s);
        }
Beispiel #2
0
        public ActionResult GetRate(RatingViewModel s)
        {
            lock (locker)
            {
                bool t = false;
                List<Rating> ratingLst = db.Ratings.ToList();
                foreach (Rating r in ratingLst)
                {
                    if (r.UserId == s.UserId && r.WorkerId == Convert.ToInt32(s.WorkerId))
                    {
                        t = true;
                    }
                }
                if (t == true)
                {
                    double res = 0;
                    int i = 0;
                    foreach (Rating f in db.Ratings)
                    {
                        if (f.WorkerId == Convert.ToInt32(s.WorkerId))
                        {
                            res += f.Mark;
                            i++;
                        }
                    }
                    res = Math.Round(res / i, 1);
                    s.Mark = Convert.ToString(res);
                }
                else
                {
                    s.Mark = "-1";
                }
                string q = "";
                for (int i = 0; i < s.Mark.Length; i++)
                {
                    if (s.Mark[i] == ',')
                    {
                        q += '.';
                    }
                    else
                    {
                        q += s.Mark[i];
                    }
                }
                s.Mark = q;

                return Json(s, JsonRequestBehavior.AllowGet);
            }
            return new EmptyResult();
        }
Beispiel #3
0
        public ActionResult AddRate(RatingViewModel s)
        {
            lock (locker)
            {
                bool IsNew = true;
                int rateId = -1;
                List<Rating> ratingLst = db.Ratings.ToList();
                foreach (Rating r in ratingLst)
                {
                    if (r.UserId == s.UserId && r.WorkerId == Convert.ToInt32(s.WorkerId))
                    {
                        IsNew = false;
                        rateId = r.Id;
                        break;
                    }
                }

                string w = "";
                for (int i = 0; i < s.Mark.Length; i++)
                {
                    if (s.Mark[i] == '.')
                    {
                        w += ',';
                    }
                    else
                    {
                        w += s.Mark[i];
                    }
                }
                s.Mark = w;
                if(IsNew)
                {
                    Rating rat = new Rating();
                    rat.UserId = s.UserId;
                    rat.WorkerId = Convert.ToInt32(s.WorkerId);

                    rat.Mark = Convert.ToDouble(s.Mark);
                    db.Ratings.Add(rat);
                }
                else if(!IsNew)
                {
                    db.Ratings.Find(rateId).Mark = Convert.ToDouble(s.Mark);
                }
                db.SaveChanges();
                return GetRate(s);
            }
            return new EmptyResult();
        }