public ActivityViewModel(Community community, Individual individual, Quarter quarter, ActivitySelection activitySelection)
 {
     _community = community;
     _individual = individual;
     _quarter = quarter;
     _activitySelection = activitySelection;
 }
        public void op_ToQuarter_string()
        {
            var expected = new Quarter(2010, QuarterOfYear.Q4);
            var actual = "2010 Q4".ToQuarter();

            Assert.Equal(expected, actual);
        }
 public void should_correctly_calculate_this_quarter_start()
 {
     var tense = new This();
     var place = new Start();
     var unit = new Quarter(_dateTime);
     var dt = unit.GetDateTime(tense, place);
     Assert.That(dt, Is.EqualTo(_thisQuarterStart));
 }
 public void should_correctly_calculate_prev_quarter_end()
 {
     var tense = new Prev();
     var place = new End();
     var unit = new Quarter(_dateTime);
     var dt = unit.GetDateTime(tense, place);
     Assert.That(dt, Is.EqualTo(_prevQuarterEnd));
 }
 public TransactionReportQuarter()
 {
     Quarter = new Quarter();
     Balance = 0;
     TotalForQuarter = 0;
     TotalTransactions = 0;
     TransactionReportItems = new List<TransactionReportItem>();
 }
Example #6
0
        public async Task Initialize()
        {
            _community = new Community(new MemoryStorageStrategy())
                .Register<CorrespondenceModel>();

            _company = await _community.AddFactAsync(new Company("improvingEnterprises"));
            _quarter = await _community.AddFactAsync(new Quarter(_company, new DateTime(2013, 1, 1)));
            _categoryGenerator = new CategoryGenerator(_community, _company, _quarter);
            await _categoryGenerator.GenerateAsync();
        }
 public QuarterRequestSheetDlg()
 {
     this.Build ();
     var list = new List<Quarter> ();
     var quarter = new Quarter ((DateTime.Today.Month + 2) / 3, DateTime.Today.Year);
     for(int i = 0; i < 5; i++)
     {
         list.Add (quarter);
         quarter = quarter.GetNext ();
     }
     comboQuarter.ItemsList = list;
     comboQuarter.SelectedItem = list [1];
 }
Example #8
0
        // GET: Quarters/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Quarter quarter = db.Quarters.Find(id);

            if (quarter == null)
            {
                return(HttpNotFound());
            }
            return(View(quarter));
        }
Example #9
0
        public ReturnsData(List <ReturnData> returnsList,
                           Quarter returnQuarter,
                           List <Quarter> openQuarters,
                           QuarterWindow nextWindow,
                           DateTime currentDate)
        {
            Guard.ArgumentNotNull(() => returnsList, returnsList);

            ReturnsList   = returnsList;
            ReturnQuarter = returnQuarter;
            OpenQuarters  = openQuarters;
            NextWindow    = nextWindow;
            CurrentDate   = currentDate;
        }
Example #10
0
        public void BuilderWithData_ConstructedWithCapacityParameter_AddsPointsToBuiltSeries()
        {
            var curve = new DoubleCurve <Month> .Builder(1, month => 1.0)
                        .WithData(Month.CreateJanuary(2019), 1.0)
                        .WithData(Month.CreateFebruary(2019), 2.0)
                        .WithData(Month.CreateMarch(2019), 3.0)
                        .Build();

            Assert.AreEqual(3, curve.Count);
            Assert.AreEqual(1.0, curve[Month.CreateJanuary(2019)]);
            Assert.AreEqual(2.0, curve[Month.CreateFebruary(2019)]);
            Assert.AreEqual(3.0, curve[Month.CreateMarch(2019)]);
            Assert.AreEqual(2.0, curve.Price(Quarter.CreateQuarter1(2019)));
        }
        public async Task HandleAsync_ProvideOrganisationIdWithOutPreviousReturns_ReturnsEmptyList()
        {
            Organisation requestedOrganisation = fixture.Build <Organisation>().With(o => o.OrganisationStatus, OrganisationStatus.Complete).Create();
            Organisation otherOrganisation     = fixture.Build <Organisation>().With(o => o.OrganisationStatus, OrganisationStatus.Complete).Create();

            Quarter q1 = new Quarter(2019, QuarterType.Q1);
            Quarter q2 = new Quarter(2019, QuarterType.Q2);
            Quarter q3 = new Quarter(2019, QuarterType.Q3);

            List <Return> returns = new List <Return>()
            {
                A.Fake <Return>(),
                A.Fake <Return>()
            };

            Return currentReturn = A.Fake <Return>();

            A.CallTo(() => currentReturn.Id).Returns(Guid.NewGuid());
            A.CallTo(() => currentReturn.Quarter).Returns(q3);
            A.CallTo(() => currentReturn.Organisation).Returns(requestedOrganisation);
            A.CallTo(() => currentReturn.ReturnStatus).Returns(Domain.AatfReturn.ReturnStatus.Submitted);

            returns.Add(currentReturn);

            A.CallTo(() => returns.ElementAt(0).Id).Returns(Guid.NewGuid());
            A.CallTo(() => returns.ElementAt(0).Quarter).Returns(q1);
            A.CallTo(() => returns.ElementAt(0).Organisation).Returns(otherOrganisation);
            A.CallTo(() => returns.ElementAt(0).ReturnStatus).Returns(Domain.AatfReturn.ReturnStatus.Submitted);

            A.CallTo(() => returns.ElementAt(1).Id).Returns(Guid.NewGuid());
            A.CallTo(() => returns.ElementAt(1).Quarter).Returns(q2);
            A.CallTo(() => returns.ElementAt(1).Organisation).Returns(otherOrganisation);
            A.CallTo(() => returns.ElementAt(1).ReturnStatus).Returns(Domain.AatfReturn.ReturnStatus.Submitted);

            A.CallTo(() => dataAccess.GetAll <Return>()).Returns(returns);

            List <ReturnScheme> returnSchemes = new List <ReturnScheme>();

            A.CallTo(() => dataAccess.GetAll <ReturnScheme>()).Returns(returnSchemes);

            GetPreviousQuarterSchemes request = new GetPreviousQuarterSchemes(requestedOrganisation.Id, currentReturn.Id);

            PreviousQuarterReturnResult result = await handler.HandleAsync(request);

            Assert.Equal(0, result.PreviousSchemes.Count);

            A.CallTo(() => dataAccess.GetAll <Return>()).MustHaveHappened(Repeated.Exactly.Once);
            A.CallTo(() => dataAccess.GetAll <ReturnScheme>()).MustHaveHappened(Repeated.Exactly.Once);
        }
        public async void IndexGet_GivenValidViewModel_BreadcrumbShouldBeSet()
        {
            var          organisationId = Guid.NewGuid();
            var          siteId         = Guid.NewGuid();
            const string orgName        = "orgName";

            var @return       = A.Fake <ReturnData>();
            var quarterData   = new Quarter(2019, QuarterType.Q1);
            var quarterWindow = QuarterWindowTestHelper.GetDefaultQuarterWindow();
            var aatfInfo      = A.Fake <AatfData>();
            var aatfId        = Guid.NewGuid();

            const string reportingQuarter = "2019 Q1 Jan - Mar";
            const string reportingPeriod  = "Test (WEE/QW1234RE/ATF)";

            @return.Quarter       = quarterData;
            @return.QuarterWindow = quarterWindow;
            const string aatfName = "Test";

            aatfInfo.ApprovalNumber = "WEE/QW1234RE/ATF";

            var siteAddressData = new SiteAddressData("TEST", "TEST", "TEST", "TEST", "TEST", "TEST", Guid.NewGuid(), "TEST")
            {
                Id = siteId
            };
            var addressTonnage = new AddressTonnageSummary()
            {
                AddressData = new List <SiteAddressData>()
                {
                    siteAddressData
                }
            };

            A.CallTo(() => apiClient.SendAsync(A <string> ._, A <GetAatfSite> .Ignored)).Returns(addressTonnage);
            A.CallTo(() => cache.FetchOrganisationName(organisationId)).Returns(orgName);

            A.CallTo(() => apiClient.SendAsync(A <string> ._, A <GetReturn> ._)).Returns(@return);
            A.CallTo(() => cache.FetchAatfData(organisationId, aatfId)).Returns(aatfInfo);
            A.CallTo(() => aatfInfo.Name).Returns(aatfName);

            await controller.Index(organisationId, A.Dummy <Guid>(), aatfId, siteId);

            breadcrumb.ExternalActivity.Should().Be(BreadCrumbConstant.AatfReturn);
            breadcrumb.ExternalOrganisation.Should().Be(orgName);
            breadcrumb.OrganisationId.Should().Be(organisationId);

            Assert.Contains(reportingQuarter, breadcrumb.QuarterDisplayInfo);
            Assert.Contains(reportingPeriod, breadcrumb.AatfDisplayInfo);
        }
Example #13
0
        // GET: Quarters/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Quarter quarter = db.Quarters.Find(id);

            if (quarter == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SchoolYearID = new SelectList(db.SchoolYears, "ID", "Name", quarter.SchoolYearID);
            return(View(quarter));
        }
Example #14
0
        static void Main(string[] args)
        {
            MyWallet w = new MyWallet();

            Penny   p = new Penny();
            Quarter q = new Quarter();

            w.AddMoney(p);
            w.AddMoney(q);
            Console.WriteLine("My wallet has {0} in it.", w.TotalValue);
            // p = w.RemoveMoney(p);
            // List<CirculatingMoney> moneyBag = w.GetMoney(25.25m);

            Console.ReadLine();
        }
Example #15
0
        // Teacher and Coordinator Learning Plan
        public ActionResult LearningPlanAdd()
        {
            //connect to db
            Syllabus_ManagementEntities4 term = new Syllabus_ManagementEntities4();
            //retrieve table details (firstName, lastName, etc.)
            Quarter q = new Quarter();

            //from the table friends, select all in descending order by age
            var quarterList = (from u in term.Quarters
                               select u);

            //converting all the retrieved data (friends) into a list object
            ViewData["QuarterList"] = quarterList.ToList();
            return(View());
        }
Example #16
0
        public HomeViewModel()
        {
            InvoiceViewModel invoiceViewModel = new InvoiceViewModel();

            Invoices = invoiceViewModel.GetUnPaidInvoices();
            Quarter quarter           = new Quarter();
            var     invoicesForPeriod = Invoice.GetInvoicesForPeriod(quarter.Start, quarter.End);

            JobsCompleted  = invoicesForPeriod.Count;
            MoneyMade      = invoicesForPeriod.Sum(m => m.Price);
            IncomeTax      = MoneyMade * 0.3;
            Vat            = MoneyMade * 0.2;
            Quotes         = Quote.GetQuoteSummaries();
            ScheduledWorks = ScheduledWork.GetScheduledWorks();
        }
        }         // ShowCompactQuarter

        // ----------------------------------------------------------------------
        public static void ShowQuarter(Quarter quarter, string caption = "Quarter")
        {
            WriteLine("{0}: {1}", caption, quarter);
            WriteIndentLine("YearBaseMonth: {0}", quarter.YearBaseMonth);
            WriteIndentLine("StartMonth: {0}", quarter.StartMonth);
            WriteIndentLine("Year: {0}", quarter.Year);
            WriteIndentLine("YearQuarter: {0}", quarter.YearQuarter);
            WriteIndentLine("IsCalendarQuarter: {0}", quarter.IsCalendarQuarter);
            WriteIndentLine("MultipleCalendarYears: {0}", quarter.MultipleCalendarYears);
            WriteIndentLine("QuarterName: {0}", quarter.QuarterName);
            WriteIndentLine("QuarterOfYearName: {0}", quarter.QuarterOfYearName);
            WriteIndentLine("FirstDayStart: {0}", Format(quarter.FirstDayStart));
            WriteIndentLine("LastDayStart: {0}", Format(quarter.LastDayStart));
            WriteLine();
        }         // ShowQuarter
        private static Quarter ParseQuarter(
            PropertyDictionary properties,
            PropertyDescriptionDictionary descriptions)
        {
            var fiscalYear    = Convert.ToUInt16(properties.Get(PropertyNames.FiscalYear));
            var fiscalQuarter = Convert.ToUInt16(properties.Get(PropertyNames.FiscalQuarter));

            return(Quarter.Create(
                       properties.Get(PropertyNames.Ticker),
                       fiscalYear,
                       fiscalQuarter,
                       properties,
                       descriptions
                       ));
        }
        /// <summary>
        /// Retrieves information about the sales quarter based on the period number and the year.
        /// </summary>
        /// <param name="period">
        /// The period you wish to get quarter information for.
        /// </param>
        /// <param name="year">
        /// The year you wish to get quarter information for.
        /// </param>
        /// <returns>
        /// Quarter
        /// </returns>
        public static Quarter GetQuarter(int period, int year)
        {
            // Make sure the period passed in is valid.
            ValidatePeriod(period);

            // Divide the period by 3, round up to the nearest whole number.
            var quarterNumber = (int) Math.Ceiling((decimal) period/3);

            // Make sure the quarter is valid.
            ValidateQuarter(quarterNumber);

            var returnValue = new Quarter
            {
                Year = year,
                Number = quarterNumber
            };

            var dateRange = new DateRange();

            // Return different values for the rest of the object depending on what the quarter number is.
            switch (returnValue.Number)
            {
                case 1:
                    returnValue.Name = "Spring";
                    dateRange.StartDate = GetPeriodDateRange(1, year).StartDate;
                    dateRange.EndDate = GetPeriodDateRange(3, year).EndDate;
                    break;
                case 2:
                    returnValue.Name = "Summer";
                    dateRange.StartDate = GetPeriodDateRange(4, year).StartDate;
                    dateRange.EndDate = GetPeriodDateRange(6, year).EndDate;
                    break;
                case 3:
                    returnValue.Name = "Fall";
                    dateRange.StartDate = GetPeriodDateRange(7, year).StartDate;
                    dateRange.EndDate = GetPeriodDateRange(9, year).EndDate;
                    break;
                case 4:
                    returnValue.Name = "Winter";
                    dateRange.StartDate = GetPeriodDateRange(10, year).StartDate;
                    dateRange.EndDate = GetPeriodDateRange(12, year).EndDate;
                    break;
            }

            returnValue.DateRange = dateRange;

            return returnValue;
        }
        public async Task FetchResultsAsync_WithSeveralDeliveredAmounts_ReturnsSumOfAmounts()
        {
            using (Weee.Tests.Core.Model.DatabaseWrapper wrapper = new Weee.Tests.Core.Model.DatabaseWrapper())
            {
                // Arrange
                Organisation organisation = Organisation.CreateSoleTrader("Test Organisation");
                Scheme       scheme       = new Scheme(organisation);

                Quarter    quarter    = new Quarter(2099, QuarterType.Q1);
                DataReturn dataReturn = new DataReturn(scheme, quarter);

                DataReturnVersion version = new DataReturnVersion(dataReturn);

                WeeeDeliveredAmount amount1 = new WeeeDeliveredAmount(
                    ObligationType.B2C,
                    WeeeCategory.LargeHouseholdAppliances,
                    100,
                    new AatfDeliveryLocation("WEE/AA1111AA/ATF", string.Empty));
                version.WeeeDeliveredReturnVersion.AddWeeeDeliveredAmount(amount1);

                WeeeDeliveredAmount amount2 = new WeeeDeliveredAmount(
                    ObligationType.B2C,
                    WeeeCategory.LargeHouseholdAppliances,
                    200,
                    new AatfDeliveryLocation("WEE/BB2222BB/ATF", string.Empty));
                version.WeeeDeliveredReturnVersion.AddWeeeDeliveredAmount(amount2);

                wrapper.WeeeContext.DataReturns.Add(dataReturn);
                await wrapper.WeeeContext.SaveChangesAsync();

                dataReturn.SetCurrentVersion(version);
                await wrapper.WeeeContext.SaveChangesAsync();

                // Act
                FetchSummaryCsvDataAccess dataAccess = new FetchSummaryCsvDataAccess(wrapper.WeeeContext);

                List <DataReturnSummaryCsvData> results = await dataAccess.FetchResultsAsync(scheme.Id, 2099);

                // Assert
                Assert.NotNull(results);
                Assert.Equal(1, results.Count);

                DataReturnSummaryCsvData result = results[0];
                Assert.NotNull(result);

                Assert.Equal(300, result.Category1);
            }
        }
Example #21
0
        private static void Creating()
        {
            #region creating
            var mar19 = new Month(2019, 3);
            Console.WriteLine(mar19);

            var aug19 = Month.CreateAugust(2019);
            Console.WriteLine(aug19);
            var qu119 = Quarter.CreateQuarter1(2019);
            Console.WriteLine(qu119);

            Day christmas2020 = Day.FromDateTime(new DateTime(2020, 12, 25));
            Console.WriteLine(christmas2020);
            Console.WriteLine();
            #endregion
        }
        public async void GetQuarter_GivenFourthQuarter_ValidQuarterStartAndEndDatesShouldBeCalculated()
        {
            var quarter = new Quarter(2019, QuarterType.Q4);
            var quarterWindowTemplate = QuarterWindowTemplate(1, 1, 1, 1);

            A.CallTo(() => dataAccess.GetByQuarter((int)quarter.Q)).Returns(quarterWindowTemplate);

            var result = await quarterWindowFactory.GetAnnualQuarter(quarter);

            result.StartDate.Year.Should().Be(2019);
            result.StartDate.Month.Should().Be(10);
            result.StartDate.Day.Should().Be(1);
            result.EndDate.Year.Should().Be(2019);
            result.EndDate.Month.Should().Be(12);
            result.EndDate.Day.Should().Be(31);
        }
Example #23
0
 public static DateTime GetEndOfQuarter(int Year, Quarter Qtr)
 {
     if (Qtr == Quarter.First)
     {
         return(new DateTime(Year, 3, DateTime.DaysInMonth(Year, 3), 0x17, 0x3b, 0x3b, 0x3e7));
     }
     if (Qtr == Quarter.Second)
     {
         return(new DateTime(Year, 6, DateTime.DaysInMonth(Year, 6), 0x17, 0x3b, 0x3b, 0x3e7));
     }
     if (Qtr == Quarter.Third)
     {
         return(new DateTime(Year, 9, DateTime.DaysInMonth(Year, 9), 0x17, 0x3b, 0x3b, 0x3e7));
     }
     return(new DateTime(Year, 12, DateTime.DaysInMonth(Year, 12), 0x17, 0x3b, 0x3b, 0x3e7));
 }
Example #24
0
 public static DateTime GetStartOfQuarter(int Year, Quarter Qtr)
 {
     if (Qtr == Quarter.First)
     {
         return(new DateTime(Year, 1, 1, 0, 0, 0, 0));
     }
     if (Qtr == Quarter.Second)
     {
         return(new DateTime(Year, 4, 1, 0, 0, 0, 0));
     }
     if (Qtr == Quarter.Third)
     {
         return(new DateTime(Year, 7, 1, 0, 0, 0, 0));
     }
     return(new DateTime(Year, 10, 1, 0, 0, 0, 0));
 }
Example #25
0
        public ActionResult SaveValues(int formId, int year, Quarter quarter, int areaId, string data, Period period = 0)
        {
            //判断用户是否可以保存当前年份、季度的数据
            var season = Core.SeasonManager.GetSeason(year, quarter);

            if (CurrentIdentity.Role <= UserRole.Advanced && (season == null || !season.Indate))
            {
                throw new HttpException(401, "当前时段不能添加表单数据");
            }

            var values = data.ToObject <List <NodeValue> >();

            Core.FormManager.SaveNodeValues(values);
            Core.FormManager.ComputeSumValue(formId, year, quarter, values);
            return(JsonSuccessResult());
        }
        public void FiscalYearGetMonthsTest()
        {
            Quarter quarter = new Quarter(2006, YearQuarter.First, GetFiscalYearCalendar(FiscalYearAlignment.LastDay));
            ITimePeriodCollection months = quarter.GetMonths();

            Assert.NotNull(months);
            Assert.Equal(months.Count, TimeSpec.MonthsPerQuarter);

            Assert.Equal(months[0].Start, new DateTime(2006, 8, 27));
            for (int i = 0; i < months.Count; i++)
            {
                Assert.Equal(months[i].Duration.Subtract(TimeCalendar.DefaultEndOffset).Days,
                             (i + 1) % 3 == 0 ? TimeSpec.FiscalDaysPerLongMonth : TimeSpec.FiscalDaysPerShortMonth);
            }
            Assert.Equal(months[TimeSpec.MonthsPerQuarter - 1].End, quarter.End);
        } // FiscalYearGetMonthsTest
Example #27
0
 public static DateTime GetStartOfQuarter(int Year, Quarter Qtr)
 {
     if (Qtr == Quarter.First) // 1st Quarter = January 1 to March 31
     {
         return(new DateTime(Year, 1, 1, 0, 0, 0, 0));
     }
     if (Qtr == Quarter.Second) // 2nd Quarter = April 1 to June 30
     {
         return(new DateTime(Year, 4, 1, 0, 0, 0, 0));
     }
     if (Qtr == Quarter.Third) // 3rd Quarter = July 1 to September 30
     {
         return(new DateTime(Year, 7, 1, 0, 0, 0, 0));
     }
     return(new DateTime(Year, 10, 1, 0, 0, 0, 0));
 }
Example #28
0
        public void QuarterConstructor()
        {
            //Arrange
            Quarter sanFran;

            q = new Quarter();

            //Act
            sanFran = new Quarter(USCoinMintMark.S);
            //Assert
            //Current Year is default year
            Assert.AreEqual(USCoinMintMark.D, q.MintMark);
            Assert.AreEqual(System.DateTime.Now.Year, q.Year);
            Assert.AreEqual(System.DateTime.Now.Year, sanFran.Year);
            Assert.AreEqual(USCoinMintMark.S, sanFran.MintMark);
        }
Example #29
0
        protected ReturnViewModelBase(ReturnData returnData)
        {
            Guard.ArgumentNotNull(() => returnData, returnData);
            Guard.ArgumentNotNull(() => returnData.Quarter, returnData.Quarter);
            Guard.ArgumentNotNull(() => returnData.QuarterWindow, returnData.QuarterWindow);

            this.QuarterWindow   = returnData.QuarterWindow;
            this.QuarterInstance = returnData.Quarter;
            this.year            = returnData.Quarter.Year;
            this.CreatedBy       = returnData.CreatedBy;
            this.CreatedDate     = returnData.CreatedDate.ToString("dd/MM/yyyy HH:mm:ss");
            this.SubmittedBy     = string.IsNullOrWhiteSpace(returnData.SubmittedBy) ? "-" : returnData.SubmittedBy;
            this.SubmittedDate   = returnData.SubmittedDate.HasValue ? returnData.SubmittedDate.Value.ToString("dd/MM/yyyy HH:mm:ss") : "-";
            this.ReturnStatus    = returnData.ReturnStatus;
            this.ReturnId        = returnData.Id;
        }
		private void OnQuarterClick(object sender, EventArgs e)
		{
			var button = (ButtonX)sender;
			if (button.Checked)
			{
				button.Checked = false;
				SelectedQuarter = null;
			}
			else
			{
				_quarterButtons.ForEach(b => b.Checked = false);
				button.Checked = true;
				SelectedQuarter = (Quarter)button.Tag;
			}
			QuarterSelected?.Invoke(this, EventArgs.Empty);
		}
Example #31
0
        /**
         * Sets the selected quarter to session if one not already
         * set. Then gets the list of valid quarters and returns
         * **/
        private Task <List <Quarter> > SetAndGetQuartersAsync()
        {
            Utility util = new Utility(_config);

            //if current quarter session value is null, query current quarter and set
            if (_httpContextAccessor.HttpContext.Session.Get <Quarter>(_appSettings.SessionKey_SelectedQuarter) == null)
            {
                //get current quarter and set it in the session
                Quarter curQuarter = util.getCurrentQuarter(_context);
                _httpContextAccessor.HttpContext.Session.Set <Quarter>(_appSettings.SessionKey_SelectedQuarter, curQuarter);
                Quarter quar = _httpContextAccessor.HttpContext.Session.Get <Quarter>(_appSettings.SessionKey_SelectedQuarter);
                //_logger.LogDebug(quar.Id);
            }

            return(util.getQuarters(_context, 10).ToListAsync());
        }
Example #32
0
 public void PushQuarter(Quarter q)
 {
     if (currentIndex >= maxSize)
     {
         for (int i = 0; i < quarters.Length - 1; i++)
         {
             quarters[i] = quarters[i + 1];
         }
         quarters[maxSize - 1] = q;
     }
     else
     {
         quarters[currentIndex] = q;
         currentIndex++;
     }
 }
Example #33
0
 public ReturnToReturnViewModelMapTests()
 {
     map                             = new ReturnToReturnViewModelMap(new TonnageUtilities());
     mapperTestId                    = Guid.NewGuid();
     mapperTestYear                  = 2019;
     mapperTestQuarter               = new Quarter(mapperTestYear, QuarterType.Q1);
     mapperTestQuarterWindow         = new QuarterWindow(new DateTime(mapperTestYear, 4, 1), new DateTime(mapperTestYear + 1, 3, 31), QuarterType.Q1);
     mapperTestPeriod                = "Q1 Jan - Mar";
     mapperTestNonObligatedData      = new List <NonObligatedData>();
     mapperTestObligatedReceivedData = new List <WeeeObligatedData>();
     mapperTestObligatedReusedData   = new List <WeeeObligatedData>();
     mapperTestObligatedSentOnData   = new List <WeeeObligatedData>();
     mapperTestScheme                = new Scheme(Guid.NewGuid(), "Test Scheme");
     mapperTestAatf                  = new AatfData(mapperTestId, "Test Aatf", "Aatf approval", (Int16)2019);
     mapperTestAatfList              = new List <AatfData>();
 }
Example #34
0
        public static DateTime GetEndOfQuarter(int year, Quarter qtr)
        {
            switch (qtr)
            {
            case Quarter.First:
                return(new DateTime(year, 3, DateTime.DaysInMonth(year, 3), 23, 59, 59, 999));

            case Quarter.Second:
                return(new DateTime(year, 6, DateTime.DaysInMonth(year, 6), 23, 59, 59, 999));

            case Quarter.Third:
                return(new DateTime(year, 9, DateTime.DaysInMonth(year, 9), 23, 59, 59, 999));

            default:
                return(new DateTime(year, 12, DateTime.DaysInMonth(year, 12), 23, 59, 59, 999));
            }
        }
Example #35
0
        public static DateTime GetStartOfQuarter(int year, Quarter qtr)
        {
            switch (qtr)
            {
            case Quarter.First:
                return(new DateTime(year, 1, 1, 0, 0, 0, 0));

            case Quarter.Second:
                return(new DateTime(year, 4, 1, 0, 0, 0, 0));

            case Quarter.Third:
                return(new DateTime(year, 7, 1, 0, 0, 0, 0));

            default:
                return(new DateTime(year, 10, 1, 0, 0, 0, 0));
            }
        }
        public void Build_InputContractsAllEqualAndNoSeasonalAdjustments_ResultsInFlatCurve()
        {
            const double flatPrice = 84.54;
            var          curve     = new MaxSmoothnessSplineCurveBuilder <Day>()
                                     .AddContract(Month.CreateJanuary(2019), flatPrice)
                                     .AddContract(Month.CreateFebruary(2019), flatPrice)
                                     .AddContract(Month.CreateMarch(2019), flatPrice)
                                     .AddContract(Quarter.CreateQuarter2(2019), flatPrice)
                                     .AddContract(Quarter.CreateQuarter3(2019), flatPrice)
                                     .AddContract(Season.CreateWinter(2019), flatPrice)
                                     .BuildCurve();

            foreach (double price in curve.Data)
            {
                Assert.AreEqual(flatPrice, price, 1E-12);
            }
        }
Example #37
0
 public static DateTime GetEndOfQuarter(int Year, Quarter Qtr)
 {
     if (Qtr == Quarter.First) // 1st Quarter = January 1 to March 31
     {
         return(new DateTime(Year, 3, DateTime.DaysInMonth(Year, 3), 23, 59, 59));
     }
     if (Qtr == Quarter.Second) // 2nd Quarter = April 1 to June 30
     {
         return(new DateTime(Year, 6, DateTime.DaysInMonth(Year, 6), 23, 59, 59));
     }
     if (Qtr == Quarter.Third) // 3rd Quarter = July 1 to September 30
     {
         return(new DateTime(Year, 9, DateTime.DaysInMonth(Year, 9), 23, 59, 59));
     }
     // 4th Quarter = October 1 to December 31
     return(new DateTime(Year, 12, DateTime.DaysInMonth(Year, 12), 23, 59, 59));
 }
        public async Task FetchResultsAsync_WithQ1ReturnDataWithOutputB2CAmount_ReturnsOneResultForQ1Type2B2C()
        {
            using (Weee.Tests.Core.Model.DatabaseWrapper wrapper = new Weee.Tests.Core.Model.DatabaseWrapper())
            {
                // Arrange
                Organisation organisation = Organisation.CreateSoleTrader("Test Organisation");
                Scheme       scheme       = new Scheme(organisation);

                RegisteredProducer registeredProducer1 = new RegisteredProducer("WEE/AA1111AA", 2099, scheme);

                Quarter    quarter    = new Quarter(2099, QuarterType.Q1);
                DataReturn dataReturn = new DataReturn(scheme, quarter);

                DataReturnVersion version = new DataReturnVersion(dataReturn);

                EeeOutputAmount amount1 = new EeeOutputAmount(
                    ObligationType.B2C,
                    WeeeCategory.LargeHouseholdAppliances,
                    123.456m,
                    registeredProducer1);
                version.EeeOutputReturnVersion.AddEeeOutputAmount(amount1);

                wrapper.WeeeContext.DataReturns.Add(dataReturn);
                await wrapper.WeeeContext.SaveChangesAsync();

                dataReturn.SetCurrentVersion(version);
                await wrapper.WeeeContext.SaveChangesAsync();

                // Act
                FetchSummaryCsvDataAccess dataAccess = new FetchSummaryCsvDataAccess(wrapper.WeeeContext);

                List <DataReturnSummaryCsvData> results = await dataAccess.FetchResultsAsync(scheme.Id, 2099);

                // Assert
                Assert.NotNull(results);
                Assert.Equal(1, results.Count);

                DataReturnSummaryCsvData result = results[0];
                Assert.NotNull(result);

                Assert.Equal(1, result.Quarter);
                Assert.Equal(2, result.Type);
                Assert.Equal(null, result.Source);
                Assert.Equal("B2C", result.ObligationType);
            }
        }
        public async void GetNextQuarterWindow_CurrentIsQ1_ReturnsQ2()
        {
            Quarter quarter = new Quarter(2019, QuarterType.Q1);
            QuarterWindowTemplate quarterWindowTemplate = QuarterWindowTemplate(7, 1, 0, 1);

            A.CallTo(() => dataAccess.GetByQuarter(((int)quarter.Q) + 1)).Returns(quarterWindowTemplate);

            QuarterWindow result = await quarterWindowFactory.GetNextQuarterWindow(QuarterType.Q1, 2019);

            result.StartDate.Year.Should().Be(2019);
            result.StartDate.Month.Should().Be(07);
            result.StartDate.Day.Should().Be(01);
            result.EndDate.Year.Should().Be(2020);
            result.EndDate.Month.Should().Be(03);
            result.EndDate.Day.Should().Be(16);
            Assert.Equal(QuarterType.Q2, result.QuarterType);
        }
        public DataSource()
        {
            //// appData
            appData = new List<Quarter>();
            var quarterNames = "Q1, Q2, Q3, Q4".Split(',');
            var salesData = new[] { 6833, 11100, 10833, 15350 };
            var downloadsData = new[] { 8500, 7933, 11666, 12350 };
            var expensesData = new[] { 11166, 10166, 7333, 8166 };
            for (int i = 0; i < 4; i++)
            {

                Quarter tempQuarter = new Quarter();
                tempQuarter.Name = quarterNames[i];
                tempQuarter.Sales = salesData[i];
                tempQuarter.Downloads = downloadsData[i];
                tempQuarter.Expenses = expensesData[i];
                appData.Add(tempQuarter);

            }
        }
Example #41
0
        public void CalendarQuarterOfYearTest()
        {
            int currentYear = ClockProxy.Clock.Now.Year;

            TimeCalendar timeCalendar = TimeCalendar.New( YearMonth.October );
            Year calendarYear = new Year( currentYear, timeCalendar );
            Assert.AreEqual( calendarYear.YearBaseMonth, YearMonth.October );
            Assert.AreEqual( calendarYear.BaseYear, currentYear );
            Assert.AreEqual( calendarYear.Start, new DateTime( currentYear, 10, 1 ) );
            Assert.AreEqual( calendarYear.End, calendarYear.Calendar.MapEnd( calendarYear.Start.AddYears( 1 ) ) );

            // Q1
            Quarter q1 = new Quarter( calendarYear.BaseYear, YearQuarter.First, timeCalendar );
            Assert.AreEqual( q1.YearBaseMonth, calendarYear.YearBaseMonth );
            Assert.AreEqual( q1.BaseYear, calendarYear.BaseYear );
            Assert.AreEqual( q1.Start, new DateTime( currentYear, 10, 1 ) );
            Assert.AreEqual( q1.End, q1.Calendar.MapEnd( q1.Start.AddMonths( 3 ) ) );

            // Q2
            Quarter q2 = new Quarter( calendarYear.BaseYear, YearQuarter.Second, timeCalendar );
            Assert.AreEqual( q2.YearBaseMonth, calendarYear.YearBaseMonth );
            Assert.AreEqual( q2.BaseYear, calendarYear.BaseYear );
            Assert.AreEqual( q2.Start, new DateTime( currentYear + 1, 1, 1 ) );
            Assert.AreEqual( q2.End, q2.Calendar.MapEnd( q2.Start.AddMonths( 3 ) ) );

            // Q3
            Quarter q3 = new Quarter( calendarYear.BaseYear, YearQuarter.Third, timeCalendar );
            Assert.AreEqual( q3.YearBaseMonth, calendarYear.YearBaseMonth );
            Assert.AreEqual( q3.BaseYear, calendarYear.BaseYear );
            Assert.AreEqual( q3.Start, new DateTime( currentYear + 1, 4, 1 ) );
            Assert.AreEqual( q3.End, q3.Calendar.MapEnd( q3.Start.AddMonths( 3 ) ) );

            // Q4
            Quarter q4 = new Quarter( calendarYear.BaseYear, YearQuarter.Fourth, timeCalendar );
            Assert.AreEqual( q4.YearBaseMonth, calendarYear.YearBaseMonth );
            Assert.AreEqual( q4.BaseYear, calendarYear.BaseYear );
            Assert.AreEqual( q4.Start, new DateTime( currentYear + 1, 7, 1 ) );
            Assert.AreEqual( q4.End, q4.Calendar.MapEnd( q4.Start.AddMonths( 3 ) ) );
        }
		public void InitControls(IEnumerable<Quarter> quarters, Quarter selectedQuarter)
		{
			SelectedQuarter = selectedQuarter;
			Controls.Clear();
			_quarterButtons.Clear();
			foreach (var quarter in quarters)
			{
				var button = new ButtonX
				{
					ColorTable = eButtonColor.OrangeWithBackground,
					Style = eDotNetBarStyle.StyleManagerControlled,
					Text = quarter.ToString(),
					Cursor = Cursors.Hand,
					Tag = quarter,
					Checked = quarter == SelectedQuarter,
					Height = ButtonHeight,
					Width = ButtonWidth
				};
				button.Click += OnQuarterClick;
				_quarterButtons.Add(button);
				Controls.Add(button);
			}
			ResizeButtons();
		}
Example #43
0
        private void SetupPartitions()
        {
            if (s_quran_metadata == null)
            {
                LoadQuranMetadata();
            }

            if (s_quran_metadata != null)
            {
                // setup Chapters
                for (int i = 0; i < s_quran_metadata.Chapters.Length; i++)
                {
                    int number = s_quran_metadata.Chapters[i].Number;
                    int verse_count = s_quran_metadata.Chapters[i].Verses;
                    int first_verse = s_quran_metadata.Chapters[i].FirstVerse;
                    int last_verse = first_verse + verse_count;
                    string name = s_quran_metadata.Chapters[i].Name;
                    string transliterated_name = s_quran_metadata.Chapters[i].TransliteratedName;
                    string english_name = s_quran_metadata.Chapters[i].EnglishName;
                    int revelation_order = s_quran_metadata.Chapters[i].RevelationOrder;
                    RevelationPlace revelation_place = s_quran_metadata.Chapters[i].RevelationPlace;
                    int bowing_count = s_quran_metadata.Chapters[i].Bowings;

                    List<Verse> verses = new List<Verse>();
                    if (this.verses != null)
                    {
                        for (int j = first_verse; j < last_verse; j++)
                        {
                            int index = j - 1;
                            if ((index >= 0) && (index < this.verses.Count))
                            {
                                Verse verse = this.verses[index];
                                verses.Add(verse);
                            }
                            else
                            {
                                break;
                            }
                        }

                        Chapter chapter = new Chapter(number, name, transliterated_name, english_name, revelation_order, revelation_place, bowing_count, verses);
                        this.chapters.Add(chapter);
                    }
                }

                // setup Bowings
                for (int i = 0; i < s_quran_metadata.Bowings.Length; i++)
                {
                    int number = s_quran_metadata.Bowings[i].Number;
                    int start_chapter = s_quran_metadata.Bowings[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Bowings[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_bowing_first_verse = 0;
                    if (i < s_quran_metadata.Bowings.Length - 1)
                    {
                        int next_bowing_start_chapter = s_quran_metadata.Bowings[i + 1].StartChapter;
                        int next_bowing_start_chapter_verse = s_quran_metadata.Bowings[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_bowing_start_chapter - 1; j++)
                        {
                            next_bowing_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_bowing_first_verse += next_bowing_start_chapter_verse;
                    }
                    else
                    {
                        next_bowing_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_bowing_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Bowing bowing = new Bowing(number, verses);
                    this.bowings.Add(bowing);
                }

                // setup Group
                for (int i = 0; i < s_quran_metadata.Groups.Length; i++)
                {
                    int number = s_quran_metadata.Groups[i].Number;
                    int start_chapter = s_quran_metadata.Groups[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Groups[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_group_first_verse = 0;
                    if (i < s_quran_metadata.Groups.Length - 1)
                    {
                        int next_group_start_chapter = s_quran_metadata.Groups[i + 1].StartChapter;
                        int next_group_start_chapter_verse = s_quran_metadata.Groups[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_group_start_chapter - 1; j++)
                        {
                            next_group_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_group_first_verse += next_group_start_chapter_verse;
                    }
                    else
                    {
                        next_group_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_group_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Model.Group group = new Model.Group(number, verses);
                    this.groups.Add(group);
                }

                // setup Quarters
                for (int i = 0; i < s_quran_metadata.Quarters.Length; i++)
                {
                    int number = s_quran_metadata.Quarters[i].Number;
                    int start_chapter = s_quran_metadata.Quarters[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Quarters[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_group_quarter_first_verse = 0;
                    if (i < s_quran_metadata.Quarters.Length - 1)
                    {
                        int next_group_quarter_start_chapter = s_quran_metadata.Quarters[i + 1].StartChapter;
                        int next_group_quarter_start_chapter_verse = s_quran_metadata.Quarters[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_group_quarter_start_chapter - 1; j++)
                        {
                            next_group_quarter_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_group_quarter_first_verse += next_group_quarter_start_chapter_verse;
                    }
                    else
                    {
                        next_group_quarter_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_group_quarter_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Quarter group_quarter = new Quarter(number, verses);
                    this.quarters.Add(group_quarter);
                }

                // setup Pages
                for (int i = 0; i < s_quran_metadata.Pages.Length; i++)
                {
                    int number = s_quran_metadata.Pages[i].Number;
                    int start_chapter = s_quran_metadata.Pages[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Pages[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_page_first_verse = 0;
                    if (i < s_quran_metadata.Pages.Length - 1)
                    {
                        int next_page_start_chapter = s_quran_metadata.Pages[i + 1].StartChapter;
                        int next_page_start_chapter_verse = s_quran_metadata.Pages[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_page_start_chapter - 1; j++)
                        {
                            next_page_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_page_first_verse += next_page_start_chapter_verse;
                    }
                    else
                    {
                        next_page_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_page_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Page page = new Page(number, verses);
                    this.pages.Add(page);
                }

                // setup Parts
                for (int i = 0; i < s_quran_metadata.Parts.Length; i++)
                {
                    int number = s_quran_metadata.Parts[i].Number;
                    int start_chapter = s_quran_metadata.Parts[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Parts[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_part_first_verse = 0;
                    if (i < s_quran_metadata.Parts.Length - 1)
                    {
                        int next_part_start_chapter = s_quran_metadata.Parts[i + 1].StartChapter;
                        int next_part_start_chapter_verse = s_quran_metadata.Parts[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_part_start_chapter - 1; j++)
                        {
                            next_part_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_part_first_verse += next_part_start_chapter_verse;
                    }
                    else
                    {
                        next_part_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_part_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Part part = new Part(number, verses);
                    this.parts.Add(part);
                }

                // setup Stations
                for (int i = 0; i < s_quran_metadata.Stations.Length; i++)
                {
                    int number = s_quran_metadata.Stations[i].Number;
                    int start_chapter = s_quran_metadata.Stations[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Stations[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_station_first_verse = 0;
                    if (i < s_quran_metadata.Stations.Length - 1)
                    {
                        int next_station_start_chapter = s_quran_metadata.Stations[i + 1].StartChapter;
                        int next_station_start_chapter_verse = s_quran_metadata.Stations[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_station_start_chapter - 1; j++)
                        {
                            next_station_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_station_first_verse += next_station_start_chapter_verse;
                    }
                    else
                    {
                        next_station_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_station_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Station station = new Station(number, verses);
                    this.stations.Add(station);
                }

                // setup Prostration
                for (int i = 0; i < s_quran_metadata.Prostrations.Length; i++)
                {
                    int number = s_quran_metadata.Prostrations[i].Number;
                    int chapter = s_quran_metadata.Prostrations[i].Chapter;
                    int chapter_verse = s_quran_metadata.Prostrations[i].ChapterVerse;
                    ProstrationType type = s_quran_metadata.Prostrations[i].Type;

                    int first_verse = 0;
                    for (int j = 0; j < chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += chapter_verse;

                    if (this.verses.Count > first_verse - 1)
                    {
                        Verse verse = this.verses[first_verse - 1];
                        Prostration prostration = new Prostration(number, type, verse);
                        this.prostrations.Add(prostration);
                    }
                    else
                    {
                        break;
                    }
                }

                // update verse/word/letter numbers AND
                // update distances to previous same verse/word/letter
                UpdateNumbersAndDistances(SelectionScope.Book);
            }
        }
Example #44
0
        public static IEnumerable<Quarter> GetNextnCurrentQuarter(DateTime date)
        {
            var list = new List<Quarter>();
            var currentQtr = GetCurrentQuarter(DateTime.Now);
            list.Add(currentQtr);

            var nextQtr = new Quarter();

            if (currentQtr.QuarterId == 1)
            {
                nextQtr = Quarters.FirstOrDefault(q => q.QuarterId == 2);
                var qtrYr = nextQtr.QuarterDescription + " " + date.AddYears(1).Year;
                nextQtr.QuarterYear = qtrYr;
            }
            else
            {
                nextQtr = Quarters.FirstOrDefault(q => q.QuarterId == currentQtr.QuarterId + 1);
                var qtrYr = nextQtr.QuarterDescription + " " + date.Year;
                nextQtr.QuarterYear = qtrYr;
            }
            
            list.Add(nextQtr);
            return list;
        }
 public MySqlFunctionManager(bool allowFuncDefChange)
 {
     this.allowFuncDefChange = allowFuncDefChange;
     parsingStrateg["CAST"] = FunctionParsingStrategy.Cast;
     parsingStrateg["POSITION"] = FunctionParsingStrategy.Position;
     parsingStrateg["SUBSTR"] = FunctionParsingStrategy.Substring;
     parsingStrateg["SUBSTRING"] = FunctionParsingStrategy.Substring;
     parsingStrateg["TRIM"] = FunctionParsingStrategy.Trim;
     parsingStrateg["AVG"] = FunctionParsingStrategy.Avg;
     parsingStrateg["COUNT"] = FunctionParsingStrategy.Count;
     parsingStrateg["GROUP_CONCAT"] = FunctionParsingStrategy.GroupConcat;
     parsingStrateg["MAX"] = FunctionParsingStrategy.Max;
     parsingStrateg["MIN"] = FunctionParsingStrategy.Min;
     parsingStrateg["SUM"] = FunctionParsingStrategy.Sum;
     parsingStrateg["ROW"] = FunctionParsingStrategy.Row;
     parsingStrateg["CHAR"] = FunctionParsingStrategy.Char;
     parsingStrateg["CONVERT"] = FunctionParsingStrategy.Convert;
     parsingStrateg["EXTRACT"] = FunctionParsingStrategy.Extract;
     parsingStrateg["TIMESTAMPADD"] = FunctionParsingStrategy.Timestampadd;
     parsingStrateg["TIMESTAMPDIFF"] = FunctionParsingStrategy.Timestampdiff;
     parsingStrateg["GET_FORMAT"] = FunctionParsingStrategy.GetFormat;
     functionPrototype["ABS"] = new Abs(null);
     functionPrototype["ACOS"] = new Acos(null);
     functionPrototype["ADDDATE"] = new Adddate(null);
     functionPrototype["ADDTIME"] = new Addtime(null);
     functionPrototype["AES_DECRYPT"] = new AesDecrypt(null);
     functionPrototype["AES_ENCRYPT"] = new AesEncrypt(null);
     functionPrototype["ANALYSE"] = new Analyse(null);
     functionPrototype["ASCII"] = new Ascii(null);
     functionPrototype["ASIN"] = new Asin(null);
     functionPrototype["ATAN2"] = new Atan2(null);
     functionPrototype["ATAN"] = new Atan(null);
     functionPrototype["BENCHMARK"] = new Benchmark(null);
     functionPrototype["BIN"] = new Bin(null);
     functionPrototype["BIT_AND"] = new BitAnd(null);
     functionPrototype["BIT_COUNT"] = new BitCount(null);
     functionPrototype["BIT_LENGTH"] = new BitLength(null);
     functionPrototype["BIT_OR"] = new BitOR(null);
     functionPrototype["BIT_XOR"] = new BitXor(null);
     functionPrototype["CEIL"] = new Ceiling(null);
     functionPrototype["CEILING"] = new Ceiling(null);
     functionPrototype["CHAR_LENGTH"] = new CharLength(null);
     functionPrototype["CHARACTER_LENGTH"] = new CharLength(null);
     functionPrototype["CHARSET"] = new Charset(null);
     functionPrototype["COALESCE"] = new Coalesce(null);
     functionPrototype["COERCIBILITY"] = new Coercibility(null);
     functionPrototype["COLLATION"] = new Collation(null);
     functionPrototype["COMPRESS"] = new Compress(null);
     functionPrototype["CONCAT_WS"] = new ConcatWs(null);
     functionPrototype["CONCAT"] = new Concat(null);
     functionPrototype["CONNECTION_ID"] = new ConnectionId(null);
     functionPrototype["CONV"] = new Conv(null);
     functionPrototype["CONVERT_TZ"] = new ConvertTz(null);
     functionPrototype["COS"] = new Cos(null);
     functionPrototype["COT"] = new Cot(null);
     functionPrototype["CRC32"] = new Crc32(null);
     functionPrototype["CURDATE"] = new Curdate();
     functionPrototype["CURRENT_DATE"] = new Curdate();
     functionPrototype["CURRENT_TIME"] = new Curtime();
     functionPrototype["CURTIME"] = new Curtime();
     functionPrototype["CURRENT_TIMESTAMP"] = new Now();
     functionPrototype["CURRENT_USER"] = new CurrentUser();
     functionPrototype["CURTIME"] = new Curtime();
     functionPrototype["DATABASE"] = new Database(null);
     functionPrototype["DATE_ADD"] = new DateAdd(null);
     functionPrototype["DATE_FORMAT"] = new DateFormat(null);
     functionPrototype["DATE_SUB"] = new DateSub(null);
     functionPrototype["DATE"] = new Date(null);
     functionPrototype["DATEDIFF"] = new Datediff(null);
     functionPrototype["DAY"] = new Dayofmonth(null);
     functionPrototype["DAYOFMONTH"] = new Dayofmonth(null);
     functionPrototype["DAYNAME"] = new Dayname(null);
     functionPrototype["DAYOFWEEK"] = new Dayofweek(null);
     functionPrototype["DAYOFYEAR"] = new Dayofyear(null);
     functionPrototype["DECODE"] = new Decode(null);
     functionPrototype["DEFAULT"] = new Default(null);
     functionPrototype["DEGREES"] = new Degrees(null);
     functionPrototype["DES_DECRYPT"] = new DesDecrypt(null);
     functionPrototype["DES_ENCRYPT"] = new DesEncrypt(null);
     functionPrototype["ELT"] = new Elt(null);
     functionPrototype["ENCODE"] = new Encode(null);
     functionPrototype["ENCRYPT"] = new Encrypt(null);
     functionPrototype["EXP"] = new Exp(null);
     functionPrototype["EXPORT_SET"] = new ExportSet(null);
     // functionPrototype.put("EXTRACT", new Extract(null));
     functionPrototype["EXTRACTVALUE"] = new ExtractValue(null);
     functionPrototype["FIELD"] = new Field(null);
     functionPrototype["FIND_IN_SET"] = new FindInSet(null);
     functionPrototype["FLOOR"] = new Floor(null);
     functionPrototype["FORMAT"] = new Format(null);
     functionPrototype["FOUND_ROWS"] = new FoundRows(null);
     functionPrototype["FROM_DAYS"] = new FromDays(null);
     functionPrototype["FROM_UNIXTIME"] = new FromUnixtime(null);
     // functionPrototype.put("GET_FORMAT", new GetFormat(null));
     functionPrototype["GET_LOCK"] = new GetLock(null);
     functionPrototype["GREATEST"] = new Greatest(null);
     functionPrototype["HEX"] = new Hex(null);
     functionPrototype["HOUR"] = new Hour(null);
     functionPrototype["IF"] = new IF(null);
     functionPrototype["IFNULL"] = new IFNull(null);
     functionPrototype["INET_ATON"] = new InetAton(null);
     functionPrototype["INET_NTOA"] = new InetNtoa(null);
     functionPrototype["INSERT"] = new Insert(null);
     functionPrototype["INSTR"] = new Instr(null);
     functionPrototype["INTERVAL"] = new Interval(null);
     functionPrototype["IS_FREE_LOCK"] = new IsFreeLock(null);
     functionPrototype["IS_USED_LOCK"] = new IsUsedLock(null);
     functionPrototype["ISNULL"] = new IsNull(null);
     functionPrototype["LAST_DAY"] = new LastDay(null);
     functionPrototype["LAST_INSERT_ID"] = new LastInsertId(null);
     functionPrototype["LCASE"] = new Lower(null);
     functionPrototype["LEAST"] = new Least(null);
     functionPrototype["LEFT"] = new Left(null);
     functionPrototype["LENGTH"] = new Length(null);
     functionPrototype["LN"] = new Log(null);
     // Ln(X) equals Log(X)
     functionPrototype["LOAD_FILE"] = new LoadFile(null);
     functionPrototype["LOCALTIME"] = new Now();
     functionPrototype["LOCALTIMESTAMP"] = new Now();
     functionPrototype["LOCATE"] = new Locate(null);
     functionPrototype["LOG10"] = new Log10(null);
     functionPrototype["LOG2"] = new Log2(null);
     functionPrototype["LOG"] = new Log(null);
     functionPrototype["LOWER"] = new Lower(null);
     functionPrototype["LPAD"] = new Lpad(null);
     functionPrototype["LTRIM"] = new Ltrim(null);
     functionPrototype["MAKE_SET"] = new MakeSet(null);
     functionPrototype["MAKEDATE"] = new Makedate(null);
     functionPrototype["MAKETIME"] = new Maketime(null);
     functionPrototype["MASTER_POS_WAIT"] = new MasterPosWait(null);
     functionPrototype["MD5"] = new Md5(null);
     functionPrototype["MICROSECOND"] = new Microsecond(null);
     functionPrototype["MID"] = new Substring(null);
     functionPrototype["MINUTE"] = new Minute(null);
     functionPrototype["MONTH"] = new Month(null);
     functionPrototype["MONTHNAME"] = new Monthname(null);
     functionPrototype["NAME_CONST"] = new NameConst(null);
     functionPrototype["NOW"] = new Now();
     functionPrototype["NULLIF"] = new NullIF(null);
     functionPrototype["OCT"] = new Oct(null);
     functionPrototype["OCTET_LENGTH"] = new Length(null);
     functionPrototype["OLD_PASSWORD"] = new OldPassword(null);
     functionPrototype["ORD"] = new Ord(null);
     functionPrototype["PASSWORD"] = new Password(null);
     functionPrototype["PERIOD_ADD"] = new PeriodAdd(null);
     functionPrototype["PERIOD_DIFF"] = new PeriodDiff(null);
     functionPrototype["PI"] = new PI(null);
     functionPrototype["POW"] = new Pow(null);
     functionPrototype["POWER"] = new Pow(null);
     functionPrototype["QUARTER"] = new Quarter(null);
     functionPrototype["QUOTE"] = new Quote(null);
     functionPrototype["RADIANS"] = new Radians(null);
     functionPrototype["RAND"] = new Rand(null);
     functionPrototype["RELEASE_LOCK"] = new ReleaseLock(null);
     functionPrototype["REPEAT"] = new Repeat(null);
     functionPrototype["REPLACE"] = new Replace(null);
     functionPrototype["REVERSE"] = new Reverse(null);
     functionPrototype["RIGHT"] = new Right(null);
     functionPrototype["ROUND"] = new Round(null);
     functionPrototype["ROW_COUNT"] = new RowCount(null);
     functionPrototype["RPAD"] = new Rpad(null);
     functionPrototype["RTRIM"] = new Rtrim(null);
     functionPrototype["SCHEMA"] = new Database(null);
     functionPrototype["SEC_TO_TIME"] = new SecToTime(null);
     functionPrototype["SECOND"] = new Second(null);
     functionPrototype["SESSION_USER"] = new User(null);
     functionPrototype["SHA1"] = new Sha1(null);
     functionPrototype["SHA"] = new Sha1(null);
     functionPrototype["SHA2"] = new Sha2(null);
     functionPrototype["SIGN"] = new Sign(null);
     functionPrototype["SIN"] = new Sin(null);
     functionPrototype["SLEEP"] = new Sleep(null);
     functionPrototype["SOUNDEX"] = new Soundex(null);
     functionPrototype["SPACE"] = new Space(null);
     functionPrototype["SQRT"] = new Sqrt(null);
     functionPrototype["STD"] = new Std(null);
     functionPrototype["STDDEV_POP"] = new StdDevPop(null);
     functionPrototype["STDDEV_SAMP"] = new StdDevSamp(null);
     functionPrototype["STDDEV"] = new StdDev(null);
     functionPrototype["STR_TO_DATE"] = new StrToDate(null);
     functionPrototype["STRCMP"] = new Strcmp(null);
     functionPrototype["SUBDATE"] = new Subdate(null);
     functionPrototype["SUBSTRING_INDEX"] = new SubstringIndex(null);
     functionPrototype["SUBTIME"] = new Subtime(null);
     functionPrototype["SYSDATE"] = new Sysdate(null);
     functionPrototype["SYSTEM_USER"] = new User(null);
     functionPrototype["TAN"] = new Tan(null);
     functionPrototype["TIME_FORMAT"] = new TimeFormat(null);
     functionPrototype["TIME_TO_SEC"] = new TimeToSec(null);
     functionPrototype["TIME"] = new Time(null);
     functionPrototype["TIMEDIFF"] = new Timediff(null);
     functionPrototype["TIMESTAMP"] = new Timestamp(null);
     // functionPrototype.put("TIMESTAMPADD", new Timestampadd(null));
     // functionPrototype.put("TIMESTAMPDIFF", new Timestampdiff(null));
     functionPrototype["TO_DAYS"] = new ToDays(null);
     functionPrototype["TO_SECONDS"] = new ToSeconds(null);
     functionPrototype["TRUNCATE"] = new Truncate(null);
     functionPrototype["UCASE"] = new Upper(null);
     functionPrototype["UNCOMPRESS"] = new Uncompress(null);
     functionPrototype["UNCOMPRESSED_LENGTH"] = new UncompressedLength(null);
     functionPrototype["UNHEX"] = new Unhex(null);
     functionPrototype["UNIX_TIMESTAMP"] = new UnixTimestamp(null);
     functionPrototype["UPDATEXML"] = new UpdateXml(null);
     functionPrototype["UPPER"] = new Upper(null);
     functionPrototype["USER"] = new User(null);
     functionPrototype["UTC_DATE"] = new UtcDate(null);
     functionPrototype["UTC_TIME"] = new UtcTime(null);
     functionPrototype["UTC_TIMESTAMP"] = new UtcTimestamp(null);
     functionPrototype["UUID_SHORT"] = new UuidShort(null);
     functionPrototype["UUID"] = new Uuid(null);
     functionPrototype["VALUES"] = new Values(null);
     functionPrototype["VAR_POP"] = new VarPop(null);
     functionPrototype["VAR_SAMP"] = new VarSamp(null);
     functionPrototype["VARIANCE"] = new Variance(null);
     functionPrototype["VERSION"] = new Version(null);
     functionPrototype["WEEK"] = new Week(null);
     functionPrototype["WEEKDAY"] = new Weekday(null);
     functionPrototype["WEEKOFYEAR"] = new Weekofyear(null);
     functionPrototype["YEAR"] = new Year(null);
     functionPrototype["YEARWEEK"] = new Yearweek(null);
 }
 partial void InsertQuarter(Quarter instance);
 partial void UpdateQuarter(Quarter instance);
Example #48
0
 // ----------------------------------------------------------------------
 private void UpdateSelectedPeriodInfo()
 {
     TimeCalendar timeCalendar = TimeCalendar.New( SelectedYearBaseMonth );
     switch ( SelectedPeriodMode )
     {
         case TimePeriodMode.Year:
             Year year = new Year( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Year", year );
             periodInfo.AddItem( "YearBaseMonth", year.YearBaseMonth );
             periodInfo.AddItem( "IsCalendarYear", year.IsCalendarYear );
             periodInfo.AddItem( "StartYear", year.StartYear );
             periodInfo.AddItem( "FirstDayStart", year.FirstDayStart );
             periodInfo.AddItem( "LastDayStart", year.LastDayStart );
             periodInfo.AddItem( "LastMonthStart", year.LastMonthStart );
             periodInfo.AddItem( "YearName", year.YearName );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", year.GetPreviousYear() );
             periodInfo.AddItem( "Next", year.GetNextYear() );
             periodInfo.AddSubitems( "Halfyears", year.GetHalfyears() );
             periodInfo.AddSubitems( "Quarters", year.GetQuarters() );
             periodInfo.AddSubitems( "Months", year.GetMonths() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Halfyear:
             Halfyear halfyear = new Halfyear( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Halfyear", halfyear );
             periodInfo.AddItem( "YearBaseMonth", halfyear.YearBaseMonth );
             periodInfo.AddItem( "StartMonth", halfyear.StartMonth );
             periodInfo.AddItem( "Year", halfyear.Year );
             periodInfo.AddItem( "YearHalfyear", halfyear.YearHalfyear );
             periodInfo.AddItem( "IsCalendarHalfyear", halfyear.IsCalendarHalfyear );
             periodInfo.AddItem( "MultipleCalendarYears", halfyear.MultipleCalendarYears );
             periodInfo.AddItem( "HalfyearName", halfyear.HalfyearName );
             periodInfo.AddItem( "HalfyearOfYearName", halfyear.HalfyearOfYearName );
             periodInfo.AddItem( "LastDayStart", halfyear.LastDayStart );
             periodInfo.AddItem( "LastMonthStart", halfyear.LastMonthStart );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previousr", halfyear.GetPreviousHalfyear() );
             periodInfo.AddItem( "Next", halfyear.GetNextHalfyear() );
             periodInfo.AddSubitems( "Quarters", halfyear.GetQuarters() );
             periodInfo.AddSubitems( "Months", halfyear.GetMonths() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Quarter:
             Quarter quarter = new Quarter( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Quarter", quarter );
             periodInfo.AddItem( "YearBaseMonth", quarter.YearBaseMonth );
             periodInfo.AddItem( "StartMonth", quarter.StartMonth );
             periodInfo.AddItem( "Year", quarter.Year );
             periodInfo.AddItem( "YearQuarter", quarter.YearQuarter );
             periodInfo.AddItem( "IsCalendarQuarter", quarter.IsCalendarQuarter );
             periodInfo.AddItem( "MultipleCalendarYears", quarter.MultipleCalendarYears );
             periodInfo.AddItem( "QuarterName", quarter.QuarterName );
             periodInfo.AddItem( "QuarterOfYearName", quarter.QuarterOfYearName );
             periodInfo.AddItem( "LastDayStart", quarter.FirstDayStart );
             periodInfo.AddItem( "LastMonthStart", quarter.LastDayStart );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", quarter.GetPreviousQuarter() );
             periodInfo.AddItem( "Next", quarter.GetNextQuarter() );
             periodInfo.AddSubitems( "Months", quarter.GetMonths() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Month:
             Month month = new Month( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Month", month );
             periodInfo.AddItem( "YearBaseMonth", month.YearMonth );
             periodInfo.AddItem( "Year", month.Year );
             periodInfo.AddItem( "DaysInMonth", month.DaysInMonth );
             periodInfo.AddItem( "MonthName", month.MonthName );
             periodInfo.AddItem( "MonthOfYearName", month.MonthOfYearName );
             periodInfo.AddItem( "LastDayStart", month.FirstDayStart );
             periodInfo.AddItem( "LastMonthStart", month.LastDayStart );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", month.GetPreviousMonth() );
             periodInfo.AddItem( "Next", month.GetNextMonth() );
             periodInfo.AddSubitems( "Days", month.GetDays() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Week:
             Week week = new Week( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Week", week );
             periodInfo.AddItem( "MultipleCalendarYears", week.MultipleCalendarYears );
             periodInfo.AddItem( "FirstDayStart", week.FirstDayStart );
             periodInfo.AddItem( "FirstDayOfWeek", week.FirstDayOfWeek );
             periodInfo.AddItem( "LastDayStart", week.LastDayStart );
             periodInfo.AddItem( "LastDayOfWeek", week.LastDayOfWeek );
             periodInfo.AddItem( "WeekOfYear", week.WeekOfYear );
             periodInfo.AddItem( "WeekOfYearName", week.WeekOfYearName );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", week.GetPreviousWeek() );
             periodInfo.AddItem( "Next", week.GetNextWeek() );
             periodInfo.AddSubitems( "Days", week.GetDays() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Day:
             Day day = new Day( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Day", day );
             periodInfo.AddItem( "Year", day.Year );
             periodInfo.AddItem( "FirstDayStart", day.FirstDayStart );
             periodInfo.AddItem( "Month", day.Month );
             periodInfo.AddItem( "DayValue", day.DayValue );
             periodInfo.AddItem( "DayOfWeek", day.DayOfWeek );
             periodInfo.AddItem( "DayName", day.DayName );
             periodInfo.AddItem( "FirstHourStart", day.FirstHourStart );
             periodInfo.AddItem( "LastHourStart", day.LastHourStart );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", day.GetPreviousDay() );
             periodInfo.AddItem( "Next", day.GetNextDay() );
             periodInfo.AddSubitems( "Hours", day.GetHours() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Hour:
             Hour hour = new Hour( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Hour", hour );
             periodInfo.AddItem( "Year", hour.Year );
             periodInfo.AddItem( "Month", hour.Month );
             periodInfo.AddItem( "Day", hour.Day );
             periodInfo.AddItem( "HourValue", hour.HourValue );
             periodInfo.AddItem( "FirstMinuteStart", hour.FirstMinuteStart );
             periodInfo.AddItem( "LastMinuteStart", hour.LastMinuteStart );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", hour.GetPreviousHour() );
             periodInfo.AddItem( "Next", hour.GetNextHour() );
             periodInfo.AddSubitems( "Minutes", hour.GetMinutes() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
         case TimePeriodMode.Minute:
             Minute minute = new Minute( WorkingDate, timeCalendar );
             periodInfo.Clear();
             periodInfo.AddItem( "Minute", minute );
             periodInfo.AddItem( "Year", minute.Year );
             periodInfo.AddItem( "Month", minute.Month );
             periodInfo.AddItem( "Day", minute.Day );
             periodInfo.AddItem( "Hour", minute.Hour );
             periodInfo.AddItem( "MinuteValue", minute.MinuteValue );
             periodInfo.AddSection( "Previous/Next" );
             periodInfo.AddItem( "Previous", minute.GetPreviousMinute() );
             periodInfo.AddItem( "Next", minute.GetNextMinute() );
             SelectedPeriodInfo = periodInfo.ToString();
             break;
     }
 }
Example #49
0
        public void InitValuesTest()
        {
            DateTime now = ClockProxy.Clock.Now;
            DateTime firstQuarter = new DateTime( now.Year, 1, 1 );
            DateTime secondQuarter = firstQuarter.AddMonths( TimeSpec.MonthsPerQuarter );
            Quarter quarter = new Quarter( now.Year, YearQuarter.First, TimeCalendar.NewEmptyOffset() );

            Assert.AreEqual( quarter.Start.Year, firstQuarter.Year );
            Assert.AreEqual( quarter.Start.Month, firstQuarter.Month );
            Assert.AreEqual( quarter.Start.Day, firstQuarter.Day );
            Assert.AreEqual( quarter.Start.Hour, 0 );
            Assert.AreEqual( quarter.Start.Minute, 0 );
            Assert.AreEqual( quarter.Start.Second, 0 );
            Assert.AreEqual( quarter.Start.Millisecond, 0 );

            Assert.AreEqual( quarter.End.Year, secondQuarter.Year );
            Assert.AreEqual( quarter.End.Month, secondQuarter.Month );
            Assert.AreEqual( quarter.End.Day, secondQuarter.Day );
            Assert.AreEqual( quarter.End.Hour, 0 );
            Assert.AreEqual( quarter.End.Minute, 0 );
            Assert.AreEqual( quarter.End.Second, 0 );
            Assert.AreEqual( quarter.End.Millisecond, 0 );
        }
 partial void DeleteQuarter(Quarter instance);
Example #51
0
 public void CurrentQuarterTest()
 {
     int currentYear = ClockProxy.Clock.Now.Year;
     Quarter quarter = new Quarter( currentYear, YearQuarter.First );
     Assert.AreEqual( quarter.BaseYear, currentYear );
 }
Example #52
0
        public void CalendarYearQuarterTest()
        {
            int currentYear = ClockProxy.Clock.Now.Year;
            TimeCalendar calendar = TimeCalendar.New( TimeSpan.Zero, TimeSpan.Zero );

            Quarter current = new Quarter( currentYear, YearQuarter.First );
            Assert.AreEqual( current.GetNextQuarter().GetNextQuarter().GetNextQuarter().GetNextQuarter().YearQuarter, current.YearQuarter );
            Assert.AreEqual( current.GetPreviousQuarter().GetPreviousQuarter().GetPreviousQuarter().GetPreviousQuarter().YearQuarter, current.YearQuarter );

            Quarter q1 = new Quarter( currentYear, YearQuarter.First, calendar );
            Assert.IsTrue( q1.IsReadOnly );
            Assert.AreEqual( q1.YearQuarter, YearQuarter.First );
            Assert.AreEqual( q1.Start, new DateTime( currentYear, TimeSpec.FirstQuarterMonthIndex, 1 ) );
            Assert.AreEqual( q1.End, new DateTime( currentYear, TimeSpec.SecondQuarterMonthIndex, 1 ) );

            Quarter q2 = new Quarter( currentYear, YearQuarter.Second, calendar );
            Assert.IsTrue( q2.IsReadOnly );
            Assert.AreEqual( q2.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( q2.Start, new DateTime( currentYear, TimeSpec.SecondQuarterMonthIndex, 1 ) );
            Assert.AreEqual( q2.End, new DateTime( currentYear, TimeSpec.ThirdQuarterMonthIndex, 1 ) );

            Quarter q3 = new Quarter( currentYear, YearQuarter.Third, calendar );
            Assert.IsTrue( q3.IsReadOnly );
            Assert.AreEqual( q3.YearQuarter, YearQuarter.Third );
            Assert.AreEqual( q3.Start, new DateTime( currentYear, TimeSpec.ThirdQuarterMonthIndex, 1 ) );
            Assert.AreEqual( q3.End, new DateTime( currentYear, TimeSpec.FourthQuarterMonthIndex, 1 ) );

            Quarter q4 = new Quarter( currentYear, YearQuarter.Fourth, calendar );
            Assert.IsTrue( q4.IsReadOnly );
            Assert.AreEqual( q4.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( q4.Start, new DateTime( currentYear, TimeSpec.FourthQuarterMonthIndex, 1 ) );
            Assert.AreEqual( q4.End, new DateTime( currentYear + 1, TimeSpec.FirstQuarterMonthIndex, 1 ) );
        }
Example #53
0
        public void AddQuartersTest()
        {
            int currentYear = ClockProxy.Clock.Now.Year;
            const YearMonth yearStartMonth = YearMonth.April;
            TimeCalendar calendar = TimeCalendar.New( TimeSpan.Zero, TimeSpan.Zero, yearStartMonth );

            DateTime calendarStartDate = new DateTime( currentYear, 4, 1 );
            Quarter calendarQuarter = new Quarter( currentYear, YearQuarter.First, calendar );

            Assert.AreEqual( calendarQuarter.AddQuarters( 0 ), calendarQuarter );

            Quarter prevQ1 = calendarQuarter.AddQuarters( -1 );
            Assert.AreEqual( prevQ1.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( prevQ1.BaseYear, currentYear - 1 );
            Assert.AreEqual( prevQ1.Start, calendarStartDate.AddMonths( -3 ) );
            Assert.AreEqual( prevQ1.End, calendarStartDate );

            Quarter prevQ2 = calendarQuarter.AddQuarters( -2 );
            Assert.AreEqual( prevQ2.YearQuarter, YearQuarter.Third );
            Assert.AreEqual( prevQ2.BaseYear, currentYear - 1 );
            Assert.AreEqual( prevQ2.Start, calendarStartDate.AddMonths( -6 ) );
            Assert.AreEqual( prevQ2.End, calendarStartDate.AddMonths( -3 ) );

            Quarter prevQ3 = calendarQuarter.AddQuarters( -3 );
            Assert.AreEqual( prevQ3.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( prevQ3.BaseYear, currentYear - 1 );
            Assert.AreEqual( prevQ3.Start, calendarStartDate.AddMonths( -9 ) );
            Assert.AreEqual( prevQ3.End, calendarStartDate.AddMonths( -6 ) );

            Quarter prevQ4 = calendarQuarter.AddQuarters( -4 );
            Assert.AreEqual( prevQ4.YearQuarter, YearQuarter.First );
            Assert.AreEqual( prevQ4.BaseYear, currentYear - 1 );
            Assert.AreEqual( prevQ4.Start, calendarStartDate.AddMonths( -12 ) );
            Assert.AreEqual( prevQ4.End, calendarStartDate.AddMonths( -9 ) );

            Quarter prevQ5 = calendarQuarter.AddQuarters( -5 );
            Assert.AreEqual( prevQ5.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( prevQ5.BaseYear, currentYear - 2 );
            Assert.AreEqual( prevQ5.Start, calendarStartDate.AddMonths( -15 ) );
            Assert.AreEqual( prevQ5.End, calendarStartDate.AddMonths( -12 ) );

            Quarter futureQ1 = calendarQuarter.AddQuarters( 1 );
            Assert.AreEqual( futureQ1.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( futureQ1.BaseYear, currentYear );
            Assert.AreEqual( futureQ1.Start, calendarStartDate.AddMonths( 3 ) );
            Assert.AreEqual( futureQ1.End, calendarStartDate.AddMonths( 6 ) );

            Quarter futureQ2 = calendarQuarter.AddQuarters( 2 );
            Assert.AreEqual( futureQ2.YearQuarter, YearQuarter.Third );
            Assert.AreEqual( futureQ2.BaseYear, currentYear );
            Assert.AreEqual( futureQ2.Start, calendarStartDate.AddMonths( 6 ) );
            Assert.AreEqual( futureQ2.End, calendarStartDate.AddMonths( 9 ) );

            Quarter futureQ3 = calendarQuarter.AddQuarters( 3 );
            Assert.AreEqual( futureQ3.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( futureQ3.BaseYear, currentYear );
            Assert.AreEqual( futureQ3.Start, calendarStartDate.AddMonths( 9 ) );
            Assert.AreEqual( futureQ3.End, calendarStartDate.AddMonths( 12 ) );

            Quarter futureQ4 = calendarQuarter.AddQuarters( 4 );
            Assert.AreEqual( futureQ4.YearQuarter, YearQuarter.First );
            Assert.AreEqual( futureQ4.BaseYear, currentYear + 1 );
            Assert.AreEqual( futureQ4.Start, calendarStartDate.AddMonths( 12 ) );
            Assert.AreEqual( futureQ4.End, calendarStartDate.AddMonths( 15 ) );

            Quarter futureQ5 = calendarQuarter.AddQuarters( 5 );
            Assert.AreEqual( futureQ5.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( futureQ5.BaseYear, currentYear + 1 );
            Assert.AreEqual( futureQ5.Start, calendarStartDate.AddMonths( 15 ) );
            Assert.AreEqual( futureQ5.End, calendarStartDate.AddMonths( 18 ) );
        }
Example #54
0
        public void QuarterMomentTest()
        {
            Quarter quarter = new Quarter( 2008, YearQuarter.First, TimeCalendar.New( TimeSpan.Zero, TimeSpan.Zero ) );
            Assert.IsTrue( quarter.IsReadOnly );
            Assert.AreEqual( quarter.BaseYear, 2008 );
            Assert.AreEqual( quarter.YearQuarter, YearQuarter.First );
            Assert.AreEqual( quarter.Start, new DateTime( 2008, TimeSpec.FirstQuarterMonthIndex, 1 ) );
            Assert.AreEqual( quarter.End, new DateTime( 2008, TimeSpec.SecondQuarterMonthIndex, 1 ) );

            Quarter previous = quarter.GetPreviousQuarter();
            Assert.AreEqual( previous.BaseYear, 2007 );
            Assert.AreEqual( previous.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( previous.Start, new DateTime( 2007, TimeSpec.FourthQuarterMonthIndex, 1 ) );
            Assert.AreEqual( previous.End, new DateTime( 2008, TimeSpec.FirstQuarterMonthIndex, 1 ) );

            Quarter next = quarter.GetNextQuarter();
            Assert.AreEqual( next.BaseYear, 2008 );
            Assert.AreEqual( next.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( next.Start, new DateTime( 2008, TimeSpec.SecondQuarterMonthIndex, 1 ) );
            Assert.AreEqual( next.End, new DateTime( 2008, TimeSpec.ThirdQuarterMonthIndex, 1 ) );
        }
Example #55
0
 public void DefaultCalendarTest()
 {
     DateTime yearStart = new DateTime( ClockProxy.Clock.Now.Year, 1, 1 );
     foreach ( YearQuarter yearQuarter in Enum.GetValues( typeof( YearQuarter ) ) )
     {
         int offset = (int)yearQuarter - 1;
         Quarter quarter = new Quarter( yearStart.AddMonths( TimeSpec.MonthsPerQuarter * offset ) );
         Assert.AreEqual( quarter.YearBaseMonth, YearMonth.January );
         Assert.AreEqual( quarter.BaseYear, yearStart.Year );
         Assert.AreEqual( quarter.Start, yearStart.AddMonths( TimeSpec.MonthsPerQuarter * offset ).Add( quarter.Calendar.StartOffset ) );
         Assert.AreEqual( quarter.End, yearStart.AddMonths( TimeSpec.MonthsPerQuarter * ( offset + 1 ) ).Add( quarter.Calendar.EndOffset ) );
     }
 }
 public CategoryGenerator(Community community, Company company, Quarter quarter)
 {
     _community = community;
     _company = company;
     _quarter = quarter;
 }
 private IQueryable<Quarter> GetOrCreateQuareters()
 {
     for (int i = 0; i < 4; ++i)
     {
         if (!JournalContext.Quarters.Any(q => q.QuarterID == i))
         {
             var stubQuarter = new Quarter {StartDate = DateTime.Now, EndDate = DateTime.Now, QuarterID = i};
             JournalContext.Quarters.InsertOnSubmit(stubQuarter);
         }
     }
     JournalContext.SubmitChanges();
     return JournalContext.Quarters;
 }
Example #58
0
        public void DefaultQuarterTest()
        {
            int currentYear = ClockProxy.Clock.Now.Year;
            const YearMonth yearStartMonth = YearMonth.April;
            TimeCalendar calendar = TimeCalendar.New( TimeSpan.Zero, TimeSpan.Zero, yearStartMonth );

            Quarter q1 = new Quarter( currentYear, YearQuarter.First, calendar );
            Assert.IsTrue( q1.IsReadOnly );
            Assert.AreEqual( q1.YearBaseMonth, yearStartMonth );
            Assert.AreEqual( q1.YearQuarter, YearQuarter.First );
            Assert.AreEqual( q1.BaseYear, currentYear );
            Assert.AreEqual( q1.Start, new DateTime( currentYear, 4, 1 ) );
            Assert.AreEqual( q1.End, new DateTime( currentYear, 7, 1 ) );

            Quarter q2 = new Quarter( currentYear, YearQuarter.Second, calendar );
            Assert.IsTrue( q2.IsReadOnly );
            Assert.AreEqual( q2.YearBaseMonth, yearStartMonth );
            Assert.AreEqual( q2.YearQuarter, YearQuarter.Second );
            Assert.AreEqual( q2.BaseYear, currentYear );
            Assert.AreEqual( q2.Start, new DateTime( currentYear, 7, 1 ) );
            Assert.AreEqual( q2.End, new DateTime( currentYear, 10, 1 ) );

            Quarter q3 = new Quarter( currentYear, YearQuarter.Third, calendar );
            Assert.IsTrue( q3.IsReadOnly );
            Assert.AreEqual( q3.YearBaseMonth, yearStartMonth );
            Assert.AreEqual( q3.YearQuarter, YearQuarter.Third );
            Assert.AreEqual( q3.BaseYear, currentYear );
            Assert.AreEqual( q3.Start, new DateTime( currentYear, 10, 1 ) );
            Assert.AreEqual( q3.End, new DateTime( currentYear + 1, 1, 1 ) );

            Quarter q4 = new Quarter( currentYear, YearQuarter.Fourth, calendar );
            Assert.IsTrue( q4.IsReadOnly );
            Assert.AreEqual( q4.YearBaseMonth, yearStartMonth );
            Assert.AreEqual( q4.YearQuarter, YearQuarter.Fourth );
            Assert.AreEqual( q4.BaseYear, currentYear );
            Assert.AreEqual( q4.Start, new DateTime( currentYear + 1, 1, 1 ) );
            Assert.AreEqual( q4.End, new DateTime( currentYear + 1, 4, 1 ) );
        }
Example #59
0
        public void GetMonthsTest()
        {
            Quarter quarter = new Quarter( ClockProxy.Clock.Now.Year, YearQuarter.First, TimeCalendar.New( YearMonth.October ) );

            ITimePeriodCollection months = quarter.GetMonths();
            Assert.AreNotEqual( months, null );

            int index = 0;
            foreach ( Month month in months )
            {
                Assert.AreEqual( month.Start, quarter.Start.AddMonths( index ) );
                Assert.AreEqual( month.End, month.Calendar.MapEnd( month.Start.AddMonths( 1 ) ) );
                index++;
            }
            Assert.AreEqual( index, TimeSpec.MonthsPerQuarter );
        }
Example #60
0
        // ----------------------------------------------------------------------
        public void GetDaysOfPastQuarter( DateTime moment, out DateTime firstDay, out DateTime lastDay )
        {
            TimeCalendar calendar = new TimeCalendar(
                new TimeCalendarConfig { YearBaseMonth = YearMonth.October } );
            Quarter quarter = new Quarter( moment, calendar );
            Quarter pastQuarter = quarter.GetPreviousQuarter();

            firstDay = pastQuarter.FirstDayStart;
            lastDay = pastQuarter.LastDayStart;
        }