コード例 #1
0
        public ActionResult AdminPeriods(String CompanyURL)
        {
            var Model = new AdminPeriodsViewModel();

            PopulateModel(Model);
            if (!ModelState.IsValid)
            {
                return(View(Model));
            }

            Model.Periods = Context.Periods.Where(r => r.CompanyId == Model.CompanyId).OrderBy(r => r.PeriodStart).ThenBy(r => r.PeriodEnd).ToList();
            var LastPeriod = Model.Periods.LastOrDefault();

            Model.SelectedPeriod = new Data.Period();
            if (LastPeriod != null)
            {
                Model.SelectedPeriod.PeriodStart = ((DateTime)LastPeriod.PeriodStart).AddDays(1);
                Model.SelectedPeriod.PeriodEnd   = ((DateTime)LastPeriod.PeriodEnd).AddDays(1);
            }
            else
            {
                Model.SelectedPeriod.PeriodStart = DateTime.Today;
                Model.SelectedPeriod.PeriodEnd   = DateTime.Today;
            }
            Model.SelectedPeriod.Reminder1Date = ((DateTime)Model.SelectedPeriod.PeriodEnd).AddDays(-2);
            Model.SelectedPeriod.Reminder2Date = Model.SelectedPeriod.PeriodEnd;

            var Periods = Context.Periods.Where(p => p.PeriodStatusId == 0).ToList();

            Model.UnlockedPeriods = Periods.Select(f => new SelectListItem {
                Value = f.PeriodId.ToString(),
                Text  = ((DateTime)f.PeriodStart).ToString("MM/dd/yyyy") + " - " + ((DateTime)f.PeriodEnd).ToString("MM/dd/yyyy")
            });


            Periods             = Context.Periods.Where(p => p.PeriodStatusId == 1).ToList();
            Model.LockedPeriods = Periods.Select(f => new SelectListItem {
                Value = f.PeriodId.ToString(),
                Text  = ((DateTime)f.PeriodStart).ToString("MM/dd/yyyy") + " - " + ((DateTime)f.PeriodEnd).ToString("MM/dd/yyyy")
            });

            return(View(Model));
        }
コード例 #2
0
        public ActionResult AddPeriod(AdminPeriodsViewModel Model)
        {
            PopulateModel(Model);
            if (!ModelState.IsValid)
            {
                return(View(Model));
            }

            var Period = new Data.Period();

            Period.CompanyId            = Model.CompanyId;
            Period.PeriodStart          = Model.SelectedPeriod.PeriodStart;
            Period.PeriodEnd            = ((DateTime)Model.SelectedPeriod.PeriodStart).AddDays(6);
            Period.Reminder1Date        = Model.SelectedPeriod.Reminder1Date;
            Period.Reminder2Date        = Model.SelectedPeriod.Reminder2Date;
            Period.PeriodStatusId       = 0;
            Context.Entry(Period).State = System.Data.Entity.EntityState.Added;
            Context.SaveChanges();

            return(RedirectPermanent("/" + Model.CompanyURL + "/AdminPeriods"));
        }
コード例 #3
0
        public ActionResult UnlockPeriod(AdminPeriodsViewModel Model, int?LockedPeriodId)
        {
            PopulateModel(Model);
            if (!ModelState.IsValid)
            {
                return(View(Model));
            }

            if (LockedPeriodId != null)
            {
                var Period = Context.Periods.Where(p => p.PeriodId == LockedPeriodId).FirstOrDefault();
                if (Period != null)
                {
                    Period.PeriodStatusId       = 0;
                    Context.Entry(Period).State = System.Data.Entity.EntityState.Modified;
                    Context.SaveChanges();
                }
            }


            return(RedirectPermanent("/" + Model.CompanyURL + "/AdminPeriods"));
        }