mirror of
https://github.com/Kingsrook/qqq-frontend-material-dashboard.git
synced 2025-07-18 21:30:45 +00:00
SPRINT-18: fixed to dashboards, removed and moved around all the things
This commit is contained in:
@ -20,15 +20,14 @@
|
||||
*/
|
||||
|
||||
import {AdornmentType} from "@kingsrook/qqq-frontend-core/lib/model/metaData/AdornmentType";
|
||||
import {QFieldMetaData} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QFieldMetaData";
|
||||
import {QFieldType} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QFieldType";
|
||||
import {QTableMetaData} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QTableMetaData";
|
||||
import {QRecord} from "@kingsrook/qqq-frontend-core/lib/model/QRecord";
|
||||
import {getGridDateOperators, GridColDef, GridRowsProp} from "@mui/x-data-grid-pro";
|
||||
import {GridFilterOperator} from "@mui/x-data-grid/models/gridFilterOperator";
|
||||
import {Link} from "react-router-dom";
|
||||
import {buildQGridPvsOperators, QGridBooleanOperators, QGridNumericOperators, QGridStringOperators} from "qqq/pages/entity-list/QGridFilterOperators";
|
||||
import QValueUtils from "qqq/utils/QValueUtils";
|
||||
import {buildQGridPvsOperators, QGridBooleanOperators, QGridNumericOperators, QGridStringOperators} from "qqq/pages/records/query/GridFilterOperators";
|
||||
import ValueUtils from "qqq/utils/qqq/ValueUtils";
|
||||
|
||||
export default class DataGridUtils
|
||||
{
|
||||
@ -46,7 +45,7 @@ export default class DataGridUtils
|
||||
const row: any = {};
|
||||
fields.forEach((field) =>
|
||||
{
|
||||
const value = QValueUtils.getDisplayValue(field, record, "query");
|
||||
const value = ValueUtils.getDisplayValue(field, record, "query");
|
||||
if (typeof value !== "string")
|
||||
{
|
||||
columnsToRender[field.name] = true;
|
||||
|
@ -26,7 +26,7 @@ import {QException} from "@kingsrook/qqq-frontend-core/lib/exceptions/QException
|
||||
** client wrapper of qqq backend
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QClient
|
||||
class Client
|
||||
{
|
||||
private static qController: QController;
|
||||
|
||||
@ -48,4 +48,4 @@ class QClient
|
||||
}
|
||||
}
|
||||
|
||||
export default QClient;
|
||||
export default Client;
|
@ -21,15 +21,14 @@
|
||||
|
||||
import {QFieldMetaData} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QFieldMetaData";
|
||||
import {QFieldType} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QFieldType";
|
||||
import {QPossibleValue} from "@kingsrook/qqq-frontend-core/lib/model/QPossibleValue";
|
||||
import {QCriteriaOperator} from "@kingsrook/qqq-frontend-core/lib/model/query/QCriteriaOperator";
|
||||
import QValueUtils from "qqq/utils/QValueUtils";
|
||||
import ValueUtils from "qqq/utils/qqq/ValueUtils";
|
||||
|
||||
/*******************************************************************************
|
||||
** Utility class for working with QQQ Filters
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QFilterUtils
|
||||
class FilterUtils
|
||||
{
|
||||
/*******************************************************************************
|
||||
** Convert a grid operator to a QQQ Criteria Operator.
|
||||
@ -98,7 +97,7 @@ class QFilterUtils
|
||||
{
|
||||
case QCriteriaOperator.EQUALS:
|
||||
|
||||
if(field.possibleValueSourceName)
|
||||
if (field.possibleValueSourceName)
|
||||
{
|
||||
return ("is");
|
||||
}
|
||||
@ -132,7 +131,7 @@ class QFilterUtils
|
||||
}
|
||||
case QCriteriaOperator.NOT_EQUALS:
|
||||
|
||||
if(field.possibleValueSourceName)
|
||||
if (field.possibleValueSourceName)
|
||||
{
|
||||
return ("isNot");
|
||||
}
|
||||
@ -233,11 +232,11 @@ class QFilterUtils
|
||||
*******************************************************************************/
|
||||
public static gridCriteriaValueToQQQ = (operator: QCriteriaOperator, value: any, gridOperatorValue: string): any[] =>
|
||||
{
|
||||
if(gridOperatorValue === "isTrue")
|
||||
if (gridOperatorValue === "isTrue")
|
||||
{
|
||||
return [true];
|
||||
}
|
||||
else if(gridOperatorValue === "isFalse")
|
||||
else if (gridOperatorValue === "isFalse")
|
||||
{
|
||||
return [false];
|
||||
}
|
||||
@ -248,7 +247,7 @@ class QFilterUtils
|
||||
}
|
||||
else if (operator === QCriteriaOperator.IN || operator === QCriteriaOperator.NOT_IN || operator === QCriteriaOperator.BETWEEN || operator === QCriteriaOperator.NOT_BETWEEN)
|
||||
{
|
||||
if(value == null && (operator === QCriteriaOperator.BETWEEN || operator === QCriteriaOperator.NOT_BETWEEN))
|
||||
if (value == null && (operator === QCriteriaOperator.BETWEEN || operator === QCriteriaOperator.NOT_BETWEEN))
|
||||
{
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// if we send back null, we get a 500 - bad look every time you try to set up a BETWEEN filter //
|
||||
@ -256,10 +255,10 @@ class QFilterUtils
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
return ([null, null]);
|
||||
}
|
||||
return (QFilterUtils.extractIdsFromPossibleValueList(value));
|
||||
return (FilterUtils.extractIdsFromPossibleValueList(value));
|
||||
}
|
||||
|
||||
return (QFilterUtils.extractIdsFromPossibleValueList([value]));
|
||||
return (FilterUtils.extractIdsFromPossibleValueList([value]));
|
||||
};
|
||||
|
||||
/*******************************************************************************
|
||||
@ -269,16 +268,16 @@ class QFilterUtils
|
||||
*******************************************************************************/
|
||||
private static extractIdsFromPossibleValueList = (param: any[]): number[] | string[] =>
|
||||
{
|
||||
if(param === null || param === undefined)
|
||||
if (param === null || param === undefined)
|
||||
{
|
||||
return (param);
|
||||
}
|
||||
|
||||
let rs = [];
|
||||
for(let i = 0; i < param.length; i++)
|
||||
for (let i = 0; i < param.length; i++)
|
||||
{
|
||||
console.log(param[i]);
|
||||
if(param[i] && param[i].id && param[i].label)
|
||||
if (param[i] && param[i].id && param[i].label)
|
||||
{
|
||||
/////////////////////////////////////////////////////////////
|
||||
// if the param looks like a possible value, return its id //
|
||||
@ -291,7 +290,7 @@ class QFilterUtils
|
||||
}
|
||||
}
|
||||
return (rs);
|
||||
}
|
||||
};
|
||||
|
||||
/*******************************************************************************
|
||||
** Convert a filter field's value from the style that qqq uses, to the style that
|
||||
@ -309,14 +308,14 @@ class QFilterUtils
|
||||
return (values);
|
||||
}
|
||||
|
||||
if(values.length > 0)
|
||||
if (values.length > 0)
|
||||
{
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// make sure dates are formatted for the grid the way it expects - not the way we pass it in. //
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
if (fieldType === QFieldType.DATE_TIME)
|
||||
{
|
||||
values[0] = QValueUtils.formatDateTimeValueForForm(values[0]);
|
||||
values[0] = ValueUtils.formatDateTimeValueForForm(values[0]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -324,4 +323,4 @@ class QFilterUtils
|
||||
};
|
||||
}
|
||||
|
||||
export default QFilterUtils;
|
||||
export default FilterUtils;
|
@ -27,7 +27,7 @@ import {QReportMetaData} from "@kingsrook/qqq-frontend-core/lib/model/metaData/Q
|
||||
** Utility class for working with QQQ Processes
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QProcessUtils
|
||||
class ProcessUtils
|
||||
{
|
||||
public static getProcessesForTable(metaData: QInstance, tableName: string, includeHidden = false): QProcessMetaData[]
|
||||
{
|
||||
@ -67,4 +67,4 @@ class QProcessUtils
|
||||
|
||||
}
|
||||
|
||||
export default QProcessUtils;
|
||||
export default ProcessUtils;
|
@ -26,7 +26,7 @@ import {QTableSection} from "@kingsrook/qqq-frontend-core/lib/model/metaData/QTa
|
||||
** Utility class for working with QQQ Tables
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QTableUtils
|
||||
class TableUtils
|
||||
{
|
||||
|
||||
/*******************************************************************************
|
||||
@ -87,4 +87,4 @@ class QTableUtils
|
||||
}
|
||||
}
|
||||
|
||||
export default QTableUtils;
|
||||
export default TableUtils;
|
@ -30,37 +30,37 @@ import parse from "html-react-parser";
|
||||
import React, {Fragment} from "react";
|
||||
import AceEditor from "react-ace";
|
||||
import {Link} from "react-router-dom";
|
||||
import QClient from "qqq/utils/QClient";
|
||||
import Client from "qqq/utils/qqq/Client";
|
||||
|
||||
/*******************************************************************************
|
||||
** Utility class for working with QQQ Values
|
||||
**
|
||||
*******************************************************************************/
|
||||
class QValueUtils
|
||||
class ValueUtils
|
||||
{
|
||||
public static qInstance: QInstance = null;
|
||||
public static loadingQInstance = false;
|
||||
|
||||
private static getQInstance(): QInstance
|
||||
{
|
||||
if (QValueUtils.qInstance == null)
|
||||
if (ValueUtils.qInstance == null)
|
||||
{
|
||||
if (QValueUtils.loadingQInstance)
|
||||
if (ValueUtils.loadingQInstance)
|
||||
{
|
||||
return (null);
|
||||
}
|
||||
|
||||
QValueUtils.loadingQInstance = true;
|
||||
const qController = QClient.getInstance();
|
||||
ValueUtils.loadingQInstance = true;
|
||||
const qController = Client.getInstance();
|
||||
(async () =>
|
||||
{
|
||||
QValueUtils.qInstance = await qController.loadMetaData();
|
||||
ValueUtils.qInstance = await qController.loadMetaData();
|
||||
})();
|
||||
|
||||
return (null);
|
||||
}
|
||||
|
||||
return QValueUtils.qInstance;
|
||||
return ValueUtils.qInstance;
|
||||
}
|
||||
|
||||
|
||||
@ -73,7 +73,7 @@ class QValueUtils
|
||||
const displayValue = record.displayValues ? record.displayValues.get(field.name) : undefined;
|
||||
const rawValue = record.values ? record.values.get(field.name) : undefined;
|
||||
|
||||
return QValueUtils.getValueForDisplay(field, rawValue, displayValue, usage);
|
||||
return ValueUtils.getValueForDisplay(field, rawValue, displayValue, usage);
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
@ -90,9 +90,9 @@ class QValueUtils
|
||||
const toRecordFromTable = adornment.getValue("toRecordFromTable");
|
||||
if (toRecordFromTable)
|
||||
{
|
||||
if (QValueUtils.getQInstance())
|
||||
if (ValueUtils.getQInstance())
|
||||
{
|
||||
let tablePath = QValueUtils.getQInstance().getTablePathByName(toRecordFromTable);
|
||||
let tablePath = ValueUtils.getQInstance().getTablePathByName(toRecordFromTable);
|
||||
if (!tablePath)
|
||||
{
|
||||
console.log("Couldn't find path for table: " + tablePath);
|
||||
@ -110,7 +110,7 @@ class QValueUtils
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
// if no instance, we can't get the table path, so we can't do a to-record link //
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
return (QValueUtils.getUnadornedValueForDisplay(field, rawValue, displayValue));
|
||||
return (ValueUtils.getUnadornedValueForDisplay(field, rawValue, displayValue));
|
||||
}
|
||||
}
|
||||
|
||||
@ -192,7 +192,7 @@ class QValueUtils
|
||||
);
|
||||
}
|
||||
|
||||
return (QValueUtils.getUnadornedValueForDisplay(field, rawValue, displayValue));
|
||||
return (ValueUtils.getUnadornedValueForDisplay(field, rawValue, displayValue));
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
@ -237,7 +237,7 @@ class QValueUtils
|
||||
|
||||
if (typeof returnValue === "string" && returnValue.indexOf("\n") > -1)
|
||||
{
|
||||
return QValueUtils.breakTextIntoLines(returnValue);
|
||||
return ValueUtils.breakTextIntoLines(returnValue);
|
||||
}
|
||||
|
||||
return (returnValue);
|
||||
@ -340,4 +340,4 @@ class QValueUtils
|
||||
}
|
||||
}
|
||||
|
||||
export default QValueUtils;
|
||||
export default ValueUtils;
|
Reference in New Issue
Block a user