fix(plugins): Fix dashboard filter in Period Over Period KPI plugin (#27013)

This commit is contained in:
Antonio Rivero 2024-02-05 15:08:37 +01:00 committed by GitHub
parent 7a270a5922
commit 607301ad56
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 21 additions and 7 deletions

View File

@ -217,7 +217,11 @@ function calculatePrev(
}
export default function buildQuery(formData: QueryFormData) {
const { cols: groupby, time_comparison: timeComparison } = formData;
const {
cols: groupby,
time_comparison: timeComparison,
extra_form_data: extraFormData,
} = formData;
const queryContextA = buildQueryContext(formData, baseQueryObject => [
{
@ -244,9 +248,11 @@ export default function buildQuery(formData: QueryFormData) {
'comparator' in timeFilter &&
typeof timeFilter.comparator === 'string'
) {
[testSince, testUntil] = getSinceUntil(
timeFilter.comparator.toLocaleLowerCase(),
);
let timeRange = timeFilter.comparator.toLocaleLowerCase();
if (extraFormData?.time_range) {
timeRange = extraFormData.time_range;
}
[testSince, testUntil] = getSinceUntil(timeRange);
}
let formDataB: QueryFormData;
@ -277,11 +283,13 @@ export default function buildQuery(formData: QueryFormData) {
formDataB = {
...formData,
adhoc_filters: queryBFilters,
extra_form_data: {},
};
} else {
formDataB = {
...formData,
adhoc_filters: formData.adhoc_custom,
extra_form_data: {},
};
}

View File

@ -112,9 +112,15 @@ export default function transformProps(chartProps: ChartProps) {
let valueDifference: number | string = bigNumber - prevNumber;
const percentDifferenceNum = prevNumber
? (bigNumber - prevNumber) / Math.abs(prevNumber)
: 0;
let percentDifferenceNum;
if (!bigNumber && !prevNumber) {
percentDifferenceNum = 0;
} else if (!bigNumber || !prevNumber) {
percentDifferenceNum = bigNumber ? 1 : -1;
} else {
percentDifferenceNum = (bigNumber - prevNumber) / Math.abs(prevNumber);
}
const compType = compTitles[formData.timeComparison];
bigNumber = numberFormatter(bigNumber);