Exemple #1
0
        public bool RemoveDayCupons(string day)
        {
            DateTime selectDay;

            if (DateTime.TryParse(day, out selectDay))
            {
                RemoveCuponsModel model = new RemoveCuponsModel {
                    beginDate = selectDay, endDate = selectDay, daysOfWeek = new bool[6]
                };

                if (User.Identity.IsAuthenticated && User.IsInRole("superuser"))
                {
                    var user = db.Users.FirstOrDefault(x => x.Login == User.Identity.Name);
                    model.AreaId = user.AreaId.Value;
                }
                if (User.Identity.IsAuthenticated && User.IsInRole("admin"))
                {
                    model.AreaId = HttpContext.Session.GetInt32("Area").Value;
                }
                RemoveCuponsMethod(model);

                return(true);
            }
            return(false);
        }
Exemple #2
0
        public ActionResult RemoveCupons()
        {
            RemoveCuponsModel model = new RemoveCuponsModel();

            model.daysOfWeek = new bool[7];
            ViewBag.Areas    = db.Areas.ToList();
            return(View(model));
        }
Exemple #3
0
 public ActionResult RemoveCupons(RemoveCuponsModel model)
 {
     if (User.Identity.IsAuthenticated && User.IsInRole("superuser"))
     {
         var user = db.Users.FirstOrDefault(x => x.Login == User.Identity.Name);
         model.AreaId = user.AreaId.Value;
     }
     RemoveCuponsMethod(model);
     return(RedirectToAction("Index", "Home"));
 }
Exemple #4
0
        void RemoveCuponsMethod(RemoveCuponsModel model)
        {
            bool isNotSelectedDays = true;

            for (int i = 0; i < model.daysOfWeek.Count(); i++)
            {
                if (model.daysOfWeek[i] == true)
                {
                    isNotSelectedDays = true;
                    break;
                }
            }
            List <CuponDate> removeList = new List <CuponDate>();
            DateTime         tempDate   = model.beginDate;

            while (model.endDate >= tempDate)
            {
                DateTime tempBeginTime = new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, 0, 0, 0);
                DateTime tempEndTime   = new DateTime(tempDate.Year, tempDate.Month, tempDate.Day, 23, 59, 59);
                var      a             = (int)tempBeginTime.DayOfWeek;
                if (model.daysOfWeek[(int)tempBeginTime.DayOfWeek] || isNotSelectedDays)
                {
                    removeList.AddRange(db.CuponDates.Where(x => x.AreaId == model.AreaId && x.date > tempBeginTime && x.date < tempEndTime).ToList());
                }
                tempDate = tempDate.AddDays(1);
            }
            foreach (var item in removeList)
            {
                if (db.Orders.Where(x => x.CuponDateId == item.id).Count() > 0)
                {
                    continue;
                }
                db.CuponDates.Remove(item);
            }
            db.SaveChanges();
        }