This commit is contained in:
@@ -51,7 +51,7 @@ namespace AyaNova.Biz
|
|||||||
sb.Append(sColumn);
|
sb.Append(sColumn);
|
||||||
sb.Append(" ");
|
sb.Append(" ");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//handle null values separately
|
//handle null values separately
|
||||||
|
|
||||||
@@ -643,6 +643,83 @@ namespace AyaNova.Biz
|
|||||||
sb.Append("'");
|
sb.Append("'");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
//=======================
|
||||||
|
//NEW ONES FOR RAVEN
|
||||||
|
case FilterSpecialToken.LastQuarter:
|
||||||
|
//First determine what quarter we are in now, then get the date range for the quarter before that
|
||||||
|
switch(DateTime.Now.Month)
|
||||||
|
{
|
||||||
|
//are we in the first quarter?
|
||||||
|
case 1:
|
||||||
|
case 2:
|
||||||
|
case 3:
|
||||||
|
//Then we need the dates of the last quarter of last year
|
||||||
|
//From zero hour October 1st last year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.AddYears(-1).Year, 10, 1, 00, 00, 00);
|
||||||
|
//To zero hour January 1 this year
|
||||||
|
dtBefore = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00);
|
||||||
|
break;
|
||||||
|
//are we in the second quarter?
|
||||||
|
case 4:
|
||||||
|
case 5:
|
||||||
|
case 6:
|
||||||
|
//Then we need this year first quarter JAN-FEB-MAR
|
||||||
|
//From zero hour january 1 this year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00);
|
||||||
|
//To zero hour April 1 this year
|
||||||
|
dtBefore = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00);
|
||||||
|
break;
|
||||||
|
//Are we in the third quarter?
|
||||||
|
case 7:
|
||||||
|
case 8:
|
||||||
|
case 9:
|
||||||
|
//Then we need this year Second quarter APR-MAY-JUN
|
||||||
|
//From zero hour April 1 this year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.Year, 4, 1, 00, 00, 00);
|
||||||
|
//To zero hour July 1 this year
|
||||||
|
dtBefore = new DateTime(DateTime.Now.Year, 7, 1, 00, 00, 00);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
//We're in the fourth quarter
|
||||||
|
//Then we need this year Third quarter JUL-AUG-SEP
|
||||||
|
//From zero hour July 1 this year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.Year, 7, 1, 00, 00, 00);
|
||||||
|
//To zero hour Oct 1 this year
|
||||||
|
dtBefore = new DateTime(DateTime.Now.Year, 10, 1, 00, 00, 00);
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
//From zero hour january 1 this year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00);
|
||||||
|
//To now
|
||||||
|
dtBefore = System.DateTime.Now;
|
||||||
|
sb.Append(">'");
|
||||||
|
sb.Append(PostgresDateFormat(dtAfter));
|
||||||
|
sb.Append("') AND (");
|
||||||
|
sb.Append(sColumn);
|
||||||
|
sb.Append(" ");
|
||||||
|
sb.Append("<'");
|
||||||
|
sb.Append(PostgresDateFormat(dtBefore));
|
||||||
|
sb.Append("'");
|
||||||
|
break;
|
||||||
|
case FilterSpecialToken.YearToDate:
|
||||||
|
//From zero hour january 1 this year
|
||||||
|
dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00);
|
||||||
|
//To now
|
||||||
|
dtBefore = System.DateTime.Now;
|
||||||
|
sb.Append(">'");
|
||||||
|
sb.Append(PostgresDateFormat(dtAfter));
|
||||||
|
sb.Append("') AND (");
|
||||||
|
sb.Append(sColumn);
|
||||||
|
sb.Append(" ");
|
||||||
|
sb.Append("<'");
|
||||||
|
sb.Append(PostgresDateFormat(dtBefore));
|
||||||
|
sb.Append("'");
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
@@ -858,6 +935,8 @@ namespace AyaNova.Biz
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
private static string PostgresDateFormat(DateTime theDate)
|
private static string PostgresDateFormat(DateTime theDate)
|
||||||
{
|
{
|
||||||
|
//TODO: Double check that this returns the date as an actual converted to UTC date and not just the local time in UTC format
|
||||||
|
|
||||||
//If this was used it should be like this for a UTC date to iso8601
|
//If this was used it should be like this for a UTC date to iso8601
|
||||||
// ISO8601 with 7 decimal places
|
// ISO8601 with 7 decimal places
|
||||||
return theDate.ToString("o", CultureInfo.InvariantCulture);
|
return theDate.ToString("o", CultureInfo.InvariantCulture);
|
||||||
|
|||||||
Reference in New Issue
Block a user