Skip to content

Commit 4e0f476

Browse files
committed
fixbug: 数据集详情添加编辑功能
1 parent 960d206 commit 4e0f476

File tree

4 files changed

+27
-19
lines changed

4 files changed

+27
-19
lines changed

frontend/src/components/DetailHeader.tsx

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,7 @@ function DetailHeader<T>({
7171
{data?.tags && (
7272
<div className="flex flex-wrap mb-2">
7373
{data?.tags?.map((tag) => (
74-
<Tag
75-
key={tag.id}
76-
className="mr-1"
77-
style={{ background: tag?.color }}
78-
>
74+
<Tag key={tag.id} className="mr-1">
7975
{tag.name}
8076
</Tag>
8177
))}

frontend/src/pages/DataManagement/Create/EditDataset.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@ export default function EditDataset({
1111
open,
1212
data,
1313
onClose,
14+
onRefresh,
1415
}: {
1516
open: boolean;
1617
data: Dataset | null;
1718
onClose: () => void;
19+
onRefresh?: () => void;
1820
}) {
1921
const [form] = Form.useForm();
2022
const { message } = App.useApp();
@@ -58,6 +60,7 @@ export default function EditDataset({
5860
await updateDatasetByIdUsingPut(data?.id, params);
5961
onClose();
6062
message.success("数据集更新成功");
63+
onRefresh?.();
6164
} catch (error) {
6265
console.error(error);
6366
message.error("数据集更新失败,请重试");

frontend/src/pages/DataManagement/Detail/DatasetDetail.tsx

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useEffect, useState } from "react";
1+
import { useEffect, useMemo, useState } from "react";
22
import { Breadcrumb, Modal, App, Tabs } from "antd";
33
import {
44
ReloadOutlined,
@@ -12,7 +12,7 @@ import {
1212
import DetailHeader from "@/components/DetailHeader";
1313
import { mapDataset, datasetTypeMap } from "../dataset.const";
1414
import type { Dataset } from "@/pages/DataManagement/dataset.model";
15-
import { Link, useNavigate, useParams } from "react-router";
15+
import { Link, useParams } from "react-router";
1616
import { useFilesOperation, useImportFile } from "../hooks";
1717
import {
1818
createDatasetTagUsingPost,
@@ -25,15 +25,7 @@ import DataQuality from "./components/DataQuality";
2525
import DataLineageFlow from "./components/DataLineageFlow";
2626
import Overview from "./components/Overview";
2727
import { Activity, Clock, File, FileType } from "lucide-react";
28-
29-
const navigateItems = [
30-
{
31-
title: <Link to="/data/management">数据管理</Link>,
32-
},
33-
{
34-
title: "数据集详情",
35-
},
36-
];
28+
import EditDataset from "../Create/EditDataset";
3729

3830
const tabList = [
3931
{
@@ -51,17 +43,27 @@ const tabList = [
5143
];
5244

5345
export default function DatasetDetail() {
54-
const navigate = useNavigate();
5546
const { id } = useParams(); // 获取动态路由参数
5647
const [activeTab, setActiveTab] = useState("overview");
5748
const { message } = App.useApp();
49+
const [showEditDialog, setShowEditDialog] = useState(false);
5850

5951
const [dataset, setDataset] = useState<Dataset>({} as Dataset);
6052
const { importFileRender, handleUpload } = useImportFile();
6153
const filesOperation = useFilesOperation(dataset);
6254

6355
const [showUploadDialog, setShowUploadDialog] = useState(false);
64-
56+
const navigateItems = useMemo(
57+
() => [
58+
{
59+
title: <Link to="/data/management">数据管理</Link>,
60+
},
61+
{
62+
title: dataset.name || "数据集详情",
63+
},
64+
],
65+
[dataset]
66+
);
6567
const fetchDataset = async () => {
6668
const { data } = await queryDatasetByIdUsingGet(id as unknown as number);
6769
setDataset(mapDataset(data));
@@ -130,7 +132,7 @@ export default function DatasetDetail() {
130132
label: "编辑",
131133
icon: <EditOutlined />,
132134
onClick: () => {
133-
navigate(`/data/management/create/${dataset.id}`);
135+
setShowEditDialog(true);
134136
},
135137
},
136138
{
@@ -218,6 +220,12 @@ export default function DatasetDetail() {
218220
>
219221
{importFileRender()}
220222
</Modal>
223+
<EditDataset
224+
data={dataset}
225+
open={showEditDialog}
226+
onClose={() => setShowEditDialog(false)}
227+
onRefresh={handleRefresh}
228+
/>
221229
</div>
222230
);
223231
}

frontend/src/pages/DataManagement/Home/DataManagement.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,7 @@ export default function DatasetManagementPage() {
313313
open={editDatasetOpen}
314314
data={currentDataset}
315315
onClose={() => setEditDatasetOpen(false)}
316+
onRefresh={fetchData}
316317
/>
317318
</div>
318319
);

0 commit comments

Comments
 (0)