public async Task <List <IncomeStastistic> > GetIncomeStatisticsData(DateTime startDate, DateTime endDate,
                                                                             ChartDateInterval dateInterval)
        {
            List <IncomeStastistic> incomeStastistics;

            switch (dateInterval)
            {
            case ChartDateInterval.Daily:
                incomeStastistics = await GetDailyIncomeStatisticsData(startDate, endDate);

                break;

            case ChartDateInterval.Weekly:
                incomeStastistics = await GetWeeklyIncomeStatisticsData(startDate, endDate);

                break;

            case ChartDateInterval.Monthly:
                incomeStastistics = await GetMonthlyIncomeStatisticsData(startDate, endDate);

                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(dateInterval), dateInterval, null);
            }

            incomeStastistics.ForEach(i =>
            {
                i.Label = i.Date.ToString(L("DateFormatShort"));
            });

            return(incomeStastistics.OrderBy(i => i.Date).ToList());
        }
        public List <YCSCStatisticsOutput_DTO> GetYCSCStatisticsData(DateTime startDate, DateTime endDate,
                                                                     ChartDateInterval dateInterval)
        {
            List <YCSCStatisticsOutput_DTO> ycscStastisticsOut;

            switch (dateInterval)
            {
            case ChartDateInterval.Daily:
                ycscStastisticsOut = GetDailyYCSCStatisticsData(startDate, endDate);
                break;

            case ChartDateInterval.Weekly:
                ycscStastisticsOut = GetWeeklyYCSCStatisticsData(startDate, endDate);
                break;

            case ChartDateInterval.Monthly:
                ycscStastisticsOut = GetMonthlyYCSCStatisticsData(startDate, endDate);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(dateInterval), dateInterval, null);
            }
            Console.WriteLine(ycscStastisticsOut.Count);
            ycscStastisticsOut.ForEach(a =>
            {
                a.YCSCStatistics.ForEach(i =>
                {
                    i.Label = i.Date.ToString("MM.dd.yyyy");
                });
            });

            return(ycscStastisticsOut);
        }
Example #3
0
 /// <summary>
 /// 获取收入统计信息
 /// </summary>
 /// <param name="startDate"></param>
 /// <param name="endDate"></param>
 /// <param name="interval"></param>
 private async Task GetIncomeStatistics(ChartDateInterval interval)
 {
     await WebRequest.Execute(() => appService.GetIncomeStatistics(new GetIncomeStatisticsDataInput()
     {
         IncomeStatisticsDateInterval = interval,
         StartDate = startDate,
         EndDate   = endDate
     }), result => GetIncomeStatisticsSuccessed(result));
 }