public static List <AgedReceivablesData> GenerateAgedReceivablesData(AgedReceivablesDatePeriod inputAgedDebtorDatePeriod) { List <AgedReceivablesData> data = null; switch (inputAgedDebtorDatePeriod) { case AgedReceivablesDatePeriod.Daily: data = new List <AgedReceivablesData> { new AgedReceivablesData(DateTime.Now.AddDays(-5).ToString(DateFormat), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddDays(-4).ToString(DateFormat), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddDays(-3).ToString(DateFormat), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddDays(-2).ToString(DateFormat), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddDays(-1).ToString(DateFormat), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)) }; break; case AgedReceivablesDatePeriod.Weekly: var lastYear = DateTime.Now.AddYears(-1).Year; data = new List <AgedReceivablesData> { new AgedReceivablesData(lastYear + " W4", Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(lastYear + " W3", Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(lastYear + " W2", Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(lastYear + " W1", Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)) }; break; case AgedReceivablesDatePeriod.Monthly: data = new List <AgedReceivablesData> { new AgedReceivablesData(DateTime.Now.AddMonths(-4).ToString("MMM yyyy"), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddMonths(-3).ToString("MMM yyyy"), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddMonths(-2).ToString("MMM yyyy"), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), new AgedReceivablesData(DateTime.Now.AddMonths(-1).ToString("MMM yyyy"), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000), Random.Next(100, 999), Random.Next(1000, 2000)), }; break; } return(data); }
private List <AgedReceivablesData> GetAgedReceivablesData(AgedReceivablesDatePeriod inputAgedDebtorDatePeriod, TenantInfo tenantInfo) { List <AgedReceivablesData> data = new List <AgedReceivablesData>(); string dateFormat = "MMM-yyyy"; var allPeriodData = _agedReceivablesPeriodRepository.GetAll().Where(a => a.TenantId == tenantInfo.Tenant.Id).ToList(); if (allPeriodData.Count > 0) { var latestPeriod = allPeriodData.OrderByDescending(p => p.Period).Select(p => p.Period).FirstOrDefault(); List <DateTime> periods = new List <DateTime>() { latestPeriod.AddMonths(-11), latestPeriod.AddMonths(-10), latestPeriod.AddMonths(-9), latestPeriod.AddMonths(-8), latestPeriod.AddMonths(-7), latestPeriod.AddMonths(-6), latestPeriod.AddMonths(-5), latestPeriod.AddMonths(-4), latestPeriod.AddMonths(-3), latestPeriod.AddMonths(-2), latestPeriod.AddMonths(-1), latestPeriod }; foreach (var period in periods) { var periodData = allPeriodData.Where(r => r.Period.Year == period.Year && r.Period.Month == period.Month).FirstOrDefault(); var newPeriod = new AgedReceivablesData(period.ToString(dateFormat), (int)periodData.Current, (int)periodData.Over30, (int)periodData.Over60, (int)periodData.Over90, (int)periodData.Over120); data.Add(newPeriod); } } /* * Random random = new Random(); * switch (inputAgedDebtorDatePeriod) * { * case AgedReceivablesDatePeriod.Daily: * data = new List<AgedReceivablesData> * { * new AgedReceivablesData(DateTime.Now.AddDays(-5).ToString(dateFormat), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddDays(-4).ToString(dateFormat), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddDays(-3).ToString(dateFormat), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddDays(-2).ToString(dateFormat), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddDays(-1).ToString(dateFormat), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)) * }; * break; * * case AgedReceivablesDatePeriod.Weekly: * var lastYear = DateTime.Now.AddYears(-1).Year; * data = new List<AgedReceivablesData> * { * new AgedReceivablesData(lastYear + " W4", random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(lastYear + " W3", random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(lastYear + " W2", random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(lastYear + " W1", random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)) * }; * break; * * case AgedReceivablesDatePeriod.Monthly: * default: * * data = new List<AgedReceivablesData> * { * new AgedReceivablesData(DateTime.Now.AddMonths(-4).ToString("MMM yyyy"), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddMonths(-3).ToString("MMM yyyy"), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddMonths(-2).ToString("MMM yyyy"), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * new AgedReceivablesData(DateTime.Now.AddMonths(-1).ToString("MMM yyyy"), random.Next(1000, 2000), * random.Next(100, 999), random.Next(1000, 2000), random.Next(100, 999), random.Next(1000, 2000)), * }; * break; * } */ return(data); }