diff --git a/webapp/packages/chat-sdk/src/Chat/ChatFooter/style.module.less b/webapp/packages/chat-sdk/src/Chat/ChatFooter/style.module.less index 1d2eca902..8780d731a 100644 --- a/webapp/packages/chat-sdk/src/Chat/ChatFooter/style.module.less +++ b/webapp/packages/chat-sdk/src/Chat/ChatFooter/style.module.less @@ -90,8 +90,8 @@ } .ant-select-selection-placeholder { - padding-left: 2px; line-height: 40px; + margin-bottom: 30px; } } diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/FilterItem.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/FilterItem.tsx index 7071c5bdd..2ce62870f 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/FilterItem.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/FilterItem.tsx @@ -127,7 +127,6 @@ const FilterItem: React.FC = ({ }; const onDateChange = (_: any, date: string) => { - console.log('onDateChange', date); const newFilters = filters.map((item, indexValue) => { if (item.bizName === filter.bizName && index === indexValue) { item.value = date; diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx index ff4d18343..b4cc47f66 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatItem/ParseTip.tsx @@ -126,7 +126,7 @@ const ParseTip: React.FC = ({ const { type: agentType, name: agentName } = properties || {}; const fields = - queryMode === 'ENTITY_DETAIL' ? dimensionItems?.concat(metrics || []) : dimensionItems; + queryMode === 'TAG_DETAIL' ? dimensionItems?.concat(metrics || []) : dimensionItems; return (
@@ -162,9 +162,7 @@ const ParseTip: React.FC = ({
)} - {['METRIC_GROUPBY', 'METRIC_ORDERBY', 'ENTITY_DETAIL', 'LLM_S2SQL'].includes( - queryMode! - ) && + {['METRIC_GROUPBY', 'METRIC_ORDERBY', 'TAG_DETAIL', 'LLM_S2SQL'].includes(queryMode!) && fields && fields.length > 0 && (
@@ -173,7 +171,7 @@ const ParseTip: React.FC = ({ ? nativeQuery ? '查询字段' : '下钻维度' - : queryMode === 'ENTITY_DETAIL' + : queryMode === 'TAG_DETAIL' ? '查询字段' : '下钻维度'} : @@ -187,7 +185,7 @@ const ParseTip: React.FC = ({
)} - {queryMode !== 'ENTITY_ID' && + {queryMode !== 'TAG_ID' && !dimensions?.some(item => item.bizName?.includes('_id')) && entityDimensions ?.filter(dimension => dimension.value != null) diff --git a/webapp/packages/chat-sdk/src/components/ChatItem/style.less b/webapp/packages/chat-sdk/src/components/ChatItem/style.less index dfe3fdd69..08a1ad47f 100644 --- a/webapp/packages/chat-sdk/src/components/ChatItem/style.less +++ b/webapp/packages/chat-sdk/src/components/ChatItem/style.less @@ -57,6 +57,10 @@ align-items: center; column-gap: 13px; margin-left: -10px; + + &.mobile { + flex-wrap: wrap; + } } &-content-option { @@ -358,6 +362,20 @@ overflow-wrap: break-word; user-select: text; } + &-toggle-expand-btn { + margin-left: 4px; + color: var(--text-color-fourth); + font-size: 12px; + cursor: pointer; + } + + &-step-item { + position: relative; + margin: 2px 0 2px 7px; + padding: 2px 0 8px 18px; + border-left: 1px solid var(--green); + overflow: auto; + } } .@{filter-item-prefix-cls} { diff --git a/webapp/packages/chat-sdk/src/components/ChatMsg/Message/index.tsx b/webapp/packages/chat-sdk/src/components/ChatMsg/Message/index.tsx index bfaeb7116..f5b4694d8 100644 --- a/webapp/packages/chat-sdk/src/components/ChatMsg/Message/index.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatMsg/Message/index.tsx @@ -45,7 +45,7 @@ const Message: React.FC = ({ e.stopPropagation(); }} > - {(queryMode === 'METRIC_ENTITY' || queryMode === 'ENTITY_DETAIL') && + {(queryMode === 'METRIC_TAG' || queryMode === 'TAG_DETAIL') && entityInfoList.length > 0 && (
@@ -64,7 +64,7 @@ const Message: React.FC = ({
)} - {queryMode === 'ENTITY_LIST_FILTER' && ( + {queryMode === 'TAG_LIST_FILTER' && (
diff --git a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricCard/style.less b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricCard/style.less index 98dca8df8..27821ded8 100644 --- a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricCard/style.less +++ b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricCard/style.less @@ -32,6 +32,7 @@ } &-filter-item { + margin-right: 4px; display: flex; align-items: center; } @@ -52,11 +53,16 @@ margin-top: 2px; } + &-query-tootip { + margin-left: 5px; + } + &-indicator { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; + margin: 12px 0; } &-date-range { diff --git a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MetricTrendChart.tsx b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MetricTrendChart.tsx index 2547c9e0f..ecd846073 100644 --- a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MetricTrendChart.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MetricTrendChart.tsx @@ -23,6 +23,7 @@ type Props = { resultList: any[]; triggerResize?: boolean; onApplyAuth?: (model: string) => void; + chartType?: string; }; const MetricTrendChart: React.FC = ({ @@ -33,6 +34,7 @@ const MetricTrendChart: React.FC = ({ resultList, triggerResize, onApplyAuth, + chartType, }) => { const chartRef = useRef(); const [instance, setInstance] = useState(); @@ -173,7 +175,7 @@ const MetricTrendChart: React.FC = ({ series: sortedGroupKeys.slice(0, 20).map((category, index) => { const data = groupData[category]; return { - type: 'line', + type: chartType, name: categoryColumnName ? category : metricField.name, symbol: 'circle', showSymbol: data.length === 1, @@ -197,7 +199,7 @@ const MetricTrendChart: React.FC = ({ if (metricField.authorized) { renderChart(); } - }, [resultList, metricField]); + }, [resultList, metricField, chartType]); useEffect(() => { if (triggerResize && instance) { diff --git a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MultiMetricsTrendChart.tsx b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MultiMetricsTrendChart.tsx index 42a6c035f..fabf3ed89 100644 --- a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MultiMetricsTrendChart.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/MultiMetricsTrendChart.tsx @@ -12,6 +12,7 @@ type Props = { metricFields: ColumnType[]; resultList: any[]; triggerResize?: boolean; + chartType?: string; }; const MultiMetricsTrendChart: React.FC = ({ @@ -19,6 +20,7 @@ const MultiMetricsTrendChart: React.FC = ({ metricFields, resultList, triggerResize, + chartType, }) => { const chartRef = useRef(); const [instance, setInstance] = useState(); @@ -110,7 +112,7 @@ const MultiMetricsTrendChart: React.FC = ({ }, series: metricFields.map((metricField, index) => { return { - type: 'line', + type: chartType, name: metricField.name, symbol: 'circle', showSymbol: resultList.length === 1, @@ -132,7 +134,7 @@ const MultiMetricsTrendChart: React.FC = ({ useEffect(() => { renderChart(); - }, [resultList]); + }, [resultList, chartType]); useEffect(() => { if (triggerResize && instance) { diff --git a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/index.tsx b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/index.tsx index b692da89f..fab650543 100644 --- a/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/index.tsx +++ b/webapp/packages/chat-sdk/src/components/ChatMsg/MetricTrend/index.tsx @@ -2,11 +2,23 @@ import { CLS_PREFIX } from '../../../common/constants'; import { DrillDownDimensionType, FieldType, MsgDataType } from '../../../common/type'; import { isMobile } from '../../../utils/utils'; import MetricTrendChart from './MetricTrendChart'; -import { Spin } from 'antd'; +import { Spin, Select } from 'antd'; import Table from '../Table'; import MetricInfo from './MetricInfo'; import DateOptions from '../DateOptions'; import MultiMetricsTrendChart from './MultiMetricsTrendChart'; +import { useState } from 'react'; + +const metricChartSelectOptions = [ + { + value: 'line', + label: '折线图', + }, + { + value: 'bar', + label: '柱状图', + }, +]; type Props = { data: MsgDataType; @@ -32,6 +44,7 @@ const MetricTrend: React.FC = ({ onSelectDateOption, }) => { const { queryColumns, queryResults, aggregateInfo, entityInfo, chatContext } = data; + const [chartType, setChartType] = useState('line'); const dateField: any = queryColumns?.find( (column: any) => column.showType === 'DATE' || column.type === 'DATE' @@ -69,11 +82,21 @@ const MetricTrend: React.FC = ({ drillDownDimension === undefined && ( )} - +
+ +
+