From 19697e736039b4338e2065691689312267c94a5f Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Wed, 26 Apr 2023 11:06:53 -0500 Subject: [PATCH] Updated to handle move of skip & limit into QQueryFilter (out of query input) --- package.json | 2 +- src/qqq/components/audits/AuditBody.tsx | 4 ++-- src/qqq/components/widgets/misc/DataBagViewer.tsx | 4 ++-- src/qqq/components/widgets/misc/ScriptViewer.tsx | 7 ++++--- src/qqq/utils/qqq/FilterUtils.ts | 8 +++++++- 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index cf508cf..774b006 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "@auth0/auth0-react": "1.10.2", "@emotion/react": "11.7.1", "@emotion/styled": "11.6.0", - "@kingsrook/qqq-frontend-core": "1.0.58", + "@kingsrook/qqq-frontend-core": "1.0.59", "@mui/icons-material": "5.4.1", "@mui/material": "5.11.1", "@mui/styles": "5.11.1", diff --git a/src/qqq/components/audits/AuditBody.tsx b/src/qqq/components/audits/AuditBody.tsx index 90cb0db..072f277 100644 --- a/src/qqq/components/audits/AuditBody.tsx +++ b/src/qqq/components/audits/AuditBody.tsx @@ -194,7 +194,7 @@ function AuditBody({tableMetaData, recordId, record}: Props): JSX.Element new QFilterOrderBy("timestamp", sortDirection), new QFilterOrderBy("id", sortDirection), new QFilterOrderBy("auditDetail.id", true) - ]); + ], "AND", 0, limit); /////////////////////////////// // fetch audits in try-catch // @@ -202,7 +202,7 @@ function AuditBody({tableMetaData, recordId, record}: Props): JSX.Element let audits = [] as QRecord[] try { - audits = await qController.query("audit", filter, limit, 0, [new QueryJoin("auditDetail", true, "LEFT")]); + audits = await qController.query("audit", filter, [new QueryJoin("auditDetail", true, "LEFT")]); setAudits(audits); } catch(e) diff --git a/src/qqq/components/widgets/misc/DataBagViewer.tsx b/src/qqq/components/widgets/misc/DataBagViewer.tsx index b1ff735..c59cd37 100644 --- a/src/qqq/components/widgets/misc/DataBagViewer.tsx +++ b/src/qqq/components/widgets/misc/DataBagViewer.tsx @@ -100,8 +100,8 @@ export default function DataBagViewer({dataBagId}: Props): JSX.Element const criteria = [new QFilterCriteria("dataBagId", QCriteriaOperator.EQUALS, [dataBagId])]; const orderBys = [new QFilterOrderBy("sequenceNo", false)]; - const filter = new QQueryFilter(criteria, orderBys); - const versions = await qController.query("dataBagVersion", filter, 25, 0); + const filter = new QQueryFilter(criteria, orderBys, "AND", 0, 25); + const versions = await qController.query("dataBagVersion", filter); console.log("Fetched versions:"); console.log(versions); setVersionRecordList(versions); diff --git a/src/qqq/components/widgets/misc/ScriptViewer.tsx b/src/qqq/components/widgets/misc/ScriptViewer.tsx index 6c7fee8..36e45e4 100644 --- a/src/qqq/components/widgets/misc/ScriptViewer.tsx +++ b/src/qqq/components/widgets/misc/ScriptViewer.tsx @@ -133,8 +133,8 @@ export default function ScriptViewer({scriptId, associatedScriptTableName, assoc const criteria = [new QFilterCriteria("scriptId", QCriteriaOperator.EQUALS, [scriptId])]; const orderBys = [new QFilterOrderBy("sequenceNo", false)]; - const filter = new QQueryFilter(criteria, orderBys); - const versions = await qController.query("scriptRevision", filter, 25, 0); + const filter = new QQueryFilter(criteria, orderBys, "AND", 0, 25); + const versions = await qController.query("scriptRevision", filter); console.log("Fetched versions:"); console.log(versions); setVersionRecordList(versions); @@ -281,7 +281,8 @@ export default function ScriptViewer({scriptId, associatedScriptTableName, assoc { (async () => { - scriptLogs[scriptRevisionId] = await qController.query("scriptLog", new QQueryFilter([new QFilterCriteria("scriptRevisionId", QCriteriaOperator.EQUALS, [scriptRevisionId])]), 100, 0); + let filter = new QQueryFilter([new QFilterCriteria("scriptRevisionId", QCriteriaOperator.EQUALS, [scriptRevisionId])], [new QFilterOrderBy("id", false)], "AND", 0, 100); + scriptLogs[scriptRevisionId] = await qController.query("scriptLog", filter); setScriptLogs(scriptLogs); forceUpdate(); })(); diff --git a/src/qqq/utils/qqq/FilterUtils.ts b/src/qqq/utils/qqq/FilterUtils.ts index 8885d39..1c61364 100644 --- a/src/qqq/utils/qqq/FilterUtils.ts +++ b/src/qqq/utils/qqq/FilterUtils.ts @@ -514,7 +514,7 @@ class FilterUtils /******************************************************************************* ** build a qqq filter from a grid and column sort model *******************************************************************************/ - public static buildQFilterFromGridFilter(tableMetaData: QTableMetaData, filterModel: GridFilterModel, columnSortModel: GridSortItem[]): QQueryFilter + public static buildQFilterFromGridFilter(tableMetaData: QTableMetaData, filterModel: GridFilterModel, columnSortModel: GridSortItem[], limit?: number): QQueryFilter { console.log("Building q filter with model:"); console.log(filterModel); @@ -528,6 +528,12 @@ class FilterUtils }); } + if (limit) + { + console.log("Setting limit to: " + limit); + qFilter.limit = limit; + } + if (filterModel) { let foundFilter = false;