This commit is contained in:
@@ -280,8 +280,8 @@ namespace AyaNova.Biz
|
|||||||
//TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT)
|
//TODO: Get template (MOCKED FOR NOW UNTIL PROOF OF CONCEPT)
|
||||||
var MOCK_WIDGET_DISPLAY_TEMPLATE_JSON = @"
|
var MOCK_WIDGET_DISPLAY_TEMPLATE_JSON = @"
|
||||||
{
|
{
|
||||||
""full"":[""WidgetName"",""WidgetSerial"",""WidgetDollarAmount"",""WidgetRoles"",""WidgetStartDate"",""Active""],
|
""full"":[""widgetname"",""widgetserial"",""widgetdollaramount"",""widgetroles"",""widgetstartdate"",""active""],
|
||||||
""mini"":[""WidgetName"",""WidgetSerial""]
|
""mini"":[""widgetname"",""widgetserial""]
|
||||||
}
|
}
|
||||||
";
|
";
|
||||||
|
|
||||||
@@ -314,11 +314,7 @@ namespace AyaNova.Biz
|
|||||||
//BUILD ORDER BY AND APPEND IT
|
//BUILD ORDER BY AND APPEND IT
|
||||||
qOrderBy = SqlFilterOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
|
qOrderBy = SqlFilterOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
|
||||||
}
|
}
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// //GET DEFAULT ORDER BY
|
|
||||||
// qOrderBy = SqlFilterOrderByBuilder.DefaultGetManyOrderBy;
|
|
||||||
// }
|
|
||||||
|
|
||||||
//LIMIT AND OFFSET CLAUSE - PAGING
|
//LIMIT AND OFFSET CLAUSE - PAGING
|
||||||
listOptions.Offset = listOptions.Offset ?? ListOptions.DefaultOffset;
|
listOptions.Offset = listOptions.Offset ?? ListOptions.DefaultOffset;
|
||||||
@@ -416,14 +412,16 @@ namespace AyaNova.Biz
|
|||||||
}
|
}
|
||||||
";
|
";
|
||||||
|
|
||||||
|
var Object
|
||||||
|
|
||||||
//BUILD THE QUERY
|
//BUILD THE QUERY
|
||||||
/*
|
/*
|
||||||
Select awidget.id, awidget.name, auser.name, auser.id, auseroptions.emailaddress
|
Select awidget.id, awidget.name, auser.name, auser.id, auseroptions.emailaddress
|
||||||
from awidget
|
from awidget
|
||||||
left outer join auser on (awidget.userid=auser.id)
|
left outer join auser on (awidget.userid=auser.id)
|
||||||
left outer join auseroptions on (auser.id=auseroptions.userid)
|
left outer join auseroptions on (auser.id=auseroptions.userid)
|
||||||
order by auseroptions.emailaddress desc
|
order by auseroptions.emailaddress desc
|
||||||
*/
|
*/
|
||||||
//SELECT FRAGMENT COLUMNS FROM TEMPLATE
|
//SELECT FRAGMENT COLUMNS FROM TEMPLATE
|
||||||
//"select clm,clm,clm"
|
//"select clm,clm,clm"
|
||||||
var qSelectColumns = SqlSelectBuilder.Build(AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON, listOptions.Mini);
|
var qSelectColumns = SqlSelectBuilder.Build(AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON, listOptions.Mini);
|
||||||
@@ -435,30 +433,17 @@ order by auseroptions.emailaddress desc
|
|||||||
|
|
||||||
//FILTERED?
|
//FILTERED?
|
||||||
DataFilter TheFilter = null;
|
DataFilter TheFilter = null;
|
||||||
if (listOptions.DataFilterId > 0)
|
|
||||||
{
|
|
||||||
TheFilter = await ct.DataFilter.FirstOrDefaultAsync(x => x.Id == listOptions.DataFilterId);
|
|
||||||
}
|
|
||||||
|
|
||||||
//WHERE CLAUSE - FILTER
|
|
||||||
var qWhere = string.Empty;
|
var qWhere = string.Empty;
|
||||||
if (listOptions.DataFilterId > 0)
|
|
||||||
{
|
|
||||||
qWhere = SqlFilterCriteriaBuilder.DataFilterToSQLCriteria(TheFilter, AyaObjectFields.ObjectFieldsList(AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY), UserId);
|
|
||||||
}
|
|
||||||
|
|
||||||
//ORDER BY CLAUSE - SORT
|
|
||||||
var qOrderBy = string.Empty;
|
var qOrderBy = string.Empty;
|
||||||
if (listOptions.DataFilterId > 0)
|
if (listOptions.DataFilterId > 0)
|
||||||
{
|
{
|
||||||
|
TheFilter = await ct.DataFilter.FirstOrDefaultAsync(x => x.Id == listOptions.DataFilterId);
|
||||||
|
//WHERE CLAUSE - FILTER
|
||||||
|
qWhere = SqlFilterCriteriaBuilder.DataFilterToSQLCriteria(TheFilter, AyaObjectFields.ObjectFieldsList(AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY), UserId);
|
||||||
|
//ORDER BY CLAUSE - SORT
|
||||||
//BUILD ORDER BY AND APPEND IT
|
//BUILD ORDER BY AND APPEND IT
|
||||||
qOrderBy = SqlFilterOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
|
qOrderBy = SqlFilterOrderByBuilder.DataFilterToSQLOrderBy(TheFilter);
|
||||||
}
|
}
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// //GET DEFAULT ORDER BY
|
|
||||||
// qOrderBy = SqlFilterOrderByBuilder.DefaultGetManyOrderBy;
|
|
||||||
// }
|
|
||||||
|
|
||||||
//LIMIT AND OFFSET CLAUSE - PAGING
|
//LIMIT AND OFFSET CLAUSE - PAGING
|
||||||
listOptions.Offset = listOptions.Offset ?? ListOptions.DefaultOffset;
|
listOptions.Offset = listOptions.Offset ?? ListOptions.DefaultOffset;
|
||||||
@@ -512,6 +497,12 @@ order by auseroptions.emailaddress desc
|
|||||||
|
|
||||||
//TODO: Build the return object in a clean format
|
//TODO: Build the return object in a clean format
|
||||||
//rows:{[ {},{v:"Green mechanics",id:32},{v:"...notes..."},{v:"42",id:42}, ...thousands more etc.... ]}
|
//rows:{[ {},{v:"Green mechanics",id:32},{v:"...notes..."},{v:"42",id:42}, ...thousands more etc.... ]}
|
||||||
|
//TODO: BUILD THE RETURN LIST OF DATA ITEMS
|
||||||
|
//If mini format all desired columns in order into the single mini return display (and set the only other return field which is ID)
|
||||||
|
|
||||||
|
//If wide then format the fields in order chosen (grid sort and filter template has already done that part above)
|
||||||
|
|
||||||
|
//TODO: Genericize the above block of building return when it's working as this code needs to be central and optimized as much as possible
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -530,12 +521,6 @@ order by auseroptions.emailaddress desc
|
|||||||
ColumnsJSON = AyaObjectFields.GenerateListColumnsJSONFromTemplate(AyaType.Widget, AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON);
|
ColumnsJSON = AyaObjectFields.GenerateListColumnsJSONFromTemplate(AyaType.Widget, AyaObjectFields.TEST_WIDGET_USER_EMAIL_ADDRESS_LIST_KEY, MOCK_WIDGET_USER_EMAIL_DISPLAY_TEMPLATE_JSON);
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO: BUILD THE RETURN LIST OF DATA ITEMS
|
|
||||||
//If mini format all desired columns in order into the single mini return display (and set the only other return field which is ID)
|
|
||||||
|
|
||||||
//If wide then format the fields in oder chosen (grid sort and filter template has already done that part above)
|
|
||||||
|
|
||||||
//TODO: Genericize the above block of building return when it's working as this code needs to be central and optimized as much as possible
|
|
||||||
|
|
||||||
|
|
||||||
ApiPagedResponse pr = new ApiPagedResponse(items, pageLinks, ColumnsJSON);
|
ApiPagedResponse pr = new ApiPagedResponse(items, pageLinks, ColumnsJSON);
|
||||||
|
|||||||
Reference in New Issue
Block a user