Files
supervision-test-frontend-repo/qa-report/bqtakepulse/QA_REPORT_UX.md
T
wsm 237a5810cf !145 docs(xispeak): 归档前端页面 QA 审查报告(用户视角)
* docs(xispeak): 归档前端页面 QA 审查报告(用户视角)
* docs(fixcontact): 归档前端页面 QA 审查报告(用户视角)
* docs(inspectTask): 归档前端页面 QA 审查报告(工程师+用户视角)
* docs(bqtakepulse): 归档前端页面 QA 审查报告(工程师+用户视角)
* docs(bgpartymatter): 归档前端页面 QA 审查报告(工程师+用户视角)
2026-08-11 07:27:58 +00:00

14 KiB
Raw Blame History

前端页面用户视角审查报告 — 我为四所把把脉(bg/bqtakepulse/BgTakepulseList

审查信息

  • 页面/路由:http://127.0.0.1:3100/bg/bqtakepulse/BgTakepulseList
  • 审查日期:2026-08-11
  • 审查视角:业务用户(兼顾首次使用的新手)
  • 相关文件:src/views/bg/bqtakepulse/BgTakepulseList.vueBgTakepulseForm.vueBgTakepulseModal.vueBgTakepulse.data.tsBgTakepulse.api.ts
  • 证据目录:qa-tmp/bqtakepulse/screenshots/ + walk*.log + new_modal_fields.json + scripts/probe_1920_log.json

说明:本报告为"用户视角"审查,所有问题均来自浏览器实测(用户实际操作触发 + 截图/操作日志/后端响应为证)。涉及代码的部分仅用于定位根因,不替代实测。 视觉复核:P2-4 已用 claude-vision-skill 复核 1920×1080 截图 + DOM 实测。vision 只能确认可视区内内容,判断不了被横向滚动藏住的列(曾误判"右边没有未显示列"),溢出/隐藏列以 DOM 实测(probe_1920_log.json)为准。

总体结论

  • P0 × 0 P1 × 2 P2 × 6
  • 一句话总结:作为业务用户,这个页面"查台账、看详情、查流程、下载模板"这些日常动作基本能办成,搜索/筛选/校验提示都算顺;但核心工具栏里的"导出"点了毫无反应(后端 500 静默失败),且新建表单里"牵头部门"这项必填却不打星号、提交失败了才知道,这两处会让用户卡住或以为系统坏了——页面对新用户"一眼就能上手"还有距离,但主要流程可以走通、数据无损。

P0 - 用户办不成事 / 会出错

无(实测范围内未发现会导致任务完全无法进行或数据丢失/误导的 P0 项)。

P1 - 明显受阻 / 容易困惑

# 用户场景 用户会遇到什么 后果 证据 位置
1 台账要拿给领导,点工具栏的"导出" 点导出后没有任何反应:不弹保存、不下载文件、不转 loading、也没有任何成功或失败提示。连点两次都这样。 数据导不出去,用户不知道是没点中、是卡了、还是系统坏了,会反复点、找别的方式导出,耽误事 实测点击"导出"2 次,后端 exportXls 接口两次都返回 HTTP 500,页面无 toast/无下载;证据 qa-tmp/bqtakepulse/screenshots/63_after_export2.png65_after_export_final.pngnetwork 记录见 walk14_log.txt/walk15_log.txt500×2toasts 为空) 表头"导出"按钮(BgTakepulseList.vue:53,走 useListPageonExportXls);根因在后端 exportXls500),前端未把失败反馈给用户
2 新建一条意见,看到必填项随手填 牵头部门这一栏页面上没有任何"必填"星号,看起来可填可不填;直接提交时却被拦下报"请选择牵头部门"。 必填项全靠用户"试错"才知道,提交一次失败一次,让人不耐烦;新手可能以为系统乱拦 空表单提交校验报错原文:请选择年份 / 请选择密级 / 请输入意见主题 / 请选择牵头部门qa-tmp/bqtakepulse/screenshots/17_validation_empty.png);而实测弹窗字段结构里牵头部门 required: false、无红色星号new_modal_fields.json);代码 BgTakepulseForm.vue:260-269responDeptid 只写了自定义 validator、rule 里没有 required 新建弹窗表单项"牵头部门"(BgTakepulseForm.vue:68-71

P2 - 体验细节

# 用户场景 用户会遇到什么 后果 证据 位置
1 想看一下某条意见的详细内容,点意见主题 点标题看详情的同时,下面的"办理情况"反馈区也被一起展开了,关掉详情弹窗后多出一个我没让打开的展开区,还得手动再收起 多一步多余动作,页面状态和用户意图不符,轻微困惑 实测点击标题前展开图标为 collapsed,点击后变 expanded 且页面同时出现"办理情况"区(qa-tmp/bqtakepulse/screenshots/15_title_click_expand.pngwalk3_log.txt A 段) 标题链接 @click="handleDetail" 未阻止冒泡,与 expandRowByClick: trueBgTakepulseList.vue:220,84-88)叠加触发
2 要发起督办流程,选"所办领导" 流程发起弹窗里"所办领导"的选项显示的是内部编码 bg_ld_01dd_ld_02 而不是人名,看不出是谁 用户无法识别审批人是谁,可能选错人或不敢选;此为流程关键字段 实测发起流程弹窗文案含 所办领导 bg_ld_01 dd_ld_02qa-tmp/bqtakepulse/screenshots/59_process_modal.png 流程发起弹窗"所办领导"选项(DeptRoleUserSelectRadioGroup 渲染;疑似用户表缺可读姓名,根因待后端确认)
3 填部门相关的字段(牵头/协办部门) 部门选择树里显示的是缩写编码QLS、SLD、BG部、DQ部、SZHZX、RH、JJ、DD,新用户看不懂哪个部门是哪个 选部门靠猜,容易选错 实测部门树节点即这些缩写(qa-tmp/bqtakepulse/screenshots/25_dept_picker.png50_dept_picker.pngwalk9_log.txt 部门选择组件数据源(部门树本身的数据/编码)
4 台账很多列,想看看某条"完成状态/完成时间" 表格有 25 列且很多宽列,第一屏只看到前 10 列左右,"完成状态"(第 24 列)在很右边,要一直往右拖才看得到;"操作"列固定在最右始终可见,反而容易让人以为就这些列 每看一条都要大量横向滚动才能看到关键状态,效率低 1920×1080 视口 DOM 实测:表格 .ant-table-content 总宽 3848px、可视区仅 1680pxqa-tmp/bqtakepulse/scripts/probe_1920_log.json;截图 66_list_1920_viewport.png66_list_1920_full.png);列配置 25 列、完成状态 为第 24 列未固定(BgTakepulse.data.ts:8-160);vision 复核截图确认视口内约 10 列、右端为固定"操作"列 表格列配置 BgTakepulse.data.ts"完成状态"第 24 列,未固定;"操作"为固定右列)
5 搜不到想找的记录 空结果显示一张空表 + "暂无数据"没有"没有匹配数据,去清除筛选"之类的引导,用户得自己去找上方的"重置" 轻度困惑,新手可能以为数据丢了 实测搜索不存在关键词显示"暂无数据"(qa-tmp/bqtakepulse/screenshots/06_empty_search.png 列表空态(BgTakepulseList.vue 未配置空态引导文案)
6 删除一条记录 删除有二次确认(好),但确认框只写"是否确认删除",没说删的是哪条、也没提示删除是否可恢复;且对正在督办中的记录同样允许删 误删后无法撤销,确认信息不足以让用户做出正确判断 实测删除 popconfirm 文案 是否确认删除qa-tmp/bqtakepulse/screenshots/64_delete_popconfirm.png);代码推断:删除接口不校验 bpmStatus,督办中记录也可删(代码推断,待实测,未对真实督办中记录执行删除以免破坏数据) 删除 popconfirmBgTakepulse.api.ts:65-69deleteOne

用户会觉得顺的地方

  • 顶部统计标签很直观:未开始 / 督办中(已逾期 n)/ 已完成 一眼看清整体进度,用户不用数表格就能知道大概情况。
  • 空表单提交的校验提示具体、标红:"请选择年份 / 请选择密级 / 请输入意见主题 / 请选择牵头部门",指哪错哪,比笼统的"请检查必填项"好很多。
  • 搜索顺手:意见主题输入框支持回车即查、提示了"支持模糊查询";四个筛选条件(主题/分管所领导/牵头部门/协办部门)+ 查询/重置,够用。
  • 点标题看详情符合直觉;**行内展开看"办理情况"**并带状态统计标签(未开始/进行中/已完成 + 共 N 条),信息组织清晰。
  • 下载模板可用(实测下载"把把脉-导入模板.xls"成功)。
  • 删除有二次确认,不会一点就没了。
  • 行按完成状态着色(黄/红/绿),状态一眼区分(注:实测配色为浅粉彩,单行浅红 #fff1f0 与白行区分度中等,快速扫视可能忽略);"操作"列固定在最右始终可见。

12 维度核对结果汇总

# 维度 通过 问题(简写+证据位置)
1 目标达成 部分 搜索/详情/查流程/下载模板可用;导出失败无果(P1-1);新建成功保存链路未能完整实测(见"待实测")
2 可发现性 通过 新增/导出/下载模板/模板校验/模板导入/高级查询都在表头一眼可见;行操作在"更多"下拉
3 可学习性 问题 牵头部门必填无星标(P1-2);部门树缩写看不懂(P2-3);所办领导显示编码(P2-2)
4 效率 问题 25 列超宽表大量横向滚动(P2-4);新建需填 4 项必填
5 认知负荷 问题 25 列同屏信息过载;统计标签+工具栏+查询区较满
6 文案清晰度 部分 校验文案具体;但所办领导编码/部门缩写看不懂(P2-2/3);删除确认文案笼统(P2-6)
7 反馈及时性 问题 导出静默失败无任何提示(P1-1);保存成功是否有提示未实测(见"待实测")
8 误操作防护 部分 删除有确认;但确认信息不点明记录与后果(P2-6);督办中记录删除未做防护(代码推断,待实测)
9 空态/加载/错误态 部分 空搜索"暂无数据"但无清除筛选引导(P2-5);导出失败无错误态(P1-1)
10 无障碍细节 待实测 未用键盘走查关键流程;长文本在宽列内正常换行未发现撑爆
11 视觉一致性 通过 与平台其他页面(jeecg 风格)一致;行状态配色、操作列固定均正常
12 边界场景 部分 空表单校验友好;超长文本/特殊字符/快速连点等未专项实测(见"待实测")

用户任务走查记录

  • 任务 1:搜索/筛选台账记录 → 登录后进列表,用"意见主题"输入框模糊查 assac 命中 1 条;查不存在的词显示"暂无数据";点"重置"恢复全量。各步截图 01_login → 05_search_assac → 06_empty_search → 07_after_reset顺畅
  • 任务 2:查看详情 / 展开办理情况 → 点意见主题标题打开"详情"弹窗(只读);同时行被连带展开出现"办理情况"区(P2-1)。显式点展开图标也能看到反馈表(该记录暂无反馈数据)。截图 08_detail_modal12_expand_feedback15_title_click_expand基本顺畅,有 1 处多余展开
  • 任务 3:新建一条意见记录 → 点"新增"打开表单;空表单点"确 认"被 4 项校验拦下(报错明确、标红字段清晰,见 P2 维度);依次填年份/密级/意见主题并尝试选牵头部门。自动化未能驱动"部门选择"弹窗把值写回表单(多次尝试未果,属测试手段限制,非用户侧证据),因此"成功保存"这一步未实测到;牵头部门必填但无星标为实测发现(P1-2)。截图 16_new_modal17_validation_empty41_secret_dropdown50_dept_picker
  • 任务 4:查询/发起督办流程 → 在"更多"下拉见"详情/删除/查询督办流程/再次督办"(该记录为督办中,故显示"再次督办"而非"发起督办流程",符合业务);"查询督办流程"打开流程列表(含流程图/审批历史等);"再次督办"打开流程发起弹窗(标题正确、字段齐全,但"所办领导"显示编码——P2-2)。全部只打开未提交,无数据变更。截图 57_dropdown_assac58_query_process59_process_modal顺畅
  • 任务 5:导出 / 下载模板 / 删除确认 → "下载模板"成功下载 xls"导出"点击后无文件下载、无任何提示,后端 exportXls 返回 500(P1-1,实测 2 次);删除弹 popconfirm"是否确认删除"后取消(未删真实数据)。截图 61_after_template63_after_export265_after_export_final64_delete_popconfirm

待实测 / 代码推断(未进 P0/P1/P2 分级)

以下项因无法在本次实测中完成,按纪律只列在待实测区,不参与级别判定:

  1. 新建记录的"成功保存"全链路:自动化无法驱动"部门选择"弹窗将选择值写回表单,导致表单始终缺"牵头部门"而被校验拦截,未能实测到"保存成功→列表新增→成功反馈"。从代码看保存逻辑(BgTakepulseModal.handleSubmit → submitForm → saveOrUpdate)完整,无证据表明真实用户无法创建记录,需人工或换一种自动化方式实测确认(包括保存成功后是否有"保存成功"提示——代码中 submitSuccess 仅关闭弹窗,未见显式 toast,待实测)。
  2. 删除正在督办中(有运行中流程)的记录:代码中 deleteOne 不校验 bpmStatus,理论上可直接删掉有流程的记录(可能造成流程与台账脱节)。因会破坏真实数据,未实测,仅代码推断(BgTakepulse.api.ts:65-69)。
  3. 导出失败的根因归属:实测页面"导出"触发后端 exportXls 返回 HTTP 500(复现 2 次)。这是后端异常;前端未把失败反馈给用户。属后端问题还是环境问题需后端确认,用户侧影响已按 P1-1 记录。
  4. 键盘走查 / 特殊字符 / 超长文本 / 快速连点 等边界场景未专项实测。
  5. 测试数据卫生:本次尝试创建 QA_UX_PULSE_* 记录均未成功(未发送任何新增请求),无 QA_UX 残留;实测前后台账记录数均为 1assac),已确认无污染。