Skip to content

Commit ebc3c2c

Browse files
authored
Merge pull request #19 from chenghh-9609/main
Merge pull request #1 from ModelEngine-Group/main
2 parents cc072bb + 05dc690 commit ebc3c2c

File tree

6 files changed

+30
-23
lines changed

6 files changed

+30
-23
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ export default function EditDataset({
2828
tags: [],
2929
});
3030
const fetchDataset = async () => {
31+
if (!open) return;
3132
// 如果有id,说明是编辑模式
3233
if (data && data.id) {
3334
const { data: newData } = await queryDatasetByIdUsingGet(data.id);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ export default function DatasetDetail() {
237237
data={dataset}
238238
open={showUploadDialog}
239239
onClose={() => setShowUploadDialog(false)}
240-
onRefresh={handleRefresh}
240+
updateEvent="update:dataset"
241241
/>
242242
<EditDataset
243243
data={dataset}

frontend/src/pages/DataManagement/Detail/components/ImportConfiguration.tsx

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,4 @@
1-
import {
2-
Select,
3-
Input,
4-
Form,
5-
Radio,
6-
Modal,
7-
Button,
8-
App,
9-
UploadFile,
10-
} from "antd";
1+
import { Select, Input, Form, Radio, Modal, Button, UploadFile } from "antd";
112
import { InboxOutlined } from "@ant-design/icons";
123
import { dataSourceOptions } from "../../dataset.const";
134
import { Dataset, DataSource } from "../../dataset.model";
@@ -21,14 +12,13 @@ export default function ImportConfiguration({
2112
data,
2213
open,
2314
onClose,
24-
onRefresh,
15+
updateEvent = "update:dataset",
2516
}: {
26-
data?: Dataset;
17+
data: Dataset | null;
2718
open: boolean;
2819
onClose: () => void;
29-
onRefresh?: (showMessage?: boolean) => void;
20+
updateEvent?: string;
3021
}) {
31-
const { message } = App.useApp();
3222
const [form] = Form.useForm();
3323
const [collectionOptions, setCollectionOptions] = useState([]);
3424
const [importConfig, setImportConfig] = useState<any>({
@@ -57,7 +47,11 @@ export default function ImportConfiguration({
5747
});
5848
window.dispatchEvent(
5949
new CustomEvent("upload:dataset", {
60-
detail: { dataset, files: fileSliceList },
50+
detail: {
51+
dataset,
52+
files: fileSliceList,
53+
updateEvent,
54+
},
6155
})
6256
);
6357
resetFiles();
@@ -73,6 +67,7 @@ export default function ImportConfiguration({
7367
};
7468

7569
const fetchCollectionTasks = async () => {
70+
if (importConfig.source !== DataSource.COLLECTION) return;
7671
try {
7772
const res = await queryTasksUsingGet({ page: 0, size: 100 });
7873
const options = res.data.content.map((task: any) => ({
@@ -93,15 +88,14 @@ export default function ImportConfiguration({
9388
};
9489

9590
const handleImportData = async () => {
91+
if (!data) return;
9692
if (importConfig.source === DataSource.UPLOAD) {
9793
await handleUpload(data);
9894
} else if (importConfig.source === DataSource.COLLECTION) {
99-
await updateDatasetByIdUsingPut(data?.id!, {
95+
await updateDatasetByIdUsingPut(data.id, {
10096
...importConfig,
10197
});
10298
}
103-
message.success("数据已更新");
104-
onRefresh?.(false);
10599
onClose();
106100
};
107101

@@ -110,7 +104,7 @@ export default function ImportConfiguration({
110104
resetState();
111105
fetchCollectionTasks();
112106
}
113-
}, [open]);
107+
}, [open, importConfig.source]);
114108

115109
return (
116110
<Modal

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

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,16 @@ export default function DatasetManagementPage() {
320320
</Card>
321321
);
322322

323+
useEffect(() => {
324+
const refresh = () => {
325+
handleRefresh(true);
326+
};
327+
window.addEventListener("update:datasets", refresh);
328+
return () => {
329+
window.removeEventListener("update:datasets", refresh);
330+
};
331+
}, []);
332+
323333
return (
324334
<div className="gap-4 h-full flex flex-col">
325335
{/* Header */}
@@ -389,7 +399,7 @@ export default function DatasetManagementPage() {
389399
setCurrentDataset(null);
390400
setShowUploadDialog(false);
391401
}}
392-
onRefresh={handleRefresh}
402+
updateEvent="update:datasets"
393403
/>
394404
</div>
395405
);

frontend/src/pages/DataManagement/dataset.model.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,4 +97,5 @@ export interface TaskItem {
9797
isCancel?: boolean;
9898
controller: AbortController;
9999
cancelFn?: () => void;
100+
updateEvent?: string;
100101
}

frontend/src/pages/Layout/TaskUpload.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ export default function TaskUpload() {
2424
percent: 0,
2525
reqId: -1,
2626
controller,
27+
updateEvent: detail.updateEvent || "update:dataset",
2728
};
2829
taskListRef.current = [task, ...taskListRef.current];
2930

@@ -47,7 +48,7 @@ export default function TaskUpload() {
4748
if (task.isCancel && task.cancelFn) {
4849
task.cancelFn();
4950
}
50-
window.dispatchEvent(new Event("update:dataset"));
51+
window.dispatchEvent(new Event(task.updateEvent || "update:dataset"));
5152
window.dispatchEvent(
5253
new CustomEvent("show:task-popover", { detail: { show: false } })
5354
);
@@ -111,7 +112,7 @@ export default function TaskUpload() {
111112
cancelFn: () => {
112113
task.controller.abort();
113114
cancelUploadUsingPut(reqId);
114-
window.dispatchEvent(new Event("update:dataset"));
115+
window.dispatchEvent(new Event(task.updateEvent || "update:dataset"));
115116
},
116117
};
117118
updateTaskList(newTask);

0 commit comments

Comments
 (0)