/// <summary>
        /// 最近季度的
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static DatePair GetQuarterArea(this DateTime input)
        {
            DatePair ret = new DatePair();

            int month = input.Month;

            if (month >= 1 & month <= 3)
            {
                ret.BegDate  = new DateTime(input.Year, 1, 1);
                ret.EndTDate = new DateTime(input.Year, 4, 1);
            }

            else if (month >= 4 & month <= 6)
            {
                ret.BegDate  = new DateTime(input.Year, 4, 1);
                ret.EndTDate = new DateTime(input.Year, 7, 1);
            }

            else if (month >= 7 & month <= 9)
            {
                ret.BegDate  = new DateTime(input.Year, 7, 1);
                ret.EndTDate = new DateTime(input.Year, 10, 1);
            }
            else
            {
                ret.BegDate  = new DateTime(input.Year, 10, 1);
                ret.EndTDate = new DateTime(input.Year, 1, 1).AddYears(1);
            }
            return(ret);
        }
        /// <summary>
        /// 最近本年的
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static DatePair GetYearArea(this DateTime input)
        {
            DatePair ret = new DatePair()
            {
                BegDate = new DateTime(input.Year, 1, 1), EndTDate = new DateTime(input.Year + 1, 1, 1)
            };

            return(ret);
        }
        /// <summary>
        /// 最近当月的
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static DatePair GetMonthArea(this DateTime input)
        {
            DatePair ret = new DatePair();

            ret.BegDate = new DateTime(input.Year, input.Month, 1);

            ret.EndTDate = ret.BegDate.AddMonths(1);
            return(ret);
        }
        /// <summary>
        /// 最近两天
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static DatePair Get2DayArea(this DateTime input)
        {
            DatePair ret = new DatePair();

            ret.BegDate = input.Date.AddDays(-1);

            ret.EndTDate = input.Date.AddDays(1);
            return(ret);
        }
        /// <summary>
        /// 最近本周
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static DatePair GetWeek(this DateTime input)
        {
            int      DayOfWeekint = (int)input.Date.DayOfWeek;
            var      a            = input.Date.AddDays((-1) * DayOfWeekint + 1);
            var      b            = input.Date.AddDays((7 - DayOfWeekint) + 1);
            DatePair model        = new DatePair()
            {
                BegDate = a, EndTDate = b
            };

            return(model);
        }
        /// <summary>
        /// 根据区间找到月的区间列表
        /// </summary>
        /// <param name="begTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static List <DatePair> GetMonthList(DateTime begTime, DateTime endTime)
        {
            List <DatePair> list     = new List <MathSoftCommonLib.DatePair>();
            DateTime        begTime1 = new DateTime(begTime.Year, begTime.Month, 1);
            DateTime        endDate1 = new DateTime(endTime.Year, endTime.Month, 1);

            for (DateTime a = begTime1; a <= endDate1; a = a.AddMonths(1))
            {
                DatePair pair = new DatePair()
                {
                    BegDate = a, EndTDate = a.AddMonths(1)
                };
                list.Add(pair);
            }
            return(list);
        }
        /// <summary>
        /// 根据区间找到天的区间列表
        /// </summary>
        /// <param name="begTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static List <DatePair> GetDayList(DateTime begTime, DateTime endTime)
        {
            List <DatePair> list    = new List <DatePair>();
            DateTime        begDate = begTime.Date;
            DateTime        endDate = endTime.Date;

            for (DateTime a = begDate; a <= endDate; a = a.AddDays(1))
            {
                DatePair pair = new DatePair()
                {
                    BegDate = a, EndTDate = a.AddDays(1)
                };
                list.Add(pair);
            }
            ;
            return(list);
        }
        /// <summary>
        /// 根据区间找到年的区间列表
        /// </summary>
        /// <param name="begTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static List <DatePair> GetYearsList(DateTime begTime, DateTime endTime)
        {
            List <DatePair>   list     = new List <MathSoftCommonLib.DatePair>();
            int               begYear  = begTime.Year;
            int               endYear  = endTime.Year;
            IEnumerable <int> listYear = Enumerable.Range(begYear, endYear - begYear + 1);

            foreach (var item in listYear)
            {
                DatePair pair = new DatePair()
                {
                    BegDate = new DateTime(item, 1, 1), EndTDate = new DateTime(item, 1, 1).AddYears(1)
                };
                list.Add(pair);
            }
            return(list);
        }
        /// <summary>
        /// 根据区间找到周的区间列表 如果不到周的就按照周围日期补齐
        /// </summary>
        /// <param name="begTime"></param>
        /// <param name="endTime"></param>
        /// <returns></returns>
        public static List <DatePair> GetWeekList(DateTime begTime, DateTime endTime)
        {
            List <DatePair> list          = new List <MathSoftCommonLib.DatePair>();
            int             DayOfWeekint1 = (int)begTime.Date.DayOfWeek;
            int             DayOfWeekint2 = (int)endTime.Date.DayOfWeek;
            var             beg           = begTime.Date.AddDays((-1) * DayOfWeekint1 + 1);
            var             end           = endTime.Date.AddDays((7 - DayOfWeekint2) + 1);

            for (var a = beg; a < end; a = a.AddDays(7))
            {
                DatePair obj = new DatePair()
                {
                    BegDate = beg, EndTDate = beg.AddDays(6)
                };
                list.Add(obj);
            }
            return(list);
        }