// Module configuration screen — KPI process tree on left, dense form on right. // Form fields mirror the structural pattern in 模块 1.png but with original copy. const moduleSections = [ { title: "估价管理流程", processes: [ { id: "01", code: "01/04", label: "【新增】新报价单", active: true }, { id: "02", code: "02/04", label: "审核报价单->客户确认->二次确认" }, { id: "03", code: "03/04", label: "客户确认->二次确认" }, { id: "04", code: "04/04", label: "报价单->销售订单" }, { id: "05", code: "04/04", label: "报价单->转拼版单" }, { id: "06", code: "04/07", label: "主管审核报价单" }, { id: "07", code: "05/07", label: "业务确认报价单" }, ], }, { title: "订单生产流程", collapsed: true }, { title: "自动拼版流程", collapsed: true }, { title: "销售送货流程", collapsed: true }, { title: "物料采购流程", collapsed: true }, { title: "物料领用流程", collapsed: true }, { title: "发外加工流程", collapsed: true }, { title: "质量管理流程", collapsed: true }, { title: "财务收付款流程", collapsed: true }, ]; const ModuleScreen = () => { const [mode, setMode] = React.useState("view"); // 'view' | 'edit' const [activeProcess] = React.useState("01"); const initial = { displayCategory: "印刷业务", deptEn: "Pricing Personnel", deptCn: "报价员", permissionVisible: true, seq: "1", saveProc: "Sp_Check_sQtt", storageUrl: "/indexPage/quotationPackTl...", showOpt: false, nodes: "-1752556899000998290E", deptId: "", flowId: "20250303094458291296...", uniqueId: "10125124011501607650...", flowEnName: "", flowReqName: "", titleCn: "01/04【新增】新报价单", mobileLogo: "", nameEn: "Quotation Document", nameNotice: "常规产品报价单据", showCategory: "待处理", deptManager: "报价人员", storeProc: "Sp_Calc_sQtt", quickShow: "", addId: "", modType: "quotation/quotation/quotati", calcProc: "Sp_Quotation_CalcDataPac", saveAfterProc: "Sp_beforeSave_sQtt", parent: "1752562484000281572E", }; const [form, setForm] = React.useState(initial); const set = (k, v) => setForm((s) => ({ ...s, [k]: v })); const startEdit = () => setMode("edit"); const save = () => { setMode("view"); }; const cancel = () => { setForm(initial); setMode("view"); }; const disabled = mode === "view"; return (
{/* Light blue toolbar */}
} primary disabled={mode === "edit"}>添加节点 } primary disabled={mode === "edit"}>添加子节点 } primary disabled={mode === "edit"} onClick={startEdit}>修 改 } primary disabled={mode === "edit"}>复制节点 } success disabled={mode !== "edit"} onClick={save}>保 存 } disabled={mode !== "edit"} onClick={cancel}>取 消 } danger disabled={mode === "edit"}>删除节点
} primary>生成监听器单
{/* Body: form only (tree lives in main sidebar) */}
{/* Form panel */}
set("storeProc", v)} disabled={disabled} mono /> set("modType", v)} disabled={disabled} mono /> set("deptEn", v)} disabled={disabled} /> set("deptId", v)} disabled={disabled} mono /> set("addId", v)} disabled={disabled} mono />
set("permissionVisible", v)} disabled={disabled} />
set("flowReqName", v)} disabled={disabled} /> set("seq", v)} disabled={disabled} required /> set("calcProc", v)} disabled={disabled} mono /> set("saveAfterProc", v)} disabled={disabled} mono /> set("saveProc", v)} disabled={disabled} mono /> set("titleCn", v)} disabled={disabled} /> set("deleteProc", v)} disabled={disabled} mono /> set("storageUrl", v)} disabled={disabled} mono /> set("mobileLogo", v)} disabled={disabled} /> set("nameEn", v)} disabled={disabled} /> set("nameNotice", v)} disabled={disabled} />
set("showOpt", v)} disabled={disabled} />
set("showCategory", v)} disabled={disabled} options={["待处理", "已处理", "全部"]} />