diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricAddClass.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricAddClass.tsx index 83c505c11..30fd4bb9c 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricAddClass.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricAddClass.tsx @@ -67,7 +67,13 @@ const MetricAddClass: React.FC = ({ ids = [], createModalVisible, onCance > 删 除 - diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricBasicInfo.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricBasicInfo.tsx index cb7fe05b2..c163446bc 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricBasicInfo.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricBasicInfo.tsx @@ -64,6 +64,12 @@ const MetricBasicInformation: React.FC = ({ metircData }) => { dataIndex: 'agg', title: '聚合函数', width: 80, + render: (_: string) => { + if (!_) { + return '--'; + } + return _; + }, }, ]; diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrend.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrend.tsx index 92e17be6a..d2f983027 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrend.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrend.tsx @@ -189,9 +189,9 @@ const TrendChart: React.FC = ({ (item: any) => `
${ item.marker - } ${ + } ${ item.seriesName - }${ + }${ item.value === '' ? '-' : isPer diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrendSection.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrendSection.tsx index 992af900c..1d20bc34b 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrendSection.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/Metric/components/MetricTrendSection.tsx @@ -13,7 +13,7 @@ import { ColumnConfig } from '../data'; import dayjs from 'dayjs'; import { ISemantic } from '../../data'; import { DateFieldMap } from '@/pages/SemanticModel/constant'; -import { ProCard } from '@ant-design/pro-components'; +import { ProCard } from '@ant-design/pro-components'; import styles from '../style.less'; @@ -100,7 +100,7 @@ const MetricTrendSection: React.FC = ({ setMetricTrendLoading(false); if (code === 200) { const { resultList, columns, queryAuthorization } = data; - setMetricTrendData(resultList); + setTableColumnConfig(columns); const message = queryAuthorization?.message; if (message) { @@ -112,6 +112,22 @@ const MetricTrendSection: React.FC = ({ if (targetConfig) { setMetricColumnConfig(targetConfig); } + + const dateConfig = columns.find((item: ISemantic.IMetricTrendColumn) => { + return item.type === 'DATE'; + }); + + if (dateConfig) { + const sortDateField = dateConfig.nameEn; + setMetricTrendData( + [...resultList].sort((a, b) => { + return a[sortDateField].localeCompare(b[sortDateField]); + }), + ); + } else { + setMetricTrendData(resultList); + } + setDownloadBtnDisabledState(false); if (dimensionGroup[dimensionGroup.length - 1]) { setGroupByDimensionFieldName(dimensionGroup[dimensionGroup.length - 1]); diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/Database/DatabaseSettingModal.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/Database/DatabaseSettingModal.tsx index 301cafa7c..8013de6b7 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/Database/DatabaseSettingModal.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/Database/DatabaseSettingModal.tsx @@ -67,7 +67,6 @@ const DatabaseSettingModal: React.FC = ({ { onSubmit?.(); diff --git a/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/ProjectInfoForm.tsx b/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/DomainInfoForm.tsx similarity index 66% rename from webapp/packages/supersonic-fe/src/pages/SemanticModel/components/ProjectInfoForm.tsx rename to webapp/packages/supersonic-fe/src/pages/SemanticModel/components/DomainInfoForm.tsx index d20f06a98..c2b78d3dc 100644 --- a/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/ProjectInfoForm.tsx +++ b/webapp/packages/supersonic-fe/src/pages/SemanticModel/components/DomainInfoForm.tsx @@ -4,17 +4,16 @@ import styles from './style.less'; import { useMounted } from '@/hooks/useMounted'; import { message } from 'antd'; import { formLayout } from '@/components/FormHelper/utils'; -import { EnumTransModelType } from '@/enum'; const FormItem = Form.Item; -export type ProjectInfoFormProps = { +export type Props = { basicInfo: any; onCancel: () => void; onSubmit: (values: any) => Promise; }; -const ProjectInfoForm: React.FC = (props) => { +const DomaintInfoForm: React.FC = (props) => { const { basicInfo, onSubmit: handleUpdate, onCancel } = props; const { type, modelType } = basicInfo; @@ -48,23 +47,13 @@ const ProjectInfoForm: React.FC = (props) => { ); - const titleRender = () => { - let str = EnumTransModelType[modelType]; - if (type === 'top') { - str += '顶级'; - } else if (modelType === 'add') { - str += '子'; - } - str += '主题域'; - return str; - }; + const infoName = type === 'top' ? '主题域' : '模型集'; return ( = (props) => { className={styles.form} > {type !== 'top' && modelType === 'add' && ( - - + + )} - + -