diff --git a/src/main/java/com/yunhai/flowcenter/controller/api/FlowBaseController.java b/src/main/java/com/yunhai/flowcenter/controller/api/FlowBaseController.java
index 3c9d473..475e3d7 100644
--- a/src/main/java/com/yunhai/flowcenter/controller/api/FlowBaseController.java
+++ b/src/main/java/com/yunhai/flowcenter/controller/api/FlowBaseController.java
@@ -1,49 +1,92 @@
package com.yunhai.flowcenter.controller.api;
+import com.yunhai.platform.openapi.client.YschBaseOpenApi;
+import com.yunhai.platform.utils.model.BoaModule;
import com.yunhai.platform.utils.model.BoaUser;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
-import java.util.HashMap;
+import java.util.Collections;
+import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
- * 前端壳基础端点(对齐 UserBase BaseController 的 /api/base/* 形态):
- * GetUserInfo 返回当前登录人;GetUserMod 返回本地路由菜单——flow-center 是独立登录态应用,
- * 菜单不走 UserBase app_module 下发(概览 §9.4),modId 为本应用内部约定。
+ * 前端壳基础端点(对齐 UserBase BaseController 的 /api/base/* 形态):GetUserInfo / GetUserMod。
+ *
GetUserMod 与其他子应用(Notice / svc-hall / 事项库 Cms)统一走平台下发:经 SDK
+ * {@code YschBaseOpenApi.getUserModule} 取当前用户在本应用({@code yh.open.app-key=100019})下的
+ * 已授权模块树,层级由平台契约 {@code BoaModule.children} 承载,本侧仅映射为前端 layout
+ * 期望的字段形状({@code page/modId/children})。
+ *
设计概览 §9.4「菜单为本地路由约定、不进 app_module」的口径自 2026-09-15 起作废,改为平台统一下发。
*/
@RestController
public class FlowBaseController {
- /** 左侧菜单(本地路由,顺序即展示顺序) */
- private static final String[][] MENUS = {
- {"100", "工作台", "/workbench"},
- {"101", "我的办件", "/my"},
- {"102", "办件记录", "/admin/instances"},
- {"103", "流程定义", "/admin/defs"},
- {"104", "办理人映射", "/admin/maps"},
- {"105", "回调管理", "/admin/callbacks"},
- };
-
@GetMapping("/api/base/GetUserInfo")
public BoaUser getUserInfo(BoaUser authUserWithDept) {
return authUserWithDept;
}
+ /**
+ * 当前用户已授权模块树(左侧菜单)。
+ *
依赖 UserBase 侧数据:本应用的 {@code app_module} 行({@code path} 须逐字对上
+ * front 路由,见 router/routes.ts)+ 角色/组授权,二者缺一即返回空菜单。
+ * 这里不保留本地 MENUS 兜底——静默回退会把「平台未配模块/未授权」伪装成正常,
+ * 与其他三个子应用口径一致,配置缺失应表现为空菜单并被发现。
+ */
@GetMapping("/api/base/GetUserMod")
- public List