diff --git a/docs/flowchart.md b/docs/flowchart.md index 3f992c8..23113d4 100644 --- a/docs/flowchart.md +++ b/docs/flowchart.md @@ -4,37 +4,38 @@ flowchart TD %% ===== 入口 ===== -HOME["首页 Dashboard\n设备统计 · 待处理任务 · 快捷导航"] +HOME["首页 Dashboard\n设备统计(8项指标) · 设备状态分布\n待处理任务(4组) · 快捷导航"] %% ===== 阶段零:型号管理(核心枢纽)===== subgraph S0["型号管理(核心枢纽)"] - MODEL["设备型号管理\n型号列表 · 在产/停产"] - MODEL -->|绑定| AUTH_FILE["授权文件\n按型号绑定"] + MODEL["设备型号管理\n型号列表 · 在产/停产\n新增型号抽屉"] + MODEL -->|绑定| AUTH_FILE["授权文件\n按型号绑定授权项"] MODEL -->|绑定| CFG_FILE["配置文件\n按型号绑定"] MODEL -->|绑定| FW_FILE["固件文件\n主机/主协板/发射板/采集板"] - MODEL -->|管理| CHECKLIST["装配Checklist模板\n按型号配置检查项"] + MODEL -->|管理| CHECKLIST["装配Checklist模板\nTab切换型号 · 可编辑\n新增模版抽屉"] + MODEL -->|管理| BOARD_MGR["板卡型号管理\n主协板/采集板/发射板/升压板\nTab筛选 · 详情抽屉"] end %% ===== 阶段一:固件与校准 ===== subgraph S1["阶段一:固件与校准"] FW_LIB["固件库\n主机固件 · 主协板固件\n发射板固件 · 采集板固件"] - FW_LIB -->|上传zip| FW_UPLOAD["上传固件弹窗\n选择类型 · 版本号 · zip文件"] - FW_LIB -->|烧录采集板| CALIB["采集板校准记录\n校准数据管理"] + FW_LIB -->|上传zip| FW_UPLOAD["上传固件弹窗(Element Plus)\n版本号 · 硬件版本范围\n固件类型(5种) · 升级类型\n数字签名 · 发布说明"] + CALIB["采集板校准管理\n校准记录列表 · 导入\n合格/不合格/待校准"] end %% ===== 阶段二:生产装配 ===== subgraph S2["阶段二:生产装配"] - DEV_REG["设备登记\n装机信息 · BOM清单 · Checklist"] - DEV_REG -->|导入BOM| IMPORT_DIALOG["Excel导入弹窗\n下载模板 · 上传文件"] - DEV_REG -->|拍照上传| PHOTO_DIALOG["照片上传弹窗\n多张照片 · 备注"] - DEV_REG -->|登记完成| DEV_LIST["设备列表\n筛选 · 搜索 · 状态"] - DEV_LIST -->|点击详情| DEV_DETAIL["设备详情\n基本信息 \n授权信息 · 装配记录\n子设备列表 · 维修历史"] + DEV_REG["设备登记\n装机信息表单 · 型号匹配提示\nBOM清单 · 装配Checklist"] + DEV_REG -->|导入BOM| IMPORT_DIALOG["Excel导入弹窗\n下载模板 · 上传文件\n支持xlsx/xls/csv"] + DEV_REG -->|拍照上传| PHOTO_DIALOG["照片上传弹窗\n多张照片 · 装配记录信息"] + DEV_REG -->|登记完成| DEV_LIST["设备列表\n5项筛选 · 卡片式列表\n导出 · 分页"] + DEV_LIST -->|点击详情| DEV_DETAIL["设备详情页\n基本信息 · 授权信息(含模块列表)\n装配记录(含Checklist摘要)\n子设备列表(5种板卡)\n固件信息 · 维修历史(时间线)"] end %% ===== 阶段三:授权出厂 ===== subgraph S3["阶段三:授权出厂"] - LIC_MGR["授权管理\n授权文件列表 · 按型号管理"] - LIC_MGR -->|选择授权项生成| LIC_DRAWER["授权项抽屉\n选择型号 · 勾选功能模块\n设置有效期 · 生成授权文件"] + LIC_MGR["授权管理\n授权文件列表 · 按型号筛选\n已发布/草稿/已停用"] + LIC_MGR -->|选择授权项| LIC_DRAWER["授权项抽屉(640px)\n选择型号(自动预选) · 有效期\n11项功能模块勾选\n全选/清空 · 保存"] end %% ===== 阶段四:APP使用(非平台)===== @@ -48,57 +49,66 @@ end %% ===== 阶段五:配置管理 ===== subgraph S5["阶段五:配置管理"] - CFG_MGR["配置文件管理\n配置列表 · 筛选"] - CFG_MGR -->|新建配置抽屉| CFG_NEW["新建配置抽屉\n选择型号 · 发射参数\n采集参数 · 网络参数"] - CFG_MGR -->|编辑详情| PARAM_CFG["参数配置\n发射参数 · 采集参数\n保护参数 · 网络参数"] + CFG_MGR["配置文件管理\n配置列表 · 筛选(型号/版本/关键字)\n生效/已停用"] + CFG_MGR -->|新建配置抽屉| CFG_NEW["新建配置抽屉(520px)\n基本信息 · 发射参数\n采集参数 · 网络参数"] + CFG_MGR -->|编辑详情| PARAM_CFG["参数配置页\n发射参数(电压/电流/脉宽/波形/占空比)\n采集参数(量程/采样率/通道数)\n保护参数(过压/过流/短路/高温)\n网络参数(WiFi前缀)"] end %% ===== 阶段六:维修运维 ===== subgraph S6["阶段六:维修运维"] - REPAIR["维修工单列表\n筛选 · 状态 · 优先级"] - REPAIR -->|新建工单抽屉| NEW_ORDER["新建工单抽屉\n设备信息 · 故障信息 · 工单信息"] - REPAIR -->|处理抽屉| PROCESS["处理工单抽屉\n更换板卡 · 授权处理 · 报废申请"] - REPAIR -->|详情抽屉| ORDER_DETAIL["工单详情抽屉\n工单/设备/故障信息\n处理记录 · 板卡更换 · 授权处理"] - REPAIR -->|维修统计| REPAIR_STATS["维修统计\n故障分布 · 维修趋势"] + REPAIR["维修工单列表\n6项筛选 · 卡片式列表\n状态(处理中/已处理/待处理)\n优先级(高/中/低)"] + REPAIR -->|新建工单抽屉| NEW_ORDER["新建工单抽屉(520px)\n设备信息(SN选择+设备查找)\n故障信息(类型/描述/现象)\n工单信息(优先级/人员/时间/备注)"] + REPAIR -->|处理抽屉| PROCESS["处理工单抽屉(520px)\n处理操作(更换板卡/固件修复/参数重置/其他)\n板卡更换(原SN→新SN)\n授权处理(重新生成/推送固件)\n报废处理(选择原因→申请报废)"] + REPAIR -->|详情抽屉| ORDER_DRAWER["工单详情抽屉(540px)\n工单/设备/故障信息\n处理记录 · 板卡更换记录\n授权处理 · 关闭工单"] + REPAIR -->|独立详情页| ORDER_PAGE["工单详情页(/repair/:orderId)\n工单/设备/故障信息\n处理记录 · 板卡更换记录\n授权处理\n关闭工单 · 申请报废"] + REPAIR -->|维修统计| REPAIR_STATS["维修统计页\n时间范围筛选(5个Tab)\n4项统计指标\n故障类型分布(条形图)\n维修趋势(折线图)"] end %% ===== 阶段七:报废回收 ===== subgraph S7["阶段七:报废回收"] - SCRAP["报废管理\n报废设备列表 · 审批流程"] - SCRAP -->|关联工单| ORDER_DETAIL - SCRAP -->|回收入库| DEV_REG + SCRAP["报废管理\n审批流程(5步)\n4项统计 · 筛选\n报废设备列表"] + SCRAP -->|详情抽屉| SCRAP_DETAIL["报废详情抽屉(520px)\n设备信息 · 残值评估\n审批信息 · 可回收物料\n审批记录时间线"] + SCRAP -->|审批抽屉| SCRAP_APPROVE["报废审批抽屉(480px)\n⚠️不可逆警告\n设备摘要 · 可回收物料\n审批意见\n驳回/审批通过"] + SCRAP -->|回收入库抽屉| SCRAP_RECYCLE["物料回收入库抽屉(480px)\n物料检测勾选\n回收备注\n确认回收入库"] end -%% ===== 首页导航 ===== -HOME -->|待校准设备| CALIB -HOME -->|待处理工单| REPAIR +%% ===== 首页导航(8项指标跳转) ===== +HOME -->|设备总数/装配中/已激活| DEV_LIST +HOME -->|有新版本/可升级| FW_LIB +HOME -->|维修中| REPAIR +HOME -->|报废| SCRAP HOME -->|授权即将到期| LIC_MGR -HOME -->|固件待升级| FW_LIB -HOME -->|设备总数| DEV_LIST +HOME -->|校准即将到期| CALIB HOME --> MODEL %% ===== 型号管理跨模块关联 ===== MODEL -->|授权按钮| LIC_MGR MODEL -->|配置按钮| CFG_MGR -MODEL -->|固件按钮| FW_LIB MODEL -->|Checklist模板| DEV_REG +%% ===== 板卡管理关联 ===== +BOARD_MGR -->|固件按钮| FW_LIB +BOARD_MGR -->|详情→服役记录| DEV_DETAIL +BOARD_MGR -->|详情→维修记录| REPAIR + %% ===== 跨阶段数据流 ===== DEV_REG -->|型号必须匹配| MODEL DEV_DETAIL -->|查看校准| CALIB DEV_DETAIL -->|查看维修历史| REPAIR PROCESS -->|申请报废| SCRAP -ORDER_DETAIL -->|更换采集板需重新校准| CALIB -FW_LIB -->|关联型号固件| MODEL +ORDER_PAGE -->|申请报废| SCRAP +ORDER_DRAWER -->|更换采集板需重新校准| CALIB +SCRAP -->|关联来源工单| ORDER_PAGE +SCRAP_RECYCLE -->|回收入库| DEV_REG %% ===== 支撑模块 ===== subgraph SUPPORT["支撑模块(Header菜单)"] - DATA_STATS["数据统计"] - OPS_RPT["运营报告"] - USER_MGR["用户管理"] - ROLE_MGR["角色权限"] - SYS_LOG["操作日志"] - SYS_SET["系统设置"] + DATA_STATS["数据报表(占位)"] + OPS_RPT["运营报告(占位)"] + USER_MGR["用户管理(占位)"] + ROLE_MGR["角色权限(占位)"] + SYS_LOG["操作日志(占位)"] + SYS_SET["系统设置(占位)"] end %% 样式 @@ -117,20 +127,23 @@ style APP fill:#F6FFED,stroke:#52C41A,stroke-dasharray: 5 5 ## 页面清单 -| 模块 | 页面 | 路由 | 交互方式 | -|------|------|------|----------| -| 首页 | Dashboard | `/` | 卡片点击跳转 | -| 设备 | 设备列表 | `/devices` | 筛选/详情跳转 | -| 设备 | 设备详情 | `/devices/:id` | 页面 | -| 设备 | 设备登记 | `/registration` | 弹窗(导入/拍照) | -| 设备 | 型号管理 | `/models` | 抽屉(新增型号/Checklist模板) | -| 授权 | 授权管理 | `/licenses` | 抽屉(选择授权项生成) | -| 固件 | 固件库 | `/firmware` | 弹窗(上传固件) Tab分类 | -| 配置 | 配置管理 | `/config-files` | 抽屉(新建配置) | -| 配置 | 参数配置 | `/config-files/:id` | 页面 | -| 校准 | 校准记录 | `/calibration` | 页面 | -| 维修 | 维修工单 | `/repair` | 抽屉(新建/处理/详情) | -| 维修 | 维修统计 | `/repair/stats` | 页面 | -| 维修 | 工单详情 | `/repair/:orderId` | 页面 | -| 报废 | 报废管理 | `/scrap` | 页面 | -| 系统 | 用户/角色/日志/设置 | Header菜单 | 页面(占位) | +| 模块 | 页面 | 路由 | 交互方式 | 组件文件 | +|------|------|------|----------|----------| +| 首页 | Dashboard | `/` | 卡片点击跳转 | `Dashboard.vue` | +| 设备 | 设备列表 | `/devices` | 5项筛选 · 卡片式列表 | `DeviceList.vue` | +| 设备 | 设备详情 | `/devices/:id` | 独立页面(6个信息卡片) | `DeviceDetail.vue` | +| 设备 | 设备登记 | `/registration` | 弹窗(Excel导入/拍照上传) | `DeviceRegistration.vue` | +| 设备 | 设备型号管理 | `/models` | 抽屉(新增型号/新增Checklist模板) | `DeviceModelManagement.vue` | +| 设备 | 板卡型号管理 | `/boards` | Tab筛选 · 抽屉(板卡详情) | `BoardManagement.vue` | +| 授权 | 授权管理 | `/licenses` | 抽屉(选择授权项 640px) | `LicenseManagement.vue` | +| 固件 | 固件库 | `/firmware` | 弹窗(上传固件 Element Plus Dialog) | `FirmwareLibrary.vue` | +| 配置 | 配置文件管理 | `/config-files` | 抽屉(新建配置 520px) | `ConfigFileManagement.vue` | +| 配置 | 参数配置 | `/config-files/:configId` | 独立页面(新建/编辑两种模式) | `ParameterConfiguration.vue` | +| 校准 | 校准管理 | `/calibration` | 表格列表 · 导入 | `CalibrationRecords.vue` | +| 维修 | 维修工单 | `/repair` | 抽屉(新建520px/处理520px/详情540px) | `RepairOrders.vue` | +| 维修 | 维修统计 | `/repair/stats` | 独立页面(统计+图表) | `RepairStats.vue` | +| 维修 | 工单详情 | `/repair/:orderId` | 独立页面(含底部操作栏) | `RepairOrderDetail.vue` | +| 报废 | 报废管理 | `/scrap` | 抽屉(详情520px/审批480px/回收480px) | `ScrapManagement.vue` | +| 系统 | 数据报表 | `/reports` | 占位页面 | `PlaceholderPage.vue` | +| 系统 | 操作日志 | `/logs` | 占位页面 | `PlaceholderPage.vue` | +| 系统 | 系统设置 | `/settings` | 占位页面 | `PlaceholderPage.vue` | diff --git a/docs/产品原型文档.md b/docs/产品原型文档.md new file mode 100644 index 0000000..5c21dab --- /dev/null +++ b/docs/产品原型文档.md @@ -0,0 +1,959 @@ +# 地空业务支撑平台 —— 生产管理子系统 产品原型文档 + +> 版本:v1.0 +> 更新日期:2026-04-08 +> 技术栈:Vue 3 + Vue Router + Element Plus + TailwindCSS + Lucide Icons +> 主色调:`#4a7c59`(绿色系) + +--- + +## 一、系统概述 + +本系统为"地空业务支撑平台"的生产管理子系统,面向地球物理仪器(高密度电法仪等)的全生命周期管理,涵盖: + +- 设备型号管理(核心枢纽) +- 板卡型号管理 +- 设备登记与装配 +- 授权文件管理 +- 配置文件管理 +- 固件库管理 +- 采集板校准 +- 维修工单 +- 报废回收 + +### 1.1 全局布局 + +| 区域 | 说明 | +|------|------| +| 左侧边栏(200px) | Logo + 分组导航菜单,固定不滚动 | +| 顶部 Header(56px) | 系统标题 + 数据统计/运营报告入口 + 用户菜单(用户管理/角色权限/操作日志/系统设置/退出) | +| 主内容区 | 背景色 `#F0F2F5`,内容区可滚动 | + +### 1.2 导航菜单结构 + +| 分组 | 菜单项 | 路由 | 图标 | +|------|--------|------|------| +| — | 首页 | `/` | — | +| 设备 | 设备列表 | `/devices` | Monitor | +| 设备 | 设备型号管理 | `/models` | Settings2 | +| 设备 | 板卡型号管理 | `/boards` | Cpu | +| 授权 | 授权管理 | `/licenses` | Key | +| 配置 | 配置管理 | `/config-files` | FileCode | +| 校准 | 校准记录 | `/calibration` | Gauge | +| 维修 | 维修工单 | `/repair` | Wrench | +| 维修 | 报废回收 | `/scrap` | Recycle | + +--- + +## 二、页面详细说明 + +--- + +### 2.1 首页 Dashboard + +**路由**:`/` + +#### 功能描述 +系统首页,展示全局数据概览和待处理任务快捷入口。 + +#### 统计卡片(8个,可点击跳转) + +| 指标 | 示例值 | 趋势 | 跳转 | +|------|--------|------|------| +| 设备总数 | 5,234 | +5.2% | `/devices` | +| 装配中 | 4,856 | +2.8% | `/devices` | +| 已激活 | 4,912 | +1.5% | `/devices` | +| 有新版本 | 156 | — | `/firmware` | +| 维修中 | 23 | -12.3% | `/repair` | +| 报废 | 56 | — | `/scrap` | +| 授权即将到期 | 45 | — | `/licenses` | +| 可升级 | 8 | — | `/firmware` | + +#### 设备状态分布(横向条形图) + +| 状态 | 颜色 | +|------|------| +| 已装配 | `#52C41A` | +| 已出厂 | `#FF4D4F` | +| 已激活 | `#FAAD14` | +| 报废 | `#8C8C8C` | + +#### 待处理任务(2列布局,每组显示2条+查看全部链接) + +| 任务组 | 跳转 | +|--------|------| +| 校准即将到期 | `/calibration` | +| 维修工单 | `/repair` | +| 固件升级通知 | `/firmware` | +| 授权即将到期 | `/licenses` | + +--- + +### 2.2 设备型号管理 + +**路由**:`/models` + +#### 功能描述 +管理设备型号(GD-30/GD-20/GD-10 Supreme),是平台核心枢纽,每个型号关联授权项、配置文件。 + +#### 页面区块 + +**1. 信息提示横幅** +- 绿色背景提示:型号管理是平台核心枢纽 + +**2. 型号列表(表格)** + +| 列名 | 说明 | +|------|------| +| 型号名称 | 如 GD-30 Supreme | +| 编码 | 如 GD30-2024 | +| 状态 | 在产(绿色标签)/ 停产(黄色标签) | +| 操作 | 编辑 / 授权(跳转`/licenses`)/ 配置(跳转`/config-files`) | + +- 右上角按钮:「新增设备型号」 + +**3. 装配 Checklist 模板** +- Tab 切换不同型号(GD30 / GD20 / GD10) +- 表格列:序号(可拖拽排序)、项目名称(点击可编辑) +- GD30 示例有 22 项检查项(主板SN扫码绑定、采集板SN录入、GPS/北斗检测、电池安装、IP66防护等) +- 右上角按钮:「新增模版」 + +#### 抽屉:新增设备型号(480px宽) + +| 字段 | 类型 | 必填 | +|------|------|------| +| 型号名称 | 文本输入 | 是 | +| 型号编码 | 文本输入 | 是 | +| 状态 | 单选(在产/停产) | — | + +#### 抽屉:新增 Checklist 模版(480px宽) + +| 字段 | 类型 | 必填 | +|------|------|------| +| 设备型号 | 下拉选择 | 是 | +| 检查项列表 | 动态列表(可增删) | — | + +--- + +### 2.3 板卡型号管理 + +**路由**:`/boards` + +#### 功能描述 +管理板卡型号信息,包括主协板、采集板、发射板、升压板。 + +#### 页面区块 + +**1. Tab 筛选**:全部 / 主协板 / 采集板 / 发射板 / 升压板 + +**2. 板卡列表(表格)** + +| 列名 | 说明 | +|------|------| +| 类型 | 主协板/采集板/发射板/升压板 | +| 型号 | 如 MB-V2.3、RX-V2.2 | +| 最新固件版本 | 如 v2.3.5 | +| 操作 | 详情 / 固件(跳转`/firmware`) | + +- 右上角按钮:「导出」「新增板卡」 + +#### 抽屉:板卡详情(560px宽) + +包含以下信息区块: +- 基本信息:板卡类型、型号、当前固件、生产日期 +- 固件升级记录:时间线(日期、版本变更、升级方式、操作人) +- 校准历史:日期、结果、到期日、校准人 +- 服役记录:关联设备SN(可点击跳转)、服役时间段、状态(在役/已拆卸) +- 维修记录:关联工单号(可点击跳转)、日期、操作、操作人 + +--- + +### 2.4 设备列表 + +**路由**:`/devices` + +#### 功能描述 +展示所有设备,支持筛选和搜索。 + +#### 筛选条件 + +| 筛选项 | 类型 | +|--------|------| +| 设备型号 | 下拉(全部/GD30/GT20/GM10) | +| 设备状态 | 下拉(全部/已激活/已出厂/装配中) | +| 生产日期 | 日期选择器 | +| 产品型号 | 下拉 | +| 搜索 | 按钮 | + +#### 设备卡片列表(非表格,卡片式) + +每张卡片展示: +| 字段 | 说明 | +|------|------| +| 设备SN号 | 如 GD30-20240308-001 | +| 型号 | 如 GD30 高密度电法仪 | +| 状态 | 已激活(绿)/ 已出厂(橙)/ 装配中(绿底) | +| 主机版本 | 如 v2.3.5 | +| 生产日期 | 如 2024-03-08 14:30 | + +卡片底部操作: +- 详情(跳转 `/devices/:sn`) +- 下线(仅已激活设备显示,红色) + +- 右上角按钮:「导出」「登记设备」(跳转`/registration`) +- 分页:显示 X-Y / 共 N 台 + +--- + +### 2.5 设备详情 + +**路由**:`/devices/:id` + +#### 功能描述 +展示单台设备的完整信息,包含基本信息、授权、装配记录、子设备、固件、维修历史。 + +#### 页面区块 + +**1. 页面头部** +- 返回按钮 + 设备SN号 + 状态标签 + +**2. 基本信息卡片** + +| 字段 | 示例 | +|------|------| +| 设备型号 | GD30 高密度电法仪 | +| 主机SN号 | GD30-2025-000001 | +| 设备状态 | 已激活 | +| 生产日期 | 2025-01-15 | +| 出厂日期 | 2025-02-01 | +| 激活日期 | 2025-02-10 | +| 装配人员 | 张工程师 | +| 测试人员 | 李工程师 | +| 客户名称 | 北京地质研究院 | + +**3. 授权信息卡片** + +| 字段 | 示例 | +|------|------| +| 授权ID | LIC-2025-0001 | +| 授权状态 | 已激活 | +| 授权类型 | 正式授权 | +| 生效日期 | 2025-02-10 | +| 到期日期 | 2026-02-10 | +| 剩余天数 | 317天 | + +- 授权功能模块标签列表:1D SP, 2D SP, 3D SP, 1D VES, 2D ERT, 3D ERT, 1D IP, 2D IP, 3D IP +- 授权文件下载链接 + +**4. 装配记录卡片** + +| 字段 | 示例 | +|------|------| +| 装配工单 | ASM-2025-000001 | +| 装配人员 | 张工程师 | +| 装配日期 | 2025-01-15 | +| 测试人员 | 李工程师 | +| 测试结果 | 通过 | +| Checklist完成 | 22/22 项 | + +- Checklist 摘要(2列网格,勾选图标 + 项目名称) + +**5. 子设备列表(表格)** + +| 列名 | 说明 | +|------|------| +| 板卡类型 | 主板/采集板/发射板/测控板/升压板 | +| SN号 | 绿色可点击 | +| 硬件版本 | 如 A1 | +| 固件版本 | 如 v2.3.5 | +| 校准状态 | 已校准/无需校准 | +| 状态 | 正常 | + +**6. 固件信息卡片** + +| 字段 | 示例 | +|------|------| +| 当前固件版本 | v2.3.5 | +| 最后更新时间 | 2024-03-01 10:30 | +| 更新方式 | 远程OTA | +| 配置文件版本 | v1.2.0 | +| 配置同步时间 | 2024-03-01 10:35 | + +**7. 维修历史(时间线)** +- 每条记录:日期、类型(固件升级/主板更换/常规保养)、操作人、描述 +- 右上角「查看全部」链接跳转 `/repair` + +--- + + +### 2.6 设备登记 + +**路由**:`/registration` + +#### 功能描述 +登记新设备信息,包含装机信息填写、BOM清单管理、装配Checklist执行。 + +#### 页面区块 + +**1. 装机信息卡片(表单)** + +| 字段 | 类型 | 必填 | 示例 | +|------|------|------|------| +| 设备型号 | 下拉选择(GD-30/GD-20/GD-10 Supreme) | 是 | GD-30 Supreme | +| 主机SN号 | 文本输入 | 是 | GD30-20240308-001 | +| 主板SN号 | 文本输入 | 是 | MB20240308001 | +| 装机测试状态 | 下拉(测试通过/测试不通过) | — | 测试通过 | +| 生产日期 | 日期选择器 | — | 2024-03-08 | +| 登记人 | 文本输入(只读) | — | 张工 | + +**2. 型号匹配提示横幅** +- 成功(绿色):显示匹配到的授权文件、配置文件、固件版本 +- 警告(黄色):未匹配到型号关联信息,提示先在型号管理中配置 + +**3. 装机清单 BOM(表格)** + +| 列名 | 说明 | +|------|------| +| 物料编码 | 如 MB-2024-001 | +| 物料名称 | 主协板/采集板/测控板/发射板/升压板/外壳机箱 | +| SN号 | 板卡SN号 | +| 型号 | 如 MB-V2.3 | +| 校准状态 | 已校准/无需校准 | +| 数量 | 数字 | +| 操作 | 编辑 / 删除 | + +- 右上角按钮:「导入」(打开Excel导入弹窗) + +**4. 装配 Checklist(列表)** +- 进度显示:完成 X/Y +- 每项包含:勾选框、序号圆圈、项目名称、版本校验提示(红色警告)、拍照上传按钮 +- 已完成项:绿色背景 + 已上传照片数量 +- 未完成项:灰色背景 + 拍照上传按钮 + +**5. 底部操作栏(sticky)** +- 取消 / 更新 / 提交 + +#### 弹窗:导入BOM清单 + +| 区域 | 说明 | +|------|------| +| 第一步 | 下载导入模板(BOM导入模板.xlsx) | +| 第二步 | 上传Excel文件(支持 .xlsx/.xls/.csv,拖拽或点击上传) | +| 提示 | 黄色提示:确保格式与模板一致,物料编码和SN号为必填 | + +#### 弹窗:上传照片 + +| 区域 | 说明 | +|------|------| +| 照片网格 | 已上传照片缩略图(可删除)+ 添加照片按钮 | +| 装配记录信息 | 文本域,输入装配记录 | +| 操作 | 取消 / 确认上传(显示照片数量) | + +--- + +### 2.7 授权管理 + +**路由**:`/licenses` + +#### 功能描述 +管理设备授权文件,按设备型号管理授权模块配置。 + +#### 页面区块 + +**1. 信息提示横幅(青色)** +- 说明授权文件按设备型号管理,设备在APP激活时自动下载对应型号的授权文件 + +**2. 筛选条件** + +| 筛选项 | 类型 | +|--------|------| +| 设备型号 | 下拉(全部/GD-10/GD-20/GD-30) | +| 状态 | 下拉(全部/已发布/草稿/已停用) | +| 查询 | 按钮 | + +**3. 授权列表(表格)** + +| 列名 | 说明 | +|------|------| +| 适配型号 | 如 GD-10 Supreme | +| 授权模块 | 如 1D SP, 2D SP, 1D VES... | +| 有效期 | 永久 / 1年 / 2年 | +| 创建日期 | 日期 | +| 状态 | 已发布(绿)/ 草稿(黄)/ 已停用(灰) | +| 操作 | 详情 / 下载 / 发布(草稿时)/ 停用(已发布时) | + +- 右上角按钮:「导出」「选择授权项」 +- 分页 + +#### 抽屉:选择授权项(640px宽) + +| 字段 | 类型 | 说明 | +|------|------|------| +| 设备型号 | 下拉选择 | 必填,切换型号自动预选对应授权项 | +| 授权有效期 | 下拉(永久/1年/2年/自定义) | — | +| 到期日期 | 日期选择器 | 仅"自定义"时显示 | + +**功能授权项列表(表格+勾选)** + +| 授权项名称 | GD-10 | GD-20 | GD-30 | +|------------|-------|-------|-------| +| 1D SP | ✓ | ✓ | ✓ | +| 2D SP | ✓ | ✓ | ✓ | +| 3D SP | ✗ | ✓ | ✓ | +| 1D VES | ✓ | ✓ | ✓ | +| 2D ERT | ✓ | ✓ | ✓ | +| 3D ERT | ✗ | ✓ | ✓ | +| 1D IP | ✓ | ✓ | ✓ | +| 2D IP | ✓ | ✓ | ✓ | +| 3D IP | ✗ | ✓ | ✓ | +| 跨孔(Cross-Hole) | ✗ | ✓ | ✓ | +| 水上(Marine) | ✗ | ✓ | ✓ | + +- 顶部显示:已选 X / Y 项 +- 操作:全选 / 清空 +- 底部:取消 / 保存 + +--- + +### 2.8 配置文件管理 + +**路由**:`/config-files` + +#### 功能描述 +管理设备型号配置文件,包含发射参数、采集参数、网络参数等。 + +#### 页面区块 + +**1. 信息提示横幅(绿色)** +- 说明配置文件按设备型号绑定适配 + +**2. 筛选条件** + +| 筛选项 | 类型 | +|--------|------| +| 适配型号 | 下拉 | +| 配置版本 | 下拉 | +| 关键字 | 文本输入 | +| 查询 | 按钮 | + +**3. 配置文件列表(表格)** + +| 列名 | 说明 | +|------|------| +| 配置文件 | 如 CFG-GD30-v1.2.0(绿色) | +| 适配型号 | 如 GD-30 Supreme | +| 版本 | 如 v1.2.0 | +| 创建时间 | 日期时间 | +| 状态 | 生效(绿)/ 已停用(灰) | +| 操作 | 详情 / 编辑 / 下载 / 删除 | + +- 右上角按钮:「新建配置」 +- 分页 + +#### 抽屉:新建配置文件(520px宽) + +分为以下区块: + +**基本信息** +| 字段 | 类型 | 必填 | +|------|------|------| +| 适配型号 | 下拉选择 (GD-10 Supreme/GD-20 Supreme/GD-30 Supreme) | 是 | +| 配置版本 | 文本输入 | 是 | + +**发射参数** +| 字段 | 类型 | +|------|------| +| 最大发射电压 | 下拉(500V/800V/1000V/1200V/1500V) | +| 最大发射电流 | 下拉(2A/5A/8A/10A/15A) | +| 占空比 | 下拉 (50%)、(50%、100%)| +| 脉宽宽度 | 下拉(0.25s/0.5s/1s/2s/4s/8s/16s/32s/64s) /(0.25s/0.5s/1s/2s/4s/8s)| +| 迭代次数 | 下拉(1~256) | + +**采集参数** +| 字段 | 类型 | +|------|------| +| 支持通道数 | 数字输入(1/6/12) | +| 采样率 | 下拉(50Hz/60Hz)/(50Hz/60Hz/100Hz/1000Hz) | +| 电压测量量程 | 下拉(±2.5V)/(±2.5V/±80V) /(±80V/±600V) | +| 全波形采集 | 下拉(支持/不支持) | + +**网络参数** +| 字段 | 类型 | +|------|------| +| WiFi SSID 前缀 | 文本输入 | + +--- + +### 2.9 参数配置(配置详情) + +**路由**:`/config-files/:configId` + +#### 功能描述 +配置设备型号的详细参数,支持新建和编辑两种模式。 + +#### 页面区块 + +**1. 型号信息卡片** +- 新建模式:适配型号(下拉)、配置文件版本(输入)、状态(待生成) +- 编辑模式:适配型号(只读)、版本(只读)、最后更新时间 + +**2. 发射参数卡片** + +| 字段 | 类型 | +|------|------| +| 最大发射电压 | 下拉(500V~1500V) | +| 最大发射电流 | 下拉(2A~10A) | +| 发射脉宽 | 多选标签(0.25s~64s,共9项) | +| 发射波形 | 多选标签(0+0-、+0-0、+-) | +| 支持全波形测量 | 复选框 | +| 占空比支持 | 复选框(50%/100%) | + +**3. 采集参数卡片** + +| 字段 | 类型 | +|------|------| +| 电压测量范围 | 多选标签(±2.5V/±80V/±600V) | +| 采样率 | 多选标签(50Hz/60Hz/100Hz/1000Hz) | +| 支持通道数 | 数字输入 | +| 迭代次数范围 | 范围输入(最小~最大) | + +**4. 保护参数卡片** + +| 字段 | 类型 | +|------|------| +| 过压保护 | 复选框 + 阈值输入(V) | +| 过流保护 | 复选框 + 阈值输入(A) | +| 短路保护 | 复选框 | +| 高温保护 | 复选框 + 阈值输入(°C) | + +**5. 网络参数卡片** + +| 字段 | 类型 | +|------|------| +| WiFi SSID | 文本输入 | + +**6. 底部操作栏(sticky)** +- 新建模式:取消 / 预览配置 / 确认生成配置文件 +- 编辑模式:取消 / 重置默认 / 预览配置 / 下发配置 + +--- + +### 2.10 固件库 + +**路由**:`/firmware` + +#### 功能描述 +管理固件版本,支持上传、查看详情、下载。 + +#### 页面区块 + +**固件版本列表(卡片式)** + +每个版本卡片展示: +| 字段 | 说明 | +|------|------| +| 版本号 | 如 v2.3.0 | +| 发布日期 | 日期 | +| 状态 | 已发布 / 草稿 | +| 文件大小 | 如 12.5MB | +| 下载次数 | 如 1,234次 | + +展开详情后额外显示: +| 字段 | 说明 | +|------|------| +| MD5 / SHA256 | 校验值 | +| 升级类型 | 可选 / 强制 | +| 数字签名 | 已签名 | +| 发布说明 | 列表形式 | + +操作按钮:下载 / 编辑 / 撤回发布 / 查看详情 + +- 右上角按钮:「上传固件」 + +#### 弹窗:上传固件(Element Plus Dialog,550px宽) + +| 字段 | 类型 | 必填 | +|------|------|------| +| 固件版本 | 文本输入 | 是 | +| 硬件版本范围 | 文本输入 | 是 | +| 升级类型 | 下拉(可选/强制) | 是 | +| 固件类型 | 下拉(主协板/采集板/发射板/主机固件/计算单元固件) | 是 | +| 数字签名 | 复选框 | — | +| 固件包 | ZIP文件上传(拖拽) | 是 | +| 发布说明 | 多行文本(每行一条) | — | + +--- + +### 2.11 校准管理 + +**路由**:`/calibration` + +#### 功能描述 +管理采集板校准数据。仅针对采集板,其他板卡无需校准。 + +#### 页面区块 + +**1. 信息提示横幅(紫色)** +- 说明校准仅针对采集板 + +**2. 筛选条件** + +| 筛选项 | 类型 | +|--------|------| +| 采集板SN号 | 文本输入 | +| 校准状态 | 下拉(全部/合格/不合格/待校准) | +| 校准人员 | 下拉 | +| 查询 | 按钮 | + +**3. 校准记录列表(表格)** + +| 列名 | 说明 | +|------|------| +| 采集板SN号 | 如 RX20240308001 | +| 校准日期 | 日期 | +| 到期日期 | 日期 | +| 校准人员 | 如 王工程师 | +| 状态 | 合格(绿)/ 不合格(红)/ 待校准(黄) | +| 操作 | 详情 / 校准文件 | + +- 右上角按钮:「导入」 +- 分页 + +--- + + +### 2.12 维修工单 + +**路由**:`/repair` + +#### 功能描述 +管理维修工单的全生命周期,包括新建、处理、查看详情。 + +#### 页面区块 + +**1. 筛选条件** + +| 筛选项 | 类型 | +|--------|------| +| 状态 | 下拉(全部/处理中/已处理/待处理) | +| 优先级 | 下拉(全部/高/中/低) | +| 维修人员 | 下拉 | +| 创建日期 | 日期范围(开始~结束) | +| SN | 文本输入 | +| 搜索/重置 | 按钮 | + +**2. 维修工单列表(卡片式)** + +每条工单展示: +| 字段 | 说明 | +|------|------| +| 工单号 | 如 WO-2024-0001 | +| 设备SN | 如 GD30-xxxx | +| 故障类型 | 板卡故障/固件异常/通信异常 | +| 状态 | 处理中(绿底)/ 已处理(绿标签)/ 待处理(灰标签),带emoji图标 | +| 优先级 | 高(红)/ 中(橙)/ 低(蓝) | + +操作按钮:详情 / 处理(处理中和待处理时显示) + +- 右上角按钮:「新建工单」「维修统计」(跳转`/repair/stats`) +- 分页 + +#### 抽屉:新建维修工单(520px宽) + +分为三个区块: + +**设备信息** +| 字段 | 类型 | +|------|------| +| 设备SN | 下拉选择 + 查找设备按钮 | +| 设备信息展示 | 只读(型号、固件、硬件版本、客户) | + +**故障信息** +| 字段 | 类型 | +|------|------| +| 故障类型 | 单选(板卡故障/固件异常/通信故障/其他问题) | +| 故障描述 | 多行文本 | +| 故障现象 | 多行文本 | + +**工单信息** +| 字段 | 类型 | +|------|------| +| 优先级 | 单选(低/中/高,带颜色) | +| 维修人员 | 下拉选择 | +| 预计修复时间 | 日期选择器 | +| 备注 | 多行文本 | + +底部:取消 / 创建工单 + +#### 抽屉:处理工单(520px宽) + +分为以下区块: + +**处理操作** +- 单选:更换板卡 / 固件修复 / 参数重置 / 其他处理 + +**板卡更换(条件显示,选择"更换板卡"时)** +| 字段 | 类型 | +|------|------| +| 原板卡SN | 文本输入 | +| 新板卡SN | 文本输入 | + +**授权处理** +| 字段 | 类型 | +|------|------| +| 重新生成授权文件 | 复选框(默认勾选) | +| 推送适配固件 | 复选框 | + +**处理备注** +- 多行文本 + +**报废处理(红色警告区域)** +- 警告文字:报废操作不可逆 +- 报废原因:下拉选择(主板损坏无法修复/多个核心部件损坏/维修成本超过设备价值/设备老化严重) +- 申请报废按钮(跳转`/scrap`) + +底部:取消 / 提交处理 + +#### 抽屉:工单详情(540px宽) + +包含以下信息区块: +- 工单信息:工单号、状态、优先级、创建时间、维修人员、预计修复 +- 设备信息:设备SN、型号、固件、硬件版本、客户 +- 故障信息:故障类型、描述、现象 +- 处理记录:时间线列表 + 添加记录按钮 +- 板卡更换记录:原板卡/新板卡信息、更换时间、更换人员 +- 授权处理:复选框(重新生成授权文件/推送适配固件)+ 处理授权按钮 + +底部:取消 / 关闭工单 + +--- + +### 2.13 维修工单详情(独立页面) + +**路由**:`/repair/:orderId` + +#### 功能描述 +维修工单的独立详情页面,与抽屉详情内容一致但以独立页面形式展示。 + +#### 页面区块(白色卡片堆叠) + +1. 工单信息卡片 +2. 设备信息卡片 +3. 故障信息卡片 +4. 处理记录卡片(时间线 + 添加记录按钮) +5. 板卡更换记录卡片 +6. 授权处理卡片(复选框 + 处理授权按钮) + +**底部操作栏(sticky)** +- 取消 / 关闭工单 / 申请报废(红色,跳转`/scrap`) + +--- + +### 2.14 维修统计 + +**路由**:`/repair/stats` + +#### 功能描述 +展示维修数据统计和趋势分析。 + +#### 页面区块 + +**1. 时间范围筛选** +- 下拉选择 + Tab 切换(本月/上月/本季度/本年度/自定义) + +**2. 统计概览(4列卡片)** + +| 指标 | 颜色 | +|------|------| +| 总工单数 | 黑色 | +| 处理中 | 绿色 `#4a7c59` | +| 已完成 | 绿色 `#52C41A` | +| 待处理 | 红色 `#FF4D4F` | + +**3. 图表区域(2列)** + +| 图表 | 说明 | +|------|------| +| 故障类型分布 | 横向进度条(板卡故障65.5%、固件异常22.3%、通信故障6.3%、其他5.9%) | +| 维修趋势 | 占位图表(1月-6月趋势) | + +- 右上角按钮:「导出报告」 + +--- + +### 2.15 报废管理 + +**路由**:`/scrap` + +#### 功能描述 +管理报废设备审批与物料回收,包含完整的审批流程。 + +#### 页面区块 + +**1. 报废审批流程(步骤条)** + +| 步骤 | 描述 | +|------|------| +| 1. 申请报废 | 维修工单发起 | +| 2. 主管审批 | 审核报废原因 | +| 3. 物料检测 | 检测可回收物料 | +| 4. 回收入库 | 物料回收登记 | +| 5. 报废完成 | 设备注销 | + +**2. 统计概览(4列卡片)** + +| 指标 | 颜色 | +|------|------| +| 报废总数 | 黑色 | +| 待审批 | 黄色 | +| 已审批待回收 | 绿色 | +| 已回收 | 绿色 | + +**3. 筛选条件** + +| 筛选项 | 类型 | +|--------|------| +| 设备SN号 | 文本输入 | +| 状态 | 下拉(全部/待审批/审批中/已审批/已驳回/回收中/已回收) | +| 报废日期 | 日期选择器 | +| 查询 | 按钮 | + +**4. 报废设备列表(表格)** + +| 列名 | 说明 | +|------|------| +| 设备SN | 如 GD30-2023-001234 | +| 型号 | 如 GD-30 Supreme | +| 报废原因 | 如 主板损坏无法修复 | +| 申请人 | 如 李工 | +| 状态 | 待审批(黄)/审批中(绿底)/已审批(绿)/已驳回(红)/回收中/已回收 | +| 来源工单 | 可点击跳转到维修工单详情 | +| 操作 | 详情 / 审批(待审批时)/ 回收入库(已审批时)/ 重新申请(已驳回时) | + +- 右上角按钮:「导出」 + +#### 抽屉:报废详情(520px宽) + +包含以下信息区块: +- 设备信息:SN、型号、报废日期、报废原因、残值评估(元) +- 审批信息:申请人、审批人、来源工单 +- 可回收物料:标签列表(如 采集板 AC20240308002、测控板 CT20240308003) +- 审批记录:时间线(提交申请 → 审批通过/驳回 → 物料回收完成) + +底部:关闭 / 去审批(待审批时)/ 回收入库(已审批时) + +#### 抽屉:报废审批(480px宽) + +- 红色警告横幅:报废操作不可逆 +- 报废设备摘要:SN、型号、报废原因、残值评估、申请人 +- 可回收物料列表 +- 审批意见:多行文本 + +底部:取消 / 驳回(红色)/ 审批通过 + +#### 抽屉:物料回收入库(480px宽) + +- 报废设备摘要 +- 物料检测与回收:勾选列表(每项可勾选标记"已检测",绿色高亮) +- 回收备注:多行文本 + +底部:取消 / 确认回收入库(绿色,跳转`/registration`) + +--- + +## 三、占位页面 + +以下页面目前为占位状态,显示"此页面正在开发中...": + +| 页面 | 路由 | 入口 | +|------|------|------| +| 数据报表 | `/reports` | Header 图标 | +| 操作日志 | `/logs` | Header 用户菜单 | +| 系统设置 | `/settings` | Header 用户菜单 | +| 用户管理 | `/users` | Header 用户菜单 | +| 角色权限 | `/roles` | Header 用户菜单 | + +--- + +## 四、通用交互规范 + +### 4.1 状态标签颜色规范 + +| 状态类型 | 背景色 | 文字色 | 边框色 | +|----------|--------|--------|--------| +| 成功/已激活/已发布/合格/已审批/已回收 | `#F6FFED` | `#52C41A` | `#B7EB8F` | +| 进行中/在产/处理中 | `#eef5f0` | `#4a7c59` | `#a3c4ad` | +| 警告/草稿/待审批/待校准 | `#FFFBE6` | `#FAAD14` | `#FFE58F` | +| 错误/已驳回/高优先级 | `#FFF1F0` | `#FF4D4F` | `#FFCCC7` | +| 已出厂/中优先级 | `#FFF7E6` | `#FA8C16` | `#FFD591` | +| 低优先级 | `#F0F5FF` | `#597EF7` | `#ADC6FF` | +| 停用/灰色 | `#FAFAFA` | `rgba(0,0,0,0.45)` | `#D9D9D9` | + +### 4.2 交互模式 + +| 模式 | 宽度 | 使用场景 | +|------|------|----------| +| 抽屉(Drawer) | 480px~640px | 新建/编辑/详情(从右侧滑入,背景遮罩) | +| 弹窗(Dialog) | 520px~560px | 导入文件/上传照片 | +| 独立页面 | 全宽 | 设备详情/参数配置/维修工单详情/维修统计 | + +### 4.3 表格/列表规范 + +- 表头背景:`#FAFAFA` +- 行分隔线:`#F0F0F0` +- 分页组件:左侧显示"显示 X-Y / 共 N 条",右侧页码按钮 +- 操作按钮:绿色文字链接 `#4a7c59`,危险操作红色 `#FF4D4F` + +### 4.4 表单规范 + +- 必填标记:红色星号 `*` +- 输入框边框:`#D9D9D9` +- 主按钮:`#4a7c59` 绿色背景白色文字 +- 次按钮:`#D9D9D9` 边框灰色文字 +- 危险按钮:`#FF4D4F` 边框红色文字 +- 禁用状态:`#D9D9D9` 背景 + +--- + +## 五、页面路由总览 + +| 路由 | 页面 | 交互方式 | 文件 | +|------|------|----------|------| +| `/` | 首页 Dashboard | 卡片点击跳转 | `Dashboard.vue` | +| `/models` | 设备型号管理 | 抽屉(新增型号/Checklist模板) | `DeviceModelManagement.vue` | +| `/boards` | 板卡型号管理 | Tab筛选 + 抽屉(详情) | `BoardManagement.vue` | +| `/devices` | 设备列表 | 筛选 + 卡片列表 | `DeviceList.vue` | +| `/devices/:id` | 设备详情 | 独立页面 | `DeviceDetail.vue` | +| `/registration` | 设备登记 | 弹窗(导入/拍照) | `DeviceRegistration.vue` | +| `/licenses` | 授权管理 | 抽屉(选择授权项) | `LicenseManagement.vue` | +| `/firmware` | 固件库 | 弹窗(上传固件) | `FirmwareLibrary.vue` | +| `/config-files` | 配置文件管理 | 抽屉(新建配置) | `ConfigFileManagement.vue` | +| `/config-files/:configId` | 参数配置 | 独立页面 | `ParameterConfiguration.vue` | +| `/calibration` | 校准管理 | 表格列表 | `CalibrationRecords.vue` | +| `/repair` | 维修工单 | 抽屉(新建/处理/详情) | `RepairOrders.vue` | +| `/repair/stats` | 维修统计 | 独立页面 | `RepairStats.vue` | +| `/repair/:orderId` | 工单详情 | 独立页面 | `RepairOrderDetail.vue` | +| `/scrap` | 报废管理 | 抽屉(详情/审批/回收) | `ScrapManagement.vue` | + +--- + +## 六、跨模块数据流关系 + +``` +设备型号管理 ──→ 授权管理(按设备型号绑定授权项) +设备型号管理 ──→ 配置管理(按设备型号绑定配置文件) +板卡型号管理 ──→ 固件库(按板卡型号关联固件) +设备型号管理 ──→ 设备登记(Checklist模板按型号配置) + +设备登记 ──→ 设备列表(登记完成后出现在列表中) +设备列表 ──→ 设备详情(点击查看) + +设备详情 ──→ 校准记录(查看校准信息) +设备详情 ──→ 维修工单(查看维修历史) + +维修工单 ──→ 报废管理(申请报废) +维修工单 ──→ 校准记录(更换采集板需重新校准) + +报废管理 ──→ 维修工单(关联来源工单) +报废管理 ──→ 设备登记(回收入库后物料重新登记) +``` diff --git a/src/app/components/Sidebar.vue b/src/app/components/Sidebar.vue index f832c0a..f70393f 100644 --- a/src/app/components/Sidebar.vue +++ b/src/app/components/Sidebar.vue @@ -44,7 +44,8 @@ const isActive = (path: string) => const menuGroups = [ { title: '设备', items: [ { path: '/devices', label: '设备列表', icon: Monitor }, - { path: '/models', label: '型号管理', icon: Settings2 }, + { path: '/models', label: '设备型号管理', icon: Settings2 }, + { path: '/boards', label: '板卡型号管理', icon: Cpu }, ]}, { title: '授权', items: [ { path: '/licenses', label: '授权管理', icon: Key }, diff --git a/src/app/pages/BoardManagement.vue b/src/app/pages/BoardManagement.vue new file mode 100644 index 0000000..1982930 --- /dev/null +++ b/src/app/pages/BoardManagement.vue @@ -0,0 +1,265 @@ + + + diff --git a/src/app/pages/CalibrationRecords.vue b/src/app/pages/CalibrationRecords.vue index ef0afc0..653dd50 100644 --- a/src/app/pages/CalibrationRecords.vue +++ b/src/app/pages/CalibrationRecords.vue @@ -1,9 +1,8 @@ - - diff --git a/src/app/pages/LicenseManagement.vue b/src/app/pages/LicenseManagement.vue index 4d13cc1..27ad4fe 100644 --- a/src/app/pages/LicenseManagement.vue +++ b/src/app/pages/LicenseManagement.vue @@ -60,11 +60,11 @@ const onModelChange = () => { }) } -interface License { licenseId: string; model: string; status: '已发布' | '草稿' | '已停用'; modules: string; expiry: string; createdDate: string } +interface License {model: string; status: '已发布' | '草稿' | '已停用'; modules: string; expiry: string; createdDate: string } const licenses: License[] = [ - { licenseId: 'LIC-GD10-Supreme-v1.0', model: 'GD-10 Supreme', status: '已发布', modules: '1D SP, 2D SP, 1D VES, 2D ERT, 1D IP, 2D IP', expiry: '永久', createdDate: '2025-02-01' }, - { licenseId: 'LIC-GD20-Supreme-v1.0', model: 'GD-20 Supreme', status: '已发布', modules: '全部模块', expiry: '永久', createdDate: '2025-02-05' }, - { licenseId: 'LIC-GD30-Supreme-v1.0', model: 'GD-30 Supreme', status: '草稿', modules: '全部模块(不含水上)', expiry: '1年', createdDate: '2025-02-08' }, + {model: 'GD-10 Supreme', status: '已发布', modules: '1D SP, 2D SP, 1D VES, 2D ERT, 1D IP, 2D IP', expiry: '永久', createdDate: '2025-02-01' }, + {model: 'GD-20 Supreme', status: '已发布', modules: '全部模块', expiry: '永久', createdDate: '2025-02-05' }, + {model: 'GD-30 Supreme', status: '草稿', modules: '全部模块(不含水上)', expiry: '1年', createdDate: '2025-02-08' }, ] const getStatusStyle = (s: License['status']) => { if (s === '已发布') return { backgroundColor: '#F6FFED', color: '#52C41A', border: '1px solid #B7EB8F' } @@ -84,7 +84,7 @@ const getStatusStyle = (s: License['status']) => { 导出 @@ -96,7 +96,7 @@ const getStatusStyle = (s: License['status']) => {
授权说明
-
授权文件按设备型号管理,每个型号对应一套授权模块配置。点击"选择授权项生成"可按型号勾选功能模块并生成授权文件,设备在APP激活时自动下载对应型号的授权文件。
+
授权文件按设备型号管理,每个型号对应一套授权模块配置。点击"选择授权项"可按型号勾选功能模块,设备在APP激活时自动下载对应型号的授权文件。
@@ -127,7 +127,6 @@ const getStatusStyle = (s: License['status']) => { - @@ -138,7 +137,6 @@ const getStatusStyle = (s: License['status']) => { - @@ -175,7 +173,7 @@ const getStatusStyle = (s: License['status']) => {
-

选择授权项生成

+

选择授权项

@@ -243,7 +241,7 @@ const getStatusStyle = (s: License['status']) => { :style="{ backgroundColor: selectedCount > 0 ? '#52C41A' : '#D9D9D9' }" :disabled="selectedCount === 0" @click="showDrawer = false" - >生成授权文件({{ selectedCount }}项) + >保存
diff --git a/src/app/router.ts b/src/app/router.ts index a2c1850..20dfb37 100644 --- a/src/app/router.ts +++ b/src/app/router.ts @@ -13,8 +13,8 @@ export const router = createRouter({ { path: 'devices', component: () => import('./pages/DeviceList.vue') }, { path: 'devices/:id', component: () => import('./pages/DeviceDetail.vue') }, { path: 'registration', component: () => import('./pages/DeviceRegistration.vue') }, + { path: 'boards', component: () => import('./pages/BoardManagement.vue') }, { path: 'licenses', component: () => import('./pages/LicenseManagement.vue') }, - { path: 'licenses/generate', component: () => import('./pages/LicenseGenerate.vue') }, { path: 'calibration', component: () => import('./pages/CalibrationRecords.vue') }, { path: 'repair', component: () => import('./pages/RepairOrders.vue') }, { path: 'repair/stats', component: () => import('./pages/RepairStats.vue') },
授权文件ID 适配型号 授权模块 有效期
{{ lic.licenseId }} {{ lic.model }} {{ lic.modules }} {{ lic.expiry }}