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

@@ -945,7 +945,8 @@ window.createPlanFinance = async (event) => {
document.querySelector("#plan_pf-id-input").value = "";
document.querySelector("#planModalTitle").textContent = "新增项目财务";
closePlanModal();
await load();
state.data.planFinances = await api("/api/planFinances/list?tenant=" + encodeURIComponent(state.tenant));
renderPlan();
} catch (error) {
toast("刷新失败:" + error.message, "error");
}
@@ -960,7 +961,8 @@ window.deletePlanItem = async () => {
try {
await api(`/api/planFinances/${pfId}`, { method: "DELETE" });
closePlanModal();
await load();
state.data.planFinances = await api("/api/planFinances/list?tenant=" + encodeURIComponent(state.tenant));
renderPlan();
toast("已删除", "success");
} catch (error) {
toast("删除失败:" + error.message, "error");
@@ -1285,7 +1287,8 @@ function planInlineSelect(name, pfId, field, currentVal, options) {
window.planInlineUpdate = async (pfId, field, value) => {
try {
await api("/api/planFinances/" + pfId, { method: "PUT", body: JSON.stringify({ data: { [field]: value } }) });
await load();
state.data.planFinances = await api("/api/planFinances/list?tenant=" + encodeURIComponent(state.tenant));
renderPlan();
toast("已更新", "success");
} catch (error) {
toast("更新失败:" + error.message, "error");