コード例 #1
0
        public async Task <JsonResult> GetPeriods(PaymentPeriodicity paymentPeriodicity, DateTime initialDate, Int32 periodTotalDays)
        {
            var fixToMonth = paymentPeriodicity != PaymentPeriodicity.Weekly;
            var result     = new PeriodSimulator().GetPeriodDetails(paymentPeriodicity, initialDate, periodTotalDays, fixToMonth);
            var periods    = from r in result
                             orderby r.Number
                             select new
            {
                id          = r.Number,
                description = r.InitialDate.ToString("dd/MMM/yyyy", new CultureInfo("es-mx")).Replace(".", "")
            };

            return(await Task.FromResult(Json(periods)));
        }
コード例 #2
0
        public async Task PeriodSimulator_Should_Generate_Period_Details()
        {
            var periodSimulator = new PeriodSimulator();
            var details         = periodSimulator.GetPeriodDetails(PaymentPeriodicity.Weekly, new DateTime(2019, 12, 23), 7, false);

            Assert.True(details.Any());
            Assert.True(details.Count == 53);

            details = periodSimulator.GetPeriodDetails(PaymentPeriodicity.Weekly, new DateTime(2019, 2, 25), 7, false);
            Assert.True(details.Any());
            Assert.True(details.Count == 44);

            details = periodSimulator.GetPeriodDetails(PaymentPeriodicity.Weekly, new DateTime(2019, 10, 14), 7, false);
            Assert.True(details.Any());
            Assert.True(details.Count == 63);
        }