Example #1
0
        public void CheckPlansManiplation()
        {
            var plan = new Plan
            {
                StartDate = new DateTime(2017, 8, 2),
                EndDate   = new DateTime(2017, 8, 8, 23, 59, 59),
                Amount    = 210
            };
            var resPlan = _storage.CreatePlan(plan);

            Assert.AreNotEqual(resPlan.Id, 0);
            var list = _storage.GetPlans(new DateTime(2017, 7, 1), new DateTime(2017, 7, 5));

            Assert.IsTrue(list.Any(p => p.Id == resPlan.Id));
            Assert.IsNotNull(_storage.GetActualPlan(new DateTime(2017, 7, 1)));
            Assert.IsTrue(_storage.DeletePlan(resPlan.Id));
        }
Example #2
0
        public ActionResult CreatePlan(CreatePlanModel model)
        {
            DateTime?st = null, et = null;
            double?  am = null;
            DateTime lst, let;

            if (DateTime.TryParseExact(model.StartDate, "dd.MM.yyyy", null, DateTimeStyles.None, out lst))
            {
                st = _converter.GetUtcDateTime(lst);
            }
            if (DateTime.TryParseExact(model.EndDate, "dd.MM.yyyy", null, DateTimeStyles.None, out let))
            {
                et = _converter.GetUtcDateTime(new DateTime(let.Year, let.Month, let.Day, 23, 59, 59));
            }
            double lam;

            if (double.TryParse(model.Amount, out lam))
            {
                am = lam;
            }
            if (st.HasValue && et.HasValue && am.HasValue)
            {
                var plan = _storage.CreatePlan(new Plan()
                {
                    Amount    = am.Value,
                    StartDate = st.Value,
                    EndDate   = et.Value
                });
                ViewBag.Success = $"Создан план № {plan.Id}. C {_converter.GetActualDateTime(plan.StartDate):M} по {_converter.GetActualDateTime(plan.EndDate):M} ";
                ModelState.Clear();
                return(View(new CreatePlanModel
                {
                    TimeZone = _converter.GetCurrenTimeZone(),
                    BaseCurrency = _storage.GetBaseCurrency()
                }));
            }
            ViewBag.Error      = "Can't parse values";
            model.TimeZone     = _converter.GetCurrenTimeZone();
            model.BaseCurrency = _storage.GetBaseCurrency();
            return(View(model));
        }