Skip to content

Commit 25c42fe

Browse files
committed
frontend: 修复清洗算子选中报错
1 parent c90b73d commit 25c42fe

File tree

4 files changed

+45
-43
lines changed

4 files changed

+45
-43
lines changed

frontend/src/hooks/useFetchData.ts

Lines changed: 28 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,13 @@
22
import { useState } from "react";
33
import { useDebouncedEffect } from "./useDebouncedEffect";
44
import Loading from "@/utils/loading";
5+
import { App } from "antd";
56

67
export default function useFetchData<T>(
78
fetchFunc: (params?: any) => Promise<any>,
89
mapDataFunc: (data: any) => T = (data) => data as T
910
) {
11+
const { message } = App.useApp();
1012
// 表格数据
1113
const [tableData, setTableData] = useState<T[]>([]);
1214
// 设置加载状态
@@ -57,37 +59,40 @@ export default function useFetchData<T>(
5759
const { keywords, filter, current, pageSize } = searchParams;
5860
Loading.show();
5961
setLoading(true);
60-
const { data } = await fetchFunc({
61-
...filter,
62-
keywords,
63-
type: getFirstOfArray(filter?.type) || undefined,
64-
status: getFirstOfArray(filter?.status) || undefined,
65-
tags: filter?.tags?.length ? filter.tags.join(",") : undefined,
66-
page: current - 1,
67-
size: pageSize,
68-
});
69-
setPagination((prev) => ({
70-
...prev,
71-
total: data?.totalElements || 0,
72-
}));
73-
let result = [];
74-
if (mapDataFunc) {
75-
result = data?.content.map(mapDataFunc) ?? [];
62+
try {
63+
const { data } = await fetchFunc({
64+
...filter,
65+
keywords,
66+
type: getFirstOfArray(filter?.type) || undefined,
67+
status: getFirstOfArray(filter?.status) || undefined,
68+
tags: filter?.tags?.length ? filter.tags.join(",") : undefined,
69+
page: current - 1,
70+
size: pageSize,
71+
});
72+
setPagination((prev) => ({
73+
...prev,
74+
total: data?.totalElements || 0,
75+
}));
76+
let result = [];
77+
if (mapDataFunc) {
78+
result = data?.content.map(mapDataFunc) ?? [];
79+
}
80+
setTableData(result);
81+
console.log(data, result.map(mapDataFunc));
82+
} catch (error) {
83+
message.error("数据获取失败,请稍后重试");
84+
} finally {
85+
Loading.hide();
86+
setLoading(false);
7687
}
77-
setTableData(result);
78-
Loading.hide();
79-
setLoading(false);
80-
console.log(data);
81-
82-
console.log(data, result.map(mapDataFunc));
8388
}
8489

8590
useDebouncedEffect(
8691
() => {
8792
fetchData();
8893
},
8994
[searchParams],
90-
500
95+
searchParams?.keywords ? 500 : 0
9196
);
9297

9398
return {

frontend/src/pages/DataCleansing/Create/CreateTask.tsx

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ export default function CleansingTaskCreate() {
1818
name: "",
1919
description: "",
2020
srcDatasetId: "",
21-
targetDatasetName: "",
22-
targetDatasetType: DatasetSubType.TEXT_DOCUMENT,
21+
destDatasetName: "",
22+
destDatasetType: DatasetSubType.TEXT_DOCUMENT,
2323
type: DatasetType.TEXT,
2424
});
2525

@@ -46,13 +46,11 @@ export default function CleansingTaskCreate() {
4646
switch (currentStep) {
4747
case 1: {
4848
const values = form.getFieldsValue();
49-
console.log(values);
50-
5149
return (
5250
values.name &&
5351
values.srcDatasetId &&
54-
values.targetDatasetName &&
55-
values.targetDatasetType
52+
values.destDatasetName &&
53+
values.destDatasetType
5654
);
5755
}
5856
case 2:

frontend/src/pages/DataCleansing/Create/components/CreateTaskStepOne.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ export default function CreateTaskStepOne({
2424
name: string;
2525
description: string;
2626
datasetId: string;
27-
targetDatasetName: string;
27+
destDatasetName: string;
2828
type: DatasetType;
29-
targetDatasetType: DatasetSubType;
29+
destDatasetType: DatasetSubType;
3030
};
3131
setTaskConfig: (config: any) => void;
3232
}) {
@@ -41,7 +41,7 @@ export default function CreateTaskStepOne({
4141
fetchDatasets();
4242
}, []);
4343

44-
const targetDatasetTypeOptions = useMemo(() => {
44+
const destDatasetTypeOptions = useMemo(() => {
4545
const options =
4646
datasetTypes.find((item) => item.value === taskConfig?.type)?.options ??
4747
[];
@@ -89,7 +89,7 @@ export default function CreateTaskStepOne({
8989
}))}
9090
/>
9191
</Form.Item>
92-
<Form.Item label="目标数据集名称" name="targetDatasetName" required>
92+
<Form.Item label="目标数据集名称" name="destDatasetName" required>
9393
<Input placeholder="输入目标数据集名称" />
9494
</Form.Item>
9595
<Form.Item
@@ -104,17 +104,17 @@ export default function CreateTaskStepOne({
104104
/>
105105
</Form.Item>
106106
<Form.Item
107-
name="targetDatasetType"
107+
name="destDatasetType"
108108
rules={[{ required: true, message: "请选择目标数据类型" }]}
109109
>
110110
<RadioCard
111-
options={targetDatasetTypeOptions}
112-
value={taskConfig.targetDatasetType}
111+
options={destDatasetTypeOptions}
112+
value={taskConfig.destDatasetType}
113113
onChange={(type) => {
114-
form.setFieldValue("targetDatasetType", type);
114+
form.setFieldValue("destDatasetType", type);
115115
setTaskConfig({
116116
...taskConfig,
117-
targetDatasetType: type as DatasetSubType,
117+
destDatasetType: type as DatasetSubType,
118118
});
119119
}}
120120
/>

frontend/src/pages/DataCleansing/Create/hooks/useOperatorOperations.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,11 @@ export function useOperatorOperations() {
8585
const toggleOperator = (operator: OperatorI) => {
8686
const exist = selectedOperators.find((op) => op.id === operator.id);
8787
if (exist) {
88-
setSelectedOperators(operators.filter((op) => op.id !== operator.id));
88+
setSelectedOperators(
89+
selectedOperators.filter((op) => op.id !== operator.id)
90+
);
8991
} else {
90-
const newOperator: OperatorI = {
91-
...operator,
92-
};
93-
setSelectedOperators([...selectedOperators, newOperator]);
92+
setSelectedOperators([...selectedOperators, { ...operator }]);
9493
}
9594
};
9695

0 commit comments

Comments
 (0)