mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-13 21:17:08 +00:00
@@ -178,7 +178,7 @@ export type QueryDataType = {
|
|||||||
export type ColumnType = {
|
export type ColumnType = {
|
||||||
authorized: boolean;
|
authorized: boolean;
|
||||||
name: string;
|
name: string;
|
||||||
nameEn: string;
|
bizName: string;
|
||||||
showType: string;
|
showType: string;
|
||||||
type: string;
|
type: string;
|
||||||
dataFormatType: string;
|
dataFormatType: string;
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ const MetricTrend: React.FC<Props> = ({
|
|||||||
);
|
);
|
||||||
const dateColumnName = dateField?.nameEn || '';
|
const dateColumnName = dateField?.nameEn || '';
|
||||||
const categoryColumnName =
|
const categoryColumnName =
|
||||||
queryColumns?.find((column: any) => column.showType === 'CATEGORY')?.nameEn || '';
|
queryColumns?.find((column: any) => column.showType === 'CATEGORY')?.bizName || '';
|
||||||
const metricFields = queryColumns?.filter((column: any) => column.showType === 'NUMBER');
|
const metricFields = queryColumns?.filter((column: any) => column.showType === 'NUMBER');
|
||||||
|
|
||||||
const currentMetricField = queryColumns?.find((column: any) => column.showType === 'NUMBER');
|
const currentMetricField = queryColumns?.find((column: any) => column.showType === 'NUMBER');
|
||||||
|
|||||||
@@ -19,16 +19,16 @@ const Table: React.FC<Props> = ({ data, size, loading, question, onApplyAuth })
|
|||||||
|
|
||||||
const prefixCls = `${CLS_PREFIX}-table`;
|
const prefixCls = `${CLS_PREFIX}-table`;
|
||||||
const tableColumns: any[] = queryColumns.map(
|
const tableColumns: any[] = queryColumns.map(
|
||||||
({ name, nameEn, showType, dataFormatType, dataFormat, authorized }) => {
|
({ name, bizName, showType, dataFormatType, dataFormat, authorized }) => {
|
||||||
return {
|
return {
|
||||||
dataIndex: nameEn,
|
dataIndex: bizName,
|
||||||
key: nameEn,
|
key: bizName,
|
||||||
title: name || nameEn,
|
title: name || bizName,
|
||||||
defaultSortOrder: 'descend',
|
defaultSortOrder: 'descend',
|
||||||
sorter:
|
sorter:
|
||||||
showType === 'NUMBER'
|
showType === 'NUMBER'
|
||||||
? (a, b) => {
|
? (a, b) => {
|
||||||
return a[nameEn] - b[nameEn];
|
return a[bizName] - b[bizName];
|
||||||
}
|
}
|
||||||
: undefined,
|
: undefined,
|
||||||
render: (value: string | number) => {
|
render: (value: string | number) => {
|
||||||
@@ -59,7 +59,7 @@ const Table: React.FC<Props> = ({ data, size, loading, question, onApplyAuth })
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (nameEn.includes('photo')) {
|
if (bizName.includes('photo')) {
|
||||||
return (
|
return (
|
||||||
<div className={`${prefixCls}-photo`}>
|
<div className={`${prefixCls}-photo`}>
|
||||||
<img width={40} height={40} src={value as string} alt="" />
|
<img width={40} height={40} src={value as string} alt="" />
|
||||||
@@ -78,7 +78,7 @@ const Table: React.FC<Props> = ({ data, size, loading, question, onApplyAuth })
|
|||||||
|
|
||||||
const dateColumn = queryColumns.find(column => column.type === 'DATE');
|
const dateColumn = queryColumns.find(column => column.type === 'DATE');
|
||||||
const dataSource = dateColumn
|
const dataSource = dateColumn
|
||||||
? queryResults.sort((a, b) => moment(a[dateColumn.nameEn]).diff(moment(b[dateColumn.nameEn])))
|
? queryResults.sort((a, b) => moment(a[dateColumn.bizName]).diff(moment(b[dateColumn.bizName])))
|
||||||
: queryResults;
|
: queryResults;
|
||||||
return (
|
return (
|
||||||
<div className={prefixCls}>
|
<div className={prefixCls}>
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ const ChatMsg: React.FC<Props> = ({
|
|||||||
metricFields.length > 0 &&
|
metricFields.length > 0 &&
|
||||||
categoryField.length <= 1 &&
|
categoryField.length <= 1 &&
|
||||||
!(metricFields.length > 1 && categoryField.length > 0) &&
|
!(metricFields.length > 1 && categoryField.length > 0) &&
|
||||||
!dataSource.every(item => item[dateField.nameEn] === dataSource[0][dateField.nameEn]);
|
!dataSource.every(item => item[dateField.bizName] === dataSource[0][dateField.bizName]);
|
||||||
|
|
||||||
if (isMetricTrend) {
|
if (isMetricTrend) {
|
||||||
return MsgContentTypeEnum.METRIC_TREND;
|
return MsgContentTypeEnum.METRIC_TREND;
|
||||||
@@ -330,7 +330,7 @@ const ChatMsg: React.FC<Props> = ({
|
|||||||
!isEntityMode;
|
!isEntityMode;
|
||||||
|
|
||||||
const recommendMetrics = chatContext?.metrics?.filter(metric =>
|
const recommendMetrics = chatContext?.metrics?.filter(metric =>
|
||||||
queryColumns.every(queryColumn => queryColumn.nameEn !== metric.bizName)
|
queryColumns.every(queryColumn => queryColumn.bizName !== metric.bizName)
|
||||||
);
|
);
|
||||||
|
|
||||||
const isMultipleMetric =
|
const isMultipleMetric =
|
||||||
|
|||||||
Reference in New Issue
Block a user