perf: 全项目批量优化-16处load()改为轻量刷新

- plan.js: createPlanFinance/deletePlanItem/planInlineUpdate
- finance.js: createFinance/deleteFinanceItem
- drawer.js: deleteDrawerItem/submitComment/deleteActivity
- products.js: createResource/submitProductDrawer
- projects.js: duplicateProject/submitTaskForm
- proposals.js: ensureStandardProposals/submitStandardComment/submitProposal
- plan_expense.js: savePlanExpense/deletePlanExpItem(上版本已修)
- 所有保存/删除/编辑后改为/api/<resource>/list+单模块render
- 仅保留app.js初始加载和switchTenant切换工作台的全量load()
- 版本号 v1.0.0.38
This commit is contained in:
mac
2026-07-09 16:20:21 +08:00
parent 296917456c
commit c26cbb3cf4
7 changed files with 30 additions and 17 deletions

View File

@@ -226,7 +226,7 @@ window.duplicateProject = async () => {
});
}
toast("已创建副本", "success");
await load();
try { state.data.operations = await api("/api/operations/list?tenant=" + encodeURIComponent(state.tenant)); renderProjects(); } catch(e) {}
} catch (error) {
toast("创建副本失败:" + error.message, "error");
}
@@ -463,7 +463,7 @@ window.submitTaskForm = async (event, projectId) => {
const result = await api("/api/tasks", { method: "POST", body: JSON.stringify({ data }) });
if (result.id && data.task) logActivity("task", result.id, "创建了任务「" + data.task + "」");
closeTaskDrawer(projectId);
await load();
try { state.data.tasks = await api("/api/tasks/list?tenant=" + encodeURIComponent(state.tenant)); } catch(e) {}
}
} catch (error) {
toast("保存失败:" + error.message, "error");