This commit is contained in:
2020-01-15 23:24:29 +00:00
parent 6a842ea063
commit ea98af4e82
8 changed files with 18 additions and 25 deletions

View File

@@ -276,6 +276,11 @@ namespace AyaNova.Biz
listOptions.Limit = listOptions.Limit ?? ListOptions.DefaultLimit;
//BUILD THE QUERY
//TODO: Turn this into a raw direct query
//Build the select fragment from the template so only selected columns get fetched
//instead of projecting it onto a c# object EF style, bypass that and use a SQL data reader instead then create the result set as per the spec doc
//base query
var q = "SELECT *, xmin FROM AWIDGET ";
@@ -285,15 +290,15 @@ namespace AyaNova.Biz
var TheFilter = await ct.DataFilter.FirstOrDefaultAsync(x => x.Id == listOptions.DataFilterId);
//BUILD WHERE AND APPEND IT
q = q + FilterSqlCriteriaBuilder.DataFilterToSQLCriteria(TheFilter, ObjectFields.ObjectFieldsList(ObjectFields.WIDGET_KEY), UserId);
q = q + SqlFilterCriteriaBuilder.DataFilterToSQLCriteria(TheFilter, ObjectFields.ObjectFieldsList(ObjectFields.WIDGET_KEY), UserId);
//BUILD ORDER BY AND APPEND IT
q = q + FilterSqlOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
q = q + SqlFilterOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
}
else
{
//GET DEFAULT ORDER BY
q = q + FilterSqlOrderByBuilder.DefaultGetManyOrderBy();
q = q + SqlFilterOrderByBuilder.DefaultGetManyOrderBy();
}