# 企业信息管理 — 测试报告(最新) > 覆盖模块:机构信息、部门岗位、人员信息、人员变更、离职申请、资质证书、装备信息 > 原型对照:`docs/原型/设计文件 (3).pdf` ~ `设计文件 (9).pdf` > 更新日期:2026-06-23 --- ## 1. 测试环境 | 项 | 说明 | |---|---| | 前端 | `safety-eval-service-frontend`,`npm run dev` / `pnpm dev` | | 后端 | `safety-eval-service`,`http://127.0.0.1:8095/safety-eval`,profile=`local` | | 数据库 | 执行 `safety-eval-service/docs/init-v2.sql` 及末尾测试数据段 | | Node | `source scripts/setup-test-env.sh` 或 JetBrains Node 24.x | --- ## 2. 自动化脚本 ### 2.1 接口联调(细粒度) ```bash cd safety-eval-service-frontend source scripts/setup-test-env.sh # 可选 node scripts/test-enterprise-info-granular.mjs ``` - 脚本:`scripts/test-enterprise-info-granular.mjs` - 覆盖:8 模块 CRUD、分页、搜索、字段组装(`deptName`/`postName`/`account`/`auditStatusCode`) - 环境变量:`API_BASE`(默认 `http://127.0.0.1:8095/safety-eval`) ### 2.2 前端 UI 静态检查 ```bash node scripts/test-enterprise-info-ui-check.mjs ``` - 脚本:`scripts/test-enterprise-info-ui-check.mjs` - 检查:公共工具、列表列、弹窗布局、变更次数样式、默认上传配置 ### 2.3 一键执行 ```bash node scripts/test-enterprise-info-granular.mjs && node scripts/test-enterprise-info-ui-check.mjs ``` --- ## 3. 问题修复对照(用户反馈 8 项) | # | 问题 | 处理方式 | 验证用例 | |---|------|----------|----------| | 1 | 列表未展示部门/岗位 | 后端 `OrgPersonnelViewEnricher` 组装 `deptName`/`postName`;前端 adapter 映射 | EI-API-STAFF-05~08;UI-STAFF-03 | | 2 | 新增/编辑文字遮挡 | 弹窗改 `layout="vertical"` 或 `labelCol/wrapperCol=24` | UI-PAGE-*-03;手工打开各模块弹窗 | | 3 | 离职缺审核状态/用户名 | CO 增 `account`;enricher 组装;列表 Tag 展示 | EI-API-RESIGN-04~05;UI-RESIGN-01~02 | | 4 | 页面卡顿/报错 | 去掉失败的上传/删文件调用;修复 SELECT 空选项 | 控制台无红错;列表加载 <3s | | 5 | 变更次数配色 | `CHANGE_COUNT_STYLE` 蓝色高亮/灰色零值 | UI-CHANGE-01;人员变更列表目视 | | 6 | 新增人员部门/岗位不可选 | 人员表单改用 antd `Select`;`formSelectField` 适配 Search | UI-STAFF-01~02;TC-STAFF-03 | | 7 | 上传默认通过 | `src/utils/mockUpload.js` 固定 URL | UI-COMMON-03;TC-UPLOAD-* | | 8 | 其他页面问题 | 见第 4 节用例矩阵 | 全量手工 + 自动化 | --- ## 4. 测试用例矩阵 ### 4.1 机构信息(原型:设计文件 3) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-ORG-01 | UI | 进入机构信息页 | 标题/副标题与原型一致;表单只读 | | TC-ORG-02 | 功能 | 点击修改 → 暂存 | 成功提示;`authStatusCode=0` | | TC-ORG-03 | 功能 | 点击提交 | 成功提示;字段回显正确 | | TC-ORG-04 | API | EI-API-ORG-* | 分页/详情/修改通过 | ### 4.2 部门岗位(原型:设计文件 4) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-DEPT-01 | UI | 左侧树 + 右侧列表 | 布局与原型一致 | | TC-DEPT-02 | 功能 | 新增/编辑部门 | 弹窗 vertical,文字不遮挡 | | TC-DEPT-03 | 功能 | 进入岗位列表,增删改岗位 | 岗位关联当前部门 | | TC-DEPT-04 | API | EI-API-DEPT/POS-* | 通过 | ### 4.3 人员信息(原型:设计文件 5) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-STAFF-01 | UI | 列表列 | 用户名称、账号、**部门**、**岗位**、证照 | | TC-STAFF-02 | 功能 | 搜索部门/岗位 | 下拉有选项,筛选生效 | | TC-STAFF-03 | 功能 | 新增人员,选部门后选岗位 | 岗位按部门过滤,可提交 | | TC-STAFF-04 | 功能 | 编辑/查看/重置密码/删除 | 各操作正常 | | TC-STAFF-05 | 功能 | 证书子页 | 上传默认 URL,增删改查 | | TC-STAFF-06 | API | EI-API-STAFF/CERT-* | 通过;列表含 deptName/postName | ### 4.4 人员变更(原型:设计文件 6) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-CHANGE-01 | UI | 信息变更数 >0 | 蓝色链接样式,可点进日志 | | TC-CHANGE-02 | UI | 变更数 =0 | 灰色显示 | | TC-CHANGE-03 | 功能 | 离职审核通过/退回 | 状态 Tag 更新 | | TC-CHANGE-04 | API | EI-API-CHANGE-* | 分页通过 | ### 4.5 离职申请(原型:设计文件 7) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-RESIGN-01 | UI | 列表 | 用户名、姓名、部门、**审核状态 Tag** | | TC-RESIGN-02 | 功能 | 新增离职申请 | 弹窗 vertical;上传默认通过 | | TC-RESIGN-03 | 功能 | 按审核状态筛选 | 结果正确 | | TC-RESIGN-04 | API | EI-API-RESIGN-* | account/auditStatusCode 有值 | ### 4.6 资质证书(原型:设计文件 8) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-QUAL-01 | UI | 列表/弹窗 | 标签不遮挡;保密提示可见 | | TC-QUAL-02 | 功能 | 新增证书 + 上传 | 默认图片 URL 写入 `certImageUrl` | | TC-QUAL-03 | API | EI-API-QUAL-* | 通过 | ### 4.7 装备信息(原型:设计文件 9) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-EQUIP-01 | UI | 列表/弹窗 | 双列表单,标签完整 | | TC-EQUIP-02 | 功能 | 是否双路下拉 | 可选是/否 | | TC-EQUIP-03 | API | EI-API-EQUIP-* | 通过 | ### 4.8 上传(全局) | ID | 类型 | 步骤 | 预期 | |----|------|------|------| | TC-UPLOAD-01 | 功能 | 离职报告上传 | `reportFileUrl` = 默认 URL | | TC-UPLOAD-02 | 功能 | 机构/人员证书上传 | `certImageUrl` / `certAttachmentUrl` = 默认 URL | --- ## 5. 原型 UI 对照检查清单 手工打开各页,对照 PDF 检查: - [ ] 页面标题、副标题文案 - [ ] 搜索区字段与原型一致 - [ ] 表格列顺序、列名 - [ ] 主按钮文案(新增/添加) - [ ] 弹窗宽度、表单项顺序 - [ ] 信息变更数颜色(蓝/灰) - [ ] 审核状态 Tag 颜色(灰/绿/红) - [ ] 无控制台 Error / 无长时间 Loading --- ## 6. 执行记录(2026-06-23 第二轮) ``` 接口测试: 58 / 58 通过 UI 静态检查: 31 / 31 通过 本轮修复: - 资质 remark 全链路 + 启用/禁用按钮 - 人员变更:账户列、变更数颜色(String key)、就职状态/审核状态 Tag、后端 employmentStatusCode 查询 - 人员:移除重置密码、birthDate dayjs 回显/提交格式化 - 部门岗位:左树右岗布局,按 deptId 查岗位 - 离职:账户列、remark 分离、personnelId 自动匹配、时间格式化 - 装备:instrumentType 列表字段、表单回显 - 时间:formatDateTime → YYYY-MM-DD HH:mm:ss ``` ## 7. 执行记录(2026-06-23 第一轮) ``` 执行人:自动化脚本 执行时间:2026-06-23(后端重启后) 后端:http://127.0.0.1:8095/safety-eval 接口测试: 58 / 58 通过 UI 静态检查: 31 / 31 通过 字段组装验证(已通过): - EI-API-STAFF-05~08:deptName / postName 正常 - EI-API-RESIGN-04~05:auditStatusCode / account 正常 重跑命令: source scripts/setup-test-env.sh node scripts/test-enterprise-info-granular.mjs node scripts/test-enterprise-info-ui-check.mjs ``` ### 6.1 手工记录模板 --- ## 7. 已知限制 1. **上传**:联调阶段不走真实文件服务,统一写入固定花瓣 URL。 2. **原型像素级**:PDF 与 Ant Design 组件存在间距差异,以字段/交互一致为准。 3. **人员变更删除**:列表删除为变更记录删除,与人员主数据删除不同,需与产品确认。 --- ## 8. 相关代码路径 | 用途 | 路径 | |------|------| | 页面 | `src/pages/Container/EnterpriseInfo/**` | | API 适配 | `src/api/enterpriseInfo/adapter.js` | | 表单工具 | `src/utils/enterpriseForm.js` | | 上传 Mock | `src/utils/mockUpload.js` | | 后端组装 | `safety-eval-app/.../OrgPersonnelViewEnricher.java` |