コード例 #1
0
        public void SingleQuartersTest()
        {
            const int         startYear    = 2004;
            const YearQuarter startQuarter = YearQuarter.Second;
            Quarters          quarters     = new Quarters(startYear, startQuarter, 1);

            Assert.AreEqual(quarters.YearBaseMonth, YearMonth.January);
            Assert.AreEqual(quarters.QuarterCount, 1);
            Assert.AreEqual(quarters.StartQuarter, startQuarter);
            Assert.AreEqual(quarters.StartYear, startYear);
            Assert.AreEqual(quarters.EndYear, startYear);
            Assert.AreEqual(quarters.EndQuarter, YearQuarter.Second);
            Assert.AreEqual(quarters.GetQuarters().Count, 1);
            Assert.IsTrue(quarters.GetQuarters()[0].IsSamePeriod(new Quarter(2004, YearQuarter.Second)));
        }         // SingleQuartersTest
コード例 #2
0
        // ----------------------------------------------------------------------
        public static void ShowAll(int periodCount, int startYear, YearQuarter yearQuarter, TimeCalendarConfig calendarConfig)
        {
            WriteLine("Input: count={0}, year={1}, quarter={2}", periodCount, startYear, yearQuarter);
            WriteLine();

            QuarterTimeRange quarterTimeRange;

            if (periodCount == 1)
            {
                Quarter quarter = new Quarter(startYear, yearQuarter, new TimeCalendar(calendarConfig));
                quarterTimeRange = quarter;

                Quarter previousQuarter = quarter.GetPreviousQuarter();
                Quarter nextQuarter     = quarter.GetNextQuarter();

                ShowQuarter(quarter);
                ShowCompactQuarter(previousQuarter, "Previous Quarter");
                ShowCompactQuarter(nextQuarter, "Next Quarter");
                WriteLine();
            }
            else
            {
                Quarters quarters = new Quarters(startYear, yearQuarter, periodCount, new TimeCalendar(calendarConfig));
                quarterTimeRange = quarters;

                ShowQuarters(quarters);
                WriteLine();

                foreach (Quarter quarter in quarters.GetQuarters())
                {
                    ShowCompactQuarter(quarter);
                }
                WriteLine();
            }

            foreach (Month month in quarterTimeRange.GetMonths())
            {
                MonthDemo.ShowCompactMonth(month);
            }
            WriteLine();
        }         // ShowAll
コード例 #3
0
        public void SecondCalendarQuartersTest()
        {
            const int         startYear    = 2004;
            const YearQuarter startQuarter = YearQuarter.Second;
            const int         quarterCount = 5;
            Quarters          quarters     = new Quarters(startYear, startQuarter, quarterCount);

            Assert.AreEqual(quarters.YearBaseMonth, YearMonth.January);
            Assert.AreEqual(quarters.QuarterCount, quarterCount);
            Assert.AreEqual(quarters.StartQuarter, startQuarter);
            Assert.AreEqual(quarters.StartYear, startYear);
            Assert.AreEqual(quarters.EndYear, 2005);
            Assert.AreEqual(quarters.EndQuarter, YearQuarter.Second);
            Assert.AreEqual(quarters.GetQuarters().Count, quarterCount);
            Assert.IsTrue(quarters.GetQuarters()[0].IsSamePeriod(new Quarter(2004, YearQuarter.Second)));
            Assert.IsTrue(quarters.GetQuarters()[1].IsSamePeriod(new Quarter(2004, YearQuarter.Third)));
            Assert.IsTrue(quarters.GetQuarters()[2].IsSamePeriod(new Quarter(2004, YearQuarter.Fourth)));
            Assert.IsTrue(quarters.GetQuarters()[3].IsSamePeriod(new Quarter(2005, YearQuarter.First)));
            Assert.IsTrue(quarters.GetQuarters()[4].IsSamePeriod(new Quarter(2005, YearQuarter.Second)));
        }         // SecondCalendarQuartersTest
コード例 #4
0
        public void FirstCustomCalendarQuartersTest()
        {
            TimeCalendar      calendar     = TimeCalendar.New(YearMonth.October);
            const int         startYear    = 2004;
            const YearQuarter startQuarter = YearQuarter.First;
            const int         quarterCount = 5;
            Quarters          quarters     = new Quarters(startYear, startQuarter, quarterCount, calendar);

            Assert.AreEqual(quarters.YearBaseMonth, YearMonth.October);
            Assert.AreEqual(quarters.QuarterCount, quarterCount);
            Assert.AreEqual(quarters.StartQuarter, startQuarter);
            Assert.AreEqual(quarters.StartYear, startYear);
            Assert.AreEqual(quarters.EndYear, 2005);
            Assert.AreEqual(quarters.EndQuarter, YearQuarter.First);
            Assert.AreEqual(quarters.GetQuarters().Count, quarterCount);
            Assert.IsTrue(quarters.GetQuarters()[0].IsSamePeriod(new Quarter(2004, YearQuarter.First, calendar)));
            Assert.IsTrue(quarters.GetQuarters()[1].IsSamePeriod(new Quarter(2004, YearQuarter.Second, calendar)));
            Assert.IsTrue(quarters.GetQuarters()[2].IsSamePeriod(new Quarter(2004, YearQuarter.Third, calendar)));
            Assert.IsTrue(quarters.GetQuarters()[3].IsSamePeriod(new Quarter(2004, YearQuarter.Fourth, calendar)));
            Assert.IsTrue(quarters.GetQuarters()[4].IsSamePeriod(new Quarter(2005, YearQuarter.First, calendar)));
        }         // FirstCustomCalendarQuartersTest
コード例 #5
0
    private void BindData()
    {
        bool searchForMedicalGround = btnChangeRequestMedical.Enabled ? true : false;

        //Bind the quarters here
        List <tblQuarter> quarters = Quarters.GetQuarters();

        //Filter by category
        quarters = quarters.Where(q => q.Category == categoryId).ToList();

        //Search by medical grounds
        if (searchForMedicalGround)
        {
            quarters = quarters.Where(quarter => !(quarter.QuarterNumber.Contains('A') ||
                                                   quarter.QuarterNumber.Contains('B') ||
                                                   quarter.QuarterNumber.Contains('C') ||
                                                   quarter.QuarterNumber.Contains('D'))).ToList();
        }
        else
        {
            quarters = quarters.Where(quarter => (quarter.QuarterNumber.Contains('A') ||
                                                  quarter.QuarterNumber.Contains('B') ||
                                                  quarter.QuarterNumber.Contains('C') ||
                                                  quarter.QuarterNumber.Contains('D'))).ToList();
        }

        //Filter by status
        if (radListVacantQuarters.Checked)
        {
            quarters = quarters.Where(q => q.Status.HasValue && q.Status.Value == ((int)QuarterStatus.Vacant)).ToList();
        }
        else if (radListOccupiedQuarters.Checked)
        {
            quarters = quarters.Where(q => q.Status.HasValue && q.Status.Value == ((int)QuarterStatus.Alloted)).ToList();
        }

        //Filter by change requests
        List <tblQuarter> quartersByChangeRequests = new List <tblQuarter>();


        var changeRequests = Quarters.GetChangeRequests();

        if (changeRequests != null)
        {
            quarters.ForEach((quarter) =>
            {
                if (radNoChangeRequest.Checked)
                {
                    if (!changeRequests.Any(q => q.FirstPerference == quarter.QuarterNumber &&
                                            q.SecondPerference == quarter.QuarterNumber &&
                                            q.ThirdPerference == quarter.QuarterNumber))
                    {
                        quartersByChangeRequests.Add(quarter);
                    }
                }
                else if (radChangeRequestReceived.Checked)
                {
                    if (changeRequests.Any(q => q.FirstPerference == quarter.QuarterNumber ||
                                           q.SecondPerference == quarter.QuarterNumber ||
                                           q.ThirdPerference == quarter.QuarterNumber))
                    {
                        quartersByChangeRequests.Add(quarter);
                    }
                }
            });
        }

        grdQuarters.DataSource = quartersByChangeRequests;
        grdQuarters.DataBind();
    }