aidop-func-code-menu.mdc 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. ---
  2. description: Ai-DOP 新功能菜单须登记 FUNC-Sn-nnn 编号并按方案 A 展示(侧栏短标+映射表,不改 Title)
  3. alwaysApply: true
  4. ---
  5. # Ai-DOP 功能菜单编号(FUNC)与导航展示
  6. 凡新增或调整 **Ai-DOP 业务叶子菜单**(`sys_menu` 种子、前端隐藏路由、智慧运营看板子项等),须同步登记 **FUNC 编号**,展示遵循 **方案 A**(已实现,勿另起一套)。
  7. ## 编号格式
  8. | 类型 | 格式 | 示例 |
  9. |------|------|------|
  10. | 功能设计 | `FUNC-Sn-nnn` | `FUNC-S1-003` |
  11. | 模块 | `n` = 0–9 | S0 运营建模 … S9 运营指标 |
  12. | 序号 | `nnn` = 三位递增 | 同模块内不重用、不重排已有号 |
  13. 业务需求 `REQ-Sn-nnn`、测试 `TC-Sn-nnn` 与三联对照表对齐,见 [`doc/requirements/README.md`](doc/requirements/README.md)。
  14. ## 新菜单必须做的登记(缺一不可)
  15. 1. **`Web/src/constants/aidopFuncCodes.ts`**
  16. 在 `FUNC_DEFS` 增加一条:`code`、`name`(与功能设计/菜单语义一致)、`paths`(绝对 path)、`names`(`route.name`,有则填)。
  17. 2. **有需求文档的模块(S0–S4 等)**
  18. 同步更新对应 `doc/requirements/Sn-*/` 三联对照表 / 功能设计说明(**先查已有编号,禁止擅自改号**)。
  19. 3. **尚无三联文档的模块(S5–S9 等)**
  20. 在该模块已用最大序号 **+1** 扩展(当前实现见 `aidopFuncCodes.ts`);后续补文档时**沿用已分配 FUNC**,不整体重排。
  21. 4. **`sys_menu` 种子**(`Admin.NET.Plugin.AiDOP/SeedData/SysMenuSeedData.cs`)
  22. `Title` **只写业务短名**;`Remark` 可写业务说明,**不要把** `FUNC-Sn-nnn` 写入 `Title`。
  23. 登录后 `patchAidopMenuTitles` → `patchAidopFuncCodes` 会自动注入 `meta.funcCode/funcName/funcSeq`,侧栏/搜索/面包屑/`AidopDemoShell` 无需再改展示逻辑。
  24. ## 方案 A 展示(禁止加长 Title)
  25. | 位置 | 做法 |
  26. |------|------|
  27. | 侧栏叶子 | 业务名 + 短标 `[nnn]`;悬停显示 `FUNC-Sn-nnn 功能名` |
  28. | 目录节点 | **不加**编号 |
  29. | 面包屑末级 / 页头 | 完整 `FUNC-Sn-nnn`(`AidopDemoShell` 副标题) |
  30. | 禁止 | `Title = "FUNC-S1-003 订单评审"` 或把编号拼进侧栏主文案 |
  31. ## 特殊项
  32. - **同一页面多入口**(如看板在模块目录与智慧运营看板各一条):同一 `FUNC` 可挂多个 `paths`/`names`。
  33. - **隐藏路由**(表单页、详情页、`isHide`):仍须登记,供标签页与面包屑追溯。
  34. - **动态 path**(如 `/aidop/s8/exceptions/:id`):登记 path 模板 + `route.name`。
  35. - **跨模块平台项**(智慧诊断、数据中台):暂归入 **S9 扩展段**(`060+` / `010+`),新增时延续该段序号。
  36. ## 自检清单(交付前)
  37. - [ ] `aidopFuncCodes.ts` 已含新 path/name
  38. - [ ] 未修改已有 FUNC 编号
  39. - [ ] `sys_menu.Title` 仍为短业务名
  40. - [ ] 有文档模块已更新三联/功能设计(若本次属正式功能交付)
  41. - [ ] 未在 `aidopMenuDisplay.ts` 用 `meta.title` 拼接 FUNC 全文(映射表为唯一数据源)