private DotNet.Highcharts.Helpers.Data GetRandom(MonthSales[] courses, int termId, ref List <MonthSales> validCourses)
        {
            List <Point> p = new List <Point>();

            if (validCourses == null)
            {
                validCourses = new List <MonthSales>();
            }

            var actualList = courses;

            if (termId == 1)
            {
                actualList = courses.Where(x => x.Scale < 4).ToArray();
            }
            else if (termId == 2)
            {
                actualList = courses.Where(x => x.Scale >= 4 && x.Scale <= 6).ToArray();
            }
            else if (termId == 3)
            {
                actualList = courses.Where(x => x.Scale >= 7 && x.Scale <= 9).ToArray();
            }
            else
            {
                actualList = courses.Where(x => x.Scale > 9).ToArray();
            }

            foreach (var n in actualList)
            {
                var startDate = GetStartDate(n);

                var endDate = GetEndDate(n);

                decimal?grade = decimal.Zero;

                grade = _guestRoomAccountService.GetAll(1).Where(x => x.TransactionDate >= startDate && x.TransactionDate <= endDate).Sum(x => x.Amount);

                var actualScore = decimal.Zero;

                if (grade != null)
                {
                    actualScore = grade.Value;
                }

                n.Value = actualScore;
                validCourses.Add(n);
                p.Add(new Point {
                    Y = (Number)actualScore
                });

                //if (actualScore > 0)
                //{
                //    n.Value = actualScore;
                //    validCourses.Add(n);
                //    p.Add(new Point { Y = (Number)actualScore });
                //}
                //else
                //{
                //    validCourses.Add(n);
                //}
            }

            return(new DotNet.Highcharts.Helpers.Data(p.ToArray()));
        }