mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 11:07:06 +00:00
(fix)(chat-sdk) fix date change bug and hide recommend metrics tip when no metrics (#478)
This commit is contained in:
@@ -101,8 +101,6 @@ const ParseTip: React.FC<Props> = ({
|
|||||||
nativeQuery,
|
nativeQuery,
|
||||||
} = currentParseInfo || {};
|
} = currentParseInfo || {};
|
||||||
|
|
||||||
const { modelNames } = model || {};
|
|
||||||
|
|
||||||
const entityAlias = entity?.alias?.[0]?.split('.')?.[0];
|
const entityAlias = entity?.alias?.[0]?.split('.')?.[0];
|
||||||
|
|
||||||
const entityDimensions = entityInfo?.dimensions?.filter(
|
const entityDimensions = entityInfo?.dimensions?.filter(
|
||||||
@@ -152,9 +150,9 @@ const ParseTip: React.FC<Props> = ({
|
|||||||
<div className={`${prefixCls}-tip-item`}>
|
<div className={`${prefixCls}-tip-item`}>
|
||||||
<div className={`${prefixCls}-tip-item-name`}>数据模型:</div>
|
<div className={`${prefixCls}-tip-item-name`}>数据模型:</div>
|
||||||
<div className={itemValueClass}>
|
<div className={itemValueClass}>
|
||||||
{modelNames?.map(modelName => (
|
{model?.modelNames?.length === 1
|
||||||
<Tag key={modelName}>{modelName}</Tag>
|
? model.modelNames[0]
|
||||||
))}
|
: model?.modelNames?.map(modelName => <Tag key={modelName}>{modelName}</Tag>)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@@ -166,14 +164,16 @@ const ParseTip: React.FC<Props> = ({
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{!queryMode?.includes('ENTITY') &&
|
{queryType !== 'TAG' &&
|
||||||
metrics &&
|
metrics &&
|
||||||
metrics.length > 0 &&
|
metrics.length > 0 &&
|
||||||
!dimensions?.some(item => item.bizName?.includes('_id')) && (
|
!dimensions?.some(item => item.bizName?.includes('_id')) && (
|
||||||
<div className={`${prefixCls}-tip-item`}>
|
<div className={`${prefixCls}-tip-item`}>
|
||||||
<div className={`${prefixCls}-tip-item-name`}>指标:</div>
|
<div className={`${prefixCls}-tip-item-name`}>指标:</div>
|
||||||
<div className={itemValueClass}>
|
<div className={itemValueClass}>
|
||||||
{metrics.map(metric => metric.name).join('、')}
|
{queryType === 'METRIC'
|
||||||
|
? metrics[0].name
|
||||||
|
: metrics.map(metric => metric.name).join('、')}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import classNames from 'classnames';
|
|||||||
import Tools from '../Tools';
|
import Tools from '../Tools';
|
||||||
import SqlItem from './SqlItem';
|
import SqlItem from './SqlItem';
|
||||||
import SimilarQuestionItem from './SimilarQuestionItem';
|
import SimilarQuestionItem from './SimilarQuestionItem';
|
||||||
import moment from 'moment';
|
import dayjs from 'dayjs';
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
msg: string;
|
msg: string;
|
||||||
@@ -82,18 +82,18 @@ const ChatItem: React.FC<Props> = ({
|
|||||||
const updateData = (res: Result<MsgDataType>) => {
|
const updateData = (res: Result<MsgDataType>) => {
|
||||||
let tip: string = '';
|
let tip: string = '';
|
||||||
let data: MsgDataType | undefined = undefined;
|
let data: MsgDataType | undefined = undefined;
|
||||||
if (res.code === 401 || res.code === 412) {
|
|
||||||
tip = res.msg;
|
|
||||||
}
|
|
||||||
if (res.code !== 200) {
|
|
||||||
tip = SEARCH_EXCEPTION_TIP;
|
|
||||||
}
|
|
||||||
const { queryColumns, queryResults, queryState, queryMode, response, chatContext } =
|
const { queryColumns, queryResults, queryState, queryMode, response, chatContext } =
|
||||||
res.data || {};
|
res.data || {};
|
||||||
if (queryState !== 'SUCCESS') {
|
if (res.code === 401 || res.code === 412) {
|
||||||
|
tip = res.msg;
|
||||||
|
} else if (res.code !== 200) {
|
||||||
|
tip = SEARCH_EXCEPTION_TIP;
|
||||||
|
} else if (queryState !== 'SUCCESS') {
|
||||||
tip = response && typeof response === 'string' ? response : SEARCH_EXCEPTION_TIP;
|
tip = response && typeof response === 'string' ? response : SEARCH_EXCEPTION_TIP;
|
||||||
}
|
} else if (
|
||||||
if ((queryColumns && queryColumns.length > 0 && queryResults) || queryMode === 'WEB_PAGE') {
|
(queryColumns && queryColumns.length > 0 && queryResults) ||
|
||||||
|
queryMode === 'WEB_PAGE'
|
||||||
|
) {
|
||||||
data = res.data;
|
data = res.data;
|
||||||
tip = '';
|
tip = '';
|
||||||
}
|
}
|
||||||
@@ -229,8 +229,8 @@ const ChatItem: React.FC<Props> = ({
|
|||||||
const onDateInfoChange = (dateRange: any) => {
|
const onDateInfoChange = (dateRange: any) => {
|
||||||
setDateInfo({
|
setDateInfo({
|
||||||
...(dateInfo || {}),
|
...(dateInfo || {}),
|
||||||
startDate: moment(dateRange[0]).format('YYYY-MM-DD'),
|
startDate: dayjs(dateRange[0]).format('YYYY-MM-DD'),
|
||||||
endDate: moment(dateRange[1]).format('YYYY-MM-DD'),
|
endDate: dayjs(dateRange[1]).format('YYYY-MM-DD'),
|
||||||
dateMode: 'BETWEEN',
|
dateMode: 'BETWEEN',
|
||||||
unit: 0,
|
unit: 0,
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -29,6 +29,10 @@ const MetricOptions: React.FC<Props> = ({
|
|||||||
[`${prefixCls}-metric-card`]: isMetricCard,
|
[`${prefixCls}-metric-card`]: isMetricCard,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (!defaultMetrics.length) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={prefixCls}>
|
<div className={prefixCls}>
|
||||||
<div className={sectionClass}>
|
<div className={sectionClass}>
|
||||||
|
|||||||
Reference in New Issue
Block a user