파일 에러 수정
This commit is contained in:
parent
4bbe29e18e
commit
cc4dd5ffdc
|
|
@ -56,6 +56,7 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
// 자동 새로고침 (30초마다)
|
// 자동 새로고침 (30초마다)
|
||||||
const interval = setInterval(loadData, 30000);
|
const interval = setInterval(loadData, 30000);
|
||||||
return () => clearInterval(interval);
|
return () => clearInterval(interval);
|
||||||
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||||
}, [element]);
|
}, [element]);
|
||||||
|
|
||||||
const loadData = async () => {
|
const loadData = async () => {
|
||||||
|
|
@ -101,7 +102,7 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
query: groupByDS.query,
|
query: groupByDS.query,
|
||||||
connectionType: groupByDS.connectionType || "current",
|
connectionType: groupByDS.connectionType || "current",
|
||||||
connectionId: groupByDS.connectionId,
|
connectionId: (groupByDS as any).connectionId,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -116,7 +117,7 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
const labelColumn = columns[0];
|
const labelColumn = columns[0];
|
||||||
const valueColumn = columns[1];
|
const valueColumn = columns[1];
|
||||||
|
|
||||||
const cards = rows.map((row) => ({
|
const cards = rows.map((row: any) => ({
|
||||||
label: String(row[labelColumn] || ""),
|
label: String(row[labelColumn] || ""),
|
||||||
value: parseFloat(row[valueColumn]) || 0,
|
value: parseFloat(row[valueColumn]) || 0,
|
||||||
}));
|
}));
|
||||||
|
|
@ -137,12 +138,12 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
Authorization: `Bearer ${token}`,
|
Authorization: `Bearer ${token}`,
|
||||||
},
|
},
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
method: groupByDS.method || "GET",
|
method: (groupByDS as any).method || "GET",
|
||||||
url: groupByDS.endpoint,
|
url: groupByDS.endpoint,
|
||||||
headers: groupByDS.headers || {},
|
headers: (groupByDS as any).headers || {},
|
||||||
body: groupByDS.body,
|
body: (groupByDS as any).body,
|
||||||
authType: groupByDS.authType,
|
authType: (groupByDS as any).authType,
|
||||||
authConfig: groupByDS.authConfig,
|
authConfig: (groupByDS as any).authConfig,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -169,7 +170,7 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
const labelColumn = columns[0];
|
const labelColumn = columns[0];
|
||||||
const valueColumn = columns[1];
|
const valueColumn = columns[1];
|
||||||
|
|
||||||
const cards = rows.map((row) => ({
|
const cards = rows.map((row: any) => ({
|
||||||
label: String(row[labelColumn] || ""),
|
label: String(row[labelColumn] || ""),
|
||||||
value: parseFloat(row[valueColumn]) || 0,
|
value: parseFloat(row[valueColumn]) || 0,
|
||||||
}));
|
}));
|
||||||
|
|
@ -201,7 +202,7 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
query: element.dataSource.query,
|
query: element.dataSource.query,
|
||||||
connectionType: element.dataSource.connectionType || "current",
|
connectionType: element.dataSource.connectionType || "current",
|
||||||
connectionId: element.dataSource.connectionId,
|
connectionId: (element.dataSource as any).connectionId,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -212,13 +213,14 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
if (result.success && result.data?.rows) {
|
if (result.success && result.data?.rows) {
|
||||||
const rows = result.data.rows;
|
const rows = result.data.rows;
|
||||||
|
|
||||||
const calculatedMetrics = element.customMetricConfig.metrics.map((metric) => {
|
const calculatedMetrics =
|
||||||
|
element.customMetricConfig?.metrics.map((metric) => {
|
||||||
const value = calculateMetric(rows, metric.field, metric.aggregation);
|
const value = calculateMetric(rows, metric.field, metric.aggregation);
|
||||||
return {
|
return {
|
||||||
...metric,
|
...metric,
|
||||||
calculatedValue: value,
|
calculatedValue: value,
|
||||||
};
|
};
|
||||||
});
|
}) || [];
|
||||||
|
|
||||||
setMetrics(calculatedMetrics);
|
setMetrics(calculatedMetrics);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -240,12 +242,12 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
Authorization: `Bearer ${token}`,
|
Authorization: `Bearer ${token}`,
|
||||||
},
|
},
|
||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
method: element.dataSource.method || "GET",
|
method: (element.dataSource as any).method || "GET",
|
||||||
url: element.dataSource.endpoint,
|
url: element.dataSource.endpoint,
|
||||||
headers: element.dataSource.headers || {},
|
headers: (element.dataSource as any).headers || {},
|
||||||
body: element.dataSource.body,
|
body: (element.dataSource as any).body,
|
||||||
authType: element.dataSource.authType,
|
authType: (element.dataSource as any).authType,
|
||||||
authConfig: element.dataSource.authConfig,
|
authConfig: (element.dataSource as any).authConfig,
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -278,13 +280,14 @@ export default function CustomMetricWidget({ element }: CustomMetricWidgetProps)
|
||||||
rows = [result.data];
|
rows = [result.data];
|
||||||
}
|
}
|
||||||
|
|
||||||
const calculatedMetrics = element.customMetricConfig.metrics.map((metric) => {
|
const calculatedMetrics =
|
||||||
|
element.customMetricConfig?.metrics.map((metric) => {
|
||||||
const value = calculateMetric(rows, metric.field, metric.aggregation);
|
const value = calculateMetric(rows, metric.field, metric.aggregation);
|
||||||
return {
|
return {
|
||||||
...metric,
|
...metric,
|
||||||
calculatedValue: value,
|
calculatedValue: value,
|
||||||
};
|
};
|
||||||
});
|
}) || [];
|
||||||
|
|
||||||
setMetrics(calculatedMetrics);
|
setMetrics(calculatedMetrics);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue