diff --git a/Falcon.SugarApi/DateTimeExtend.cs b/Falcon.SugarApi/DateTimeExtend.cs index 992cc7e..908d3dc 100644 --- a/Falcon.SugarApi/DateTimeExtend.cs +++ b/Falcon.SugarApi/DateTimeExtend.cs @@ -16,8 +16,8 @@ namespace Falcon.SugarApi /// 日期 /// 查询选项 /// 符合条件日期 - public static DateTime GetDay(this DateTime date, DateOption option) { - date = option.RetentionTime ? date : new DateTime(date.Year, date.Month, date.Day, 0, 0, 0); + public static DateTime GetDay(this DateTime date,DateOption option) { + date = option.RetentionTime ? date : new DateTime(date.Year,date.Month,date.Day,0,0,0); var drt = option.DateRangeType; var dt = option.DateType; var firstDayOfWeek = option.DayOfWeek; @@ -26,8 +26,8 @@ namespace Falcon.SugarApi drt == DateRangeType.Weekly && dt == DateType.LastDay ? date.AddDays(firstDayOfWeek - date.DayOfWeek + 7) : drt == DateRangeType.Monthly && dt == DateType.FirstDay ? date.AddDays(1 - date.Day) : drt == DateRangeType.Monthly && dt == DateType.LastDay ? date.AddDays(1 - date.Day).AddMonths(1).AddDays(-1) : - drt == DateRangeType.Yearly && dt == DateType.FirstDay ? new DateTime(date.Year, 1, 1) : - drt == DateRangeType.Yearly && dt == DateType.LastDay ? new DateTime(date.Year, 1, 1).AddYears(1).AddDays(-1) : + drt == DateRangeType.Yearly && dt == DateType.FirstDay ? new DateTime(date.Year,1,1) : + drt == DateRangeType.Yearly && dt == DateType.LastDay ? new DateTime(date.Year,1,1).AddYears(1).AddDays(-1) : throw new NotSupportedException("不支持这个日期查询"); } @@ -47,8 +47,8 @@ namespace Falcon.SugarApi /// 本周的一天 /// 默认第一天是星期几 /// 本周第一天 - public static DateTime GetFirstDayOfTheWeek(this DateTime date, DayOfWeek firstDayOfWeek = DayOfWeek.Monday) { - return date.GetDay(new DateOption { DateRangeType = DateRangeType.Weekly, DateType = DateType.FirstDay, DayOfWeek = firstDayOfWeek, }); + public static DateTime GetFirstDayOfTheWeek(this DateTime date,DayOfWeek firstDayOfWeek = DayOfWeek.Monday) { + return date.GetDay(new DateOption { DateRangeType = DateRangeType.Weekly,DateType = DateType.FirstDay,DayOfWeek = firstDayOfWeek,}); } /// @@ -57,7 +57,7 @@ namespace Falcon.SugarApi /// 日期 /// 日期 public static DateTime GetFirstDayOfTheMonth(this DateTime date) { - return date.GetDay(new DateOption { DateRangeType = DateRangeType.Monthly, DateType = DateType.FirstDay }); + return date.GetDay(new DateOption { DateRangeType = DateRangeType.Monthly,DateType = DateType.FirstDay }); } /// @@ -66,7 +66,7 @@ namespace Falcon.SugarApi /// 日期 /// 日期 public static DateTime GetFirstDayOfTheYear(this DateTime date) { - return date.GetDay(new DateOption { DateRangeType = DateRangeType.Yearly, DateType = DateType.FirstDay }); + return date.GetDay(new DateOption { DateRangeType = DateRangeType.Yearly,DateType = DateType.FirstDay }); } /// @@ -75,8 +75,8 @@ namespace Falcon.SugarApi /// 日期 /// 第一天是星期几 /// 第几周 - public static int GetWeekOfTheYear(this DateTime date, DayOfWeek firstDayOfWeek = DayOfWeek.Monday) { - return date.GetDefaultCalendar().GetWeekOfYear(date, CalendarWeekRule.FirstDay, firstDayOfWeek); + public static int GetWeekOfTheYear(this DateTime date,DayOfWeek firstDayOfWeek = DayOfWeek.Monday) { + return date.GetDefaultCalendar().GetWeekOfYear(date,CalendarWeekRule.FirstDay,firstDayOfWeek); } /// @@ -137,12 +137,24 @@ namespace Falcon.SugarApi public static string ToDateTime(this DateTime date) => date.ToString("yyyy-MM-dd HH:mm:ss"); #endregion + + /// + /// 时间是否处于某个时间段内 + /// + /// 要判断的时间 + /// 开始时间 + /// 结束时间 + /// True是,False否 + public static bool Between(this DateTime? dt,DateTime start,DateTime? end = null) { + end ??= DateTime.Now; + return dt > start && dt <= end; + } } /// /// 日期操作选项 /// - public class DateOption : IOptions + public class DateOption:IOptions { /// /// 日期类型,默认第一天