This commit is contained in:
2021-02-05 15:12:32 +00:00
parent 4e36464645
commit 63957227b6

View File

@@ -435,7 +435,7 @@ namespace AyaNova.DataList
#region Build criteria for date RANGE TOKEN specified
//Used as the basis point
System.DateTime dtAfter;
System.DateTime dtBefore;
@@ -458,10 +458,10 @@ namespace AyaNova.DataList
break;
case "*tomorrow*":
//Between Tonight at midnight and day after tommorow at midnight
dtAfter = ClientToday.AddDays(1).AddSeconds(-1);
dtAfter = ClientToday.AddDays(1).AddSeconds(-1);
dtBefore = ClientToday.AddDays(2);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
break;
case "*lastweek*":
//Between two Sundays ago at midnight and last sunday at midnight
dtAfter = ClientToday;
@@ -514,7 +514,7 @@ namespace AyaNova.DataList
//Now go back to sunday last second
dtAfter = dtAfter.AddDays(-1);
//go seven days ahead
dtBefore = dtAfter.AddDays(7);
dtBefore = dtAfter.AddDays(7);
dtAfter = dtAfter.AddSeconds(-1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
@@ -529,7 +529,7 @@ namespace AyaNova.DataList
dtBefore = dtAfter.AddMonths(1);
//case 1155
dtAfter = dtAfter.AddSeconds(-1);
dtAfter = dtAfter.AddSeconds(-1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
@@ -559,7 +559,7 @@ namespace AyaNova.DataList
dtAfter = dtAfter.AddSeconds(-1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*14daywindow*":
//start with today zero hour
dtAfter = new DateTime(ClientToday.Year, ClientToday.Month, ClientToday.Day);
@@ -576,7 +576,7 @@ namespace AyaNova.DataList
case "*past*":
//Forever up to Now
dtAfter = new DateTime(1753, 1, 2, 00, 00, 00);//this was for sql server but even then was probably outdated good enough though for our purposes
dtAfter = new DateTime(1753, 1, 2);//this was for sql server but even then was probably outdated good enough though for our purposes
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
@@ -598,15 +598,15 @@ namespace AyaNova.DataList
case "*thisyear*":
//From zero hour january 1 this year
dtAfter = new DateTime(ClientNow.Year, 1, 1, 00, 00, 00).AddSeconds(-1);
dtAfter = new DateTime(ClientNow.Year, 1, 1).AddSeconds(-1);
//To zero hour Jan 1 next year
dtBefore = new DateTime(ClientNow.AddYears(1).Year, 1, 1, 00, 00, 00);
dtBefore = new DateTime(ClientNow.AddYears(1).Year, 1, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*last3months*":
//From Now minus 3 months
dtAfter = ClientNow.AddMonths(-3);
dtAfter = ClientNow.AddMonths(-3).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
@@ -614,7 +614,7 @@ namespace AyaNova.DataList
case "*last6months*":
//From Now minus 6 months
dtAfter = ClientNow.AddMonths(-6);
dtAfter = ClientNow.AddMonths(-6).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
@@ -622,120 +622,134 @@ namespace AyaNova.DataList
case "*pastyear*": //within the prior 365 days before today
//From Now minus 365 days
dtAfter = ClientNow.AddDays(-365);
dtAfter = ClientNow.AddDays(-365).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*past90days*":
//From Now minus 90 days
dtAfter = ClientNow.AddDays(-90);
dtAfter = ClientNow.AddDays(-90).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*past30days*":
//From Now minus 30 days
dtAfter = ClientNow.AddDays(-30);
dtAfter = ClientNow.AddDays(-30).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*past7days*":
throw new System.NotImplementedException("DATE TOKEN NOT IMPLEMENTED YET");
//From Now minus 7 days
dtAfter = ClientNow.AddDays(-7).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*past24hours*":
//From Now minus 24 hours
dtAfter = ClientNow.AddHours(-24);
dtAfter = ClientNow.AddHours(-24).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*past6hours*":
throw new System.NotImplementedException("DATE TOKEN NOT IMPLEMENTED YET");
//From Now minus 6 hours
dtAfter = ClientNow.AddHours(-6).AddSeconds(-1);
//To Now
dtBefore = ClientNow;
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*january*":
//From zero hour january 1 this year
dtAfter = new DateTime(ClientNow.Year, 1, 1, 00, 00, 00).AddSeconds(-1);
dtAfter = new DateTime(ClientNow.Year, 1, 1).AddSeconds(-1);
//To zero hour feb 1 this year
dtBefore = new DateTime(ClientNow.Year, 2, 1, 00, 00, 00);
dtBefore = new DateTime(ClientNow.Year, 2, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*february*":
dtAfter = new DateTime(ClientNow.Year, 2, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 3, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 2, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 3, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*march*":
dtAfter = new DateTime(ClientNow.Year, 3, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 4, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 3, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 4, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*april*":
dtAfter = new DateTime(ClientNow.Year, 4, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 5, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 4, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 5, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*may*":
dtAfter = new DateTime(ClientNow.Year, 5, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 6, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 5, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 6, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*june*":
dtAfter = new DateTime(ClientNow.Year, 6, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 7, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 6, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 7, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*july*":
dtAfter = new DateTime(ClientNow.Year, 7, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 8, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 7, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 8, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*august*":
dtAfter = new DateTime(ClientNow.Year, 8, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 9, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 8, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 9, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*september*":
dtAfter = new DateTime(ClientNow.Year, 9, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 10, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 9, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 10, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*october*":
dtAfter = new DateTime(ClientNow.Year, 10, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 11, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 10, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 11, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*november*":
dtAfter = new DateTime(ClientNow.Year, 11, 1, 00, 00, 00).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 12, 1, 00, 00, 00);
dtAfter = new DateTime(ClientNow.Year, 11, 1).AddSeconds(-1);
dtBefore = new DateTime(ClientNow.Year, 12, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*december*":
//From zero hour dec 1 this year
dtAfter = new DateTime(ClientNow.Year, 12, 1, 00, 00, 00).AddSeconds(-1);
dtAfter = new DateTime(ClientNow.Year, 12, 1).AddSeconds(-1);
//To zero hour Jan 1 next year
dtBefore = new DateTime(ClientNow.AddYears(1).Year, 1, 1, 00, 00, 00);
dtBefore = new DateTime(ClientNow.AddYears(1).Year, 1, 1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*lastyearlastmonth*":
throw new System.NotImplementedException("DATE TOKEN NOT IMPLEMENTED YET");
//start with the first day of this month
dtAfter = new DateTime(ClientToday.Year, ClientToday.Month, 1);
//subtract a year and a Month
dtAfter = dtAfter.AddYears(-1).AddMonths(-1);
//Add one month to dtAfter to get end date
dtBefore = dtAfter.AddMonths(1);
dtAfter = dtAfter.AddSeconds(-1);
BuildBetweenTwoDatesFragment(SqlColumnNameToFilter, sb, dtAfter, dtBefore);
break;
case "*lastyearthismonth*":