(fix)(chat-sdk) fix date change bug and hide recommend metrics tip when no metrics (#478)

This commit is contained in:
williamhliu
2023-12-06 20:54:31 +08:00
committed by GitHub
parent 9679169e6f
commit e6ab7cb5ff
3 changed files with 23 additions and 19 deletions

View File

@@ -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>
)} )}

View File

@@ -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,
}); });

View File

@@ -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}>