Example #1
0
        public ObservableCollection <LineChartItem> LineChartTest2()
        {
            int days = (_maxDate - _minDate).Days + 1;

            // = 9 - 7 + 1// 7,8,9

            LineChartItem[] modelss = new LineChartItem[days];
            for (int i = 0; i < modelss.Length; i++)
            {
                modelss[i] = new LineChartItem {
                    Key   = _minDate.AddDays(i).ToString("MM.dd"),
                    Value = 0,
                };
            }

            var query = from item in AllOperations
                        where !item.isExpense
                        group item.Cost by item.Date
                        into g
                        select new {
                Date = DateTime.Parse(g.Key),
                Cost = g.Sum()
            };

            foreach (var item in query)
            {
                int index = days - (_maxDate - item.Date).Days - 1;
                modelss[index] = new LineChartItem {
                    Key   = modelss[index].Key,
                    Value = (double)item.Cost,
                };
            }

            return(new ObservableCollection <LineChartItem>(modelss));
        }
Example #2
0
        public ObservableCollection <LineChartItem> LineChartTest3()
        {
            int days = (_maxDate - _minDate).Days + 1;

            // = 9 - 7 + 1// 7,8,9

            LineChartItem[] modelss = new LineChartItem[days];
            for (int i = 0; i < modelss.Length; i++)
            {
                modelss[i] = new LineChartItem {
                    Key   = _minDate.AddDays(i).ToString("MM.dd"),
                    Value = 0,
                };
            }

            var query = from item in AllOperations
                        group item.SignedCost by item.Date
                        into g
                        select new {
                Date = DateTime.Parse(g.Key),
                Cost = g.Sum()
            };

            if (modelss.Length <= 0)
            {
                return(new ObservableCollection <LineChartItem>(modelss));
            }

            modelss[0].Value = (double)Dal.GetBalanceOfCertainDay(_maxDate);

            for (int i = 1; i < query.Count(); i++)
            {
                int index = days - (_maxDate - query.ElementAt(i).Date).Days - 1;
                modelss[index].Value += modelss[index - 1].Value + (double)query.ElementAt(i).Cost;
            }

            return(new ObservableCollection <LineChartItem>(modelss));
        }