示例#1
0
        /// <summary>
        /// Получить оставшиеся дни в клубной карте
        /// </summary>
        /// <returns></returns>
        public override int GetRemainderDays()
        {
            var numFreezDays = Freeze?.GetSpentDays() ?? 0; //Продлим на замороженные дни

            DaysLeft = (EndDate.Date - DateTime.Now.Date).Days + numFreezDays;
            return((DaysLeft >= 0) ? DaysLeft : 0);
        }
示例#2
0
        // Методы
        public override bool IsValid()
        {
            // Если +, то DateTime.Now позднее _endDate
            // Если 0, то даты совпали
            // Если -, то DateTime.Now раньше Конца абонемента

            if (_numberMonths == 0)
            {
                throw new Exception("Ошибка в методе IsValid Клубной карты. _numberMonths =0" + this.GetType());
            }

            // FIXME Проверить как работает Валидация клубной карты
            if (!IsActivated && DateTime.Now.Date.CompareTo(BuyActivationDate.AddMonths(12).Date) <= 0)
            {
                return(true);
            }

            var      addFreezedDays = Freeze?.GetSpentDays();
            DateTime finishDate     = new DateTime();

            finishDate = EndDate.Date.AddDays((addFreezedDays ?? 0));
            var checkDate = DateTime.Now.Date.CompareTo(finishDate.Date) <= 0;

            return(checkDate);
        }
示例#3
0
        public override IEnumerable <Tuple <string, string> > GetShortInfoList()
        {
            var numFreezDays    = Freeze?.GetSpentDays() ?? 0; //Продлим на замороженные дни
            var clubCardEndDate = IsActivated ? EndDate.Date.AddDays(numFreezDays).ToString("d") : BuyDate.AddMonths(12).ToString("d");

            // Информация о текущем состоянии Абонемента. Добавляем всё что должно выводиться для Пользователя
            var result = new List <Tuple <string, string> >
            {
                new Tuple <string, string>("Тип: ", AbonementName),
                new Tuple <string, string>("Доступные Тренировки ", TypeWorkout.ToString()),
                new Tuple <string, string>("Время Тренировок ", TimeTraining.ToString()),
                new Tuple <string, string>("Услуги", Spa.ToString()),
                new Tuple <string, string>("Срок Клубной Карты", _numberMonths + "  мес."),
                new Tuple <string, string>("Дата Покупки", BuyDate.ToString("d")),
                new Tuple <string, string>("Дата Активации", BuyActivationDate.ToString("d")),
                new Tuple <string, string>("Дата Окончания", clubCardEndDate),
                new Tuple <string, string>("Осталось Дней", GetRemainderDays().ToString())
            };

            if (NumPersonalTr > 0)
            {
                result.Add(new Tuple <string, string>("Осталось Персональных", NumPersonalTr.ToString()));
            }

            if (NumAerobicTr > 0)
            {
                result.Add(new Tuple <string, string>("Осталось Аэробных", NumAerobicTr.ToString()));
            }

            if (NumMiniGroup > 0)
            {
                result.Add(new Tuple <string, string>("Осталось МиниГрупп", NumMiniGroup.ToString()));
            }

            if (PayStatus == Pay.Не_Оплачено)
            {
                result.Add(new Tuple <string, string>("Статус Оплаты ", PayStatus.ToString()));
            }

            if (Freeze != null)
            {
                result.Add(new Tuple <string, string>("Осталось дней Заморозки", Freeze.GetAvailableDays().ToString()));
            }

            return(result);
        }