fix: roles page_size 200->100, add try/catch in loadOptions

This commit is contained in:
Dev Agent
2026-04-24 12:45:15 +00:00
parent a5ed25f1ed
commit c59b6ad6fe
+19 -7
View File
@@ -50,13 +50,25 @@ const Users: React.FC = () => {
};
const loadOptions = async () => {
const [orgRes, roleRes]: any = await Promise.all([
orgApi.getTree(),
roleApi.list({ page_size: 200 }),
]);
const flat = flattenOrgs(orgRes.data || []);
setOrgs(flat);
setRoles(roleRes.data || []);
try {
const [orgRes, roleRes]: any = await Promise.all([
orgApi.getTree(),
roleApi.list({ page_size: 100 }),
]);
const flat = flattenOrgs(orgRes.data || []);
setOrgs(flat);
setRoles(roleRes.data || []);
} catch (e) {
// 分别加载,防止单个失败影响另一个
try {
const orgRes: any = await orgApi.getTree();
setOrgs(flattenOrgs(orgRes.data || []));
} catch {}
try {
const roleRes: any = await roleApi.list({ page_size: 100 });
setRoles(roleRes.data || []);
} catch {}
}
};
const flattenOrgs = (nodes: any[], result: any[] = []): any[] => {