diff --git a/webapp/packages/chat-sdk/src/common/constants.ts b/webapp/packages/chat-sdk/src/common/constants.ts index 65db3ac9e..80ab89ed2 100644 --- a/webapp/packages/chat-sdk/src/common/constants.ts +++ b/webapp/packages/chat-sdk/src/common/constants.ts @@ -82,3 +82,11 @@ export enum MsgContentTypeEnum { METRIC_BAR = 'METRIC_BAR', MARKDOWN = 'MARKDOWN', } + +export enum ChatContextTypeQueryTypeEnum { + AGGREGATE = 'AGGREGATE', + METRIC_TAG = 'METRIC_TAG', + ID = 'ID', + DETAIL = 'DETAIL', + OTHER = 'OTHER', +} diff --git a/webapp/packages/chat-sdk/src/common/type.ts b/webapp/packages/chat-sdk/src/common/type.ts index ca04ba00f..17be67340 100644 --- a/webapp/packages/chat-sdk/src/common/type.ts +++ b/webapp/packages/chat-sdk/src/common/type.ts @@ -1,4 +1,5 @@ import { Dayjs } from 'dayjs'; +import { ChatContextTypeQueryTypeEnum } from './constants'; export type SearchRecommendItem = { complete: boolean; @@ -95,7 +96,7 @@ export type ChatContextType = { elementMatches: any[]; nativeQuery: boolean; queryMode: string; - queryType: 'METRIC' | 'METRIC_TAG' | 'ID' | 'DETAIL' | 'OTHER'; + queryType: ChatContextTypeQueryTypeEnum; dimensionFilters: FilterItemType[]; properties: any; sqlInfo: SqlInfoType; diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx index 54b859cf6..c8c23503a 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx @@ -9,7 +9,7 @@ import MarkDown from '../ChatMsg/MarkDown'; import classNames from 'classnames'; import { isMobile } from '../../utils/utils'; import dayjs, { Dayjs } from 'dayjs'; -import locale from 'antd/locale/zh_CN'; +import { ChatContextTypeQueryTypeEnum } from '../../common/constants'; import quarterOfYear from 'dayjs/plugin/quarterOfYear'; import 'dayjs/locale/zh-cn'; @@ -183,11 +183,16 @@ const ParseTip: React.FC = ({
{dataSet?.name}
)} - {(queryType === 'METRIC' || queryType === 'METRIC_TAG' || queryType === 'DETAIL') && ( + {(queryType === ChatContextTypeQueryTypeEnum.AGGREGATE || + queryType === 'METRIC_TAG' || + queryType === 'DETAIL') && (
查询模式:
- {queryType === 'METRIC' || queryType === 'METRIC_TAG' ? '聚合模式' : '明细模式'} + {queryType === ChatContextTypeQueryTypeEnum.AGGREGATE || + queryType === 'METRIC_TAG' + ? '聚合模式' + : '明细模式'}
)} @@ -198,7 +203,7 @@ const ParseTip: React.FC = ({
指标:
- {queryType === 'METRIC' || queryType === 'ID' + {queryType === ChatContextTypeQueryTypeEnum.AGGREGATE || queryType === 'ID' ? metrics[0].name : metrics.map(metric => metric.name).join('、')}
diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/View/components/DefaultSettingForm.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/View/components/DefaultSettingForm.tsx index cf2abdd2b..c545c2783 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/View/components/DefaultSettingForm.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/View/components/DefaultSettingForm.tsx @@ -192,7 +192,42 @@ const DefaultSettingForm: ForwardRefRenderFunction = ( )} - + {/* {formData?.queryConfig?.[DetailTypeDefaultConfig[chatConfigType]]?.timeDefaultConfig + ?.timeMode !== 'CURRENT' ? ( + + + + ) : ( + + + + )} */} = ({ ?.timeDefaultConfig; if (target?.timeMode) { if (target?.timeMode === TimeModeEnum.CURRENT) { - values.queryConfig[ - DetailTypeDefaultConfig[ChatConfigType.METRIC] - ].timeDefaultConfig.period = DatePeriod.MONTH; - form.setFieldsValue({ ...values }); + if (![DatePeriod.MONTH, DatePeriod.YEAR].includes(target.period)) { + values.queryConfig[ + DetailTypeDefaultConfig[ChatConfigType.METRIC] + ].timeDefaultConfig.period = DatePeriod.MONTH; + form.setFieldsValue({ ...values }); + } } else { values.queryConfig[ DetailTypeDefaultConfig[ChatConfigType.METRIC]