Example #1
0
        public static string ConvertPeriodNumberToString(PeriodNumber periodNumber)
        {
            switch (periodNumber)
            {
            case PeriodNumber.First:
                return(First);

            case PeriodNumber.Second:
                return(Second);

            case PeriodNumber.Third:
                return(Third);

            case PeriodNumber.Fourth:
                return(Fourth);

            case PeriodNumber.Fifth:
                return(Fifth);

            case PeriodNumber.Sixth:
                return(Sixth);

            default:
                throw new InvalidEnumArgumentException(nameof(periodNumber), (int)periodNumber,
                                                       typeof(PeriodNumber));
            }
        }
        private List <PeriodInfo> ParseSchoolDay(IExcelDataReader reader, DayOfWeek day, bool isUpperRowOfWeek)
        {
            int dayColumnWidth             = PeriodHelper.GetCountOfPeriods();
            int firstPeriodAdditionalValue = SubjectSectionWidth + (dayColumnWidth * ((int)day - 1)) - 1;

            var periodsInfo = new List <PeriodInfo>();

            for (PeriodNumber number = PeriodNumber.First; PeriodHelper.IsValidPeriod(number); number++)
            {
                int column = firstPeriodAdditionalValue + (int)number;

                string info = GetStringValue(reader, column);

                var periodInfo = new PeriodInfo()
                {
                    Number = number
                };

                if (isUpperRowOfWeek)
                {
                    periodInfo.UpperInfo = info;
                }
                else
                {
                    periodInfo.LowerInfo = info;
                }

                periodsInfo.Add(periodInfo);
                //ConsoleHelper.WriteOk($"День: {currentDay}, Пара: {currentPeriod}, " +
                //    $"Вверх: {isUpperRowOfWeek}, Четная: {isEvenWeek}," + period);
            }

            return(periodsInfo);
        }
Example #3
0
        public Period(DateTime dtm)
        {
            Year = dtm.Year;
            switch (dtm.Month)
            {
            case 1:
            case 2:
            case 3:
                PeriodNumber = 1;
                break;

            case 4:
            case 5:
            case 6:
                PeriodNumber = 2;
                break;

            case 7:
            case 8:
            case 9:
                PeriodNumber = 3;
                break;

            case 10:
            case 11:
            case 12:
                PeriodNumber = 4;
                break;
            }
            PeriodLit       = "Q" + PeriodNumber.ToString() + Year.ToString();
            StartDateRevInt = Year * 10000 + (PeriodNumber * 3 - 2) * 100 + 1;
        }
Example #4
0
        public static SelectList GetPeriodNumbersList(PeriodNumber?defaultPeriodNumber = null)
        {
            PeriodNumber defaultNumber        = defaultPeriodNumber ?? PeriodNumber.First;
            string       selectedPeriodNumber = ConvertPeriodNumberToString(defaultNumber);
            SelectList   periodNumbersList    = new SelectList(_numbersList, selectedPeriodNumber);

            return(periodNumbersList);
        }
Example #5
0
        public bool Equals(Period other)
        {
            bool result = false;

            if ((Year.Equals(other.Year)) && (PeriodNumber.Equals(other.PeriodNumber)) &&
                (StartDate.Equals(other.StartDate)) && EndDate.Equals(other.EndDate))
            {
                result = true;
            }
            return(result);
        }
Example #6
0
        public PeriodViewModel(PeriodBindingModel periodBinging, int?periodId)
        {
            Period   = periodBinging;
            PeriodId = periodId;

            PeriodNumber number = PeriodNumbersHelper.ConvertStringToPeriodNumber(Period.Number);
            PeriodOption option = PeriodOptionsHelper.ConvertStringToPeriodOption(Period.Option);

            NumbersList = PeriodNumbersHelper.GetPeriodNumbersList(number);
            OptionsList = PeriodOptionsHelper.GetPeriodOptionsList(option);
        }
        public override int GetHashCode()
        {
            int hash = 1;

            if (PeriodNumber != 0L)
            {
                hash ^= PeriodNumber.GetHashCode();
            }
            if (randomNumberToken_ != null)
            {
                hash ^= RandomNumberToken.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Example #8
0
        public Period(int startRevInt)
        {
            int year = startRevInt / 10000;

            startRevInt -= year * 10000;
            int mo = startRevInt / 100;

            startRevInt -= mo * 100;
            int day = startRevInt / 100;

            Debug.Assert(day == 1);
            var dtm = new DateTime(year, mo, 1);

            Year = dtm.Year;
            switch (dtm.Month)
            {
            case 1:
            case 2:
            case 3:
                PeriodNumber = 1;
                break;

            case 4:
            case 5:
            case 6:
                PeriodNumber = 2;
                break;

            case 7:
            case 8:
            case 9:
                PeriodNumber = 3;
                break;

            case 10:
            case 11:
            case 12:
                PeriodNumber = 4;
                break;
            }
            PeriodLit       = "Q" + PeriodNumber.ToString() + Year.ToString();
            StartDateRevInt = Year * 10000 + (PeriodNumber * 3 - 2) * 100 + 1;
        }
Example #9
0
 public static PeriodNumber GetNextPeriodNumber(PeriodNumber periodNumber)
 {
     periodNumber++;
     return(periodNumber);
 }
Example #10
0
 public static bool IsValidPeriod(PeriodNumber periodNumber)
 {
     return(Enum.IsDefined(typeof(PeriodNumber), periodNumber));
 }
Example #11
0
 public static bool IsFirstPeriod(PeriodNumber periodNumber)
 {
     return(periodNumber == PeriodNumber.First);
 }