diff --git a/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs b/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs index 30b09cc3..ca3f2fec 100644 --- a/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs +++ b/server/AyaNova/biz/FilterSqlCriteriaBuilder.cs @@ -482,15 +482,7 @@ namespace AyaNova.Biz //case 1155 dtAfter = dtAfter.AddSeconds(-1); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - //sb.Append(" "); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.NextMonth: @@ -505,15 +497,7 @@ namespace AyaNova.Biz //case 1155 dtAfter = dtAfter.AddSeconds(-1); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - //sb.Append(" "); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.FourteenDayWindow: //start with today zero hour @@ -526,15 +510,7 @@ namespace AyaNova.Biz //case 1155 dtAfter = dtAfter.AddSeconds(-1); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - //sb.Append(" "); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; @@ -544,28 +520,14 @@ namespace AyaNova.Biz //Forever up to Now dtAfter = new DateTime(1753, 1, 2, 00, 00, 00); 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("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.Future: //From Now to forever (999 years from now) dtAfter = System.DateTime.Now; dtBefore = System.DateTime.Now.AddYears(999); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.LastYear: @@ -573,14 +535,7 @@ namespace AyaNova.Biz dtAfter = new DateTime(DateTime.Now.AddYears(-1).Year, 1, 1, 00, 00, 00); //To zero hour January 1 this year dtBefore = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.ThisYear: @@ -588,14 +543,7 @@ namespace AyaNova.Biz dtAfter = new DateTime(DateTime.Now.Year, 1, 1, 00, 00, 00); //To zero hour Jan 1 next year dtBefore = new DateTime(DateTime.Now.AddYears(1).Year, 1, 1, 00, 00, 00); - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.InTheLast3Months: @@ -603,14 +551,7 @@ namespace AyaNova.Biz dtAfter = DateTime.Now.AddMonths(-3); //To Now dtBefore = DateTime.Now; - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.InTheLast6Months: @@ -618,14 +559,7 @@ namespace AyaNova.Biz dtAfter = DateTime.Now.AddMonths(-6); //To Now dtBefore = DateTime.Now; - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.InTheLastYear: @@ -633,14 +567,7 @@ namespace AyaNova.Biz dtAfter = DateTime.Now.AddDays(-365); //To Now dtBefore = DateTime.Now; - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; //======================= @@ -692,28 +619,14 @@ namespace AyaNova.Biz } - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); 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("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.QuarterToDate: switch (DateTime.Now.Month) @@ -749,42 +662,21 @@ namespace AyaNova.Biz dtBefore = DateTime.Now; break; } - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.Past90Days: //From Now minus 90 days dtAfter = DateTime.Now.AddDays(-90); //To Now dtBefore = DateTime.Now; - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.Past30Days: //From Now minus 30 days dtAfter = DateTime.Now.AddDays(-30); //To Now dtBefore = DateTime.Now; - sb.Append(">'"); - sb.Append(PostgresDateFormat(dtAfter)); - sb.Append("') AND ("); - sb.Append(sColumn); - sb.Append(" "); - sb.Append("<'"); - sb.Append(PostgresDateFormat(dtBefore)); - sb.Append("'"); + BuildBetweenTwoDatesFragment(sColumn, sb, dtAfter, dtBefore); break; case FilterSpecialToken.Past24Hours: //From Now minus 24 hours