| New file |
| | |
| | | --- |
| | | name: consult-rsf-admin |
| | | description: Use when modifying or creating pages, buttons, forms, tables, or interaction behavior in `rsf-design` during the `wms-master` frontend migration period. Before implementing in the new frontend, inspect the corresponding legacy implementation in `rsf-admin` to confirm page flow, button behavior, field semantics, permissions, and API usage instead of guessing. |
| | | --- |
| | | |
| | | # Consult RSF Admin First |
| | | |
| | | 在 `wms-master` 的新旧前端过渡期,`rsf-design` 是当前新前端,`rsf-admin` 是旧前端行为基线。 |
| | | |
| | | 核心要求: |
| | | - 修改 `rsf-design` 时,先查 `rsf-admin` 对应页面或按钮行为,再编码。 |
| | | - 不要凭命名、UI 习惯或通用后台模板经验去猜旧行为。 |
| | | - 如果新前端要故意偏离旧前端行为,先在回复里明确指出差异和理由。 |
| | | |
| | | ## 项目事实 |
| | | |
| | | - 新前端目录:`rsf-design` |
| | | - 旧前端目录:`rsf-admin` |
| | | - 新前端页面主目录:`rsf-design/src/views` |
| | | - 新前端接口目录:`rsf-design/src/api` |
| | | - 新前端路由目录:`rsf-design/src/router` |
| | | - 旧前端页面主目录:`rsf-admin/src/page` |
| | | - 旧前端共享页面组件目录:`rsf-admin/src/page/components` |
| | | - 旧前端接口目录:`rsf-admin/src/api` |
| | | |
| | | ## 工作流程 |
| | | |
| | | ### 1. 先定位新前端目标 |
| | | |
| | | 先确认当前改动落在: |
| | | - 哪个 `rsf-design/src/views/**` 页面 |
| | | - 哪个 `rsf-design/src/api/**` 接口文件 |
| | | - 哪个按钮、表单项、表格列、弹窗或页面入口 |
| | | |
| | | ### 2. 再定位旧前端对应实现 |
| | | |
| | | 优先按以下位置查找: |
| | | - `rsf-admin/src/page/**` |
| | | - `rsf-admin/src/page/components/**` |
| | | - `rsf-admin/src/api/**` |
| | | - 必要时补查 `rsf-admin/src/layout/**`、`rsf-admin/src/config/**` |
| | | |
| | | 按钮或批量操作优先额外检查这些旧共享组件,很多行为封装在这里而不在页面文件里: |
| | | - `ConfirmButton` |
| | | - `BulkUpdateButton` |
| | | - `ImportButton` |
| | | - `ListExportPrintButton` |
| | | - `BatchButton` |
| | | - `BatchModal` |
| | | |
| | | 优先匹配这些信息: |
| | | - 资源名 |
| | | - 页面标题 |
| | | - 按钮文案 |
| | | - API 名称或 URL 片段 |
| | | - 字段名 |
| | | - 菜单名 |
| | | |
| | | ### 3. 优先使用命名映射思路,不要只搜一个名字 |
| | | |
| | | 新旧前端同一业务常常只是命名风格不同: |
| | | - 新前端常见 `kebab-case`:`wait-pakin`、`task-path-template-node` |
| | | - 旧前端常见 `camelCase`:`waitPakin`、`taskPathTemplateNode` |
| | | |
| | | 搜索对应页面时,至少同时考虑: |
| | | - `kebab-case` |
| | | - `camelCase` |
| | | - 去掉分组目录后的资源名 |
| | | - 中文按钮文案或页面标题 |
| | | - API 文件名 |
| | | |
| | | 常见路径映射规律: |
| | | - `rsf-design/src/views/basic-info/<kebab-name>` 对应 `rsf-admin/src/page/basicInfo/<camelName>` 或单独资源目录 |
| | | - `rsf-design/src/views/orders/<kebab-name>` 对应 `rsf-admin/src/page/orders/<camelName>` |
| | | - `rsf-design/src/views/system/<kebab-name>` 对应 `rsf-admin/src/page/system/<camelName>` |
| | | - `rsf-design/src/views/work/<kebab-name>` 对应 `rsf-admin/src/page/work/<camelName>` |
| | | - `rsf-design/src/views/statistics/<kebab-name>` 对应 `rsf-admin/src/page/statistics/<camelName>` |
| | | |
| | | ## 核对清单 |
| | | |
| | | 实现前至少核对下面这些点,不要只看页面长得像不像: |
| | | - 页面入口和跳转链路 |
| | | - 查询区字段、默认值、重置逻辑 |
| | | - 表格列顺序、显示文案、格式化规则 |
| | | - 按钮是否显示 |
| | | - 按钮何时禁用、何时可点 |
| | | - 点击后的动作是弹窗、抽屉、跳页还是二次确认 |
| | | - 批量操作、导入、导出、打印、复制等附加动作 |
| | | - 状态流转相关按钮的前置条件 |
| | | - 权限、角色、租户或仓库维度限制 |
| | | - API 参数名、空值处理、列表刷新时机 |
| | | - 成功/失败提示文案和交互反馈 |
| | | |
| | | ## 不明确时的处理 |
| | | |
| | | 如果没能直接找到旧实现,不要硬做结论。按这个顺序继续查: |
| | | 1. 在 `rsf-admin/src/page/**` 里搜资源名的 `camelCase` 和中文名称 |
| | | 2. 在 `rsf-admin/src/page/components/**` 里搜按钮文案或通用操作组件 |
| | | 3. 在 `rsf-admin/src/api/**` 里搜接口名、URL 片段、字段名 |
| | | 4. 对照 `rsf-design/src/api/**` 和 `rsf-admin/src/api/**` 的接口命名判断资源归属 |
| | | |
| | | 如果仍然无法确认: |
| | | - 在回复里明确说明“旧前端未找到足够证据” |
| | | - 列出已检查的位置 |
| | | - 只实现已确认的部分,或者先向用户确认差异 |
| | | |
| | | ## 输出要求 |
| | | |
| | | 当你基于旧前端完成 `rsf-design` 改动时,在说明里简要交代: |
| | | - 对照了哪些旧前端文件 |
| | | - 本次保留了哪些旧行为 |
| | | - 哪些地方是有意与旧前端不同 |
| | | |
| | | ## 推荐检索方式 |
| | | |
| | | 优先使用快速文本检索工具;如果环境里 `rg` 不可用,就用 PowerShell 检索。 |
| | | |
| | | 示例思路: |
| | | ```powershell |
| | | Get-ChildItem 'rsf-admin/src/page' -Recurse -File | |
| | | Select-String -Pattern 'waitPakin|待配|出库|调拨' |
| | | ``` |
| | | |
| | | ```powershell |
| | | Get-ChildItem 'rsf-admin/src/page/components' -Recurse -File | |
| | | Select-String -Pattern '导出|打印|确认|Batch|Export' |
| | | ``` |
| New file |
| | |
| | | interface: |
| | | display_name: "Consult RSF Admin" |
| | | short_description: "迁移期先对照旧前端,再改 rsf-design" |
| | | default_prompt: "Use $consult-rsf-admin to inspect the matching legacy behavior in rsf-admin before changing rsf-design." |
| | | |
| | | policy: |
| | | allow_implicit_invocation: true |
| New file |
| | |
| | | [ |
| | | { |
| | | "id": 5318, |
| | | "name": "menu.aiManagementCenter", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/AI", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 0, |
| | | "children": [ |
| | | { |
| | | "id": 422, |
| | | "name": "menu.aiParam", |
| | | "parentId": 5318, |
| | | "path": "5318", |
| | | "route": "/system/aiParam", |
| | | "component": "aiParam", |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 9, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 428, |
| | | "name": "menu.aiPrompt", |
| | | "parentId": 5318, |
| | | "path": "5318", |
| | | "route": "/system/aiPrompt", |
| | | "component": "aiPrompt", |
| | | "type": 0, |
| | | "icon": "ri:function-line", |
| | | "sort": 10, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 430, |
| | | "name": "menu.aiCallLog", |
| | | "parentId": 5318, |
| | | "path": "5318", |
| | | "route": "/system/aiCallLog", |
| | | "component": "aiCallLog", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 12, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 5311, |
| | | "name": "menu.aiMcpMount", |
| | | "parentId": 5318, |
| | | "path": "5318", |
| | | "route": "/system/aiMcpMount", |
| | | "component": "aiMcpMount", |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 13, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 67, |
| | | "name": "menu.basicInfo", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/basic", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:home-smile-2-line", |
| | | "sort": 1, |
| | | "children": [ |
| | | { |
| | | "id": 417, |
| | | "name": "menu.basStationArea", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/basStationArea", |
| | | "component": "basStationArea", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 68, |
| | | "name": "menu.warehouse", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/warehouse", |
| | | "component": "warehouse", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 73, |
| | | "name": "menu.warehouseAreas", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/warehouseAreas", |
| | | "component": "warehouseAreas", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 78, |
| | | "name": "menu.loc", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/loc", |
| | | "component": "loc", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 62, |
| | | "name": "menu.matnrGroup", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/matnrGroup", |
| | | "component": "matnrGroup", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 4, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 57, |
| | | "name": "menu.matnr", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/matnr", |
| | | "component": "matnr", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 5, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 331, |
| | | "name": "menu.basContainer", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/basContainer", |
| | | "component": "basContainer", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 6, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 325, |
| | | "name": "menu.basStation", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/basStation", |
| | | "component": "basStation", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 7, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 302, |
| | | "name": "menu.deviceBind", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/deviceBind", |
| | | "component": "deviceBind", |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 8, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 200, |
| | | "name": "menu.deviceSite", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/deviceSite", |
| | | "component": "deviceSite", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 9, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 118, |
| | | "name": "menu.companys", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/manager/companys", |
| | | "component": "companys", |
| | | "type": 0, |
| | | "icon": "ri:group-line", |
| | | "sort": 10, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 405, |
| | | "name": "menu.taskPathTemplate", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/taskPathTemplate", |
| | | "component": "taskPathTemplate", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 11, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 410, |
| | | "name": "menu.taskPathTemplateMerge", |
| | | "parentId": 67, |
| | | "path": "67", |
| | | "route": "/taskPathTemplateMerge", |
| | | "component": "taskPathTemplateMerge", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 12, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 300, |
| | | "name": "menu.inStockPoces", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/stock/in", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 2, |
| | | "children": [ |
| | | { |
| | | "id": 134, |
| | | "name": "menu.asnOrder", |
| | | "parentId": 300, |
| | | "path": "300", |
| | | "route": "/manager/asnOrder", |
| | | "component": "asnOrder", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 400, |
| | | "name": "入库通知单明细", |
| | | "parentId": 300, |
| | | "path": "300", |
| | | "route": "/manager/asnOrderItem", |
| | | "component": "asnOrderItem", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 216, |
| | | "name": "menu.asnOrderLog", |
| | | "parentId": 300, |
| | | "path": "300", |
| | | "route": "/manager/asnOrderLog", |
| | | "component": "asnOrderLog", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 4, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 205, |
| | | "name": "menu.waitPakin", |
| | | "parentId": 300, |
| | | "path": "300", |
| | | "route": "/manager/waitPakin", |
| | | "component": "waitPakin", |
| | | "type": 0, |
| | | "icon": "ri:function-line", |
| | | "sort": 5, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 246, |
| | | "name": "menu.waitPakinLog", |
| | | "parentId": 300, |
| | | "path": "300", |
| | | "route": "/manager/waitPakinLog", |
| | | "component": "waitPakinLog", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 6, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 301, |
| | | "name": "menu.outStockPoces", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/stock/out", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 3, |
| | | "children": [ |
| | | { |
| | | "id": 290, |
| | | "name": "menu.outStock", |
| | | "parentId": 301, |
| | | "path": "301", |
| | | "route": "manager/outStock", |
| | | "component": "outStock", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 402, |
| | | "name": "出库订单明细", |
| | | "parentId": 301, |
| | | "path": "301", |
| | | "route": "/manager/outStockItem", |
| | | "component": "outStockItem", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 387, |
| | | "name": "menu.preparation", |
| | | "parentId": 301, |
| | | "path": "301", |
| | | "route": "/manager/matPreparation", |
| | | "component": "preparation", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 4, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 307, |
| | | "name": "menu.wave", |
| | | "parentId": 301, |
| | | "path": "301", |
| | | "route": "/manager/wave", |
| | | "component": "wave", |
| | | "type": 0, |
| | | "icon": "ri:progress-2-line", |
| | | "sort": 6, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 389, |
| | | "name": "menu.transferPoces", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/transfer", |
| | | "component": "", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 4, |
| | | "children": [ |
| | | { |
| | | "id": 356, |
| | | "name": "menu.transfer", |
| | | "parentId": 389, |
| | | "path": "389", |
| | | "route": "/manager/transfer", |
| | | "component": "transfer", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 0, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 322, |
| | | "name": "menu.tasks", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/tasks", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:progress-2-line", |
| | | "sort": 5, |
| | | "children": [ |
| | | { |
| | | "id": 336, |
| | | "name": "menu.outBound", |
| | | "parentId": 322, |
| | | "path": "322", |
| | | "route": "/manager/outBound", |
| | | "component": "outBound", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 338, |
| | | "name": "menu.stockTransfer", |
| | | "parentId": 322, |
| | | "path": "322", |
| | | "route": "/manager/stockTransfer", |
| | | "component": "stockTransfer", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 226, |
| | | "name": "menu.task", |
| | | "parentId": 322, |
| | | "path": "322", |
| | | "route": "/manager/task", |
| | | "component": "task", |
| | | "type": 0, |
| | | "icon": "ri:progress-2-line", |
| | | "sort": 5, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 236, |
| | | "name": "menu.taskLog", |
| | | "parentId": 322, |
| | | "path": "322", |
| | | "route": "/manager/taskLog", |
| | | "component": "taskLog", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 7, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 323, |
| | | "name": "menu.stockManage", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/stock/manage", |
| | | "component": "manage", |
| | | "type": 0, |
| | | "icon": "ri:function-line", |
| | | "sort": 6, |
| | | "children": [ |
| | | { |
| | | "id": 330, |
| | | "name": "menu.warehouseStock", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/warehouse/stock", |
| | | "component": "warehouseStock", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 361, |
| | | "name": "menu.locPreview", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/locPreview", |
| | | "component": "locPreview", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 172, |
| | | "name": "menu.warehouseAreasItem", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/warehouseAreasItem", |
| | | "component": "warehouseAreasItem", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 103, |
| | | "name": "menu.qlyInspect", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/qlyInspect", |
| | | "component": "qlyInspect", |
| | | "type": 0, |
| | | "icon": "ri:function-line", |
| | | "sort": 4, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 366, |
| | | "name": "menu.locRevise", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/locRevise", |
| | | "component": "locRevise", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 10, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 394, |
| | | "name": "menu.freeze", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/freeze", |
| | | "component": "freeze", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 11, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 265, |
| | | "name": "menu.stock", |
| | | "parentId": 323, |
| | | "path": "323", |
| | | "route": "/manager/stock", |
| | | "component": "stock", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 12, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 391, |
| | | "name": "menu.check", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/check", |
| | | "component": "check", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 7, |
| | | "children": [ |
| | | { |
| | | "id": 345, |
| | | "name": "menu.checkOrder", |
| | | "parentId": 391, |
| | | "path": "391", |
| | | "route": "/orders/check", |
| | | "component": "check", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 351, |
| | | "name": "menu.checkDiff", |
| | | "parentId": 391, |
| | | "path": "391", |
| | | "route": "/manager/checkDiff", |
| | | "component": "checkDiff", |
| | | "type": 0, |
| | | "icon": "ri:error-warning-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 337, |
| | | "name": "menu.checkOutBound", |
| | | "parentId": 391, |
| | | "path": "391", |
| | | "route": "/manager/checkOutBound", |
| | | "component": "checkOutBound", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 3, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 392, |
| | | "name": "menu.abnormal", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/abnormal", |
| | | "component": "abnormal", |
| | | "type": 0, |
| | | "icon": "ri:error-warning-line", |
| | | "sort": 8, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 371, |
| | | "name": "menu.statisticReport", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/manager/statisticReport", |
| | | "component": "", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 9, |
| | | "children": [ |
| | | { |
| | | "id": 385, |
| | | "name": "menu.outStatisticItem", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/outStatisticItem", |
| | | "component": "outStatisticItem", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 386, |
| | | "name": "menu.statisticCount", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/statisticCount", |
| | | "component": "statisticCount", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 382, |
| | | "name": "menu.outStatistic", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/outStatistic", |
| | | "component": "outStatistic", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 384, |
| | | "name": "menu.inStatisticItem", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/inStatisticItem", |
| | | "component": "inStatisticItem", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 383, |
| | | "name": "menu.inStatistic", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/inStatistic", |
| | | "component": "inStatistic", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 0, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 376, |
| | | "name": "menu.locDeadReport", |
| | | "parentId": 371, |
| | | "path": "371", |
| | | "route": "/manager/locDeadReport", |
| | | "component": "locDeadReport", |
| | | "type": 0, |
| | | "icon": "ri:pie-chart-line", |
| | | "sort": 1, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 160, |
| | | "name": "menu.logs", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/logs", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 10, |
| | | "children": [ |
| | | { |
| | | "id": 32, |
| | | "name": "menu.operation", |
| | | "parentId": 160, |
| | | "path": "160", |
| | | "route": "/system/operationRecord", |
| | | "component": "operationRecord", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 5, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 27, |
| | | "name": "menu.token", |
| | | "parentId": 160, |
| | | "path": "160", |
| | | "route": "/system/userLogin", |
| | | "component": "userLogin", |
| | | "type": 0, |
| | | "icon": "ri:bill-line", |
| | | "sort": 6, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 179, |
| | | "name": "menu.permissions", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/permissions", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:user-settings-line", |
| | | "sort": 11, |
| | | "children": [ |
| | | { |
| | | "id": 2, |
| | | "name": "menu.user", |
| | | "parentId": 179, |
| | | "path": "179", |
| | | "route": "/system/user", |
| | | "component": "user", |
| | | "type": 0, |
| | | "icon": "ri:user-3-line", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 7, |
| | | "name": "menu.role", |
| | | "parentId": 179, |
| | | "path": "179", |
| | | "route": "/system/role", |
| | | "component": "role", |
| | | "type": 0, |
| | | "icon": "ri:palette-line", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 22, |
| | | "name": "menu.department", |
| | | "parentId": 179, |
| | | "path": "179", |
| | | "route": "/system/dept", |
| | | "component": "dept", |
| | | "type": 0, |
| | | "icon": "ri:group-line", |
| | | "sort": 4, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 1, |
| | | "name": "menu.system", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/system", |
| | | "component": null, |
| | | "type": 0, |
| | | "icon": "ri:settings-line", |
| | | "sort": 12, |
| | | "children": [ |
| | | { |
| | | "id": 12, |
| | | "name": "menu.menu", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/menu", |
| | | "component": "menu", |
| | | "type": 0, |
| | | "icon": "ri:menu-2-fill", |
| | | "sort": 1, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 395, |
| | | "name": "menu.menuPda", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/manager/menuPda", |
| | | "component": "menuPda", |
| | | "type": 0, |
| | | "icon": "ri:menu-2-fill", |
| | | "sort": 2, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 123, |
| | | "name": "menu.serialRule", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/serialRule", |
| | | "component": "serialRule", |
| | | "type": 0, |
| | | "icon": "ri:function-line", |
| | | "sort": 3, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 340, |
| | | "name": "menu.waveRule", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/manager/waveRule", |
| | | "component": "waveRule", |
| | | "type": 0, |
| | | "icon": "ri:progress-2-line", |
| | | "sort": 4, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 108, |
| | | "name": "menu.dictType", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/dictType", |
| | | "component": "dictType", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 5, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 37, |
| | | "name": "menu.config", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/config", |
| | | "component": "config", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 7, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 162, |
| | | "name": "menu.fields", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/fields", |
| | | "component": "fields", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 10, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 167, |
| | | "name": "menu.fieldsItem", |
| | | "parentId": 1, |
| | | "path": "1", |
| | | "route": "/system/fieldsItem", |
| | | "component": "fieldsItem", |
| | | "type": 0, |
| | | "icon": "ri:book-2-line", |
| | | "sort": 11, |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "id": 390, |
| | | "name": "menu.platform", |
| | | "parentId": 0, |
| | | "path": "", |
| | | "route": "/platform", |
| | | "component": "platform", |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 13, |
| | | "children": [ |
| | | { |
| | | "id": 42, |
| | | "name": "menu.tenant", |
| | | "parentId": 390, |
| | | "path": "390", |
| | | "route": "/system/tenant", |
| | | "component": "tenant", |
| | | "type": 0, |
| | | "icon": "ri:command-fill", |
| | | "sort": 8, |
| | | "children": null |
| | | }, |
| | | { |
| | | "id": 17, |
| | | "name": "menu.host", |
| | | "parentId": 390, |
| | | "path": "390", |
| | | "route": "/system/host", |
| | | "component": "host", |
| | | "type": 0, |
| | | "icon": "ri:map-pin-line", |
| | | "sort": 9, |
| | | "children": null |
| | | } |
| | | ] |
| | | } |
| | | ] |