Files
Yb-QaAutomationHub/output/versions/物流公司管理需求/v2/物流公司管理需求_测试用例.md
T
xst 8c61209dd4 test(物流公司管理需求): 需求文档与 QE Fleet 全流程设计产物入库
- 需求 v1.1 + 2026-09-29 需求方确认的 Q7~Q19 决议(含 BR-07/BR-09/6.7/6.9 矛盾表述修订)
- 测试点 159 个、测试用例 164 条(P0 55/P1 81/P2 23/P3 5),需求→测试点→用例三级追溯覆盖率 100%
- 质量裁决 PASS(首轮 PASS_WITH_FIX,13 项待确认确认后复裁决升级);评审原始 2 阻断项+9 建议项+3 优化项已全部修复
- 确认单:与 4 个历史需求均为并行关系、0 冲突、0 回写
- 附导出 v1/v2 版本快照、Playwright/Appium 脚本骨架、覆盖率审计脚本与指标、评审修复脚本
2026-09-29 10:03:35 +08:00

266 lines
178 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 物流公司管理需求 测试用例
> 生成时间: 2026-09-29
> 依据: requirements/物流公司管理需求.md(v1.1,Q1–Q6 决议已确认)/ output/normalized_inputs/物流公司管理需求/requirement.md、output/test_points/物流公司管理需求_测试点.md(159 个测试点:模块 A~J + X,P0:53/P1:78/P2:23/P3:5)、output/analysis/物流公司管理需求_测试数据.md(LC-01~LC-07 花名册、V 表边界字面值、UC/PH/SC/UQ/DOC/AT/QR/CN/CD/TX 样本)、output/analysis/物流公司管理需求_分析.md(BR-01~BR-09、REQ-001~038、11.2 五项待确认口径已于 2026-09-29 全部确认)、output/analysis/物流公司管理需求_关联与冲突.md、knowledge_base/00_project/project_profile.md、knowledge_base/01_standards/test_case_template.md、knowledge_base/01_standards/review_checklist.md
> 核心口径(全文不得写反): 物流公司及其在运单/货源/打款上的关联**仅作记录展示、不影响任何流程**;唯一强约束为档案自身的 BR-01 唯一性 + BR-04 删除保护;核算即运单核算(禁用"核算单"表述,无独立核算单);空值统一展示"无外协公司";停用公司在核算勾选弹窗不可见、在打款筛选下拉可见(两个相反口径分别成例)
> 用例编号前缀: `PLT_BSC_LC`(平台端-基础信息-物流公司管理:档案/合同/档案侧权限与日志,编号 001~083);`PLT_TMS_LC`(平台端-整车运输-物流公司关联:核算/货源/打款/列表展示/权限隔离/跨需求回归,编号 001~081)
>
> **测试用例总数: 164**
> **优先级分布: P0=55 / P1=81 / P2=23 / P3=5**
> **类型分布: 功能测试 135 / 回归测试 13 / 安全性测试 11 / 冒烟测试 2 / 性能测试 1 / 兼容性测试 1 / 易用性测试 1**
> **模块分布: 菜单与列表查询 15 / 新增 28 / 编辑 5 / 删除与启停用 13 / 合同管理 22 / 运单核算关联 25 / 货源选择 8 / 打款筛选 11 / 列表展示与快照 12 / 权限隔离与日志 10 / 跨需求回归 14 / 端到端冒烟 1**
> **测试点映射覆盖率: 159/159 全覆盖(100%)——P0 测试点 53 个 100% 对应用例(其中 TP-B-009 拆为 024/025 两条 P0 用例,P0 用例共 55 条);P1 测试点 78 个 100% 对应用例;P2 测试点 23 个全部保留;P3 测试点 5 个全部保留(无裁剪,取舍说明见文末)**
>
> 阅读约定: 本文件全文仅一个用例总表(表头 + 分隔线 + 164 行数据连续无间断);"测试数据"列引用 output/analysis/物流公司管理需求_测试数据.md 的数据ID(LC/UC/PH/SC/UQ/HY/WT/RA/PY/DL/SS/ACC/BLK/DOC/AT/QR/CN/CD/TX 等),不写"输入合法数据";日期样本基准日 T=2026-09-29(T±n 具体日期见测试数据 §0.3,执行日不同则整体平移);账号主用 ACC-001(super_admin / 951260684NiAn..,测试环境 https://ybxcx.ynyun8.com:8000/admin),ACC-02 运营管理员 / ACC-03 核算人员 / ACC-04 财务人员 / ACC-05 跨机构账号(机构B)为待授权补充账号(数据缺口 #1~#5);运单号/货源号/打款单号为逻辑占位(WT-01~WT-10、HY-01~HY-07、PY-01~PY-07),执行时替换为测试环境真实编号(数据缺口 #7);文末"确认结论"章节集中列出 11 处测试点原待确认项与 6 项口径细化项(**均已于 2026-09-29 全部确认**,用例已按确定口径断言)。
## 用例编号与覆盖说明
- 编号规则: PLT_BSC_LC_001~083 覆盖模块 A/B/C/D/E 与以档案侧为主的权限用例(057~062 中 058/059/060/061/062 亦为档案侧);PLT_TMS_LC_001~081 覆盖模块 F/G/H/I 与运输结算侧权限、跨需求回归及端到端冒烟(063 弹窗机构隔离、065 合同与核算日志、067~074 打款回归、075~080 解耦与范围防护、081 冒烟)。
- 原子性约定: 一条用例只验证一个主验证点;正向/异常/边界不合并;同一测试点内"接受 vs 拒绝"、"启用 vs 停用 vs 已删除"按状态拆分。
- 组合约定: 同类边界两侧(如 50/51 字符、20000/20001 条)在一条用例内成对验证;纯排查类与(原)记录实际行为类场景独立成条——其待确认口径已于 2026-09-29 全部确认,用例已按确定口径断言,并在备注标注 `[已确认 2026-09-29: ...]` 与 `[AI修正: 待确认已确认 2026-09-29]`。
| 用例编号 | 模块 | 用例标题 | 优先级 | 类型 | 前置条件 | 测试步骤 | 测试数据 | 预期结果 | 备注 |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| PLT_BSC_LC_001 | 平台端-基础信息-物流公司管理 | 验证"物流公司管理"菜单挂载位置与页面骨架完整 | P0 | 冒烟测试 | ACC-001(super_admin)已登录平台端管理后台,且角色已配置"物流公司管理"菜单权限 | 1. 展开左侧菜单"基础信息"<br>2. 进入"承运管理"子菜单核对新增项<br>3. 点击"物流公司管理"进入页面<br>4. 自上而下核对查询条件区、操作按钮区、列表表格与分页组件<br>5. 核对面包屑与菜单高亮 | ACC-001;菜单名称逐字"物流公司管理"(REQ-001) | 1. "承运管理"下出现菜单项"物流公司管理",名称逐字一致、挂载位置正确<br>2. 页面自上而下依次为查询条件区、操作按钮区(查询/重置/新增/导出四个按钮)、列表表格与分页组件<br>3. 面包屑与左侧菜单高亮定位正确<br>4. 列表首屏加载成功,浏览器控制台无报错;角色-菜单权限关联数据中已含该菜单配置 | 对应TP-A-001;REQ-001(核心入口冒烟) |
| PLT_BSC_LC_002 | 平台端-基础信息-物流公司管理 | 验证列表查询条件五类控件齐全且类型正确 | P0 | 功能测试 | ACC-001 已进入"物流公司管理"列表页 | 1. 核对查询条件区控件构成<br>2. 在状态下拉中查看选项<br>3. 打开创建时间控件选择区间<br>4. 点击创建时间范围结束日=当天执行查询 | ACC-001;QR-05(创建时间含当天,日敏感);状态下拉选项=全部/启用/停用 | 1. 五个条件齐全:公司名称(输入框、模糊)、统一社会信用代码(输入框、模糊)、联系方式(输入框、模糊)、状态(下拉)、创建时间(日期范围)<br>2. 状态下拉默认选中"全部",选项为全部/启用/停用<br>3. 创建时间范围支持选择起止日期,结束日期当天创建记录可被筛出(含当天 23:59:59 口径)<br>4. 五个控件均参与接口查询参数传递(抓包核对参数名与值) | 对应TP-A-002;REQ-002 |
| PLT_BSC_LC_003 | 平台端-基础信息-物流公司管理 | 验证三个文本条件各自模糊匹配且互不串字段 | P1 | 功能测试 | ACC-001 已登录;环境存在 LC-01(云南测试甲物流有限公司 / 91530102MA6N4K7X52 / 联系方式 13800138000)与 LC-02 等档案 | 1. 公司名称输入"测试甲"点查询<br>2. 清空后统一社会信用代码输入"91530102"点查询<br>3. 清空后联系方式输入"138"点查询<br>4. 仅输入名称关键词"测试甲",记录返回集合逐行核对命中字段 | QR-01/QR-02/QR-03;LC-01、LC-02 | 1. 名称条件命中全部名称含"测试甲"的公司(含 LC-01),不含仅信用代码/联系方式命中项<br>2. 信用代码前缀"91530102"命中 LC-01;联系方式片段"138"命中对应公司<br>3. 三个条件互不串字段:仅填名称时不会把信用代码或联系方式匹配的记录带入结果<br>4. 每次返回记录均可在列表中定位、分页总数与结果数一致 | 对应TP-A-003;REQ-002 |
| PLT_BSC_LC_004 | 平台端-基础信息-物流公司管理 | 验证多条件组合查询结果精确且无结果有提示 | P1 | 功能测试 | ACC-001 已登录;LC-06(保山测试己运输有限公司,停用)与 LC-01 等档案存在 | 1. 状态选择"停用"+名称输入"保山"+创建时间选择本周范围点查询<br>2. 核对返回集合与分页总数<br>3. 追加联系方式条件为不可能命中的值"99999999999"再查询<br>4. 清空全部条件后核对列表 | QR-06;LC-06;QR-07 | 1. 组合条件仅返回同时满足"停用+名称含保山+创建时间在本周"的记录(含 LC-06),不含启用或越界记录<br>2. 组合筛选后分页总数与列表实际条数一致<br>3. 无结果组合时列表为空并有"暂无数据/未查询到"类明确提示(非空白表格)<br>4. 接口请求参数同时携带五个条件值,服务端按 AND 叠加过滤 | 对应TP-A-004;REQ-002 |
| PLT_BSC_LC_005 | 平台端-基础信息-物流公司管理 | 验证查询后分页归位与重置清空全部条件 | P1 | 功能测试 | ACC-001 已登录;公司数据量超过 1 页(见 BLK-01 的 25 条批量数据) | 1. 先翻至第 2 页<br>2. 输入名称"测试甲"点"查询"<br>3. 观察页码归位与结果<br>4. 点击"重置"后核对五个条件值与列表<br>5. 连续点击"重置"3 次核对无异常 | ACC-001;BLK-01(25 条);QR-08 | 1. 查询后分页自动回到第 1 页,结果为满足条件的记录<br>2. 重置后五个条件恢复默认(名称/信用代码/联系方式清空、状态回"全部"、创建时间范围清空),列表恢复全量<br>3. 重置后恢复默认排序(创建时间倒序)与默认每页 20 条<br>4. 连续重置无报错、无重复请求堆积、无控制台异常 | 对应TP-A-005;REQ-002(漏测清单 §4 查询/筛选/重置完整性) |
| PLT_BSC_LC_006 | 平台端-基础信息-物流公司管理 | 验证状态筛选"全部/启用/停用"三态逐一过滤准确 | P1 | 功能测试 | ACC-001 已登录;存在启用公司(LC-01 等)与停用公司(LC-06);存在已逻辑删除公司 1 家(用 LC-04 删除后构造,见 DL-04) | 1. 状态选"全部"点查询,记录结果与总条数<br>2. 状态切"启用"点查询,核对每行状态列<br>3. 状态切"停用"点查询,核对每行状态列<br>4. 检索已删除公司(LC-04)名称确认三态均不含 | QR-04;LC-01/LC-06;LC-04(已删除) | 1. "全部"返回启用+停用记录,不含已逻辑删除公司<br>2. "启用"仅返回启用记录、状态列全为绿;"停用"仅返回停用记录(含 LC-06)、状态列全为灰<br>3. 三种筛选的分页总数与各自实际记录数一致;筛选结果中状态列与所选值一一对应<br>4. 服务端查询条件 deleted=0 恒生效(已删除公司任何状态均不可见) | 对应TP-A-006;REQ-002(漏测清单 §5 状态拆分) |
| PLT_BSC_LC_007 | 平台端-基础信息-物流公司管理 | 验证创建时间范围边界:同日、倒置与跨月跨年 | P2 | 功能测试 | ACC-001 已登录;当天创建过 LC-04 修改记录 1 条(日敏感样本 QR-05,仅执行当天有效) | 1. 创建时间起止均选当天点查询<br>2. 起止选 T-1(2026-09-28)当天点查询<br>3. 起始选 T、结束选 T-1(倒置)点查询<br>4. 选择跨月范围(T-35 至 T)与跨年范围(2025-08-25 至 T)分别查询 | QR-05;T=2026-09-29;T-1=2026-09-28;T-35=2026-08-25 | 1. 起止=当天可筛出当天创建记录(含当天口径,结束日含 23:59:59)<br>2. 起止=T-1 不含当天创建的记录<br>3. 起始晚于结束时给出提示或返回空结果,页面不报错不崩溃<br>4. 跨月/跨年范围筛选结果正确,边界日期记录均被包含,接口未发生日期截断或时区偏移 | 对应TP-A-007;REQ-002(漏测清单 §5 边界条件) |
| PLT_BSC_LC_008 | 平台端-基础信息-物流公司管理 | 验证列表十类列完整、顺序正确与特殊展示口径 | P0 | 功能测试 | ACC-001 已登录;LC-01(含简称码 YNA、2 张生效中合同、被 WT-04 引用)与 LC-05(简称码 YNE,验证用)等存在 | 1. 逐列核对表头与顺序<br>2. 点击 LC-01 行公司名称超链接<br>3. 核对 LC-05 行简称码列展示(构造简称码为空的公司更佳)<br>4. 核对状态列颜色与创建人/创建时间取值<br>5. 核对操作列按钮 | LC-01;LC-05;REQ-003 | 1. 十类列齐全且顺序为:公司名称、简称码、统一社会信用代码、法人代表名称、联系人/联系方式、生效合同数、状态、创建人/创建时间、操作<br>2. 公司名称超链接点击进入该公司的编辑页<br>3. 简称码未设置时显示"-"(非空白、非 null)<br>4. 状态列启用为绿色开关、停用为灰色;创建人/创建时间为系统记录值(新增时的操作人与时间)<br>5. 操作列含"编辑""删除"两个入口,与列表数据行一一对应 | 对应TP-A-008;REQ-003(漏测清单 §4 列表字段一致性) |
| PLT_BSC_LC_009 | 平台端-基础信息-物流公司管理 | 验证列表默认按创建时间倒序且新建记录置顶 | P1 | 功能测试 | ACC-001 已登录;列表已有 3 家以上不同时间创建的启用公司 | 1. 首次进入列表记录各行的创建时间序列<br>2. 点击"重置"后再次核对序列<br>3. 新增一家公司(名称"云南测试甲物流有限公司"的变体不存在冲突者,如"云南测试排序验证物流有限公司")<br>4. 返回列表核对首行 | QR-09;新建公司名称"云南测试排序验证物流有限公司";UC 样本参照 UC-01 规则 | 1. 首次进入与重置后均按创建时间倒序(最新在前),序列一致<br>2. 新建公司返回列表后位于首位,其创建时间为当前操作时刻<br>3. 默认排序在翻页后保持(第 2 页仍延续倒序),与接口 orderBy=create_time desc 一致<br>4. 排序字段非更新时间(编辑既有公司不会使其跳位) | 对应TP-A-009;REQ-004(漏测清单 §4 默认排序) |
| PLT_BSC_LC_010 | 平台端-基础信息-物流公司管理 | 验证分页默认 20 条/页与每页条数切换正确 | P1 | 功能测试 | ACC-001 已登录;已构造 BLK-01 的 25 条启用公司(批量测试物流公司00001~00025) | 1. 进入列表核对默认每页条数与页数<br>2. 切换每页 10/50/100 各档核对条数与总量<br>3. 翻至末页核对余数<br>4. 用查询条件构造 0 结果核对空态 | BLK-01(25 条);QR-10 | 1. 默认每页 20 条、共 2 页,页脚总数=25<br>2. 切 10 条/页共 3 页、切 50/100 条/页共 1 页,切换后列表不重排错位、无重复无丢失<br>3. 末页余数=5 条;无数据时空态有友好占位提示而非空白表格<br>4. 每页条数选项恰为 10/20/50/100 四档,选择后为默认记忆项(本页生效) | 对应TP-A-010;REQ-004(漏测清单 §4 分页);[AI修正: 评审修复 O-001] |
| PLT_BSC_LC_011 | 平台端-基础信息-物流公司管理 | 验证"生效合同数"列实时统计仅计生效中合同 | P1 | 功能测试 | ACC-001 已登录;LC-01 现有 HT-2026-0001(生效中)、HT-2026-0002(生效中)、HT-2025-0987(已过期);LC-02 现有"已过期+待生效"各一张 | 1. 查看 LC-01 行生效合同数<br>2. 为 LC-01 新增一张当前生效期内合同后刷新列表<br>3. 删除一张生效中合同后核对计数<br>4. 核对 LC-02 的计数 | LC-01;LC-02;HT-2026-0001/0002(生效中)、HT-2025-0987(已过期)、HT-2026-0011(已过期)、HT-2026-0012(待生效);SS-12 | 1. LC-01 计数=2(仅生效中合同;已过期不计入)<br>2. 新增生效中合同后计数变为 3,与合同管理 Tab 中生效中条数一致<br>3. 删除生效中合同后计数-1;LC-02 计数=0(过期/待生效均不计入)<br>4. 计数为实时计算值(数据库按 company_id 统计 status=生效中 的合同数),停用公司的计数照常统计 | 对应TP-A-011;REQ-003 |
| PLT_BSC_LC_012 | 平台端-基础信息-物流公司管理 | 验证列表空态与查询无结果两种提示场景 | P2 | 易用性测试 | ACC-001 已登录;具备新环境无数据或全量筛选到 0 条的构造手段 | 1. 用查询条件组合构造无结果(名称输入"不存在的公司XYZ")<br>2. 观察列表区展示与提示文案<br>3. 检查控制台报错<br>4. 恢复全量数据后核对列表正常 | QR-07;无结果关键词"不存在的公司XYZ" | 1. 查询无结果时列表区明确提示(如"暂无数据")而非空白无反馈<br>2. 空态提示文案与列表空库场景文案一致、不出现控制台报错或页面崩溃<br>3. 空态下分页组件收敛(不显示明细分页)、导出按钮不可点 或 给出无数据提示(记录实际行为)<br>4. 清空条件重新查询后列表恢复正常渲染 | 对应TP-A-012;漏测清单 §1 空值 + §4 空结果提示;[AI修正: 评审修复 O-002] |
| PLT_BSC_LC_013 | 平台端-基础信息-物流公司管理 | 验证列表导出列完整且与当前筛选条件同步 | P1 | 功能测试 | ACC-001 已登录;列表存在 LC-01 等数据且已知当前筛选条件(状态=启用+名称"测试甲") | 1. 设置筛选条件后点击"导出"<br>2. 打开导出 Excel 核对列与行数据<br>3. 核对导出文件行数与列表筛选结果一致<br>4. 构造 0 结果条件再次导出 | REQ-005;LC-01;QR-07(无结果) | 1. 导出文件为可正常打开的 xlsx<br>2. 列与列表展示列一一对应(公司名称、简称码、统一社会信用代码、法人代表名称、联系人/联系方式、生效合同数、状态、创建人/创建时间)<br>3. 导出行集合=当前筛选条件命中的记录集(导出沿用当前查询参数),不含已逻辑删除公司<br>4. 无数据时导出按平台统一口径给出提示(不生成空文件或空文件含表头两种情况记录实际行为) | 对应TP-A-013;REQ-005 |
| PLT_BSC_LC_014 | 平台端-基础信息-物流公司管理 | 验证列表导出 20000 条上限边界口径 | P1 | 功能测试 | ACC-001 已登录;构造通道可用(数据缺口 #9:接口批量或 DB 导入);已准备恰好 20000 条与 20001 条两组公司数据(BLK-04 数字边界成对) | 1. 构造恰好 20000 条满足筛选条件的公司并点导出<br>2. 核对导出文件行数<br>3. 构造 20001 条同样条件再导出<br>4. 记录 20001 条时的实际行为(截断或明确提示)并与平台其他列表导出口径比对 | BLK-04(20000/20001 条);项目画像 §8.3 | 1. 20000 条全量导出成功、文件行数与数据条数一致(含表头行偏差须说明)<br>2. 超过 20000 条时按平台 Excel 导出组件统一口径处理(截断到 20000 或给出超限提示),行为与其他列表一致、不静默丢数据且无部分损坏文件<br>3. 导出耗时与文件大小在可接受范围,文件可正常打开<br>4. 导出记录不含已逻辑删除公司 | 对应TP-A-014;REQ-005/REQ-036(项目画像 §8.3 Excel 大数据量导出) |
| PLT_BSC_LC_015 | 平台端-基础信息-物流公司管理 | 验证 1~2 万条规模导出时 Loading、防重与超时保护 | P2 | 性能测试 | ACC-001 已登录;已准备接近上限的数据量(10000~20000 条,BLK-04 构造通道) | 1. 点击"导出"触发大数据量导出<br>2. 观察导出期间按钮态与 Loading 反馈<br>3. 导出期间连续点击"导出"3 次<br>4. 用 DevTools 限速/阻断导出接口模拟超时<br>5. 恢复后重新导出 | BLK-04;漏测清单 §2(弱网/超时) | 1. 导出期间有 Loading 或进度反馈,按钮置灰防重复点击,页面不出现无响应卡死<br>2. 连点 3 次不产生 3 个并行导出任务(服务端有防重或前端拦截)<br>3. 超时/失败时有明确提示且可重新导出,失败后无残留半文件<br>4. 导出期间其他查询操作不被阻塞或给出明确提示;单次导出实测耗时基线已记录 | 对应TP-A-015;项目画像 §8.3(非功能:Excel 大数据量导出) |
| PLT_BSC_LC_016 | 平台端-基础信息-物流公司管理-新增 | 验证新增页"上证件区+下两栏表单"结构与对标布局 | P1 | 功能测试 | ACC-001 或已授权的 ACC-02(运营管理员)已登录;已进入"物流公司管理"列表页 | 1. 点击"新增"按钮<br>2. 自上而下核对证件上传区(营业执照、法人身份证人像面、法人身份证国徽面、道路运输经营许可证四个上传位)<br>3. 核对下方基本信息表单字段与顺序(对标企业货主-新增)<br>4. 核对必传/选填标注 | ACC-001/ACC-02;四类证件位;需求 6.2 字段清单 | 1. 布局为"上方证件上传区 + 下方两栏基本信息表单",与企业货主-新增页对标一致<br>2. 四个证件上传位齐全:营业执照与身份证人像面/国徽面标注必传,道路运输经营许可证标注选填(Q5)<br>3. 表单字段顺序与需求 6.2 一致:公司名称、统一社会信用代码、法人代表名称、联系人、联系方式、简称码、企业通信地址(省市区级联)、详细地址、备注<br>4. 页面无需求外多余字段与入口 | 对应TP-B-001;REQ-006 |
| PLT_BSC_LC_017 | 平台端-基础信息-物流公司管理-新增 | 验证营业执照未上传时提交被阻断且定位到上传区 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;本地准备 DOC-01 合法营业执照样本 | 1. 不上传营业执照,填满其余字段(名称"云南测试营业执照校验物流有限公司"等必填项)后点击提交<br>2. 核对阻断提示与定位<br>3. 上传营业执照_测试甲.jpg 后再次提交(验证提交不再因营业执照被阻断;完整成功链路由 PLT_BSC_LC_038 覆盖)<br>4. 在新增页重新打开表单(名称改用"云南测试营业执照校验物流有限公司2"等新唯一值),上传营业执照后删除该证件,再次提交 | DOC-08(必传缺失);DOC-01(营业执照_测试甲.jpg);新建名称不与他司冲突 | 1. 未上传营业执照时提交被阻断,提示定位到营业执照上传区(如"请上传营业执照"),表单不关闭不跳转<br>2. 数据库无新增记录(logistics_company 无该名称行)<br>3. 提交不再因营业执照被阻断(阻断原因不再指向营业执照;表单可按 038 用例完成保存)<br>4. 删除已上传营业执照后提交再次被阻断(删除动作同步清空暂存值) | 对应TP-B-002;REQ-006/验收要点 1;[AI修正: 评审修复 S-001] |
| PLT_BSC_LC_018 | 平台端-基础信息-物流公司管理-新增 | 验证身份证人像面/国徽面缺一不可提交 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;本地准备 DOC-03(人像面 jpg)与 DOC-05(国徽面 jpeg)样本;营业执照已上传 | 1. 仅上传人像面、国徽面留空后提交<br>2. 仅上传国徽面、人像面留空后提交<br>3. 两面齐全后提交 | DOC-08;DOC-03(法人身份证人像面_测试甲.jpg);DOC-05(法人身份证国徽面_测试甲.jpeg) | 1. 仅传人像面时提交被阻断,提示能区分所缺证件(提示含"国徽面"字样)<br>2. 仅传国徽面时提交被阻断,提示含"人像面"字样<br>3. 两面齐全可提交成功,两个证件 OBS URL 分别落库到对应字段<br>4. 三次操作均不产生半落库记录(失败场景数据库无新增行) | 对应TP-B-003;REQ-006 |
| PLT_BSC_LC_019 | 平台端-基础信息-物流公司管理-新增 | 验证道路运输经营许可证为选填(Q5 决议)可跳过提交 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;营业执照与身份证两面已上传;本地准备 DOC-07 许可证样本 | 1. 不上传道路运输经营许可证,填写全部必填字段后提交<br>2. 返回列表后进入该公司编辑页核对证件区<br>3. 进入编辑页上传道路运输经营许可证_测试甲.pdf 并保存<br>4. 重新打开编辑页核对回显 | DOC-06(不传);DOC-07(道路运输经营许可证_测试甲.pdf);Q5 决议 | 1. 不传许可证时提交成功(核心边界口径,不得误判为必传),提示"新增成功"且状态=启用<br>2. 编辑页许可证上传位为空态、无必传红星标记<br>3. 上传许可证后保存成功,OBS URL 落库到许可证字段(值为最后一次上传的文件 URL)<br>4. 再次打开编辑页可回显许可证文件名/缩略图,点击可预览 | 对应TP-B-004;REQ-006/Q5 决议;[AI修正: 评审修复 O-001] |
| PLT_BSC_LC_020 | 平台端-基础信息-物流公司管理-新增 | 验证四类证件格式白名单校验(含身份证不含 pdf/bmp 差异) | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;本地准备 DOC-01~DOC-05 全部样本文件 | 1. 营业执照与道路运输经营许可证分别依次上传 .jpg/.jpeg/.png/.pdf 四个文件<br>2. 营业执照与道路运输经营许可证分别上传 .gif/.docx/.txt/无扩展名/.bmp 文件<br>3. 身份证人像面/国徽面依次上传 .jpg/.jpeg/.png<br>4. 身份证人像面上传 .pdf 与 .bmp 文件 | DOC-01(营业执照 4 格式);DOC-02(gif/docx/txt/无扩展名/bmp);DOC-03/DOC-05;DOC-04(pdf/bmp) | 1. 营业执照与许可证 jpg/jpeg/png/pdf 四格式逐一上传成功并可预览<br>2. 营业执照与许可证对 gif/docx/txt/无扩展名/bmp 拒绝并提示格式白名单(注意 bmp 不在证件白名单)<br>3. 身份证 jpg/jpeg/png 全部成功<br>4. 身份证 pdf/bmp 被拒(身份证白名单不含 pdf/bmp,与合同附件含 bmp 的差异不得写反);拒绝后上传位不残留半上传状态与脏 URL | 对应TP-B-005;REQ-006(与合同附件白名单差异见 DOC-02 说明);DOC-07 许可证四格式样本;[AI修正: 评审修复 S-009] |
| PLT_BSC_LC_021 | 平台端-基础信息-物流公司管理-新增 | 验证伪造扩展名证件文件被拒绝且不产生执行风险 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;本地准备 DOC-04 伪造样本(exe 改名 .jpg、双扩展名 身份证.pdf.exe) | 1. 将 exe 程序改名为"法人身份证人像面_测试甲.jpg"后上传<br>2. 上传双扩展名文件"身份证.pdf.exe"<br>3. 观察提示与上传区状态<br>4. 用 DevTools 抓包确认拒绝发生在前端还是服务端 | DOC-04 伪造样本;SEC-09(伪造文件内容) | 1. 伪造扩展名文件被检出并拒绝(前端拦截或服务端真实文件类型校验),提示可读<br>2. 上传区不显示成功回显、无 OBS URL 落库(数据库证件字段保持空)<br>3. 文件在任何情况下均不被执行,无脚本/程序运行迹象<br>4. 实际拦截层级(前端 MIME/后缀、服务端魔数)记录供评审,服务端须具备独立校验 | 对应TP-B-006;REQ-006(漏测清单 §1 特殊数据;拦截层级记录为评审确认项) |
| PLT_BSC_LC_022 | 平台端-基础信息-物流公司管理-新增 | 验证 7 个必填字段逐字段留空均被阻断并就近标红 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;三张必传证件已上传;已备齐其余字段的合法值 | 1. 依次单独留空公司名称、统一社会信用代码、法人代表名称、联系人、联系方式、企业通信地址(不选省市区)、详细地址,各提交一次<br>2. 记录每次阻断提示与标红位置<br>3. 仅留空简称码与备注后提交<br>4. 全部字段填写完整后提交 | NM-05(空值/纯空格);CT-04;DT-04;AD-03(级联不完整);RM-04(备注空,允许) | 1. 七个必填字段逐一留空提交均被阻断,错误字段就近标红且提示文案指向对应字段名<br>2. 企业通信地址仅选省未选市/区时同样被阻断(级联不完整)<br>3. 仅简称码与备注为空不影响提交,可保存成功<br>4. 7 次失败均无数据落库(logistics_company 无新增行);纯空格提交(NM-05/CT-04/DT-04)与空串同口径:trim 后为空视为未填、按空值阻断(Q15) | 对应TP-B-007;REQ-007;[已确认 2026-09-29: 纯空格/空白字符 trim 后为空视为未填,必填字段按空值阻断(Q15)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_023 | 平台端-基础信息-物流公司管理-新增 | 验证公司名称 1/50/51 字符长度边界与首尾空格口径 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 V-01/V-02 字面值;已知现有名称集合 | 1. 公司名称输入 V-01(恰 50 字符)提交<br>2. 输入 V-02(51 字符)提交<br>3. 输入单字符"甲"提交(另用独立信用代码)<br>4. 输入" 云南测试甲物流有限公司 "(两侧含空格,NM-07)提交并核对拦截结果 | NM-01(常规);NM-02/V-01(50 字);NM-03/V-02(51 字);NM-04(1 字);NM-07(首尾空格,trim 后与 NM-01 重复);UQ-08 | 1. 50 字符保存成功,列表/详情展示完整 50 字不截断<br>2. 51 字符被阻断并提示上限(如"公司名称不超过 50 字符"),贴入超长文本时自动截断或提示(记录实际行为)<br>3. 单字符名称可保存(无最小长度约束)<br>4. 首尾空格提交前 trim 后判重:" 云南测试甲物流有限公司 " trim 后与 LC-01 名称视为重复 → 被拒并提示"已存在"类文案、字段标红(Q13) | 对应TP-B-008;REQ-007(漏测清单 §1 超长字符);[已确认 2026-09-29: 唯一性判重提交前 trim 首尾空格,"甲公司 "与"甲公司"视为重复(Q13)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_024 | 平台端-基础信息-物流公司管理-新增 | 验证统一社会信用代码合法值失焦即校验通过 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页 | 1. 统一社会信用代码输入 UC-01(91530102MA6N4K7X52)后点击页面其他空白处触发失焦<br>2. 观察校验提示与字段态<br>3. 用 DevTools 抓包确认失焦触发唯一性/格式校验接口<br>4. 继续填写其余字段并提交 | UC-01(91530102MA6N4K7X52);UC-03(失焦即校验) | 1. 失焦后字段无报错、无标红,提示消失(若先出错再修正则提示同步消失)<br>2. 失焦时触发校验请求(抓包可见校验接口调用),无需点击提交<br>3. 合法 18 位、字符集合规、校验位正确的代码通过校验<br>4. 提交后落库值与输入值逐字符一致(大写),列表页展示一致 | 对应TP-B-009;REQ-007/BR-01 |
| PLT_BSC_LC_025 | 平台端-基础信息-物流公司管理-新增 | 验证信用代码各类非法格式失焦即报错并就地标红 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页 | 1. 依次输入 UC-04(17 位)、UC-05(19 位)后失焦<br>2. 依次输入 UC-06~UC-10(末位 I/O/S/V/Z)后失焦<br>3. 输入 UC-11(全小写)、UC-12(含空格)、UC-13(全角字符)、UC-14(行政区划段含字母)、UC-16(混入汉字)后失焦<br>4. 核对每次提示形态并尝试提交 | UC-04~UC-14、UC-16;BR-01 正则 [0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10} | 1. 全部非法输入在失焦时即报错,错误提示就地标红、文案可读(如"统一社会信用代码格式不正确")<br>2. 含 I/O/S/V/Z 等排除字母与全角/小写/空格/汉字均被拒绝(字符集校验生效)<br>3. 17/19 位长度不符被拒绝<br>4. 非法值下强制提交被阻断,数据库无新增记录;修正为 UC-01 后提示消失并可提交 | 对应TP-B-009;BR-01/REQ-007 |
| PLT_BSC_LC_026 | 平台端-基础信息-物流公司管理-新增 | 验证统一社会信用代码仅正则校验、不校验第 18 位校验位(Q14) | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已确认 UC-15 样本(91530102MA6N4K7X53,末位 2 改 3,校验位错误但格式合法) | 1. 输入 UC-15 后失焦,观察字段态与提示<br>2. 继续填写其余字段并提交,核对保存结果与落库值<br>3. 用 UC-01 等校验位正确样本对照复核<br>4. 核对是否存在"校验位错误"类提示或阻断 | UC-15(91530102MA6N4K7X53);测试数据 §10(Q14 已确认) | 1. UC-15 失焦不报错、字段不标红(字符集与长度合规,仅按 BR-01 正则校验,Q14)<br>2. 提交保存成功(不被阻断),落库值与输入值逐字符一致,logistics_company 新增该记录<br>3. 全流程无"校验位错误"类提示或阻断(实现不得在正则之外追加第 18 位校验位校验)<br>4. 校验位正确样本(UC-01)与本样本在格式合规时行为一致,均为确定性放行 | 对应TP-B-009(UC-15);[已确认 2026-09-29: 信用代码仅按 BR-01 正则校验字符集与长度、不校验第 18 位校验位——校验位错误但格式合法可保存(Q14)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_027 | 平台端-基础信息-物流公司管理-新增 | 验证法人代表名称 ≤30 字符边界(30/31)与特殊字符 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 V-03/V-04 字面值 | 1. 法人代表名称输入 LP-01(张测试)提交<br>2. 输入 V-03(恰 30 字符)提交<br>3. 输入 V-04(31 字符)提交<br>4. 输入 LP-05(阿不都·热合曼)提交并核对展示 | LP-01;LP-02/V-03(30 字);LP-03/V-04(31 字);LP-05(间隔号) | 1. 常规姓名与 30 字符均可保存<br>2. 31 字符被阻断并提示上限,字段就近标红<br>3. 少数民族间隔号姓名正常保存与回显,无乱码<br>4. 中英文/数字混排按字符数计数口径一致(长度计数以字符为单位) | 对应TP-B-010;REQ-007(漏测清单 §1 超长字符) |
| PLT_BSC_LC_028 | 平台端-基础信息-物流公司管理-新增 | 验证联系人 ≤20 字符边界(20/21) | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 V-05/V-06 字面值 | 1. 联系人输入 CT-01(王测试)提交<br>2. 输入 V-05(恰 20 字符)提交<br>3. 输入 V-06(21 字符)提交<br>4. 输入纯空格" "(CT-04)提交 | CT-01;CT-02/V-05(20 字);CT-03/V-06(21 字);CT-04(空值/纯空格) | 1. 常规值与 20 字符均可保存、列表与详情回显一致<br>2. 21 字符被阻断并提示上限、字段标红<br>3. 纯空格提交被阻断:trim 后为空视为未填、按空值拦截并提示必填,字段标红、数据库无新增记录(Q15)<br>4. 长度计数中英文一致,不出现"20 字中文保存成功、20 个字母被拒"的不一致 | 对应TP-B-010;REQ-007;[已确认 2026-09-29: 纯空格/空白字符 trim 后为空视为未填、必填字段按空值阻断(Q15)];[AI修正: 评审修复 B-001];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_029 | 平台端-基础信息-物流公司管理-新增 | 验证联系方式手机号格式校验与非法样本拒绝 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 PH 系列样本值 | 1. 依次输入 PH-01(13800138000)、PH-02、PH-03 提交<br>2. 依次输入 PH-04(10 位)、PH-05(12 位)、PH-06(12800138000)、PH-07(含字母)、PH-09(全角)提交<br>3. 输入 PH-08(含空格/横线:138 0013 8000)提交<br>4. 输入 PH-13(与 PH-01 相同号码)新建第二家公司并提交<br>5. 输入 PH-10(座机 0871-65000000)、PH-11(国际前缀 +8613800138000)提交 | PH-01~PH-11、PH-13;测试数据 §10(Q11 已确认) | 1. 11 位 1[3-9] 开头手机号全部通过<br>2. 位数不足/超长、非 1 开头第二位非 3-9、含字母、全角数字均被拒绝并提示手机号格式<br>3. 含空格或横线的号码被拒绝(仅首尾 trim,内部空格/横线仍非法)<br>4. 联系方式重复不触发唯一性拦截(需求未要求唯一),可成功创建第二家公司,列表按"138"可模糊命中两条<br>5. 座机(0871-…)与国际前缀(+86…)均被拒绝并提示手机号格式——仅支持手机号 `1[3-9]\d{9}`(Q11) | 对应TP-B-011;REQ-007;[已确认 2026-09-29: 联系方式仅手机号 1[3-9]\d{9},座机与国际前缀不支持、应拒绝(Q11)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_030 | 平台端-基础信息-物流公司管理-新增 | 验证简称码 2-4 位纯字母校验与选填口径 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已知 LC-01 已占用简称码 YNA | 1. 简称码输入 SC-03(AB,2 位)提交<br>2. 输入 SC-02(YNA 变体如 YNB 已占用则用 AB 变体)与 SC-01(ABCD,4 位)提交<br>3. 输入 SC-04(A,1 位)、SC-05(ABCDE,5 位)、SC-06(A1/12,含数字)、SC-07(测试,汉字)提交<br>4. 简称码留空直接提交 | SC-01~SC-07;SC-08(小写 ab);SC-11(含前后空格 "YNA ") | 1. 2 位与 4 位纯字母保存成功,列表简称码列展示一致<br>2. 1 位、5 位、含数字、含汉字均被阻断并提示 2-4 位纯字母规则<br>3. 简称码留空可正常提交(选填)<br>4. 小写字母(SC-08,ab)正常保存(大小写不做限制、行为确定,Q12);含首尾空格的 "YNA " 提交前 trim 后与 LC-01 已占用值重复 → 被拒并提示重复(Q13) | 对应TP-B-012;REQ-007/BR-01;[已确认 2026-09-29: 简称码大小写不做限制、均可保存(Q12);含首尾空格按提交前 trim 后判重(Q13)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_031 | 平台端-基础信息-物流公司管理-新增 | 验证企业通信地址省市区三级级联与非法组合防御 | P2 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页 | 1. 依次选择云南省/昆明市,核对区县联动<br>2. 完整选择 AD-01(云南省/昆明市/五华区)保存<br>3. 仅选"云南省"不选市/区提交<br>4. 用接口工具构造省=云南省+市=成都市(跨区组合)的请求提交 | AD-01;AD-02(曲靖/麒麟区、大理白族自治州);AD-03(级联不完整);AD-04(跨区组合) | 1. 三级联动正确:选省后市列表刷新、选区后正确保存<br>2. 完整级联地址保存成功并在编辑页正确回显<br>3. 仅选省未选区时提交被阻断或提示补全(按实现记录)<br>4. 跨区组合(云南省+成都市)级联控件不允许该组合;接口层拒绝篡改请求,不落库非法组合 | 对应TP-B-013;REQ-007/6.2 |
| PLT_BSC_LC_032 | 平台端-基础信息-物流公司管理-新增 | 验证详细地址 ≤100 字符边界(100/101) | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 V-07/V-08 字面值 | 1. 详细地址输入 DT-01(测试大道 1 号 A 栋 101)提交<br>2. 输入 V-07(恰 100 字符)提交<br>3. 输入 V-08(101 字符)提交<br>4. 输入纯空格" "(DT-04)提交 | DT-01;DT-02/V-07(100 字);DT-03/V-08(101 字);DT-04(空值/纯空格) | 1. 常规值与 100 字符均可保存,详情回显完整不截断<br>2. 101 字符被阻断并提示上限、字段标红(或按实现自动截断并提示,记录实际行为)<br>3. 纯空格提交被阻断:trim 后为空视为未填、按空值拦截并提示必填,字段标红、数据库无新增记录(Q15)<br>4. 数据库落库值为提交值(无意外裁剪),列表/编辑页回显与之一致 | 对应TP-B-014;REQ-007(漏测清单 §1 超长字符);[已确认 2026-09-29: 纯空格 trim 后为空视为未填、必填字段按空值阻断(Q15)];[AI修正: 评审修复 B-001];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_033 | 平台端-基础信息-物流公司管理-新增 | 验证备注 ≤200 字符边界与多行文本保存回显 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;已准备 V-11/V-12 字面值 | 1. 备注输入 RM-01(外协承运,月结)提交<br>2. 输入 V-11(恰 200 字符)提交<br>3. 输入 V-12(201 字符)提交<br>4. 输入 RM-05(两行含换行符的真实换行文本)提交后进入编辑页核对 | RM-01;RM-02/V-11(200 字);RM-03/V-12(201 字);RM-05(多行换行);RM-04(空值允许) | 1. 常规备注与 200 字符保存成功<br>2. 201 字符被阻断并提示上限<br>3. 备注留空可提交(选填)<br>4. 多行文本换行被保留并在编辑页多行控件中正确回显,无乱码无折行丢失 | 对应TP-B-014;REQ-007 |
| PLT_BSC_LC_034 | 平台端-基础信息-物流公司管理-新增 | 验证公司名称全平台唯一(含停用、不含已逻辑删除) | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;LC-01 启用、LC-06 停用;LC-04 已逻辑删除(承接 DL-04 删除动作) | 1. 新增表单名称输入"云南测试甲物流有限公司"(LC-01)、其余字段全新,点提交<br>2. 名称输入"保山测试己运输有限公司"(LC-06,停用)、信用代码用新值提交<br>3. 名称输入"玉溪测试丁货运代理有限公司"(LC-04,已删除)提交<br>4. 核对三次的提示与落库结果 | UQ-01;NM-06;LC-06;UQ-06;BR-01"不含已逻辑删除的公司" | 1. 与启用公司重名被拒,名称字段就地标红并提示"已存在"类文案,表单不清空<br>2. 与停用公司重名同样被拒(停用仍在唯一范围)<br>3. 与已逻辑删除公司重名允许创建成功<br>4. 失败两次均无新增落库;第三次新增成功且 deleted=0 | 对应TP-B-015;REQ-009/BR-01;执行顺序:本用例创建的重建记录与 PLT_BSC_LC_061 互斥,二者只执行其一(推荐以 061 为唯一重建执行点,本用例改为核对 061 已创建记录);[AI修正: 评审修复 S-003] |
| PLT_BSC_LC_035 | 平台端-基础信息-物流公司管理-新增 | 验证统一社会信用代码全平台唯一与提示不泄露跨机构明细 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;LC-01(91530102MA6N4K7X52)存在;LC-02 停用 | 1. 新增表单名称用新值、信用代码填 UC-01(同 LC-01)提交<br>2. 信用代码改填 LC-02 的 91530103MA6P8Q2D7F(停用公司)提交<br>3. 信用代码改填已删除 LC-04 的 91530402MA6U2W5J8J 提交<br>4. 核对错误提示内容与字段标红 | UQ-02;UC-17;LC-02;LC-04 | 1. 与启用/停用公司同码均被拒,错误字段就地标红并提示信用代码已存在,表单不清空<br>2. 与已逻辑删除公司同码允许创建(唯一范围不含已删除)<br>3. 提示文案不暴露他机构数据明细(不含他人公司名称等字段),仅提示冲突事实<br>4. 失败场景数据库无新增行;成功场景落库值大写一致 | 对应TP-B-016;REQ-009/BR-01(跨机构同码场景见 PLT_TMS_LC_057/061);执行顺序:本用例的同码重建与 PLT_BSC_LC_061 互斥,二者只执行其一(推荐以 061 为唯一重建执行点);[AI修正: 评审修复 S-003] |
| PLT_BSC_LC_036 | 平台端-基础信息-物流公司管理-新增 | 验证简称码唯一、空值不冲突与已删除复用 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;LC-01 简称码=YNA | 1. 新增表单简称码填 YNA(SC-10)提交<br>2. 连续新增两家公司,简称码均留空(SC-09/UQ-07)提交<br>3. 用 LC-04 已删除公司的简称码 YND 新建提交<br>4. 核对三次结果 | SC-10;SC-09/UQ-07;UQ-03;UQ-06;LC-04 | 1. 与已存在简称码重复被拒并提示,字段标红<br>2. 两家公司均留空简称码均可保存、并存(空值不参与全平台唯一,Q16 已确认)<br>3. 与已逻辑删除公司简称码重复允许创建<br>4. 空值与空值之间无冲突;异常提示不影响其他字段已填内容 | 对应TP-B-017;BR-01/REQ-009;[已确认 2026-09-29: 简称码空值不参与全平台唯一、多家公司可同时留空(Q16)];执行顺序:本用例的简称码重建与 PLT_BSC_LC_061 互斥,二者只执行其一(推荐以 061 为唯一重建执行点);[AI修正: 评审修复 S-003];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_037 | 平台端-基础信息-物流公司管理-新增 | 验证唯一性双保险:并发同码仅一条入库且 DB 层兜底 | P0 | 功能测试 | 两个独立浏览器会话均已登录(ACC-01 与 ACC-02);接口工具可直调新增接口;已备 UQ-09 表单 A/B 值 | 1. 会话 A 填表单 A(名称=云南测试并发物流有限公司A,uscc=91530111MA6Y2T7P91)<br>2. 会话 B 填表单 B(名称=云南测试并发物流有限公司B,uscc 同 A)<br>3. 两个会话同时点击提交<br>4. 接口工具携带合法会话绕过前端直传重复 uscc 请求<br>5. 核对数据库记录与两次提交结果 | UQ-09(并发对,uscc 91530111MA6Y2T7P91);REQ-010/验收要点 8 | 1. 并发提交后仅一条成功入库,另一条失败并给出友好提示(非 500、无 DB 异常原文)<br>2. 失败方页面表单不清空、可修改后重提<br>3. 绕过前端直传的重复请求仍被数据库层唯一约束拒绝<br>4. logistics_company 表中该 uscc 恰一条记录(RISK-DATA P1 核心判据) | 对应TP-B-018;REQ-010(RISK-DATA 并发同码) |
| PLT_BSC_LC_038 | 平台端-基础信息-物流公司管理-新增 | 验证新增成功正向链路:返回列表、状态启用与落库完整 | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;三张必传证件与 DOC-07 许可证样本已备;信用代码使用新合法值(如按 gen_uscc 生成) | 1. 上传营业执照/身份证两面/许可证,填写名称"云南测试新增链路物流有限公司"等全部字段<br>2. 点击提交<br>3. 核对提示与跳转,返回列表核对首行<br>4. 进入编辑页核对回显与证件预览<br>5. 核对数据库落库字段 | DOC-01/DOC-03/DOC-05/DOC-07;ST-01;新增名称唯一;REQ-008/验收要点 1 | 1. 提交后返回列表并提示"新增成功"类文案<br>2. 新公司状态=启用(绿)、按创建时间倒序位于首位,列表与导出均可见<br>3. 编辑页回显全部字段与四张证件(可预览),与提交值一致<br>4. logistics_company 新增一行:deleted=0、证件字段存 OBS URL、创建人=当前账号、创建时间=当前时刻 | 对应TP-B-019;REQ-008(漏测清单 §4 正向成功链路) |
| PLT_BSC_LC_039 | 平台端-基础信息-物流公司管理-新增 | 验证提交失败后表单不清空且修正后可再次提交成功 | P1 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;LC-01 已存在(名称占用) | 1. 填写完整表单但名称填为 LC-01 名称,点提交触发唯一性失败<br>2. 核对已填字段与已传证件是否保留<br>3. 仅修改名称为唯一值后再次提交<br>4. 核对落库 | UQ-01;LC-01;REQ-008 | 1. 校验失败后全部已填字段与已传证件保留(含下拉、级联、日期),表单不清空<br>2. 错误字段就近标红,提示文案定位准确到字段<br>3. 修正出错字段后可直接再次提交并成功,无需重传证件<br>4. 修正提交后数据库恰一条新增记录,无首次提交残留脏数据 | 对应TP-B-020;REQ-008 |
| PLT_BSC_LC_040 | 平台端-基础信息-物流公司管理-新增 | 验证快速重复点击提交仅生成一条公司记录(幂等) | P0 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;表单已填写完整且数据合法 | 1. 在 1 秒内连续点击"提交"按钮 3 次<br>2. 记录按钮态变化与返回结果<br>3. 返回列表核对新增条数<br>4. 核对数据库记录与重复请求响应 | UQ-10(1 秒连点 3 次);REQ-011;项目画像 §8.2 | 1. 连续点击仅生成 1 条公司记录,无重复数据<br>2. 提交中按钮置灰/防抖,无重复请求发出或重复请求被幂等拦截<br>3. 页面成功提示不堆积(无多个弹窗)、无报错弹窗<br>4. 重复请求返回一致结果;数据库该名称恰一条 deleted=0 记录 | 对应TP-B-021;REQ-011(项目画像 §8.2 重复提交(幂等)必测);[AI修正: 评审修复 O-003] |
| PLT_BSC_LC_041 | 平台端-基础信息-物流公司管理-新增 | 验证特殊字符与注入字符在新增与查询中无 XSS/注入副作用 | P2 | 安全性测试 | ACC-01/ACC-02 已登录并停留在新增页与列表页 | 1. 新增表单名称输入 NM-09(<script>alert('XSS')</script>)、备注输入 RM-06、详细地址输入 DT-05 同类样本后提交<br>2. 查询条件名称输入 SEC-01(' OR '1'='1)点查询<br>3. 查询条件输入 SEC-02(<img src=x onerror=alert(1)>)点查询<br>4. 列表与编辑页回显上述记录并检查控制台 | NM-09/NM-10;RM-06/RM-07(1'; WAITFOR DELAY '0:0:5'--);SEC-01/02/03;DT-05 | 1. 注入字符保存后在列表/编辑页/详情均转义展示为纯文本,脚本不执行、无弹窗<br>2. 查询框输入注入字符不报 500、不泄露 SQL 错误,无副作用(数据无被篡改、DROP 类语句不生效)<br>3. WAITFOR DELAY 样本无 5 秒延迟(参数化生效)<br>4. 控制台无未捕获异常;列表查询/重置/导出等页面功能可正常执行(无因注入样本导致的渲染或请求异常) | 对应TP-B-022;漏测清单 §1 特殊字符(安全);[AI修正: 评审修复 O-002] |
| PLT_BSC_LC_042 | 平台端-基础信息-物流公司管理-新增 | 验证证件上传回显、重复上传替换与上传中状态 | P2 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;具有网络限速手段(DevTools) | 1. 上传营业执照样本,核对回显(文件名/缩略图)<br>2. 对同一类证件再次上传另一文件,核对替换<br>3. 用限速模拟上传中状态核对进度/ Loading<br>4. 阻断上传接口模拟失败后核对提示与重试 | DOC-01/DOC-11(重新上传替换);DOC-09(大文件);漏测清单 §4 交互细项 | 1. 上传成功后回显文件名或缩略图,可预览<br>2. 同类证件再次上传替换原文件(仅保留最新一份,无两份并存)<br>3. 上传中有进度或 Loading 状态,按钮防重复点击<br>4. 上传失败提示明确且可重试,失败残留(半上传态)不留在表单内 | 对应TP-B-023;REQ-006(漏测清单 §4) |
| PLT_BSC_LC_043 | 平台端-基础信息-物流公司管理-新增 | 验证提交请求断网与超时处理的用户可恢复性 | P2 | 功能测试 | ACC-01/ACC-02 已登录并停留在新增页;表单已填写完整;DevTools 可断网/延迟 | 1. 点击提交瞬间断网,观察页面表现<br>2. 恢复网络后检查是否产生半落库数据<br>3. 用 30 秒延迟模拟接口超时,核对 Loading 与超时提示<br>4. 超时后恢复并可重新提交 | 漏测清单 §2(弱网/断网、超时处理);DOC-01/03/05 | 1. 断网时提交给出明确失败提示(非无响应卡死),表单内容完整保留<br>2. 超时场景有 Loading 与超时提示,超时后按钮恢复可点<br>3. 恢复网络后重新提交成功且不产生重复记录(无半落库脏数据,字段要么全写入要么无变化)<br>4. 重试提交后数据库恰一条记录 | 对应TP-B-024;漏测清单 §2 弱网超时 |
| PLT_BSC_LC_044 | 平台端-基础信息-物流公司管理-编辑 | 验证编辑页两 Tab 结构与切换不丢修改提示 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在(含 3 张合同) | 1. 列表点击 LC-01 公司名称超链接进入编辑页<br>2. 核对 Tab 结构(企业资料/合同管理)<br>3. 在企业资料 Tab 修改法人字段但未保存,切换到合同管理 Tab 再切回<br>4. 核对是否有未保存修改提示与字段值 | LC-01;REQ-012 | 1. 编辑页含"企业资料""合同管理"两个 Tab,可正常切换,无多余第三 Tab<br>2. 企业资料 Tab 与新增表单同构(字段一致)<br>3. 切换 Tab 不静默丢失未保存修改(保留或给出提示,记录实际行为)<br>4. 合同管理 Tab 内容与 TP-E-001 一致(筛选区+按钮组+合同表格) | 对应TP-C-001;REQ-012 |
| PLT_BSC_LC_045 | 平台端-基础信息-物流公司管理-编辑 | 验证编辑页全字段与证件回显完整无乱码 | P1 | 功能测试 | ACC-01/ACC-02 已登录;已存在公司"云南测试回显校验物流有限公司"(含简称码、省市区+详细地址、备注、四类证件;另备一家简称码为空的对照公司) | 1. 进入该公司编辑页逐字段核对<br>2. 核对简称码为空的对照公司的简称码展示<br>3. 点击各证件缩略图预览<br>4. 对照数据库存储值核对回显 | 回显样本公司(字段全填);简称码为空的对照公司;DOC-01/03/05/07 | 1. 全部非空字段回显与保存值逐字符一致(名称/信用代码/法人/联系人/联系方式/简称码/省市区/详细地址/备注)<br>2. 简称码未设置时展示口径统一(空或"-",与列表口径一致),无 null 字符串<br>3. 四类证件可预览、预览内容为已上传文件<br>4. 回显无乱码(中文/间隔号/emoji 样本正常),页面无控制台报错 | 对应TP-C-002;漏测清单 §1 空值 |
| PLT_BSC_LC_046 | 平台端-基础信息-物流公司管理-编辑 | 验证编辑保存唯一性重校验并排除自身 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 与 LC-02 均存在 | 1. 进入 LC-01 编辑页,不改名称/信用代码,仅修改法人代表名称后保存<br>2. 重新进入编辑,把名称改为 LC-02 名称"昆明测试乙供应链有限公司"后保存<br>3. 再把名称改为全平台唯一新值后保存<br>4. 核对三次结果与数据库值<br>5. 编辑时简称码保持原值(YNA)保存成功;再把简称码改为 LC-02 的 YNB 后保存 | UQ-04(排除自身);UQ-05(改为他人值);LC-01/LC-02;简称码 YNA→YNB | 1. 不修改两个唯一字段时保存不被唯一性误拦,保存成功<br>2. 改为其他公司名称被拒并提示重复,字段标红、表单不清空<br>3. 改为全平台唯一值保存成功,列表对应行即时更新<br>4. 排除自身校验在服务端实现(按 ID 排除),数据库无重复记录<br>5. 简称码编辑同样排除自身:不改动时保存成功、不被误拦;改为他人简称码 YNB 被拒并提示重复(Q16,合同编号排除自身见 PLT_BSC_LC_068) | 对应TP-C-003;REQ-012/6.3;[已确认 2026-09-29: 编辑时名称/统一社会信用代码/简称码/合同编号均排除自身(Q16)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_047 | 平台端-基础信息-物流公司管理-编辑 | 验证编辑保存成功并写入行为日志 | P0 | 功能测试 | ACC-01 已登录;LC-01 存在;行为日志查询入口可用(运维工具-行为日志) | 1. 记录 LC-01 当前法人/联系人/详细地址/创建人/创建时间<br>2. 编辑页修改法人代表名称与详细地址后保存<br>3. 返回列表核对该行数据与创建人/创建时间<br>4. 在行为日志中按操作人+时间检索该次编辑记录 | LC-01;RM-01;REQ-035;项目画像 §7.3 | 1. 保存成功提示,列表对应行法人/地址即时更新为最新值<br>2. 创建时间/创建人保持不变(不被编辑刷新)<br>3. 行为日志新增一条记录,含操作人(ACC-01)、时间、IP、变更摘要(体现法人/地址字段前后值)<br>4. 数据库该行 update_time 更新、唯一字段未变;日志记录不可被普通角色删除 | 对应TP-C-004;REQ-012/第 3 章(项目差异化:行为日志四要素) |
| PLT_BSC_LC_048 | 平台端-基础信息-物流公司管理-编辑 | 验证编辑页证件替换与必传删除阻断 | P1 | 功能测试 | ACC-01/ACC-02 已登录;已存在含四类证件的公司(承接 045 样本) | 1. 编辑页对营业执照重新上传新文件(如过期的换成营业执照_测试甲.png)<br>2. 保存后重新打开编辑页核对预览<br>3. 删除身份证国徽面后点击保存<br>4. 核对行为日志 | DOC-01(新文件样本);DOC-05;DOC-11(替换) | 1. 替换后预览为最新文件、旧文件不再被引用(URL 更新为最新)<br>2. 数据库中该证件字段值为最新 OBS URL、不产生双文件并存<br>3. 必传证件删除后保存被阻断并提示,阻断时不更新任何字段<br>4. 替换操作记入行为日志(变更摘要含证件更换) | 对应TP-C-005;REQ-012 |
| PLT_BSC_LC_049 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证删除二次确认弹窗与取消不产生任何变更 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-04(无合同无引用)存在且列表可见 | 1. 点击 LC-04 行"删除"按钮<br>2. 核对二次确认框文案<br>3. 点击"取消"<br>4. 再次点击删除并在确认框中确认,记录删除结果(本步完成后 LC-04 即为已逻辑删除状态) | LC-04;REQ-013/BR-04;DL-04 | 1. 弹出二次确认框,文案说明为逻辑删除且不可恢复、不可物理删除<br>2. 取消后记录状态与列表展示不变,数据库无任何字段变更(deleted=0、无日志新增)<br>3. 确认后才进入删除校验流程<br>4. 页面无"物理删除"入口 | 对应TP-D-001;REQ-013/BR-04;[AI修正: 评审修复 S-002] |
| PLT_BSC_LC_050 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证存在生效中合同时删除被阻断并提示引导停用 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在 2 张生效中合同(HT-2026-0001/0002);LC-03 存在 1 张生效中合同(HT-2026-0001 同号) | 1. 对 LC-01 发起删除并确认<br>2. 核对阻断提示内容(含生效合同数)<br>3. 对 LC-03 发起删除并确认<br>4. 核对列表与数据库记录 | LC-01(2 张生效中);LC-03(1 张生效中);DL-01/DL-03 | 1. 两次删除均被阻断,提示包含生效合同数量(LC-01=2、LC-03=1)<br>2. 提示引导改用"停用"操作<br>3. 数据未被逻辑删除(列表仍可见、deleted 保持 0)<br>4. 阻断不产生部分删除效果(关联合同与档案均无变化) | 对应TP-D-002;REQ-013/BR-04/验收要点 2 |
| PLT_BSC_LC_051 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证被任一运单引用时删除被阻断(含历史运单) | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-02 被 WT-03 引用(合同均已过期/待生效);LC-01 被 WT-04 引用 | 1. 对 LC-02 发起删除并确认<br>2. 核对提示文案<br>3. 对已完结/已打款状态的引用运单公司 LC-02 复核(构造历史已完成运单引用)<br>4. 核对列表与数据库 | LC-02;WT-03(历史运单);DL-02;REQ-013/BR-04 | 1. 存在 1 张关联运单即阻断删除,提示明确为"被运单引用"类文案(区分于"生效合同"原因)<br>2. 运单为历史已完结/已打款状态同样阻断(历史追溯口径)<br>3. 公司无生效合同但被引用时同样阻断(LC-02 合同均已过期仍被拦)<br>4. deleted 保持 0、列表仍可见、运单与档案数据均无变化 | 对应TP-D-003;REQ-013/BR-04 |
| PLT_BSC_LC_052 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证删除阻断条件按合同三态拆分与组合提示 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-02 仅有已过期/待生效合同且被 WT-03 引用;LC-01 同时命中"生效合同+运单引用"双条件;LC-03 仅生效合同无引用 | 1. 新造公司 A(仅挂待生效合同、无运单/货源引用)发起删除<br>2. 新造公司 B(仅挂已过期合同、无运单/货源引用)发起删除<br>3. 对 LC-01(双条件命中)发起删除并核对提示完整性<br>4. 对 LC-03(仅生效合同)核对提示仅含合同原因 | LC-02(HT-2026-0011 过期+0012 待生效);LC-01(双条件);LC-03;DL-01 | 1. 公司 A 删除成功(deleted=1、列表消失),提示原因不含"生效合同"——仅"生效中合同/被运单引用"两条件阻断,待生效合同不构成阻断(Q9 已确认口径)<br>2. 公司 B 删除成功(deleted=1、列表消失),提示原因不含"生效合同"——已过期合同不构成阻断(Q9 已确认口径)<br>3. 双条件命中时提示原因完整:同时含生效合同数(2)与"被运单引用"<br>4. 提示原因与命中条件一一对应,不误导;无合同无引用可删除(衔接 054) | 对应TP-D-004;REQ-013(漏测清单 §5 状态拆分);[已确认 2026-09-29: 删除阻断仍仅"生效中合同/被运单引用"两条件(Q9)——待生效/已过期合同均不阻断,按确定断言执行];[AI修正: 评审修复 S-005];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_053 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证仅被货源引用的公司可删除(Q9 已确认) | P2 | 功能测试 | ACC-01/ACC-02 已登录;LC-05 仅被货源 HY-02 引用、未产生任何运单 | 1. 对 LC-05 发起删除并确认<br>2. 核对删除结果与提示(预期删除成功,无阻断)<br>3. 删除后进入货源管理查看 HY-02 的物流公司列<br>4. 核对数据库 deleted 值、选择弹窗与导出不含该公司 | LC-05;HY-02;DL-05(可删除路径);SS-07 | 1. 仅被货源引用不阻断删除(Q9 已确认:删除保护不覆盖该场景),LC-05 删除成功、列表不再出现<br>2. 删除后货源 HY-02 的物流公司列仍按快照显示"大理测试戊物流有限公司"(不空白、不变为"无外协公司")<br>3. 公司档案不可再查(列表不含)、导出与选择弹窗不含;数据库 deleted=1<br>4. 不再保留"若追加为阻断条件则记阻断"的备用分支——口径已收敛为确定断言(Q9) | 对应TP-D-005;BR-04/验收要点 2;[已确认 2026-09-29: BR-04 删除保护不覆盖"仅被货源引用、无运单"的公司——仍仅生效合同/运单引用两条件阻断,该公司可删除(Q9)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_054 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证可删除公司逻辑删除生效与全入口不可见 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-04 存在且无合同无引用;已在选择弹窗与打款下拉记录 LC-04 当前可见状态 | 1. 对 LC-04 点击删除并在二次确认中确认<br>2. 核对列表刷新与提示<br>3. 打开核算选择弹窗与货源选择弹窗检索 LC-04<br>4. 导出列表核对与行为日志 | LC-04;DL-04;REQ-013/6.5 | 1. 删除成功提示,列表刷新后 LC-04 不再出现<br>2. 数据库 logistics_company 中该行 deleted=1(逻辑删除,行保留),无物理删除<br>3. 导出文件不含该记录;核算选择弹窗与货源选择弹窗均不出现该记录<br>4. 行为日志新增删除操作记录(操作人/时间/IP/摘要) | 对应TP-D-006;REQ-013/验收要点 2/6.5;前置承接:LC-04 确认删除由本用例唯一执行(PLT_BSC_LC_049 步骤 4 仅记录结果);若 049 已执行确认删除,本用例前置改为"LC-04 已逻辑删除"、步骤 1 改用新造可删除公司;[AI修正: 评审修复 S-002] |
| PLT_BSC_LC_055 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证删除幂等与两账号并发删除的表现 | P2 | 功能测试 | 两个已登录会话(ACC-01/ACC-02);已准备可删除公司一家(新造"云南测试删除并发物流有限公司") | 1. 单会话对同一公司快速点击删除 2 次<br>2. 两会话同时对该公司发起删除<br>3. 记录两次结果与提示<br>4. 核对数据库 deleted 值与残留数据 | 新造可删除公司;项目画像 §8.2 重复提交/并发提交 | 1. 重复点击删除仅执行一次且不报错,提示不堆积<br>2. 并发删除时先到者成功、后到者提示"记录不存在或已删除"(非 500)<br>3. deleted 值恰为 1,无重复删除副作用(无多处日志堆积、无关联数据被误删)<br>4. 无残留脏数据 | 对应TP-D-007;项目画像 §8.2 |
| PLT_BSC_LC_056 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证已删除为终态:无恢复入口且全入口不可见 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-04/LC-05 已逻辑删除;打款筛选下拉与列表已知状态 | 1. 在列表、导出、核算选择弹窗、货源选择弹窗、打款筛选下拉逐处检索已删除公司<br>2. 查找"恢复/还原"入口<br>3. 用历史 URL 或接口直接访问已删除公司编辑页/详情<br>4. 核对接口返回 | LC-04/LC-05;SS-08;DL-07;需求 7.1 禁止流转 | 1. 列表、导出、核算勾选、货源选择、打款筛选下拉均不含已删除公司<br>2. 全站无"恢复/还原"入口,删除为终态<br>3. 通过 URL 直达或接口访问已删除公司 ID 被拒绝(404/无权限/记录不存在类响应),不渲染详情<br>4. 历史运单/货源/打款中该公司记录仍显示快照名称(衔接 PLT_TMS_LC_052) | 对应TP-D-008;需求 7.1(禁止流转) |
| PLT_BSC_LC_057 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证停用二次确认、取消不生效与即时消失 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 为启用状态;已打开核算选择弹窗记录 LC-01 可见 | 1. 在列表行内开关点击"停用"<br>2. 在二次确认框中点"取消"<br>3. 再次点击停用并确认<br>4. 刷新已打开的选择弹窗核对 LC-01 | LC-01;ST-02/ST-03;SS-01;BR-05 | 1. 停用前弹出二次确认框,取消后状态保持启用、无日志与状态变更<br>2. 确认后行内开关变灰(停用)、列表状态列更新<br>3. 同一时刻打开的选择弹窗刷新后 LC-01 立即消失(不使用缓存,无需等待过期)<br>4. 数据库 status 字段更新为停用值、操作记入行为日志 | 对应TP-D-009;REQ-015/BR-05/验收要点 3 |
| PLT_BSC_LC_058 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证停用后历史数据、档案管理与打款筛选不受影响 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-06 停用且被 WT-05 引用、关联打款 PY-03;LC-06 含历史合同 HT-2026-0021 | 1. 在运费核算列表与运单管理查看 WT-05 的物流公司列<br>2. 对 LC-06 执行列表查询、进入编辑页、进入合同管理 Tab 操作<br>3. 核对 LC-06 的生效合同数统计<br>4. 在财务打款页筛选下拉选择 LC-06 并查询 | LC-06;WT-05;PY-03;HT-2026-0021;SS-02/SS-03/SS-06 | 1. 停用前已关联的运单快照展示不变(WT-05 仍显示"保山测试己运输有限公司")<br>2. 停用公司仍可在列表查询到、可编辑、可管理合同(增删改合同正常)<br>3. 停用公司生效合同数统计照常(0,仅过期合同)<br>4. 打款筛选下拉含 LC-06,可筛出其历史打款记录 PY-03(与核算弹窗不可见形成对照) | 对应TP-D-010;BR-05(打款筛选见 PLT_TMS_LC_037) |
| PLT_BSC_LC_059 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证停用公司启用即时生效并恢复弹窗可见 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-06 为停用状态;核算选择弹窗可打开 | 1. 对 LC-06 点击"启用"<br>2. 核对是否需二次确认(需求仅规定停用需二次确认)<br>3. 核对开关颜色与列表状态<br>4. 刷新核算选择弹窗与货源选择弹窗检索 LC-06 | LC-06;ST-04;SS-04;REQ-016/BR-05 | 1. 启用即时生效(无延迟、无二次确认或按需求口径记录)<br>2. 状态开关变绿、列表状态列更新为启用<br>3. 核算选择弹窗与货源选择弹窗立即可见 LC-06<br>4. 数据库 status 更新、启用操作记入行为日志(操作人/时间/IP/摘要) | 对应TP-D-011;REQ-016/BR-05 |
| PLT_BSC_LC_060 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证状态列颜色与操作列按钮在各状态下的映射 | P2 | 功能测试 | ACC-01/ACC-02 已登录;列表同时存在启用(LC-01)与停用(LC-06)记录 | 1. 核对启用行与停用行的开关颜色<br>2. 核对两种状态行的编辑/删除按钮可见性<br>3. 点击停用行的编辑按钮进入编辑页<br>4. 切换开关观察防误触与多次点击表现 | LC-01/LC-06;漏测清单 §4 状态与按钮映射 | 1. 启用行开关为绿色、停用行为灰色,颜色与状态一一对应(无错配)<br>2. 编辑/删除按钮在启用与停用两种状态下均可见(停用不代表不可编辑)<br>3. 停用公司可正常进入编辑页并保存<br>4. 开关切换中有防误触(禁用或二次确认),无越权/错态操作入口 | 对应TP-D-012;漏测清单 §4/最佳实践 |
| PLT_BSC_LC_061 | 平台端-基础信息-物流公司管理-删除与启停用 | 验证删除后名称/信用代码/简称码可复用(规则组合) | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-04 已被逻辑删除(承接 054);已知其名称、代码、简称码(YND 口径) | 1. 新造临时公司("云南测试重建样本物流有限公司"+91530102MA6BA5C314,简称码 DL6)并删除该临时公司<br>2. 用与临时公司完全相同的三元组(名称+91530102MA6BA5C314+简称码 DL6)新建公司提交<br>3. 核对新建成功与列表展示<br>4. 核对导出与统计是否将新旧两家视为同一 | UQ-06/DL-06;LC-04 的名称+代码+简称码;BR-01 | 1. 删除后同名新建成功、同代码新建成功、同简称码新建成功(唯一性不含已逻辑删除公司)<br>2. 新建公司与已删除行在数据库并存(deleted=0 与 deleted=1 各 1 条,共 2 条记录),无唯一性误拦<br>3. 列表仅展示新建公司(1 条,不含已删除行),导出/统计不混淆新旧<br>4. 全部唯一性校验按 deleted=0 范围执行(规则组合生效) | 对应TP-D-013;BR-01+BR-04 组合/REQ-009;本用例为"已删除后三元组复用"的唯一创建执行点(PLT_BSC_LC_034/035/036 不得再创建同名/同码/同简称码公司,顺序执行时以本用例的重建记录为准);[AI修正: 评审修复 S-003] |
| PLT_BSC_LC_062 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同管理 Tab 筛选区、按钮组与表格结构完整 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在(名下有 3 张合同);"企业货主-编辑-合同管理"截图基线可参照 | 1. 进入 LC-01 编辑页点击"合同管理"Tab<br>2. 核对筛选区四个条件(合同编号/所属税源地/签订时间范围/创建时间范围)<br>3. 核对按钮组(查询/新增/导出)<br>4. 点击"新增"核对弹窗打开 | LC-01;REQ-017/6.4 | 1. 筛选条件四条齐全、类型正确(编号输入框、税源地下拉、两个日期范围)<br>2. 按钮组含查询/新增/导出三个按钮且可用<br>3. 合同表格渲染 1 条以上记录、列结构见 PLT_BSC_LC_064<br>4. 点击"新增"打开新增合同弹窗(对标企业货主-新增合同弹窗),布局一致 | 对应TP-E-001;REQ-017 |
| PLT_BSC_LC_063 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同四个筛选条件单独与组合查询准确且重置恢复 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同台账(HT-2026-0001 生效中、HT-2026-0002 生效中、HT-2025-0987 已过期)已就绪 | 1. 合同编号输入"HT-2026"点查询<br>2. 清空后按所属税源地筛选(TX-01 真实字典值)点查询<br>3. 按签订时间范围 [T-35, T] 查询,再按创建时间范围单独查询<br>4. 组合"编号 HT-2026 + 签订时间范围"查询后点"重置",再用无结果关键词查询 | CN-01;TX-01;HT-2026-0001/0002/0987;QR-07 同口径空态 | 1. 编号模糊查询命中 LC-01 名下编号含"HT-2026"的合同(不含其他公司合同)<br>2. 税源地筛选结果与所选字典值一一对应<br>3. 签订时间与创建时间两个范围互不串字段,各自筛选结果符合台账<br>4. 重置清空全部条件恢复全量;无结果时有明确提示(非空白) | 对应TP-E-002;REQ-017(漏测清单 §4) |
| PLT_BSC_LC_064 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同列表十类列完整与状态列三态正确展示 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 含生效中/已过期合同;LC-02 含待生效合同 HT-2026-0012 | 1. 核对合同列表表头与顺序<br>2. 核对 HT-2026-0001 行状态列<br>3. 进入 LC-02 合同管理 Tab 核对 HT-2026-0012 状态列<br>4. 核对时间列格式与操作列三入口 | CN-01;HT-2026-0001(生效中)、HT-2025-0987(已过期)、HT-2026-0012(待生效) | 1. 十类列齐全且顺序为:选择框、合同编号、所属税源地、合同状态、创建人、签订时间、创建时间、生效时间、过期时间、操作<br>2. 状态列按系统计算展示"待生效/生效中/已过期"三态,与台账一致<br>3. 时间列格式统一(YYYY-MM-DD,若含时分则全列统一)<br>4. 操作列含查看/编辑/删除三个入口且均可点击 | 对应TP-E-003;REQ-018 |
| PLT_BSC_LC_065 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同列表选择框保留但无任何批量操作入口 | P3 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同管理 Tab 存在 3 张合同 | 1. 核对表头选择框列存在<br>2. 勾选其中 1 条合同,观察页面按钮区变化<br>3. 勾选全部合同(全选)再观察<br>4. 用 DevTools 监听请求确认勾选不触发接口调用 | LC-01 合同列表;REQ-037/6.4 负向范围 | 1. 选择框列保留可选,勾选后无"批量删除/批量导出"等批量按钮出现<br>2. 全选后同样无批量操作入口出现(本期不提供批量操作)<br>3. 勾选动作不触发任何接口请求<br>4. 与需求 6.4 一致(仅保留列),无过度实现 | 对应TP-E-004;REQ-037/6.4(负向范围,防过度实现) |
| PLT_BSC_LC_066 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同新增正向链路:状态自动计算与生效合同数联动 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同管理 Tab 已打开;环境"数据字典-税源地"已维护真实值;本地准备 AT-01 附件 | 1. 点击"新增",填写合同编号、签订时间、生效时间、过期时间、所属税源地并上传附件<br>2. 点击保存<br>3. 核对列表新行与状态列<br>4. 返回列表页核对 LC-01 生效合同数<br>5. 核对数据库与行为日志 | CN-01 变体(如 HT-2026-0003);生效时间=T、过期时间=T+365;TX-01 真实字典值;AT-01(合同扫描件.pdf) | 1. 保存成功提示,合同列表出现该记录且录入值与列表一致<br>2. 状态自动计算正确(生效时间≤今天≤过期时间 → 生效中)<br>3. LC-01 列表"生效合同数"随之 +1<br>4. logistics_contract 落库(company_id 关联 LC-01、附件 OBS URL);行为日志记录新增合同操作 | 对应TP-E-005;REQ-019/验收要点 4;[AI修正: 评审修复 O-001] |
| PLT_BSC_LC_067 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同编号同公司唯一、跨公司可重复 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 已用编号 HT-2026-0001;LC-03 已用同号 HT-2026-0001(跨公司重复对) | 1. 在 LC-01 合同管理下新增编号 HT-2026-0001 的合同并保存<br>2. 核对阻断提示与表单态<br>3. 进入 LC-03 合同管理 Tab 核对已存在的 HT-2026-0001 行<br>4. 在 LC-03 下再次新增编号 HT-2026-0001,验证同公司唯一性仍然生效 | CN-04(同公司重复);CN-05(跨公司重复);LC-01/LC-03 | 1. LC-01 下重复编号保存被拒,提示在弹窗内就地显示且表单不清空<br>2. 不同公司之间允许使用相同编号(LC-01 与 LC-03 同号并存)<br>3. LC-03 下再次新增同号仍被拒(同公司唯一基于 company_id 范围)<br>4. 数据库唯一约束按 company_id+编号组合实现,跨公司记录互不冲突 | 对应TP-E-006;BR-03;[AI修正: 评审修复 S-006] |
| PLT_BSC_LC_068 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同编号 ≤50 字符边界与编辑不改编号可保存 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在合同 HT-2026-0001;已准备 V-13/V-14 字面值 | 1. 新增合同编号输入 V-13(恰 50 字符)保存<br>2. 输入 V-14(51 字符)保存<br>3. 编辑 HT-2026-0001 仅更换附件(编号不变)后保存<br>4. 编辑另一合同把编号改为 HT-2026-0001(同公司已用)后保存 | CN-02/V-13(50 字);CN-03/V-14(51 字);CN-06(编辑排除自身);CN-04 | 1. 50 字符编号保存成功<br>2. 51 字符被阻断并提示上限<br>3. 仅改其他字段(编号不变)保存成功、不被唯一性误拦(排除自身生效)<br>4. 改为同公司其他已用编号被拒并提示 | 对应TP-E-007;REQ-019/BR-03;[已确认 2026-09-29: 合同编号编辑时排除自身——仅改其他字段(编号不变)保存成功、不被唯一性误拦;改为同公司其他已用编号被拒(Q16)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_069 | 平台端-基础信息-物流公司管理-合同管理 | 验证过期时间必须晚于生效时间的三类边界 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同管理 Tab 已打开;日期控件可用 | 1. 新增合同设置生效=过期=T+10 保存<br>2. 设置生效=T+100、过期=T+10(倒置)保存<br>3. 设置生效=T+10、过期=T+11(晚 1 天)保存<br>4. 核对每次弹窗状态与提示<br>5. 分别留空签订时间、生效时间、过期时间各保存一次 | CD-01(过期=生效);CD-02(过期<生效);T+10=2026-10-09、T+11=2026-10-10 | 1. 过期=生效被拒,提示"过期时间必须晚于生效时间"类文案<br>2. 过期早于生效被拒、提示明确<br>3. 过期=生效+1 天通过并保存成功<br>4. 所有阻断场景弹窗不关闭、已填内容保留;数据库无非法记录落库<br>5. 三项时间任一为空保存均被阻断、错误字段就近标红,弹窗不关闭、数据库无非法记录(样本 CD-04) | 对应TP-E-008;BR-03/验收要点 4;CD-04;[AI修正: 评审修复 S-008] |
| PLT_BSC_LC_070 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同状态自动计算与"含边界当天"口径 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-07 台账 HT-2026-0031~0034 已就绪(CD-B1/B2 为日敏感样本,仅执行当天有效);可 mock 系统日期 | 1. 核对 HT-2026-0031(生效时间=T 当天)状态<br>2. 核对 HT-2026-0032(过期时间=T 当天)状态<br>3. 核对 HT-2026-0033(过期=T-1)与 HT-2026-0034(生效=T+1)状态<br>4. 尝试在列表/弹窗中手工修改状态;mock 日期+1 天后复核 0031~0034 状态变化 | HT-2026-0031(当天生效);HT-2026-0032(当天过期);HT-2026-0033(昨天过期);HT-2026-0034(明天生效);CD-06/SS-11 | 1. 生效时间=今天 → 生效中;过期时间=今天 → 仍为生效中(含边界当天口径,当前日期∈[生效,过期])<br>2. 过期=昨天 → 已过期;生效=明天 → 待生效<br>3. 状态列与弹窗均无手工设置/编辑入口,状态不可被人工修改<br>4. mock 日期推进后状态由待生效→生效中→已过期自动流转(单向,无跳过),LC-07 生效合同数随状态统计变化(当天=2,次日=1) | 对应TP-E-009;REQ-021/BR-03/7.2(漏测清单 §5 状态拆分) |
| PLT_BSC_LC_071 | 平台端-基础信息-物流公司管理-合同管理 | 验证签订时间可晚于当前日期(补录场景) | P2 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同管理 Tab 已打开 | 1. 新增合同签订时间设为 T+30(2026-10-29,未来日期)保存<br>2. 核对保存结果与列表展示<br>3. 设置签订时间晚于生效时间(如签订=T+30、生效=T+10)保存<br>4. 按签订时间范围筛选该合同 | CD-03(补录-签订晚于当前);T+30=2026-10-29;T+10=2026-10-09 | 1. 签订时间为未来日期保存成功(不做强校验,补录口径)<br>2. 列表签订时间列展示所填未来日期<br>3. 签订时间早于/晚于生效时间的组合不做阻断(需求不做约束)<br>4. 签订时间参与筛选正确(按范围可命中该合同),状态仍按生效/过期时间独立计算 | 对应TP-E-010;REQ-019 |
| PLT_BSC_LC_072 | 平台端-基础信息-物流公司管理-合同管理 | 验证所属税源地必选与数据字典来源一致 | P1 | 功能测试 | ACC-01/ACC-02 已登录;已从"基础信息-数据字典-税源地"读取前 2 项真实字典值(TX-01) | 1. 新增合同不选税源地直接保存<br>2. 打开税源地下拉逐项核对与字典维护内容一致<br>3. 选择 TX-01 真实值保存后重新打开编辑弹窗核对回显<br>4. 在数据字典新增一个税源地后刷新下拉(或记录同步口径) | TX-01(真实字典值,数据缺口 #6);TX-02(不选);TX-03(字典外值接口级) | 1. 未选税源地保存被阻断并提示必选<br>2. 下拉选项与"数据字典-税源地"维护内容一致(与企业货主同源)<br>3. 保存后编辑弹窗回显所选字典值正确<br>4. 接口携带字典外编码提交时按服务端字典校验拒绝(记录实际口径);字典停用项按字典口径表现(记录) | 对应TP-E-011;REQ-019/6.4 |
| PLT_BSC_LC_073 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件必传与七格式白名单 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 合同管理 Tab 已打开;本地准备 AT-01 七个白名单样本与 AT-02 拒绝样本 | 1. 不传附件填写其余字段后保存<br>2. 依次上传 pdf/doc/docx/jpg/jpeg/bmp/png 七类样本各一次并保存<br>3. 依次上传 xlsx/txt/zip/rar/gif 样本<br>4. 核对上传后文件名展示<br>5. 上传大写扩展名样本(合同.PDF、合同.Jpg,AT-03)并核对放行结果 | AT-01(7 类);AT-02(白名单外);AT-03(大写扩展名);AT-04(无扩展名) | 1. 未上传附件保存被阻断并提示附件必传<br>2. 七种格式逐一上传成功,上传后显示文件名<br>3. 白名单外格式(xlsx/txt/zip/rar/gif)拒绝并提示格式白名单(注意 gif/rar 也在白名单外)<br>4. 无扩展名文件("合同附件")被拒绝;拒绝后不产生上传残留<br>5. 大写扩展名放行:.PDF/.Jpg 等同 .pdf/.jpg 上传成功、保存成功(白名单按扩展名小写归一判定,Q10) | 对应TP-E-012;REQ-019/BR-03;[已确认 2026-09-29: 合同附件扩展名大小写不敏感——.PDF/.Jpg 等同 .pdf/.jpg 放行(白名单按扩展名小写归一判定)(Q10)];[AI修正: 评审修复 B-002];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_074 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件伪造扩展名与异常文件防御 | P1 | 功能测试 | ACC-01/ACC-02 已登录;本地准备 AT-05 伪造样本(病毒.exe.pdf、contract.pdf.exe、png 改名 jpg)与 0 字节空文件 | 1. 上传"病毒.exe.pdf"与"contract.pdf.exe"<br>2. 上传 exe 改名为"合同扫描件.jpg"的文件<br>3. 上传 0 字节空文件<br>4. 上传截断损坏的 pdf 文件 | AT-05;AT-06(0 字节);SEC-09;漏测清单 §1 | 1. 双扩展名与伪造样本被拒绝或按服务端真实类型校验检出,任何情况下不被执行、不落 OBS<br>2. exe 改名 jpg 被拒绝并提示<br>3. 0 字节空文件的实际处理行为记录(拒绝或允许并提示)<br>4. 损坏文件给出可读提示、无 500 堆栈暴露;拒绝场景表单已填内容不丢失 | 对应TP-E-013;REQ-019(漏测清单 §1;0 字节为观察项);[已确认 2026-09-29: 合同附件扩展名大小写不敏感(.PDF/.Jpg 放行,Q10)——大写扩展名放行断言由 PLT_BSC_LC_073 承接,本用例聚焦伪造/异常文件防御];[AI修正: 评审修复 B-002];[AI修正: 待确认已确认 2026-09-29] |
| PLT_BSC_LC_075 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件不设大小上限(Q6)下大文件上传表现 | P2 | 功能测试 | ACC-01/ACC-02 已登录;本地准备约 300MB 大文件 AT-06(合同扫描件大文件.pdf);DevTools 可观察上传耗时 | 1. 上传约 100MB 级附件并观察前端是否拦截<br>2. 上传约 300MB 大文件,记录 Loading 与耗时<br>3. 上传期间切走页面再返回观察上传是否继续<br>4. 阻断/延迟上传接口模拟超时后核对提示与重试 | AT-06(约 300MB,DOC-09 同类);Q6 决议(不设上限);RISK-AVAILABILITY | 1. 大文件不被前端大小校验拒绝(口径为不设上限)<br>2. 上传耗时过长时有 Loading 与超时提示,不出现无反馈卡死<br>3. 上传失败可重试且不影响已填表单内容(已选附件/字段保留)<br>4. 实际上传耗时记录供评审确认是否需要补充限制;成功后 OBS URL 与文件大小一致 | 对应TP-E-014;Q6 决议(记录耗时供评审) |
| PLT_BSC_LC_076 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件单附件替换与多选限制 | P1 | 功能测试 | ACC-01/ACC-02 已登录;合同 HT-2026-0001 已含附件(合同扫描件.pdf);本地准备第二份附件 | 1. 编辑 HT-2026-0001 重新上传新的合同扫描件(替换)<br>2. 保存后打开查看弹窗核对附件文件名与预览内容<br>3. 重新编辑,一次选择 2 个文件上传<br>4. 核对列表与存储 | AT-07(重新上传替换);AT-08(多文件选择);HT-2026-0001 | 1. 重新上传后仅显示新文件(旧文件被替换、旧 URL 不再被引用)<br>2. 查看/下载得到的是最新文件,内容与替换件一致<br>3. 一次选择 2 个文件时按单附件限制处理(仅取 1 个或明确提示),不产生多附件并存<br>4. 数据库中附件 URL 字段恰 1 个值(单附件约束落库) | 对应TP-E-015;Q6 决议/REQ-019/020 |
| PLT_BSC_LC_077 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件预览与下载正确渲染且与原件一致 | P1 | 功能测试 | ACC-01/ACC-02 已登录;合同 HT-2026-0001 附件为 pdf,另有 jpg 附件合同可用;OBS 服务可用 | 1. 打开合同查看弹窗点击附件"预览"<br>2. 核对 pdf 渲染与图片渲染<br>3. 点击"下载"保存文件并打开核对<br>4. 核对下载文件名 | HT-2026-0001;AT-01(pdf 与 jpg 样本) | 1. 预览按格式正确渲染(pdf 内嵌预览、图片直接显示)<br>2. 下载文件可打开且内容与上传原件一致(哈希或逐页比对)<br>3. 下载文件名与上传文件名一致(含中文不乱码)<br>4. 预览/下载失败时有明确提示(联动 078 的 OBS 场景) | 对应TP-E-016;REQ-020 |
| PLT_BSC_LC_078 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同附件上传/预览在 OBS 不可用时的失败处理 | P2 | 功能测试 | ACC-01/ACC-02 已登录;具备 OBS/文件服务故障注入手段(数据缺口 #11,运维配合或 DevTools 拦截);合同弹窗已打开且表单已填部分字段 | 1. 阻断 OBS/上传接口后上传附件<br>2. 核对失败提示与表单内容保留<br>3. 阻断附件预览/下载接口后点击预览与下载<br>4. 恢复服务后重试上传与下载 | 数据缺口 #11(OBS 故障注入);AT-09(上传依赖失败);RISK-AVAILABILITY | 1. OBS 不可用时上传有明确失败提示(可读文案,非 500 堆栈)且可重试<br>2. 表单已填字段与已选内容不丢失<br>3. 预览/下载失败提示可读,不出现白屏或长期 Loading<br>4. 恢复服务后重试上传成功、下载恢复正常 | 对应TP-E-017;RISK-AVAILABILITY(项目画像 §6.1 华为云 OBS 依赖) |
| PLT_BSC_LC_079 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同查看为只读弹窗且字段完整不可编辑 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在合同 HT-2026-0001(含附件) | 1. 点击 HT-2026-0001 行"查看"<br>2. 逐字段核对与列表/详情一致<br>3. 尝试点击各字段(编号/时间/税源地)检查是否可编辑<br>4. 关闭弹窗后核对列表状态 | HT-2026-0001;漏测清单 §4 查看只读 | 1. 查看弹窗全部字段只读展示(文本框禁用或纯文本),与列表数据一致<br>2. 无保存/提交/编辑入口<br>3. 附件可预览/下载<br>4. 关闭后列表状态与数据无变化(未触发任何写接口) | 对应TP-E-018;REQ-020(漏测清单 §4 查看只读) |
| PLT_BSC_LC_080 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同编辑回显、状态重算与行为日志 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-02 存在合同 HT-2026-0012(待生效,生效时间 T+10) | 1. 点击 HT-2026-0012 行"编辑",核对弹窗回显(编号/三个时间/税源地/附件)<br>2. 把生效时间改为今天并保存<br>3. 核对列表状态列变化与 LC-02 生效合同数<br>4. 在行为日志检索该次编辑 | HT-2026-0012;T=2026-09-29;CD-06/SS-11 | 1. 编辑弹窗完整回显已有数据(含附件文件名)<br>2. 修改生效时间为当天后保存成功,状态由"待生效"重算为"生效中"<br>3. 列表即时更新;LC-02 生效合同数 +1<br>4. 行为日志新增合同编辑记录(操作人/时间/IP/变更摘要) | 对应TP-E-019;REQ-020 |
| PLT_BSC_LC_081 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同删除二次确认、物理删除与生效合同数联动 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 存在生效中合同 HT-2026-0002;已记录 LC-01 生效合同数(2) | 1. 点击 HT-2026-0002 行"删除"并在确认框点"取消"<br>2. 再次点击删除并确认<br>3. 核对列表与 LC-01 生效合同数<br>4. 核对行为日志与关联运单/打款数据 | HT-2026-0002(生效中);REQ-020/第 7 章;SS-12 | 1. 删除需二次确认,取消后记录保留、无数据变更<br>2. 确认后合同从列表消失(物理删除,无回收站/草稿态)<br>3. LC-01"生效合同数"由 2 变为 1;数据库 logistics_contract 中该行被物理删除<br>4. 行为日志记录删除操作;删除不影响运单/打款任何流程与数据 | 对应TP-E-020;REQ-020/第 7 章(记录性维护) |
| PLT_BSC_LC_082 | 平台端-基础信息-物流公司管理-合同管理 | 验证公司间合同数据严格隔离不串 | P1 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 与 LC-02 各有合同(HT-2026-0001/0002/0987 与 HT-2026-0011/0012);LC-01 合同管理 Tab 已打开 | 1. 记录 LC-01 合同列表条数与编号集合<br>2. 在 LC-01 下新增合同编号 HT-2026-0011(LC-02 已用编号)<br>3. 进入 LC-02 合同管理 Tab 核对列表<br>4. 删除 LC-01 一张合同后在 LC-02 列表核对 | LC-01/LC-02 合同集合;HT-2026-0011;漏测清单 §4 主体间数据隔离 | 1. A/B 两公司合同列表互相独立(LC-01 列表不含 LC-02 的合同,反之亦然)<br>2. 新增 LC-01 的合同后 LC-02 列表不出现该记录<br>3. LC-01 可成功使用 LC-02 已用编号(跨公司重复允许,验证隔离无误判)<br>4. 删除 LC-01 合同不影响 LC-02;导出仅含当前公司合同(where company_id=当前) | 对应TP-E-021;漏测清单 §4/REQ-018 |
| PLT_BSC_LC_083 | 平台端-基础信息-物流公司管理-合同管理 | 验证合同列表导出列、状态列与 20000 上限口径 | P2 | 功能测试 | ACC-01/ACC-02 已登录;LC-01 名下 3 条合同(BLK-08);已设置筛选条件(编号含 HT-2026) | 1. 在合同管理 Tab 设置筛选条件后点击"导出"<br>2. 打开文件核对列与行<br>3. 核对导出的合同状态列取值<br>4. 构造大数据量合同场景(或复用平台组件口径)核对上限行为 | BLK-08(3 条合同);REQ-017/第 7 章;项目画像 §8.3 | 1. 导出文件可正常打开,列与合同列表一致(含合同状态列)<br>2. 导出数据与当前筛选条件一致且仅含当前公司(company_id 过滤)<br>3. 状态列导出值为导出时的系统计算值(非落库手工值)<br>4. 大数据量按 20000 上限统一口径处理(截断或明确提示),行为与平台其他列表一致 | 对应TP-E-022;REQ-017/第 7 章(项目画像 §8.3) |
| PLT_TMS_LC_001 | 平台端-整车运输-承运结算-运费核算 | 验证运费核算入口与"页面即运单列表"口径(无独立核算单) | P0 | 功能测试 | ACC-03(核算人员)已登录且已授权运费核算权限;环境存在未核算/已核算运单各 1 张以上 | 1. 进入 整车运输 → 承运结算 → 运费核算<br>2. 核对页面为运单列表且含"核算状态"列<br>3. 核对未核算/已核算两态的展示差异与批量核算按钮<br>4. 点击行内"编辑"核对弹窗标题;全页检索"核算单/新建核算单"字样 | ACC-03;REQ-022/6.6;WT-01~WT-10 占位运单 | 1. 页面为运单列表,核算状态列区分"未核算/已核算"两态<br>2. 行内"编辑"打开标题为"修改核算"的弹窗<br>3. 全页面无任何"核算单/新建核算单"字样与入口(口径纠正落地)<br>4. 批量核算按钮存在且可点击(批量口径见 PLT_TMS_LC_021) | 对应TP-F-001;REQ-022/6.6(口径纠正:核算即运单核算) |
| PLT_TMS_LC_002 | 平台端-整车运输-承运结算-运费核算 | 验证修改核算弹窗原有字段不变、新增两字段选填 | P0 | 功能测试 | ACC-03 已登录;WT-08(未核算载体运单,原有字段齐全)存在 | 1. 对 WT-08 点击行内"编辑"打开修改核算弹窗<br>2. 核对原有字段(运单号、货主名称、司机姓名、车牌号、结算吨位等)展示与可编辑口径<br>3. 核对新增"物流公司"字段(含"选择物流公司"入口)<br>4. 核对"客户收货地址"为文本输入 | WT-08;REQ-023 | 1. 原有字段展示正确且可编辑口径与改造前一致(未做非需求变更)<br>2. 新增"物流公司"字段存在、标注选填、为单选交互(含选择入口)<br>3. 新增"客户收货地址"字段存在、标注选填、为纯文本输入<br>4. 弹窗无需求外多余字段;布局对齐需求 6.6 | 对应TP-F-002;REQ-023 |
| PLT_TMS_LC_003 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗仅加载启用公司(停用/已删除均不出现) | P0 | 功能测试 | ACC-03 已登录;LC-01~LC-07 存在(LC-06 停用、LC-04 已删除);WT-08 弹窗可打开 | 1. 打开选择物流公司弹窗,核对列表集合<br>2. 检索 LC-06(停用)与 LC-04(已删除)名称<br>3. 与列表页"状态=启用"筛选计数比对<br>4. 另一会话将某启用公司(如 LC-01)停用后刷新弹窗再核对 | LC-01~LC-07;LC-06(停用);LC-04(已删除);BLK-01 计数 | 1. 启用公司在弹窗中全部可见,数量与列表(状态=启用)计数一致<br>2. 停用公司不出现(停用后即时消失,衔接 PLT_BSC_LC_057)<br>3. 已逻辑删除公司不出现<br>4. 弹窗数据源带 deleted=0 且 status=启用 过滤(接口参数与返回集合核对) | 对应TP-F-003;REQ-024/BR-06.2/验收要点 5 |
| PLT_TMS_LC_004 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗默认按创建时间倒序展示 | P1 | 功能测试 | ACC-03 已登录;已构造 BLK-01 的 25 条启用公司(批量测试物流公司00001~00025) | 1. 打开选择弹窗记录首行公司<br>2. 翻至第 2 页核对排序延续<br>3. 与列表页默认排序口径比对<br>4. 新建一家公司("云南测试弹窗排序物流有限公司")后重开弹窗核对 | BLK-01(25 条,后建编号大);新建弹窗排序样本公司 | 1. 最新创建的启用公司排在首位(创建时间倒序)<br>2. 翻页后排序延续无重置、无重复<br>3. 与列表页默认排序口径一致(同 orderBy)<br>4. 新建公司后重开弹窗该司位于首位 | 对应TP-F-004;REQ-024(漏测清单 §4 选择弹窗排序) |
| PLT_TMS_LC_005 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗搜索命中与无结果空态文案 | P1 | 功能测试 | ACC-03 已登录;BLK-03 关键词样本已构造;WT-08 弹窗已打开并已勾选某公司 | 1. 搜索框输入"测试庚"(名称部分字符)核对命中<br>2. 输入"91532301"(信用代码前缀)核对命中<br>3. 输入"ZZZ不存在"核对空态<br>4. 清空搜索核对恢复全量且已勾选状态不丢失 | LC-07(名称部分字符"测试庚"、信用代码前缀 91532301);无结果关键词 ZZZ不存在;WT-08 | 1. 名称部分字符命中对应公司(LC-07),信用代码前缀命中 LC-07<br>2. 无结果显示指定空态文案"未找到符合条件的物流公司"<br>3. 清空搜索恢复全量列表与默认排序<br>4. 搜索过程中已勾选/已选页签状态不丢失(反馈完整) | 对应TP-F-005;REQ-024(漏测清单 §4);[AI修正: 评审修复 O-003] |
| PLT_TMS_LC_006 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗分页默认 20 条/页与翻页正确 | P1 | 功能测试 | ACC-03 已登录;BLK-01/BLK-02 的 25 条启用公司已构造;记录弹窗在大数据量下的首屏渲染时长基线(BLK-06 的 250 条可另行构造) | 1. 打开弹窗核对默认每页条数与页数<br>2. 翻至第 2 页核对余数 5 条<br>3. 如提供每页条数切换,验证 10/50/100 档与列表口径一致<br>4. 用 250 条数据(BLK-06)观察首屏渲染与翻页时长并记录基线 | BLK-01/BLK-02(25 条);BLK-06(250 条,记基线) | 1. 默认 20 条/页、共 2 页,末页余数=5<br>2. 翻页、页码跳转数据正确、无重复无丢失<br>3. 每页条数切换(如提供)选项与平台列表 10/20/50/100 口径一致<br>4. 250 条时弹窗打开无卡死、加载失败时有"重新加载"可用(衔接 011);首屏渲染时长基线已记录 | 对应TP-F-006;REQ-024/BR-06.2(BLK-06 性能基线记录) |
| PLT_TMS_LC_007 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗行字段展示五要素且与档案一致 | P1 | 功能测试 | ACC-03 已登录;LC-01(含 2 张生效中合同)与 LC-02(无生效合同)存在 | 1. 打开弹窗核对 LC-01 行的公司名称/信用代码/联系人/联系方式/生效合同数<br>2. 与物流公司列表页对应字段比对<br>3. 为 LC-01 新增一张生效中合同后重开弹窗核对计数<br>4. 核对字段为空公司(如联系人长文本)的展示 | LC-01(91530102MA6N4K7X52 / 生效合同数=2);LC-02(生效合同数=0);REQ-024/6.6.3 | 1. 五个字段齐全:公司名称、统一社会信用代码、联系人、联系方式、生效合同数<br>2. 各字段值与档案/列表口径一致,生效合同数为实时值<br>3. 新增生效合同后弹窗计数同步 +1(实时统计)<br>4. 字段为空时展示合理(空或"-"),无 null 字样 | 对应TP-F-007;REQ-024/6.6.3 |
| PLT_TMS_LC_008 | 平台端-整车运输-承运结算-运费核算 | 验证无生效合同公司显示"⚠ 无生效合同"且可勾选保存(Q3) | P0 | 功能测试 | ACC-03 已登录;LC-02(合同已过期+待生效、生效合同数=0)存在;WT-08 未核算载体可用 | 1. 打开弹窗核对 LC-02 行提示<br>2. 勾选 LC-02 并点"确定"回填<br>3. 保存核算<br>4. 核对运单落库与列表展示 | LC-02;HT-2026-0011(已过期)/0012(待生效);Q3 决议/验收要点 5 | 1. LC-02 行显示"⚠ 无生效合同"提示(仅信息提示)<br>2. 该行可正常勾选并确定回填,无阻断拦截<br>3. 保存核算成功(不阻断任何流程),运单落库 LC-02 三字段快照<br>4. 有生效合同的公司行不显示该提示;提示仅为展示层,不产生校验拦截请求 | 对应TP-F-008;REQ-024/Q3 决议/验收要点 5 |
| PLT_TMS_LC_009 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗单选语义与再次选择替换(Q1) | P0 | 功能测试 | ACC-03 已登录;LC-01 与 LC-07 均启用;WT-08 弹窗已打开 | 1. 勾选 LC-01 后尝试再勾选 LC-07,观察控件语义<br>2. 点"确定"回填核对公司<br>3. 重开弹窗改选 LC-07 并确定<br>4. 保存后核对运单上公司唯一性 | LC-01(甲)、LC-07(庚);Q1 决议 | 1. 弹窗为单选控件语义(勾选新行自动取消上一行或单选按钮形态),不允许多选<br>2. 选择 A 后再选 B 回填为 B(A 被替换),弹窗内仅一行选中<br>3. 运单上最终仅存一家公司信息(company_id/名称/信用代码三字段为同一公司)<br>4. 数据库无多公司并存结构(无关联多值字段被写多条) | 对应TP-F-009;REQ-024/Q1 决议 |
| PLT_TMS_LC_010 | 平台端-整车运输-承运结算-运费核算 | 验证选择反馈:确定回填与取消/关闭不变更 | P1 | 功能测试 | ACC-03 已登录;WT-08 弹窗可打开;LC-07 可用于选择 | 1. 勾选 LC-07 后点"确定",核对回填内容与位置<br>2. 重开弹窗不勾选任何行直接点"确定",核对原值<br>3. 重开弹窗勾选 LC-01 后点"取消"与右上角关闭,分别核对原值<br>4. 核对修改核算弹窗中回显的字段构成 | LC-07(楚雄测试庚物流有限公司 / 91532301MA6W9E3F4G);LC-01;漏测清单 §4 选择反馈 | 1. 确定后弹窗关闭、所选公司回填到修改核算弹窗(名称/信用代码/联系人回显位置正确)<br>2. 未勾选直接确定时不产生空选覆盖(原值保持不变或给出提示,记录实际行为)<br>3. 取消与右上角关闭均不改变原已选值(回滚到弹窗前状态)<br>4. 弹窗交互无报错、无重复提交请求 | 对应TP-F-010;漏测清单 §4 选择反馈 |
| PLT_TMS_LC_011 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗加载失败空态与"重新加载"恢复 | P2 | 功能测试 | ACC-03 已登录;DevTools 可阻断公司列表接口(WT-10 故障注入) | 1. 阻断弹窗列表接口后打开选择弹窗<br>2. 核对空态展示与按钮<br>3. 恢复接口后点击"重新加载"<br>4. 恢复后验证搜索与分页功能 | WT-10(弹窗加载失败);RISK-AVAILABILITY;项目画像 §6.1 | 1. 加载失败时展示空态与"重新加载"按钮(非白屏/报错弹窗)<br>2. 点击重新加载后可恢复列表数据<br>3. 恢复后搜索可命中、分页可翻页、单选可勾选并回填(三功能逐一验证)<br>4. 失败过程无控制台未捕获异常、无脏弹窗残留 | 对应TP-F-011;RISK-AVAILABILITY(依赖不可用空态与重试);[AI修正: 评审修复 O-002] |
| PLT_TMS_LC_012 | 平台端-整车运输-承运结算-运费核算 | 验证货源已选公司默认带入与未选为空 | P0 | 功能测试 | ACC-03 已登录;HY-01 已选 LC-07(庚)且关联 WT-01;HY-03 未选公司且关联 WT-02 | 1. 对 WT-01 点击行内"编辑"打开修改核算弹窗<br>2. 核对物流公司带入值(名称/信用代码)<br>3. 对 WT-02 打开弹窗核对初始为空<br>4. 带入后更换为 LC-01 并保存,再对货源侧(HY-01)后续核对带入更新 | HY-01(庚)/WT-01;HY-03(无)/WT-02;REQ-025/BR-06.3 | 1. 货源已选公司的运单默认带入该公司(名称/信用代码与货源侧快照一致)<br>2. 货源未选的运单弹窗初始为空(选填,不阻断保存)<br>3. 带入后可更换或清除(可逆)<br>4. 货源侧更换公司后,重新打开的带入值为货源最新快照(未核算运单场景) | 对应TP-F-012;REQ-025/BR-06.3/验收要点 5 |
| PLT_TMS_LC_013 | 平台端-整车运输-承运结算-运费核算 | 验证不选物流公司(及地址为空)核算正常保存(Q2) | P0 | 功能测试 | ACC-03 已登录;WT-02 未核算且未选公司;客户收货地址留空 | 1. 对 WT-02 打开修改核算弹窗,物流公司与客户收货地址均不填<br>2. 点击"保存/核算"<br>3. 核对弹窗关闭与列表核算状态列<br>4. 核对运单上物流公司列展示与数据库字段 | WT-02;Q2 决议/REQ-026/验收要点 5 | 1. 未选公司未填地址保存成功,无任何阻断提示或必填报错<br>2. 核算状态由"未核算"更新为"已核算"<br>3. 运单及运费核算列表该列显示"无外协公司"(统一文案)<br>4. 数据库运单表 company_id/company_name/uscc 三字段为空且状态位=已核算(无外协公司口径落库) | 对应TP-F-013;REQ-026/Q2 决议/验收要点 5 |
| PLT_TMS_LC_014 | 平台端-整车运输-承运结算-运费核算 | 验证清除已选公司后保存生效与可逆性 | P1 | 功能测试 | ACC-03 已登录;WT-01 已带入 LC-07(庚)且尚未保存(或已保存后重开) | 1. 打开 WT-01 修改核算弹窗点击"清除"(取消选择)<br>2. 核对公司区域恢复空态<br>3. 保存后核对运单表字段与列表展示<br>4. 重开弹窗重新选择 LC-01 保存核对可逆 | WT-01;LC-07(清除前);LC-01(重选);REQ-025 | 1. 清除后弹窗内公司区域恢复空态(名称/代码/联系人消失)<br>2. 保存后运单表 company_id/company_name/uscc 三字段被置空,列表显示"无外协公司"<br>3. 清除操作按平台口径记录日志(如落)<br>4. 清除后可再次选择并保存成功(可逆,无状态锁死) | 对应TP-F-014;REQ-025 |
| PLT_TMS_LC_015 | 平台端-整车运输-承运结算-运费核算 | 验证保存核算写入运单表三字段快照与状态流转 | P0 | 功能测试 | ACC-03 已登录;HY-01 已选 LC-07(庚);WT-01 未核算 | 1. 对 WT-01 打开弹窗保留带入的 LC-07,填写客户收货地址<br>2. 点击"保存/核算"<br>3. 核对运费核算列表与运单管理的物流公司列取值<br>4. 核对数据库运单表字段与是否新建独立单据 | WT-01;LC-07(楚雄测试庚物流有限公司 / 91532301MA6W9E3F4G);RA-01(收货地址);BR-06.6/第 7 章 | 1. 运单表 company_id、company_name(楚雄测试庚物流有限公司)、uscc(91532301MA6W9E3F4G)三字段落库且与所选公司一致(冗余存储)<br>2. 核算状态由未核算→已核算<br>3. 运费核算列表与运单管理的物流公司列随运单表取值展示<br>4. 保存操作未新建任何独立单据(无核算单表新增行,口径纠正落地) | 对应TP-F-015;REQ-026/BR-06.6/第 7 章 |
| PLT_TMS_LC_016 | 平台端-整车运输-承运结算-运费核算 | 验证保存核算快速重复点击不重复写入(幂等) | P0 | 功能测试 | ACC-03 已登录;WT-08 未核算载体可用;已备接口抓包工具 | 1. 打开 WT-08 修改核算弹窗,1 秒内连续点击"保存/核算"3 次<br>2. 核对按钮态与页面提示<br>3. 核对运单字段与核算状态<br>4. 用接口工具并发重放保存请求 3 次核对结果 | WT-08;项目画像 §8.2;第 7 章幂等口径 | 1. 连点 3 次仅一次有效保存,运单字段无重复追加、状态无抖动(不出现反复未核算/已核算切换)<br>2. 按钮提交中禁用/防抖,无重复成功提示堆积<br>3. 并发重放请求被幂等拦截或返回一致结果<br>4. 数据库运单表该行字段值为单次写入结果,无重复日志堆积(或按平台幂等口径合并) | 对应TP-F-016;第 7 章(项目画像 §8.2 重复提交) |
| PLT_TMS_LC_017 | 平台端-整车运输-承运结算-运费核算 | 验证已核算运单再次修改为覆盖更新且不可回退 | P1 | 功能测试 | ACC-03 已登录;WT-01 已核算(快照=庚) | 1. 对 WT-01 再次点击行内"编辑",把物流公司改为 LC-01(甲)并客户收货地址改为新值<br>2. 保存后核对运单字段<br>3. 检索页面是否有"撤销核算/回退未核算"入口<br>4. 连续修改 2 次后核对记录数与日志 | WT-01(庚→甲);LC-01;REQ-028/6.6 | 1. 再次保存后运单三字段为最新值(覆盖更新,非新增行)<br>2. 核算状态保持"已核算"(无中间态)<br>3. 行为日志出现该次修改记录;全页面无"撤销核算/回退未核算"入口<br>4. 重复修改多次后运单表记录数不变(无数据膨胀),旧值仅在日志中可追溯 | 对应TP-F-017;REQ-028/6.6(禁止流转:已核算不可回退) |
| PLT_TMS_LC_018 | 平台端-整车运输-承运结算-运费核算 | 验证保存时公司已被停用/删除的后端二次校验 | P0 | 功能测试 | ACC-03 与另一会话(ACC-01)均已登录;WT-07 未核算载体可用;LC-01(甲)、LC-02(乙)启用 | 1. ACC-03 打开 WT-07 弹窗选择 LC-01(先不保存)<br>2. ACC-01 在另一会话将 LC-01 停用<br>3. ACC-03 点击"保存/核算"核对阻断提示<br>4. 重选启用公司 LC-02 后保存成功;另起一轮以"删除"场景(LC-04)重复验证 | WT-07;LC-01(被停用);LC-04(被删除);LC-02(重选);REQ-029/6.6 | 1. 保存被阻断且提示中包含具体公司名(如"云南测试甲物流有限公司已停用"类文案)<br>2. 提示引导重新选择启用公司或清除后保存<br>3. 清除后可直接保存成功;重选 LC-02 后保存成功<br>4. 无 500 错误、无静默保存旧值;停用与删除两种场景分别验证各自提示 | 对应TP-F-018;REQ-029/6.6(状态已变化后操作,项目画像 §8.2 必测) |
| PLT_TMS_LC_019 | 平台端-整车运输-承运结算-运费核算 | 验证客户收货地址选填与 ≤200 字符边界 | P1 | 功能测试 | ACC-03 已登录;WT-08 未核算载体可用;已准备 V-09/V-10 字面值 | 1. 收货地址输入 RA-01(云南省昆明市五华区测试大道 1 号测试仓库)保存<br>2. 输入 V-09(恰 200 字符)保存<br>3. 输入 V-10(201 字符)保存<br>4. 留空保存并核对金额类字段不受地址内容影响 | RA-01;RA-02/V-09(200 字);RA-03/V-10(201 字);RA-04(空值);REQ-023/BR-06.7 | 1. 常规地址保存成功并落库运单表<br>2. 200 字符可保存、201 字符被阻断或提示(含中文/字母/数字/符号均可)<br>3. 留空正常保存(选填,与不选公司可并存)<br>4. 地址内容不影响运单金额类字段与核算任何字段(仅记录) | 对应TP-F-019;REQ-023/BR-06.7 |
| PLT_TMS_LC_020 | 平台端-整车运输-承运结算-运费核算 | 验证客户收货地址仅在运单详情展示(Q19 已确认) | P2 | 功能测试 | ACC-03 已登录;WT-08 已保存收货地址 RA-01 | 1. 打开该运单详情页核对地址只读展示(验收基线)<br>2. 核对运费核算列表未新增地址列<br>3. 核对运单管理列表与导出不含该地址列<br>4. 公司改名后复核各展示位取值(快照口径) | WT-08;RA-01;REQ-023/BR-06.7 | 1. 运单详情页可只读查看客户收货地址(验收基线须满足)<br>2. 运费核算列表与运单管理列表均不新增该地址列(Q19:不加入运单管理列表列)<br>3. 导出不含"客户收货地址"列(Q19:导出暂不要求包含该列)<br>4. 展示值为运单表快照值、非联表实时取值(公司改名不影响);地址展示不参与任何校验与流程 | 对应TP-F-020;REQ-023/BR-06.7;[已确认 2026-09-29: 客户收货地址以运单详情只读展示为验收基线;不加入运单管理列表列;导出暂不要求(Q19)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_021 | 平台端-整车运输-承运结算-运费核算 | 验证批量核算不填充、不清除物流公司与地址(Q7 已确认) | P2 | 功能测试 | ACC-03 已登录;勾选 WT-02(未选公司)与 WT-03(已带入乙)两张运单;BLK-07 样本就绪 | 1. 勾选 WT-02、WT-03 点击"批量核算"<br>2. 核对批量入口无物流公司/地址填写控件<br>3. 批量完成后逐张核对两运单的物流公司与地址字段<br>4. 与批量前快照逐字段对比 | BLK-07;WT-02(未选);WT-03(乙);Q7 已确认(不支持);REQ-030/6.6 | 1. 批量核算按原有字段逻辑执行且执行成功(核算状态更新,批量逻辑不变)<br>2. 批量后已存的物流公司/客户收货地址保持不变(不被清空、不被覆盖)<br>3. 批量入口无物流公司/地址填写控件(两字段仅单笔"修改核算"弹窗可填)<br>4. 已选/未选公司的运单批量后字段与批量前一致(逐字段比对) | 对应TP-F-021;REQ-030/6.6;[已确认 2026-09-29: 批量核算不支持批量填充物流公司/客户收货地址——批量逻辑不变,不填充也不清除;两字段仅单笔"修改核算"弹窗可填(Q7)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_022 | 平台端-整车运输-承运结算-运费核算 | 验证选择物流公司不改变核算金额与结算数据(记录性总原则) | P0 | 功能测试 | ACC-03 已登录;WT-01(已选庚)与 WT-08 未核算载体;两张运单原有金额类字段(结算吨位、运费等)已知 | 1. 记录 WT-08 保存前各金额类字段值<br>2. 为 WT-08 选择 LC-01(甲)后保存,核对金额类字段<br>3. 把 WT-01 的公司由庚更换为甲并清除,核对金额类字段<br>4. 选择无生效合同的 LC-02 保存后核对金额差异与页面提示 | WT-08;WT-01;LC-01/LC-02;1.4 设计原则/REQ-014 | 1. 选择前后运单核算金额类字段(结算吨位、运费等原有字段)无任何变化(逐字段对比)<br>2. 无生效合同公司被选中时无计费差异<br>3. 不选公司不影响核算保存与后续结算<br>4. 全流程页面无任何"合同影响计费"类提示与校验 | 对应TP-F-022;1.4 设计原则/REQ-014(记录性总原则) |
| PLT_TMS_LC_023 | 平台端-整车运输-承运结算-运费核算 | 验证保存核算超时/断网后重试无重复写入 | P2 | 功能测试 | ACC-03 已登录;WT-08 弹窗已填好(含公司 LC-01 与地址);DevTools 可断网/延迟 | 1. 点击保存瞬间断网核对失败提示与 Loading<br>2. 恢复网络后核对弹窗已填内容保留<br>3. 用 30 秒延迟模拟超时后重试保存<br>4. 核对运单字段与状态(无半落库) | WT-08;漏测清单 §2(弱网/超时);LC-01 | 1. 超时/断网有明确失败提示与 Loading 状态,非无响应卡死<br>2. 弹窗已填内容(公司/地址)保留<br>3. 恢复网络后重试保存成功且不产生重复写入<br>4. 无半落库状态(三字段要么全写入要么无变化),核算状态与字段一致 | 对应TP-F-023;漏测清单 §2 |
| PLT_TMS_LC_024 | 平台端-整车运输-承运结算-运费核算 | 验证已核算运单再次打开弹窗回显运单表快照(Q8 已确认) | P2 | 功能测试 | ACC-03 已登录;WT-09(已核算 WT-01,快照=庚);HY-01 货源侧公司已改为 LC-01(构造口径差异场景) | 1. 打开 WT-09 修改核算弹窗核对物流公司回显值<br>2. 与运单表已存快照值(庚)比对确认一致<br>3. 与货源当前值(HY-01 已改为 LC-01)比对确认回显不取自货源当前值<br>4. 保存后再开弹窗复核稳定性 | WT-09;HY-01(货源侧改值的场景);Q8 已确认;REQ-025 | 1. 回显基准确定:**以运单表已存快照为准**——回显值为庚(楚雄测试庚物流有限公司),不为货源当前值 LC-01(Q8)<br>2. 货源侧在运单核算后被更换公司场景下回显与展示列口径保持一致(与 PLT_TMS_LC_029/041 同结论)<br>3. 再次保存后回显值稳定、无新旧混读<br>4. 本用例不再按"记录实际行为"设计,回显断言为确定口径(未核算运单的默认带入行为见 PLT_TMS_LC_012) | 对应TP-F-024;[已确认 2026-09-29: 核算弹窗回显以运单表已存快照为准;未核算的运单没有值、按货源所选公司默认带入(Q8)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_025 | 平台端-整车运输-承运结算-运费核算 | 验证两人并发修改同一运单核算的最终一致性 | P2 | 功能测试 | 两个已登录会话(ACC-03 与 ACC-02);WT-08 未核算;两会话分别准备选择 LC-01 与 LC-07 | 1. 两个会话同时打开 WT-08 修改核算弹窗<br>2. 会话 A 选 LC-01 先保存<br>3. 会话 B 选 LC-07 后保存<br>4. 核对运单最终字段、状态与日志完整性 | WT-08;LC-01(会话A);LC-07(会话B);项目画像 §8.2 并发提交 | 1. 后保存者覆盖先保存者(或按平台锁机制给出提示,记录实际行为),最终运单三字段为单次有效结果(同一家公司)<br>2. 无字段交叉写入(company_id 与 company_name 不出现不同公司混搭)<br>3. 核算状态不异常(无未核算/已核算抖动)<br>4. 日志完整可追溯两次保存(操作人/时间可区分) | 对应TP-F-025;项目画像 §8.2 并发提交 |
| PLT_TMS_LC_026 | 平台端-整车运输-货源管理 | 验证发布货源新增"物流公司"字段位置与选填标注 | P1 | 功能测试 | ACC-01/ACC-02 已登录;"发布货源"页面可进入(含承运信息区与"指定车队司机"区) | 1. 进入 整车运输 → 货源管理 → 发布货源<br>2. 在承运信息区"指定车队司机"附近查找"物流公司"字段<br>3. 核对标注(选填)与"选择物流公司"入口<br>4. 不填写该字段完成其余必填项后发布核对 | HY-07(弹窗入口校验);REQ-031/BR-07/6.7 | 1. "物流公司"字段位于承运信息区且标注选填、为单选<br>2. 含"选择物流公司"入口可点击<br>3. 不填写不影响货源其他字段填写与发布保存<br>4. 字段位置与需求 6.7 描述一致(记录实际位置供评审) | 对应TP-G-001;REQ-031/BR-07/6.7 |
| PLT_TMS_LC_027 | 平台端-整车运输-货源管理 | 验证货源场景复用选择弹窗能力与核算场景一致 | P1 | 功能测试 | ACC-01/ACC-02 已登录;发布货源页已打开;LC-06 已停用 | 1. 点击"选择物流公司"打开弹窗<br>2. 核对仅启用公司(检索 LC-06 不出现)<br>3. 核对按创建时间倒序、名称/信用代码搜索、分页 20 条<br>4. 核对单选语义与核算场景一致 | BLK-01/BLK-02;LC-06(停用);BR-07.1;最佳实践(弹窗能力复用一致性) | 1. 弹窗与核算场景同款(仅启用公司、创建时间倒序、搜索、分页 20 条/页)<br>2. 停用公司(LC-06)不出现<br>3. 搜索与分页行为与核算弹窗一致(同组件同参数)<br>4. 单选控件语义一致(单行选中) | 对应TP-G-002;BR-07.1(能力复用一致性) |
| PLT_TMS_LC_028 | 平台端-整车运输-货源管理 | 验证货源选择公司回显三要素与"移除"清空 | P1 | 功能测试 | ACC-01/ACC-02 已登录;发布货源页已填写必填项;LC-07(庚)档案字段已知 | 1. 通过弹窗选择 LC-07 后点确定<br>2. 核对回显的公司名称、统一社会信用代码、联系人<br>3. 点击"移除"<br>4. 核对字段恢复空态并重新选择一次 | LC-07(楚雄测试庚物流有限公司 / 91532301MA6W9E3F4G);REQ-031/6.7.2 | 1. 回显三要素与公司档案一致(名称/信用代码/联系人)<br>2. "移除"后字段恢复空态、无报错<br>3. 移除后可重新选择(可逆)<br>4. 移除动作仅清空页面暂存,不影响其他字段已填内容 | 对应TP-G-003;REQ-031/6.7.2 |
| PLT_TMS_LC_029 | 平台端-整车运输-货源管理 | 验证货源更换公司替换上次选择(单选) | P1 | 功能测试 | ACC-01/ACC-02 已登录;货源编辑页已选 LC-01(甲) | 1. 再次打开选择弹窗改选 LC-02(乙)并确定<br>2. 核对回显为 LC-02<br>3. 保存货源后重新打开编辑页核对<br>4. 核对货源与公司关联结构无多值 | LC-01→LC-02;BR-07.3/6.7.2 | 1. 选择 B 后回显 B(A 被替换),页面仅一家公司<br>2. 保存后快照为 LC-02(字段覆盖更新)<br>3. 数据层无多条公司关联(单值字段)<br>4. 更换过程无报错、无重复请求 | 对应TP-G-004;BR-07.3/6.7.2 |
| PLT_TMS_LC_030 | 平台端-整车运输-货源管理 | 验证货源保存写入公司快照并随列表展示 | P1 | 功能测试 | ACC-01/ACC-02 已登录;HY-01 已选 LC-07(庚);HY-03 未选公司 | 1. 保存 HY-01 后进入货源管理列表核对该行"物流公司"列<br>2. 打开货源详情核对该字段<br>3. 核对数据库货源表快照字段落库<br>4. 核对 HY-03(未选)该列展示 | HY-01(庚);HY-03(未选);BR-07.3/REQ-031 | 1. 货源详情/列表该列显示所选公司名称"楚雄测试庚物流有限公司"<br>2. 快照字段落库(非联表实时取值;改名后不变,验证见 PLT_TMS_LC_050)<br>3. 未选择公司时统一显示"无外协公司"<br>4. 保存后快照值=保存时刻的公司名称(冗余存储口径) | 对应TP-G-005;BR-07.3/REQ-031 |
| PLT_TMS_LC_031 | 平台端-整车运输-货源管理 | 验证货源选择与否不影响发布、接单与结算流程 | P1 | 功能测试 | ACC-01/ACC-02 已登录;HY-03(未选公司)与 HY-06 系列(选公司)样本可用 | 1. 发布未选公司的货源(HY-03 口径)核对发布成功<br>2. 对已选公司货源(HY-01)与未选货源分别执行接单生成运单<br>3. 核对货源状态流转<br>4. 核对运单生成与后续结算入口 | HY-03(未选);HY-01(庚);HY-04(乙);BR-07.2/1.4 设计原则 | 1. 不选公司货源发布成功(无阻断)<br>2. 已选/未选公司货源均可正常接单生成运单<br>3. 货源状态流转(如已发布→已接单)不因该字段变化<br>4. 结算流程不受影响,无任何"需先选物流公司"类拦截提示 | 对应TP-G-006;BR-07.2/1.4 设计原则(记录性总原则) |
| PLT_TMS_LC_032 | 平台端-整车运输-货源管理 | 验证编辑货源更换/清除公司后快照更新且不影响运单 | P1 | 功能测试 | ACC-01/ACC-02 已登录;HY-03 未选公司;已由 HY-03 关联生成 WT-02 并完成核算 | 1. 编辑 HY-03 选择 LC-01(甲)保存,核对列表快照<br>2. 再次编辑"移除"清空后保存,核对列表显示<br>3. 第三次编辑改选 LC-07(庚)保存<br>4. 核对已生成运单 WT-02 的物流公司字段是否受货源变更影响 | HY-06(依次 甲→空→庚);WT-02(已核算运单);REQ-031/BR-07.3 | 1. 编辑页回显已选公司,更换后列表快照更新为最新值<br>2. 清除后快照清空、列表显示"无外协公司"<br>3. 三次变更后货源表快照与最后一次操作一致<br>4. 已生成的运单快照独立:WT-02 的物流公司字段不随货源快照变更(运单与货源快照互不联动改写) | 对应TP-G-007;REQ-031/BR-07.3 |
| PLT_TMS_LC_033 | 平台端-整车运输-货源管理 | 验证货源场景无生效合同公司提示可勾选(Q3 复用) | P2 | 功能测试 | ACC-01/ACC-02 已登录;发布货源页已打开;LC-02(生效合同数=0)存在 | 1. 打开选择弹窗核对 LC-02 行"⚠ 无生效合同"提示<br>2. 勾选 LC-02 并确定<br>3. 保存/发布货源<br>4. 核对货源列表快照展示 | LC-02;HT-2026-0011/0012;Q3 决议复用 | 1. 无合同提示在货源弹窗正常显示(复用 Q3 口径)<br>2. LC-02 可勾选并成功保存货源(仅提示不阻断)<br>3. 货源发布流程不受影响、无额外校验拦截<br>4. 快照落库为 LC-02 信息 | 对应TP-G-008;Q3 决议复用/BR-07 |
| PLT_TMS_LC_034 | 平台端-整车运输-承运结算-货主打款 | 验证货主打款页查询区新增"物流公司"筛选项且与原有条件共存 | P1 | 功能测试 | ACC-04(财务人员)或 ACC-01 已登录;PY-01(WT-03 关联乙)与 PY-02(WT-02 无外协)打款记录存在 | 1. 进入 整车运输 → 承运结算 → 货主打款<br>2. 核对查询区"物流公司"筛选项位置与控件类型<br>3. 打开下拉核对选项结构<br>4. 核对与原有筛选条件(运单号/打款状态/时间范围等)共存无冲突 | PY-01/PY-02;LC-02(乙);BR-08/6.8/REQ-032 | 1. 筛选项存在且位于查询区,控件为下拉<br>2. 下拉选项结构为"全部 / 无外协公司 / 各物流公司"<br>3. 与原有筛选条件共存、布局无遮挡错位<br>4. 筛选项可用且不改变原有条件默认值 | 对应TP-H-001;REQ-032/BR-08/6.8 |
| PLT_TMS_LC_035 | 平台端-整车运输-承运结算-财务打款 | 验证财务打款页同步新增筛选项且口径一致 | P1 | 功能测试 | ACC-04 或 ACC-01 已登录;PY-03(WT-05 关联已停用己)存在 | 1. 进入 整车运输 → 承运结算 → 财务打款<br>2. 核对"物流公司"筛选项存在与选项结构<br>3. 选择某公司与货主打款页对同一条件筛选结果比对<br>4. 记录两页筛选行为差异(应无) | PY-03;LC-06(己);BR-08/6.8 | 1. 财务打款页筛选项存在且选项结构(全部/无外协公司/各公司)与货主打款一致<br>2. 同一筛选条件下两页面对关联同一运单记录的行为一致<br>3. 两个页面独立验证(不因改造一个页面而遗漏另一个)<br>4. 财务打款页原有筛选条件与按钮无变化 | 对应TP-H-002;REQ-032/6.8(两页独立验证) |
| PLT_TMS_LC_036 | 平台端-整车运输-承运结算-打款记录 | 验证打款记录页仅新增筛选不加展示列 | P1 | 功能测试 | ACC-04 或 ACC-01 已登录;打款记录页有数据(PY-04 口径) | 1. 进入打款记录页核对查询区"物流公司"筛选项<br>2. 使用筛选项执行查询核对结果<br>3. 核对列表列集合(是否新增物流公司展示列)<br>4. 与 FR-10 四处展示列范围比对 | PY-04;BR-08.1/FR-10;REQ-032/033 | 1. 打款记录页筛选项存在可用、筛选结果准确<br>2. 该页不新增"物流公司"展示列(展示列范围以 FR-10 货源管理/运单管理/货主打款/财务打款四处为准)<br>3. 列的增减与需求一致(避免超范围展示)<br>4. 原有列与操作入口不变 | 对应TP-H-003;BR-08.1/FR-10(负向:不超范围) |
| PLT_TMS_LC_037 | 平台端-整车运输-承运结算-财务打款 | 验证打款筛选下拉含停用公司可筛出历史打款记录 | P0 | 功能测试 | ACC-04/ACC-01 已登录;LC-06(己)已停用;PY-03(WT-05 关联己)存在历史打款记录 | 1. 打开财务打款页"物流公司"下拉核对 LC-06 在列<br>2. 选择 LC-06 执行查询<br>3. 核对筛选结果行与展示列值<br>4. 同一时刻打开核算选择弹窗检索 LC-06(相反口径对照) | LC-06(停用);PY-03;WT-05;BR-08.2/验收要点 9;对照 PLT_TMS_LC_003 | 1. 停用公司在打款筛选下拉中可选(含停用口径)<br>2. 选择 LC-06 可筛出其关联的历史打款记录(改造前/后记录均可查出)<br>3. 筛选结果展示列为快照名称"保山测试己运输有限公司"<br>4. 同一停用公司在核算选择弹窗中不可见(两个相反口径分别成立、不混淆);已删除公司不出现在打款筛选下拉(与 PLT_BSC_LC_056/TP-D-008/SS-08 一致) | 对应TP-H-004;BR-08.2/验收要点 9(与核算勾选弹窗相反口径对照);[AI修正: 评审修复 S-007] |
| PLT_TMS_LC_038 | 平台端-整车运输-承运结算-货主打款 | 验证"无外协公司"筛选归属未关联记录 | P1 | 功能测试 | ACC-04/ACC-01 已登录;PY-02(WT-02 无外协公司)与 PY-01(WT-03 关联乙)存在;含未核算运单 1 张(HY-03 关联未核算) | 1. 物流公司下拉选择"无外协公司"执行查询<br>2. 逐行核对展示列值<br>3. 核对已关联记录是否混入<br>4. 核对未核算与"已核算但未选公司"两类运单的归属口径 | PY-02;WT-02;HY-03 关联未核算运单;BR-08.3/6.8 | 1. 选择"无外协公司"仅返回未关联物流公司的记录,已关联记录不混入<br>2. 结果行展示列均为"无外协公司"<br>3. 未核算与已核算但未选公司的运单均归入该口径(取值以运单表为准:未核算运单没有值、不取货源当前值;按 PLT_TMS_LC_041 已确认口径核对)<br>4. 结果条数与未关联记录数一致 | 对应TP-H-005;BR-08.3/6.8;[已确认 2026-09-29: 归属与取值一律以运单表为准——未核算或未关联显示"无外协公司",不联表实时取货源当前值(Q8)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_039 | 平台端-整车运输-承运结算-货主打款 | 验证"全部"与各公司选项的数据准确性 | P1 | 功能测试 | ACC-04/ACC-01 已登录;货主打款页数据含 PY-01(乙)/PY-02(无外协)/其他公司记录各 1 条以上 | 1. 选择"全部"记录总条数<br>2. 分别选择 LC-02(乙)与其他公司、无外协公司记录各自条数<br>3. 核对总和关系<br>4. 与下拉选项列表完整性核对 | PY-01(乙);PY-02(无外协);BR-08/REQ-032 | 1. "全部"返回含外协与无外协的全部记录<br>2. 选择任一家公司返回的记录与该运单关联公司一致(条数=运单上记录该公司的打款条数)<br>3. "全部"条数=各选项条数之和(含无外协公司选项,逐项累加成立)<br>4. 下拉选项覆盖有记录的各家公司(选项与档案数据一致) | 对应TP-H-006;BR-08/REQ-032 |
| PLT_TMS_LC_040 | 平台端-整车运输-承运结算-货主打款 | 验证物流公司筛选项与其他条件组合查询 | P1 | 功能测试 | ACC-04/ACC-01 已登录;PY-05 组合样本就绪(同一公司记录含不同打款状态) | 1. 选择"物流公司=LC-02 + 打款状态=已打款"组合查询<br>2. 核对结果精确性<br>3. 切换物流公司选项时观察其他条件是否保留<br>4. 追加打款时间范围后查询并核对实时过滤表现 | PY-05(组合筛选);LC-02;REQ-032/6.8.2 | 1. 组合结果精确(同时满足两条条件),无越界记录<br>2. 组合无结果时有明确提示<br>3. 切换物流公司选项时其他条件不重置(筛选态保持)<br>4. 过滤为前端实时过滤/无整页刷新丢条件(记录实际实现),分页总数同步更新 | 对应TP-H-007;REQ-032/6.8.2 |
| PLT_TMS_LC_041 | 平台端-整车运输-承运结算-货主打款 | 验证打款筛选过滤依据以运单表为准(Q8 已确认) | P1 | 功能测试 | ACC-04/ACC-01 已登录;构造运单 A:"货源选 LC-01 → 核算改为 LC-02";运单 B:"货源选 LC-01 → 核算清除公司";各自生成打款记录 | 1. 对运单 A 分别选择 LC-01 与 LC-02 筛选,核对命中结果<br>2. 对运单 B 分别选择 LC-01 与"无外协公司"筛选,核对命中结果<br>3. 对未核算运单(货源已选公司)执行筛选并核对归属<br>4. 与 PLT_TMS_LC_024/029 的取值口径结论交叉核对 | 构造运单 A/B;LC-01/LC-02;BR-08.3 vs 6.6;Q8 已确认 | 1. 过滤基准确定:**以运单表为准**——A 仅被 LC-02 筛出(不被 LC-01 筛出)、B 归入"无外协公司"(Q8)<br>2. 未核算运单归入"无外协公司"(不按货源带入值;取值不联表实时读取货源当前值)<br>3. 同一运单仅归入一家公司口径(无重复归属、无同时被两家筛出的情况)<br>4. 与 PLT_TMS_LC_024(弹窗回显)及 PLT_TMS_LC_029(列表取值)保持同一基准 | 对应TP-H-008;[已确认 2026-09-29: 打款筛选过滤依据一律以运单表为准;未核算或未关联归入"无外协公司"、不联表实时取货源当前值(Q8)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_042 | 平台端-整车运输-承运结算-货主打款 | 验证筛选不改变打款流程、金额与审批动作(回归) | P0 | 回归测试 | ACC-04/ACC-01 已登录;PY-06 回归样本(含能源费/居间费/税费的既有记录)已就绪;已记录改造前打款/驳回入口与金额基线 | 1. 选择 LC-02 筛选后对结果记录执行一次打款操作,核对入口与结果<br>2. 对另一条已筛选记录执行驳回操作,核对驳回原因与状态流转<br>3. 逐字段核对打款金额与支付流水一致性<br>4. 核对筛选前后记录状态、审批入口无变化 | PY-06;PY-01;RISK-FINANCIAL;BR-08.4/验收要点 9 | 1. 筛选后打款/驳回入口与未筛选时一致,操作结果正常(状态流转正确)<br>2. 打款金额字段值与支付流水一致,不因筛选变化(无重复扣减、无金额改写)<br>3. 审批动作(如有)不受影响;筛选不改变任何记录状态<br>4. 支付流水记录与打款操作一一对应,金额可追溯前后端一致 | 对应TP-H-009;BR-08.4/验收要点 9/1.4(RISK-FINANCIAL 回归重点) |
| PLT_TMS_LC_043 | 平台端-整车运输-承运结算-货主打款 | 验证筛选结果与"物流公司"展示列逐行一致 | P1 | 功能测试 | ACC-04/ACC-01 已登录;PY-01(乙)、PY-02(无外协)、PY-04(庚旧名快照)就绪;LC-07 已改名为"楚雄测试庚物流(云南)有限公司" | 1. 选择 LC-02 筛选后逐行核对展示列<br>2. 选择"无外协公司"筛选后逐行核对<br>3. 对含改名公司快照的打款记录(PY-04)核对展示值<br>4. 核对空值与筛选口径一致性 | PY-01/PY-02/PY-04;LC-07 改名链(SS-05);BR-09.4 | 1. 选择某公司筛选后结果行"物流公司"列全部显示该公司(快照名称),无一行例外<br>2. "无外协公司"筛选项下所有行显示"无外协公司"<br>3. 改名后历史打款记录展示为快照旧名"楚雄测试庚物流有限公司"(非新名)<br>4. 筛选口径与展示口径一致(同源字段),无筛选命中但展示不符的矛盾 | 对应TP-H-010;BR-09.4/REQ-033 |
| PLT_TMS_LC_044 | 平台端-整车运输-承运结算-货主打款 | 验证筛选重置与选项切换的行为 | P2 | 功能测试 | ACC-04/ACC-01 已登录;货主打款页已应用物流公司筛选并翻至第 2 页 | 1. 点击"重置"核对物流公司项与全部条件<br>2. 连续切换 LC-02→"无外协公司"→"全部"核对结果刷新<br>3. 每次切换后核对分页位置<br>4. 核对无残留结果与条件 | PY-01/PY-02;漏测清单 §4 | 1. 重置后物流公司项回"全部"、其余条件同步清空<br>2. 连续切换选项列表即时刷新、无旧结果残留(无混入上一选项数据)<br>3. 切换后分页回第 1 页<br>4. 无控制台报错、请求参数与所选选项一致 | 对应TP-H-011;漏测清单 §4 |
| PLT_TMS_LC_045 | 平台端-整车运输-货源管理 | 验证货源管理列表新增只读"物流公司"列与空值文案 | P1 | 功能测试 | ACC-01/ACC-02 已登录;HY-01(庚)、HY-03(未选)等货源存在;已记录需求建议列位置(目的地之后) | 1. 进入货源管理列表核对"物流公司"列存在与位置<br>2. 核对 HY-01 行取值<br>3. 核对 HY-03(未选)行取值<br>4. 点击该列内容检查不可交互 | HY-01(楚雄测试庚物流有限公司);HY-03(无外协公司);REQ-033/BR-09.1 | 1. 列存在且为只读展示(无链接无编辑入口)<br>2. 已选货源显示公司名称快照(与货源保存值一致)<br>3. 未选显示"无外协公司"(逐字统一)<br>4. 列位置与需求建议(置于"目的地"之后)一致或记录实际位置供评审 | 对应TP-I-001;REQ-033/BR-09.1 |
| PLT_TMS_LC_046 | 平台端-整车运输-运单管理 | 验证运单管理"物流公司"列取值以运单表为准(Q8 已确认) | P1 | 功能测试 | ACC-01/ACC-02 已登录;构造运单:A="货源选 LC-01 → 核算改为 LC-02";B="货源选 LC-01 → 核算清除公司";C=运单未核算但货源已选 LC-01 | 1. 进入运单管理列表核对"物流公司"列存在与只读性<br>2. 对 A/B/C 三类运单核对该列取值<br>3. 核对未关联运单显示"无外协公司"<br>4. 核查导出列同步含该列(衔接 053)且同口径 | 构造运单 A/B/C;LC-01/LC-02;BR-09.2 vs 6.6;Q8 已确认 | 1. 列存在、只读、未关联显示"无外协公司"<br>2. 取值确定:**以运单表为准**——A 显示 LC-02(核算后值)、B 显示"无外协公司"、C(未核算)显示"无外协公司"(不取货源当前值 LC-01,Q8)<br>3. 同一运单取值单一(不出现新旧公司拼接)<br>4. 列表取值与导出、打款筛选、弹窗回显口径一致(与 PLT_TMS_LC_024/041 同一结论) | 对应TP-I-002;[已确认 2026-09-29: 运单管理列表/导出取值一律以运单表为准;未核算或未关联显示"无外协公司"、不联表实时取货源当前值(Q8)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_047 | 平台端-整车运输-承运结算-货主打款 | 验证货主打款列表新增只读"物流公司"列 | P1 | 功能测试 | ACC-04/ACC-01 已登录;PY-01(WT-03 乙)与 PY-02(WT-02 无外协)存在;已记录需求建议列位置(运输单号之后) | 1. 进入货主打款列表核对"物流公司"列存在与位置<br>2. 核对 PY-01 行取值与对应运单快照一致<br>3. 核对 PY-02 行取值<br>4. 核对该列不可交互 | PY-01(昆明测试乙供应链有限公司);PY-02(无外协公司);BR-09.3/6.8 | 1. 列存在,取值与打款对应运单的物流公司快照一致<br>2. 空值显示"无外协公司"(逐字统一)<br>3. 列为只读不可操作(无链接/编辑入口)<br>4. 列位置与建议(运输单号之后)一致或记录实际位置 | 对应TP-I-003;REQ-033/BR-09.3/6.8 |
| PLT_TMS_LC_048 | 平台端-整车运输-承运结算-财务打款 | 验证财务打款列表新增"物流公司"列且口径与货主打款一致 | P1 | 功能测试 | ACC-04/ACC-01 已登录;PY-03(WT-05 己)存在;货主打款页已核对口径(衔接 047) | 1. 进入财务打款列表核对"物流公司"列存在<br>2. 核对 PY-03 行取值(停用公司快照)<br>3. 核对空值展示为"无外协公司"<br>4. 与货主打款页同字段口径逐项比对 | PY-03(保山测试己运输有限公司,快照);BR-09.3 | 1. 列存在且与货主打款口径一致(快照值、空值文案、只读性)<br>2. 停用公司历史记录仍显示原名称(快照,不置灰不变空)<br>3. 空值"无外协公司"<br>4. 两列表独立验证均通过(不因一处通过而省略另一页) | 对应TP-I-004;REQ-033/BR-09.3 |
| PLT_TMS_LC_049 | 平台端-整车运输-运单管理 | 验证四处列表空值统一显示"无外协公司"无混用 | P1 | 功能测试 | ACC-01/ACC-02/ACC-04 已登录;四列表(货源管理/运单管理/货主打款/财务打款)均存在未关联记录;含"核算清除公司"运单(PLT_TMS_LC_014 产物) | 1. 逐列表核对未关联记录的展示文案<br>2. 核对打款筛选下拉空值选项文案<br>3. 核对清除公司后的运单在四列表的展示<br>4. 检索是否存在"无"、"--"、空白等其他写法 | 四列表空值记录;PLT_TMS_LC_014 清除产物;BR-08/BR-09 | 1. 四处列表空值文案逐字统一为"无外协公司"(无空白、无"-"、无"无"等混用)<br>2. 筛选下拉空值选项同文案<br>3. 已清除公司的运单同样归入"无外协公司"口径<br>4. 同一空值在四处列表/导出中展示一致(前后端统一文案源) | 对应TP-I-005;REQ-033(文案统一口径) |
| PLT_TMS_LC_050 | 平台端-整车运输-货源管理 | 验证公司改名后历史记录展示不变(快照口径) | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-07 名下有 WT-01(快照=楚雄测试庚物流有限公司)、HY-01、打款记录;尚未改名 | 1. 记录四列表与导出中 LC-07 相关记录的展示值<br>2. 将 LC-07 改名为"楚雄测试庚物流(云南)有限公司"并保存<br>3. 复核四列表(货源管理/运单管理/货主打款/财务打款)与导出中的展示值<br>4. 新建一条 LC-07 关联记录核对新名展示 | LC-07;SS-05 改名快照链;WT-01/HY-01/PY-04;BR-09.4/REQ-027/034 | 1. 改名前关联记录在四列表与导出中均显示旧名"楚雄测试庚物流有限公司"<br>2. 改名后历史展示保持旧名不变(证明冗余存储、未联表实时取值——RISK-DATA 核心判据)<br>3. 改名后新选择的记录显示新名<br>4. 无任何列表出现新旧混读的实时联表现象;LC-07 档案自身展示新名 | 对应TP-I-006;REQ-027/034/BR-09.4(RISK-DATA 快照判据) |
| PLT_TMS_LC_051 | 平台端-整车运输-运单管理 | 验证公司停用后历史记录展示不变 | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-06 已停用且关联 WT-05、PY-03 | 1. 在四列表核对 LC-06 相关历史记录展示值<br>2. 核对是否出现置灰、置空或隐藏<br>3. 在打款筛选"含停用"下拉中筛出历史记录<br>4. 打开 WT-05 修改核算弹窗核对该运单展示与回显 | LC-06;WT-05;PY-03;SS-02/SS-06;验收要点 3/10 | 1. 停用后四列表该列仍显示原名称"保山测试己运输有限公司"(不因停用变灰、置空或隐藏)<br>2. 打款筛选"含停用"可筛出历史打款记录(衔接 PLT_TMS_LC_037)<br>3. 已核算运单展示与回显均不受停用影响<br>4. 停用仅影响核算勾选可见性,不影响任何历史展示 | 对应TP-I-007;REQ-034/BR-09.4/验收要点 3/10 |
| PLT_TMS_LC_052 | 平台端-整车运输-运单管理 | 验证公司删除后历史记录展示不变(历史追溯) | P0 | 功能测试 | ACC-01/ACC-02 已登录;LC-05 已被逻辑删除(承接 PLT_BSC_LC_053/054 路径)且 HY-02 引用其快照 | 1. 在货源管理列表核对 HY-02 行展示<br>2. 在导出中核对原名称是否保留<br>3. 核对选择弹窗与核算勾选不含已删除公司<br>4. 检索是否存在"未知公司/ID 直显"等异常展示 | LC-05;HY-02;DL-07;SS-07;BR-06.6/BR-09.4 | 1. 删除公司后四处列表历史记录展示不变(仍显示"大理测试戊物流有限公司")<br>2. 导出仍含原名称快照<br>3. 选择弹窗与核算勾选不含已删除公司(对照 PLT_TMS_LC_003)<br>4. 无"未知公司"、ID 明文直显或空值异常;快照字段保证历史追溯 | 对应TP-I-008;REQ-034/BR-06.6/BR-09.4 |
| PLT_TMS_LC_053 | 平台端-整车运输-运单管理 | 验证四列表导出 Excel 均含"物流公司"列 | P1 | 功能测试 | ACC-01/ACC-02/ACC-04 已登录;LC-07 已改名为"楚雄测试庚物流(云南)有限公司"(快照旧名场景);四列表各有数据 | 1. 分别导出货源管理/运单管理/货主打款/财务打款四个列表<br>2. 逐个打开核对"物流公司"列存在<br>3. 核对列值=页面展示值(含快照旧名与"无外协公司")<br>4. 核对导出数据与当前筛选条件一致 | BLK-05(四列表导出含列);LC-07 旧名快照;BR-09.5/REQ-033 | 1. 四个导出文件均含"物流公司"列<br>2. 列值与页面展示一致(快照值:"楚雄测试庚物流有限公司"旧名;空值"无外协公司")<br>3. 导出数据与页面筛选条件一致、行数吻合<br>4. 大数据量按 20000 上限统一口径处理 | 对应TP-I-009;BR-09.5/REQ-033 |
| PLT_TMS_LC_054 | 平台端-整车运输-运单管理 | 验证"物流公司"列为只读不参与任何流程与排序控制 | P2 | 功能测试 | ACC-01/ACC-02 已登录;四列表存在有值/空值行 | 1. 点击四列表"物流公司"列单元格核对无跳转<br>2. 核对列内无链接/编辑图标<br>3. 如列支持排序,点击表头核对排序正确;不支持则记录<br>4. 核对列表既有操作列未被改变 | 四列表;1.4 设计原则 | 1. 列内无链接、无编辑入口,点击无跳转(或仅按需求口径展示)<br>2. 该列不参与任何流程控制(不影响行内操作按钮与状态)<br>3. 如支持排序则排序正确、如不支持则记录实际行为<br>4. 列表既有操作列(打款/驳回/编辑等)与改造前一致 | 对应TP-I-010;1.4 设计原则(记录性) |
| PLT_TMS_LC_055 | 平台端-整车运输-运单管理 | 验证四列表"物流公司"列位置与建议一致 | P3 | 功能测试 | ACC-01/ACC-02/ACC-04 已登录;四列表可访问;需求 6.9 列位置建议已知 | 1. 核对货源管理列表该列是否位于"目的地"之后<br>2. 核对运单管理该列是否位于"承运司机"附近<br>3. 核对货主打款/财务打款该列是否位于"运输单号"之后<br>4. 核对列插入未导致既有列错位/数据错列 | 需求 6.9 建议列位置;四列表 | 1. 三处列位置与需求建议一致(或记录实际位置供评审确认)<br>2. 列插入后既有列的列头与数据严格对应(无错位、无数据串列)<br>3. 列宽/展示无遮挡单元格截断异常<br>4. 与截图基线对比无未说明的布局改动 | 对应TP-I-011;6.9 建议列位置(记录实际位置) |
| PLT_TMS_LC_056 | 平台端-整车运输-运单管理 | 验证历史数据兼容:上线前记录按快照显示"无外协公司"无需回填 | P1 | 兼容性测试 | ACC-01/ACC-02 已登录;测试环境存在上线前历史数据(含已打款、已完结状态运单/货源/打款记录,均未关联物流公司);已确认未执行任何数据迁移脚本 | 1. 选取上线前历史运单/货源/打款记录(含已打款、已完结状态)核对四列表展示<br>2. 用物流公司筛选下拉"无外协公司"筛出历史记录<br>3. 核对导出含该列且历史记录取值为"无外协公司"<br>4. 核对无空指针/展示异常 | RISK-COMPATIBILITY;确认结论 §5;历史记录样本组 | 1. 上线前历史记录在四列表显示"无外协公司",无空指针、无展示异常<br>2. 历史记录可正常参与筛选(归入"无外协公司"选项)并正常导出<br>3. 未执行任何数据迁移/回填脚本即可正确展示(以回归结果佐证)<br>4. 历史记录的打款等操作入口不受新增列影响 | 对应TP-I-012;RISK-COMPATIBILITY/确认结论 §5 |
| PLT_TMS_LC_057 | 平台端-基础信息-物流公司管理-权限与日志 | 验证系统管理员可配置"物流公司管理"菜单与操作权限 | P0 | 安全性测试 | ACC-01(super_admin)已登录;已创建待授权角色账号(ACC-02 运营管理员,数据缺口 #1) | 1. 进入 基础信息 → 平台管理 → 角色管理,勾选"物流公司管理"菜单及增删改操作权限并保存<br>2. 用 ACC-02 重新登录(或刷新)核对菜单出现与操作可用<br>3. 取消授权后再次登录核对<br>4. 核对权限粒度(菜单可见性 vs 增删改按钮) | ACC-01/ACC-02;REQ-035/第 3 章;项目画像 §2.2 | 1. 角色管理可勾选该菜单权限并保存成功(权限点清单核对,数据缺口 #10)<br>2. 授权后 ACC-02 菜单出现且增删改操作可用<br>3. 取消授权后菜单消失、直达 URL 也被拦截<br>4. 权限粒度覆盖菜单可见性与增删改操作两级(非仅菜单级) | 对应TP-J-001;REQ-035/第 3 章 |
| PLT_TMS_LC_058 | 平台端-基础信息-物流公司管理-权限与日志 | 验证核算人员角色在物流公司列表为只读 | P0 | 安全性测试 | ACC-03(核算人员)已登录且仅有核算权限(数据缺口 #2);物流公司列表已有数据 | 1. 用 ACC-03 进入"物流公司管理"列表核对按钮与操作列<br>2. 进入某公司编辑页核对字段可编辑性<br>3. 尝试操作状态开关与删除入口<br>4. 回到运费核算执行勾选物流公司操作 | ACC-03;REQ-035/验收要点 7;RISK-COMPLIANCE | 1. 核算人员列表为只读:无"新增"按钮、操作列无编辑/删除、无状态开关或开关不可点<br>2. 编辑页字段只读或不可进入<br>3. 页面无越权操作入口(无任何写操作按钮可用)<br>4. 只读角色仍可在运费核算弹窗选择公司(核心职责保留,选择弹窗可打开且可勾选) | 对应TP-J-002;REQ-035/验收要点 7(RISK-COMPLIANCE) |
| PLT_TMS_LC_059 | 平台端-基础信息-物流公司管理-权限与日志 | 验证未登录与未授权角色的 URL 直达拦截 | P1 | 安全性测试 | 已获取物流公司管理页面与编辑页路由 URL;ACC-03(无该菜单权限场景)可用;DevTools 可查看接口响应 | 1. 未登录状态浏览器直接输入列表页 URL<br>2. 未登录状态直接输入编辑页 URL(带公司 ID)<br>3. ACC-03 登录后直达两个 URL<br>4. 核对前端路由拦截与接口响应 | 页面路由 URL;公司编辑页 URL(LC-01);ACC-03;漏测清单 §3 | 1. 未登录直达跳转登录页,不渲染列表数据<br>2. 未授权角色直达返回 403/无权限页,不渲染数据<br>3. 列表/详情接口请求被服务端拒绝(401/403),无数据泄露<br>4. 前端路由与后端接口双重拦截均生效(绕过前端路由仍被接口拦截) | 对应TP-J-003;漏测清单 §3 未登录访问 |
| PLT_TMS_LC_060 | 平台端-基础信息-物流公司管理-权限与日志 | 验证低权限账号绕过前端直调写接口被拒绝 | P1 | 安全性测试 | ACC-03 已登录并取得有效会话凭证;接口工具可用;LC-01 与目标公司 ID 已知 | 1. 用 ACC-03 会话直接调用新增物流公司接口<br>2. 直接调用编辑/删除/启停用接口(携带 LC-01 ID)<br>3. 用 ACC-05(机构B)会话直调机构A公司写接口<br>4. 核对响应码与数据库数据 | ACC-03 会话;LC-01 ID;ACC-05;项目画像 §8.2 越权操作 | 1. 低权限直调写接口返回无权限(非 200 成功),统一错误码与提示<br>2. 直调他机构公司 ID 写接口被拒(数据权限校验独立于菜单)<br>3. 全部被拒请求后数据库无任何数据被修改(LC-01 字段与 deleted 值不变)<br>4. 越权尝试按平台口径写安全日志/拦截记录 | 对应TP-J-004;项目画像 §8.2 越权操作(漏测清单 §3) |
| PLT_TMS_LC_061 | 平台端-基础信息-物流公司管理-权限与日志 | 验证多机构数据隔离:跨机构列表/导出/搜索均不可见 | P0 | 安全性测试 | 机构A(ACC-01 或 ACC-02)与机构B(ACC-05,数据缺口 #4/#5)账号均可登录;机构B 已创建物流公司 1 家(如 LC-B01) | 1. 机构A 登录核对列表不含 LC-B01<br>2. 用机构A 导出列表核对文件不含跨机构公司<br>3. 机构A 模糊搜索 LC-B01 名称与代码前缀<br>4. 核对生效合同数等统计不泄露跨机构信息 | ACC-01/ACC-02(机构A);ACC-05(机构B);LC-B01;REQ-035/第 3 章;项目画像 §7.3/§8.2 | 1. 两机构分别登录列表互不可见(机构A 列表无 LC-B01,反向亦然)<br>2. 导出数据不含跨机构公司(服务端按机构过滤)<br>3. 模糊搜索无法搜出跨机构公司(搜索不绕过隔离)<br>4. 统计数(生效合同数等)不泄露跨机构信息;数据库查询恒带机构条件 | 对应TP-J-005;REQ-035/第 3 章(项目画像 §7.3 多机构隔离必测) |
| PLT_TMS_LC_062 | 平台端-基础信息-物流公司管理-权限与日志 | 验证跨机构篡改 ID 操作被拒绝且无信息泄露 | P0 | 安全性测试 | ACC-05(机构B)已登录;机构A 公司 ID 与合同 ID 已知(ACC-01 侧读取);接口工具可用 | 1. 用机构B 会话篡改编辑接口 ID 为机构A 公司 ID 提交<br>2. 篡改删除/启停用接口同理提交<br>3. 篡改合同接口(新增/编辑/删除)携带机构A 公司 ID<br>4. 直接 URL 访问机构A 公司编辑页 | ACC-05;机构A 公司 ID/合同 ID;项目画像 §7.3 | 1. 篡改 ID 的编辑/删除/启停用/合同接口全部被拒(非成功),数据无修改<br>2. 直接 URL 访问跨机构编辑页被拒(无权限页/404)<br>3. 错误提示不泄露跨机构数据明细(不含对方公司名称/字段值)<br>4. 全部越权尝试留痕(行为日志/安全日志记录操作人与 IP) | 对应TP-J-006;REQ-035/第 3 章(项目画像 §7.3) |
| PLT_TMS_LC_063 | 平台端-整车运输-承运结算-运费核算 | 验证选择弹窗数据范围按登录机构隔离 | P1 | 安全性测试 | ACC-03(机构A)已登录;机构B 存在启用公司 LC-B01 | 1. 机构A 打开选择物流公司弹窗核对集合<br>2. 搜索"LC-B01 名称"与"91530111"类代码前缀<br>3. 核对弹窗计数与机构A 启用公司数一致<br>4. 记录跨机构同码唯一性冲突的提示口径 | ACC-03(机构A);LC-B01(机构B);项目画像 §7.3 | 1. A 机构核算人员弹窗仅加载本机构启用公司(无 LC-B01)<br>2. 搜索关键词亦无法检出跨机构公司<br>3. 弹窗数据量与列表(同机构启用)计数一致<br>4. 跨机构同码公司建档时的重复提示口径记录实际行为供评审 | 对应TP-J-007;项目画像 §7.3(弹窗按机构隔离) |
| PLT_TMS_LC_064 | 平台端-基础信息-物流公司管理-权限与日志 | 验证物流公司增删改与启停用均写入行为日志四要素 | P0 | 安全性测试 | ACC-01/ACC-02 已登录;行为日志查询入口可用(运维工具-行为日志);已准备可操作公司 1 家(LC-04 系列操作样本) | 1. 依次执行:新增一家公司("云南测试日志校验物流有限公司")<br>2. 编辑该公司法人字段并保存;停用该公司;启用该公司;删除该公司<br>3. 在行为日志按操作人+时间检索五类记录<br>4. 核对日志四要素与变更摘要内容 | 日志校验样本公司;LC-04;REQ-035/第 3 章/第 7 章 | 1. 五类操作(新增/编辑/停用/启用/删除)均可查到对应日志记录<br>2. 每条日志含操作人、时间、IP、变更摘要四要素<br>3. 变更摘要能体现关键字段变化(如名称/状态/法人前后值)<br>4. 日志不可被普通角色篡改/删除(用 ACC-02 尝试无权操作并确认被拒) | 对应TP-J-008;REQ-035/第 3 章/第 7 章(行为日志四要素) |
| PLT_TMS_LC_065 | 平台端-基础信息-物流公司管理-权限与日志 | 验证合同操作与运单核算修改均留痕可追溯 | P1 | 安全性测试 | ACC-01/ACC-02 已登录;行为日志入口可用;LC-01 合同管理与 WT-01 运单核算可用 | 1. 新增合同 HT-2026-0003 并保存<br>2. 编辑该合同过期时间并保存;删除该合同<br>3. 对 WT-01 保存一次修改核算(覆盖更新)<br>4. 在行为日志按时间/操作人检索上述四类操作 | 合同日志样本;WT-01;REQ-035;漏测清单 §6 操作日志 | 1. 合同新增/编辑/删除均有日志记录(含操作人/时间/IP/摘要)<br>2. 核算保存/修改核算有日志记录(衔接 PLT_TMS_LC_017 覆盖更新链路)<br>3. 日志时间与实际操作时间一致(分钟级以内)<br>4. 可按时间/操作人检索定位(如平台行为日志支持多维检索) | 对应TP-J-009;REQ-035(漏测清单 §6 操作日志可追溯) |
| PLT_TMS_LC_066 | 平台端-基础信息-物流公司管理-权限与日志 | 验证敏感证件访问受控且留痕(合规) | P1 | 安全性测试 | ACC-01(授权)与 ACC-03(非授权)已登录;LC-01 含营业执照与身份证三类证件(OBS URL 已知);可访问 OBS 链接 | 1. 用 ACC-01 查看/下载 LC-01 证件并核对成功<br>2. 用 ACC-03 尝试查看证件与直接访问 OBS URL<br>3. 复制 OBS 链接到未登录浏览器访问<br>4. 在行为日志核对证件查看/下载留痕 | LC-01;DOC-01/03/05 OBS URL;SEC-05;RISK-COMPLIANCE | 1. 授权角色可正常查看/下载证件<br>2. 非授权角色无法查看/下载(页面无入口或接口拒绝)<br>3. 证件 OBS URL 具备鉴权(签名或权限校验),未授权直接访问被拒(记录实际鉴权方式供评审)<br>4. 查看/下载行为可追溯(行为日志记录,或明确记录实际审计方式) | 对应TP-J-010;RISK-COMPLIANCE(项目画像 §7.3 敏感信息) |
| PLT_TMS_LC_067 | 平台端-整车运输-承运结算 | 验证打款完成仍正常触发安徽运八第二次上报 | P0 | 回归测试 | ACC-04/ACC-01 已登录;存在可打款运单(含无外协公司运单 WT-02 与新关联公司运单 WT-01 各 1 张);安徽运八上报链路环境可用 | 1. 在货主打款页完成一笔含外协公司运单的打款<br>2. 核对第二次上报自动触发与状态流转<br>3. 完成一笔无外协公司运单(WT-02)的打款并核对上报触发<br>4. 核对新增筛选与展示列未改变触发时机与入口 | WT-01(新关联);WT-02(无外协);PY-06;分析 10.2-1/确认结论 §4 | 1. 改造后完成打款,第二次上报仍被自动触发且成功<br>2. 上报状态流转正常(上传中→已上传/通过)<br>3. 无外协公司的打款记录同样正常触发上报(10.2-3)<br>4. 新增筛选与展示列不改变触发时机、上报入口与上报数据字段来源 | 对应TP-X-001;[AI修正: 冲突修订]、[回归](分析 10.2/确认结论 §4) |
| PLT_TMS_LC_068 | 平台端-整车运输-承运结算 | 验证第二次上报资金流水金额来源为支付流水 | P0 | 回归测试 | ACC-04/ACC-01 已登录;存在已打款运单 Y1(可查支付流水);账户管理可调整打款金额(或构造财务调整场景) | 1. 完成 Y1 打款并触发第二次上报<br>2. 逐字段核对上报报文金额与支付流水表金额<br>3. 在账户管理调整 Y1 打款金额后重新触发上报<br>4. 核对上报使用调整后金额(非旧缓存值) | Y1 样本运单;PY-06;BUG-202607-03(跨模块数据不一致) | 1. 上报金额与支付流水完全一致(逐字段核对无差异)<br>2. 财务调整打款金额后,重新上报使用调整后最新实际金额(非旧缓存/旧快照)<br>3. 本次打款页面改造(筛选/展示列)不影响金额来源链路<br>4. 数据来源可溯源(服务端取数日志显示查询支付流水表) | 对应TP-X-002;[AI修正: 历史缺陷防御]、[AI修正: 冲突修订]、[回归](BUG-202607-03 防御) |
| PLT_TMS_LC_069 | 平台端-整车运输-承运结算 | 验证上报自动重试期间手动触发的幂等保护 | P1 | 回归测试 | ACC-04/ACC-01 已登录;具备模拟上报失败触发自动重试的手段;存在待上报运单 Y2 | 1. 使 Y2 上报首次失败进入自动重试等待<br>2. 重试期间在页面手动触发上传<br>3. 核对提示与是否重复提交<br>4. 恢复后核对最终上报记录条数 | Y2 样本运单;BUG-202607-02(重试幂等);漏测清单 §6 | 1. 重试期间手动触发提示"上报处理中"类文案并拒绝重复提交<br>2. 同一运单同一阶段短时间内仅一条成功上报记录<br>3. 改造后该链路行为与改造前一致(打款筛选/展示列不影响)<br>4. 无重复上报导致的数据不一致 | 对应TP-X-003;[AI修正: 历史缺陷防御]、[回归](BUG-202607-02 重试幂等防御) |
| PLT_TMS_LC_070 | 平台端-整车运输-承运结算 | 验证上报阶段依赖链的前后端双重校验 | P1 | 回归测试 | ACC-04/ACC-01 已登录;具备构造第一次上报 3 次重试全失败的场景(阻断上报接口或 mock);存在运单 Y3 | 1. 使 Y3 第一次上报 3 次重试全失败<br>2. 在页面尝试触发第二次上报核对前端拦截<br>3. 用接口工具绕过前端直接提交第二次上报请求<br>4. 核对后端返回与状态 | Y3 样本运单;BUG-202607-01(仅前端控制类缺陷) | 1. 前置上报未完成时前端按钮控制生效(不可点或明确提示)<br>2. 绕过前端直调第二次上报被后端拒绝并返回明确错误码/提示<br>3. 前端与后端校验同时生效(任一单独失效即为缺陷)<br>4. 改造后依赖链行为与改造前一致 | 对应TP-X-004;[AI修正: 历史缺陷防御]、[回归](BUG-202607-01 防御) |
| PLT_TMS_LC_071 | 平台端-整车运输-承运结算 | 验证安徽运八上报省份代码为 34 且行政区划字段正确 | P1 | 回归测试 | ACC-04/ACC-01 已登录;已完成一笔安徽运八链路打款并触发上报(可抓包或查上报报文) | 1. 抓取/查询该次上报报文<br>2. 核对省份代码字段值<br>3. 核对行政区划相关字段与目标省份一致<br>4. 检索报文确认无硬编码 28 回退 | 安徽运八上报报文样本;BUG-202607-04(省份代码错误);项目画像 §1(云南 reportProvince=28 对照) | 1. 上报报文中省份代码=34(安徽省代码,非项目默认 28)<br>2. 行政区划相关字段与目标省份一致(逐字段核对)<br>3. 无硬编码回退到 28 的回归现象<br>4. 本次打款页面改造未影响上述字段来源逻辑 | 对应TP-X-005;[AI修正: 历史缺陷防御]、[回归](BUG-202607-04 防御) |
| PLT_TMS_LC_072 | 平台端-整车运输-承运结算 | 验证打款金额计算口径回归(不受筛选/展示影响) | P0 | 回归测试 | ACC-04/ACC-01 已登录;PY-06 样本运单(含能源费/居间费/税费)改造前金额基线已记录 | 1. 对样本运单在改造后环境重算并核对货主合计付款(基础运费+服务费)<br>2. 核对能源费转化金额与比例<br>3. 核对居间费与车队长收款(居间费+1%税费)<br>4. 选择物流公司筛选后复核各金额字段不变 | PY-06(含能源费/居间费/税费的既有记录);项目画像 §5.4;RISK-FINANCIAL | 1. 改造前后各金额字段逐项对比无差异(货主合计付款/能源费/居间费/车队长收款)<br>2. 物流公司筛选与组合条件下金额值不变<br>3. 金额可追溯、前后端一致(项目画像 §5.1)<br>4. 无重复扣减、无因新增字段导致的计算链路变化 | 对应TP-X-006;[AI修正: 冲突修订]、[回归](RISK-FINANCIAL/项目画像 §5.4) |
| PLT_TMS_LC_073 | 平台端-整车运输-承运结算 | 验证打款/驳回操作入口与结果不受改造影响 | P0 | 回归测试 | ACC-04/ACC-01 已登录;货主打款与财务打款各备可打款、可驳回记录 1 条;改造前按钮显示条件基线已记录 | 1. 在货主打款页完成一笔打款核对状态流转与日志<br>2. 在财务打款页对一条记录执行驳回(填写驳回原因)核对结果与后续处理<br>3. 核对两页按钮显示条件(状态映射)与改造前一致<br>4. 核对操作日志完整性 | PY-07;PY-03(己)打款/驳回样本;验收要点 9 | 1. 打款操作正常完成、状态流转正确(与改造前一致)<br>2. 驳回操作正常(驳回原因、状态、后续处理与改造前一致)<br>3. 按钮显示条件(状态映射)不变,无因新列导致入口错位<br>4. 操作日志完整记录两类操作 | 对应TP-X-007;[AI修正: 冲突修订]、[回归](验收要点 9) |
| PLT_TMS_LC_074 | 平台端-整车运输-承运结算 | 验证无外协与新关联记录均可在两页正常查询打款 | P1 | 回归测试 | ACC-04/ACC-01 已登录;WT-02(无外协)与 WT-01(庚)各自生成打款记录 | 1. 在货主打款页用"无外协公司"筛出 WT-02 记录并执行打款<br>2. 在财务打款页筛出 WT-01 记录并执行打款<br>3. 核对两类记录的打款结果一致性<br>4. 核对"无外协公司"选项下记录正常操作与展示 | WT-02(无外协);WT-01(庚);PY-02;分析 10.2-3 | 1. 两类记录均可被筛出并正常执行打款(无阻断)<br>2. 打款结果一致(状态流转正确、金额与流水一致)<br>3. "无外协公司"选项下记录可执行打款/驳回,状态流转与未筛选时一致,展示列为"无外协公司"<br>4. 新关联公司记录展示快照名称 | 对应TP-X-008;[AI修正: 冲突修订]、[回归](分析 10.2-3);[AI修正: 评审修复 O-002] |
| PLT_TMS_LC_075 | 平台端-整车运输-承运结算-运费核算 | 验证运单核心状态机与物流公司关联解耦 | P1 | 功能测试 | ACC-01/ACC-03 已登录;备未选物流公司运单 W1 与已选公司运单 W2 各 1 张(均可走全流程) | 1. W1 走完 待运输→运输中→已卸货→已结算→已打款 全链路核对状态<br>2. W2 走同一链路核对状态与选择前一致<br>3. 检查打款筛选/展示列不引入状态副作用<br>4. 核对货源状态不因是否选择公司变化 | W1(未选);W2(已选);项目画像 §5.2;需求 7.4 解耦声明 | 1. 未选物流公司运单全流程状态流转正常(无阻断、无跳状态)<br>2. 已选公司运单状态流转与未选时一致,关联不是任何流转的前置/后置条件<br>3. 无跳状态/逆状态;打款筛选与展示列不引入状态副作用<br>4. 货源状态不因是否选择公司变化(BR-07.4) | 对应TP-X-009;需求 7.4 解耦声明/项目画像 §5.2 |
| PLT_TMS_LC_076 | 平台端-通用-跨需求回归 | 验证物流公司建档与小象开票收款方建档体系互不串扰 | P3 | 回归测试 | ACC-01 已登录;小象开票"收款方创建"功能可访问;已记录开票收款方体系现有数据量 | 1. 新增物流公司("云南测试开票串扰物流有限公司")后核对开票收款方列表无新增<br>2. 在小象开票新增一个收款方(使用物流公司测试代码)后核对物流公司列表无新增<br>3. 用同一信用代码分别在两体系建档,记录各自表现<br>4. 回读两体系数据核对互不引用 | 开票串扰样本公司;同一信用代码双体系样本;分析 10.1-1 | 1. 物流公司建档不影响开票收款方体系数据(两体系独立)<br>2. 两体系同为信用代码唯一防重但各自独立(同一代码在两体系的表现记录实际行为)<br>3. 两体系列表互不出现对方数据<br>4. 测试中未混淆两类"企业主体信息"建档(防串扰提醒落地) | 对应TP-X-010;[AI修正: 冲突修订]、[回归](分析 10.1-1 防串扰) |
| PLT_TMS_LC_077 | 平台端-通用-跨需求回归 | 验证运单资料文件包下载功能不受新增列干扰 | P3 | 回归测试 | ACC-01 已登录;运单资料文件包下载功能可用(相关需求已上线);存在已结算打款运单可打包 | 1. 对含新增列前后的运单执行文件包上传/打包/下载全链路<br>2. 核对文件包内容与既有口径一致<br>3. 核对运单管理既有列与导出(除新增列外)口径不变<br>4. 核对文件包数据不含/不依赖物流公司字段 | 运单资料文件包样本运单;分析 10.1-2 | 1. 文件包上传/异步打包/下载流程不受新增列影响(全链路成功)<br>2. 运单管理既有列与导出口径不变(除新增物流公司列外无差异)<br>3. 文件包不读取物流公司字段、内容不含该字段<br>4. 打包期间与完成后运单业务数据无修改 | 对应TP-X-011;[AI修正: 冲突修订]、[回归](分析 10.1-2) |
| PLT_TMS_LC_078 | 平台端-通用-跨需求回归 | 验证页面文案术语口径一致性(无"核算单"字样) | P3 | 功能测试 | ACC-01/ACC-03 已登录;权限覆盖运费核算与物流公司管理 | 1. 全站检索"核算单"字样(运费核算页/弹窗/菜单/提示)<br>2. 核对空值文案四处统一"无外协公司"<br>3. 抽查菜单名"物流公司管理"、弹窗名"修改核算"<br>4. 与术语表标准词比对(运营管理员/核算人员等) | 分析 §12 术语统一口径;术语表;TP-X-012 | 1. 页面无"核算单/新建核算单"字样(口径纠正落地)<br>2. 空值文案四处统一"无外协公司",无其他写法<br>3. 菜单名"物流公司管理"与弹窗名"修改核算"逐字一致<br>4. 角色称呼沿用标准词;文案抽查无术语混用 | 对应TP-X-012;REQ-036 术语口径(分析 §12) |
| PLT_TMS_LC_079 | 平台端-整车运输-承运结算 | 验证垫资两页范围防护与改造误伤回归 | P1 | 回归测试 | ACC-04/ACC-01 已登录;垫资运单样本(货主标记垫资 AND 货源标记垫资,项目画像 §5.3)1 张;已记录改造前垫资两页基线截图 | 1. 回归核对货主打款/财务打款两页新增筛选与展示列正常<br>2. 核对「垫资-货主打款」「垫资-财务打款」两页查询区与列表保持改造前原样(无物流公司筛选项与展示列)<br>3. 在垫资两页查询并完成一笔垫资运单打款,核对垫资金额与流程<br>4. 核对普通运单与垫资运单在两页归属不串数 | 垫资运单样本;项目画像 §2.3/§5.3;范围① | 1. 已改造两页(货主打款/财务打款)筛选与展示列正常(回归基线通过)<br>2. 垫资两页本期不改造、保持改造前原样(Q17):无"物流公司"筛选项与展示列、结构行为无变化(若共用组件重点核对筛选组件未泄露)<br>3. 垫资运单在垫资两页可正常查询与打款,垫资金额计算与流程不受影响<br>4. 普通运单与垫资运单归属展示不串数 | 对应TP-X-013;[回归];[已确认 2026-09-29: 垫资-货主打款/垫资-财务打款两页本期不改造、保持原样;需回归验证其查询与打款功能不受本次改造影响(Q17)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_080 | 平台端-整车运输-承运结算-运费核算 | 验证两个「运费核算」菜单的改造落点与误伤防护(Q18 已确认) | P1 | 回归测试 | ACC-01/ACC-03 已登录;「运单认证核算」与「承运结算」两个菜单入口均可访问;已记录"运单认证核算→运费核算"页改造前基线 | 1. 从 整车运输 → 承运结算 → 运费核算 进入核对修改核算弹窗含"物流公司"与"客户收货地址"字段<br>2. 从「运单认证核算 → 运费核算」进入核对页面结构与行为保持改造前原样<br>3. 核验改造未泄露至「运单认证核算」入口(无新增字段、无新增列)<br>4. 核对两入口互不影响、各自行为确定 | 项目画像 §2.3;Q18 已确认;WT-01 样本 | 1. 承运结算→运费核算改造落点正确:弹窗含两字段且可用(与 PLT_TMS_LC_002 对应)<br>2. 「运单认证核算」下同名入口**不处理**:保持改造前原样——无新增字段、无新增列、行为无变化(防误伤,Q18)<br>3. 改造仅落"承运结算 → 运费核算"入口;「运单认证核算 → 运费核算」不被改造波及(不再按"同一页面/独立页面"二义分支记录)<br>4. 误伤防护结论记录;两入口各自行为确定、无二义 | 对应TP-X-014;[回归];[已确认 2026-09-29: 仅改造 整车运输 → 承运结算 → 运费核算;"运单认证核算 → 运费核算"不处理、保持原样(Q18)];[AI修正: 待确认已确认 2026-09-29] |
| PLT_TMS_LC_081 | 平台端-整车运输-端到端冒烟 | 验证建档到打款展示的物流公司全链路端到端冒烟 | P0 | 冒烟测试 | ACC-01 与 ACC-03/ACC-04 已登录;环境已备 DOC-01/03/05 证件样本与 AT-01 合同附件样本;数据字典-税源地已维护 | 1. ACC-01 新增物流公司"云南测试端到端物流有限公司"(上传三证件、填写全字段)→ 状态=启用<br>2. 编辑页合同管理 Tab 新增合同(生效时间=T、过期时间=T+365)→ 状态=生效中<br>3. ACC-01 发布货源 HY-E2E 选择该公司 → 保存快照<br>4. ACC-03 对 HY-E2E 关联运单打开修改核算弹窗(带入公司)→ 保存 → 核算状态=已核算<br>5. ACC-04 在货主打款页按该公司筛选并核对展示列 → 核对运单管理/货源管理列表展示 | 端到端公司(名称唯一);DOC-01/03/05;AT-01;HY-E2E;T=2026-09-29、T+365=2027-09-29 | 1. 新增成功(状态启用、列表出现、证件落库)<br>2. 合同保存成功且状态自动=生效中,公司列表生效合同数=1<br>3. 货源保存成功、列表快照显示公司名称<br>4. 核算保存成功(运单表三字段快照落库、状态已核算)、打款页按公司筛出该记录且四列表展示一致;全链路无阻断、无控制台报错 | 端到端冒烟(合成用例,串联 A/B/E/F/G/H/I 核心链路;对应 TP-B-019/TP-E-005/TP-G-005/TP-F-015/TP-H-001/TP-I-003) |
---
## P2/P3 用例取舍说明
- 本次**未裁剪任何 P2/P3 测试点**(P2 23 个、P3 5 个全部保留对应用例),理由:P2 中 TP-I-012(历史数据兼容)、TP-F-021(批量核算 Q7)、TP-D-005(货源引用删除口径)为口径裁决依赖项(相关口径已于 2026-09-29 全部确认,用例已按确定口径承接);P3 中 TP-E-004(合同选择框无批量操作)、TP-I-011(列位置)、TP-X-010~012(小象开票防串扰、文件包不干扰、术语口径)为范围防护与防过度实现类验证点,执行成本低且能防止越界实现。
- 拆分/合并原则:同一测试点内"接受 vs 拒绝"(020 白名单内/外)、"启用/停用/已删除"三态(003、006)、"不同真实业务场景"(024 合法校验与 025 非法校验)拆为独立用例;同类边界两侧(50/51 字符、200/201 字符、20000/20001 条、30/31 与 20/21 字符)在一条用例内成对验证;原记录实际行为类场景(026、041、046、053 等)独立成条,其待确认口径已于 2026-09-29 全部确认、用例已按确定口径断言。
- 优先级校验:P0 用例 55 条占 33.5%,与测试点 P0 占比(53/159=33.3%)匹配;全部 P0 测试点 100% 有 P0 用例承接(TP-B-009 拆为 024/025 两条 P0,故 P0 用例 55 > P0 测试点 53);无高风险场景下沉到 P2(如 TP-F-018 状态已变化后操作为 RISK-DATA 相关,保持 P0)。
- 新增 081(端到端冒烟,P0)为合成用例,串联建档→合同→货源→核算→打款→四列表展示主链路,用于首轮冒烟与联调回归,不与明细用例重复计覆盖。
## 测试点 → 用例覆盖率统计
> 覆盖率总览:159/159 测试点全部对应用例(100%)。P0 测试点 53 个 100% 对应用例(对应 55 条 P0 用例,超出部分为 TP-B-009 的边界拆分);P1 测试点 78 个 100% 对应用例(对应 81 条 P1 用例,超出部分为 TP-B-010/TP-B-014 的字段拆分与 TP-B-009 的一条补充);P2 测试点 23 个 100% 保留;P3 测试点 5 个 100% 保留。覆盖率 100%(159/159),无遗漏、无静默裁剪。
> 模块 A(菜单与列表查询,15 个):TP-A-001→PLT_BSC_LC_001;TP-A-002→002;TP-A-003→003;TP-A-004→004;TP-A-005→005;TP-A-006→006;TP-A-007→007;TP-A-008→008;TP-A-009→009;TP-A-010→010;TP-A-011→011;TP-A-012→012;TP-A-013→013;TP-A-014→014;TP-A-015→015
> 模块 B(新增,24 个):TP-B-001→016;TP-B-002→017;TP-B-003→018;TP-B-004→019;TP-B-005→020;TP-B-006→021;TP-B-007→022;TP-B-008→023;TP-B-009→024/025/026;TP-B-010→027/028;TP-B-011→029;TP-B-012→030;TP-B-013→031;TP-B-014→032/033;TP-B-015→034;TP-B-016→035;TP-B-017→036;TP-B-018→037;TP-B-019→038;TP-B-020→039;TP-B-021→040;TP-B-022→041;TP-B-023→042;TP-B-024→043
> 模块 C(编辑,5 个):TP-C-001→044;TP-C-002→045;TP-C-003→046;TP-C-004→047;TP-C-005→048
> 模块 D(删除与启停用,13 个):TP-D-001→049;TP-D-002→050;TP-D-003→051;TP-D-004→052;TP-D-005→053;TP-D-006→054;TP-D-007→055;TP-D-008→056;TP-D-009→057;TP-D-010→058;TP-D-011→059;TP-D-012→060;TP-D-013→061
> 模块 E(合同管理,22 个):TP-E-001→062;TP-E-002→063;TP-E-003→064;TP-E-004→065;TP-E-005→066;TP-E-006→067;TP-E-007→068;TP-E-008→069;TP-E-009→070;TP-E-010→071;TP-E-011→072;TP-E-012→073;TP-E-013→074;TP-E-014→075;TP-E-015→076;TP-E-016→077;TP-E-017→078;TP-E-018→079;TP-E-019→080;TP-E-020→081;TP-E-021→082;TP-E-022→083
> 模块 F(运单核算关联,25 个):TP-F-001→PLT_TMS_LC_001;TP-F-002→002;TP-F-003→003;TP-F-004→004;TP-F-005→005;TP-F-006→006;TP-F-007→007;TP-F-008→008;TP-F-009→009;TP-F-010→010;TP-F-011→011;TP-F-012→012;TP-F-013→013;TP-F-014→014;TP-F-015→015;TP-F-016→016;TP-F-017→017;TP-F-018→018;TP-F-019→019;TP-F-020→020;TP-F-021→021;TP-F-022→022;TP-F-023→023;TP-F-024→024;TP-F-025→025
> 模块 G(货源选择,8 个):TP-G-001→026;TP-G-002→027;TP-G-003→028;TP-G-004→029;TP-G-005→030;TP-G-006→031;TP-G-007→032;TP-G-008→033
> 模块 H(打款筛选,11 个):TP-H-001→034;TP-H-002→035;TP-H-003→036;TP-H-004→037;TP-H-005→038;TP-H-006→039;TP-H-007→040;TP-H-008→041;TP-H-009→042;TP-H-010→043;TP-H-011→044
> 模块 I(列表展示与快照,12 个):TP-I-001→045;TP-I-002→046;TP-I-003→047;TP-I-004→048;TP-I-005→049;TP-I-006→050;TP-I-007→051;TP-I-008→052;TP-I-009→053;TP-I-010→054;TP-I-011→055;TP-I-012→056
> 模块 J(权限、隔离与日志,10 个):TP-J-001→057;TP-J-002→058;TP-J-003→059;TP-J-004→060;TP-J-005→061;TP-J-006→062;TP-J-007→063;TP-J-008→064;TP-J-009→065;TP-J-010→066
> 模块 X(跨需求回归与兼容,14 个):TP-X-001→067;TP-X-002→068;TP-X-003→069;TP-X-004→070;TP-X-005→071;TP-X-006→072;TP-X-007→073;TP-X-008→074;TP-X-009→075;TP-X-010→076;TP-X-011→077;TP-X-012→078;TP-X-013→079;TP-X-014→080
## 确认结论(13 项已于 2026-09-29 全部确认,用例已按确定口径断言)
> 依据:需求文档第八章补充确认 Q7~Q19(2026-09-29,权威口径);与测试点文件"确认结论汇总"、测试数据 §10 一致。用例备注中的待确认标注已全部替换为 `[已确认 2026-09-29: ...]`,并追加 `[AI修正: 待确认已确认 2026-09-29]`。
> 1)Q7 批量核算**不支持**批量填充"物流公司/客户收货地址"——批量逻辑不变、不填充也不清除,两字段仅单笔"修改核算"弹窗可填;承接用例 PLT_TMS_LC_021(P2,已改为确定断言)。
> 2)Q8 运单管理列/打款筛选/导出**一律以运单表为准**——货源所选公司为货源维度记录,核算时按货源所选公司默认带入"修改核算"弹窗(运单表初始无值:未核算的运单没有值;弹窗内可清除或更换),确认核算后写入运单表(运单维度);未核算或未关联显示"无外协公司"、不联表实时取货源当前值;承接用例 PLT_TMS_LC_046(运单管理列)、PLT_TMS_LC_041(打款筛选依据)、PLT_TMS_LC_024(弹窗回显基准),三条同基准。
> 3)Q9 BR-04 删除保护**不覆盖**"仅被货源引用、无运单"的公司——仍仅"生效合同/运单引用"两条件阻断;承接用例 PLT_BSC_LC_053(P2,已改为"可删除"确定断言)。
> 4)Q10 合同附件扩展名**大小写不敏感**——.PDF/.Jpg 等同 .pdf/.jpg 放行(白名单按扩展名小写归一判定);承接用例 PLT_BSC_LC_073/074。
> 5)Q11 联系方式**仅手机号** `1[3-9]\d{9}`——座机与国际前缀不支持、应拒绝;承接用例 PLT_BSC_LC_029。
> 6)Q12 简称码大小写**不做限制**(仅做记录、不参与任何流程)——大小写均不阻断、行为确定;承接用例 PLT_BSC_LC_030。
> 7)Q13 唯一性判重**提交前 trim 首尾空格**——"甲公司 "与"甲公司"视为重复;承接用例 PLT_BSC_LC_023/034。
> 8)Q14 信用代码**仅按 BR-01 正则校验**字符集与长度、**不校验第 18 位校验位**——校验位错误但格式合法可保存;承接用例 PLT_BSC_LC_026。
> 9)Q15 纯空格/空白字符 **trim 后为空视为未填**——必填字段按空值阻断;承接用例 PLT_BSC_LC_022/028/032。
> 10)Q16 简称码空值**不参与**全平台唯一(多家公司可同时留空);编辑时**名称/信用代码/简称码/合同编号均排除自身**;承接用例 PLT_BSC_LC_036、PLT_BSC_LC_046、PLT_BSC_LC_068。
> 11)Q17 垫资-货主打款/垫资-财务打款两页**本期不改造**(保持原样)——需回归验证其查询与打款功能不受本次改造影响;承接用例 PLT_TMS_LC_079(P1)。
> 12)Q18 **仅改造 整车运输 → 承运结算 → 运费核算**;"运单认证核算 → 运费核算"不处理、保持原样;承接用例 PLT_TMS_LC_080(P1)。
> 13)Q19 客户收货地址以**运单详情只读展示**为验收基线;**不加入运单管理列表列**;导出暂不要求;承接用例 PLT_TMS_LC_020(P2)。
> 说明:全部涉及用例的预期结果均已由"记录实际行为/双分支"收紧为确定断言(已确认口径一律以确定断言执行,不再留存待裁决分支)。
## 自检结论(按 review_checklist.md 第 1~4 节逐项)
> 结构:全文仅一个连续用例表(表头逐字为标准唯一表头、分隔线合规、164 行数据无空行/无标题插入),每行恰 10 列、单元格内无半角竖线、无单元格内换行(步骤与预期以 <br> 分隔);类型列全部取自枚举(功能测试 135/回归测试 13/安全性测试 11/冒烟测试 2/性能测试 1/兼容性测试 1/易用性测试 1,无"其他");模块列全部为 `-` 连接层级路径(导出时自动标准化为 `|`)。
> 覆盖:主流程/异常流程/边界条件/数据校验/状态流转/规则组合/幂等并发/权限越权/弱网超时/历史缺陷防御/跨需求冲突防御/项目差异化(多机构隔离、行为日志四要素、Excel 20000 上限、华为云 OBS 依赖、核算人员只读、敏感证件合规)12 维度全覆盖;后台 CRUD 正向成功链路(038/047/054/066/081)、选择弹窗六项细项(刷新/搜索/字段/分页/排序/反馈,004~010)、状态拆分三态(003/006/052/070)、查看只读(079)均已显式覆盖;金额相关以回归方式覆盖(042/072/073,本需求不新增金额计算,见测试点"不适用说明");预期结果均同时含 UI/接口反馈与数据状态变化(落库字段/状态位/日志/唯一约束/快照值),无"操作成功""功能正常"类空话。
> 风险场景:RISK-DATA P1 三类核心场景(唯一性双保险含并发 037、快照口径 050/051/052、删除保护 050/051/052/053)全部按 P0/P1 覆盖,无遗漏、无下沉;RISK-FINANCIAL(042/072/073)、RISK-COMPLIANCE(058/061/062/066)、RISK-AVAILABILITY(011/078/023)、RISK-COMPATIBILITY(056)逐项落用例。
> 追溯与来源:每条用例备注标注对应 TP 编号;历史缺陷防御用例(068~071)标 `[AI修正: 历史缺陷防御]`;跨需求回归用例(067~074/076/077/079/080)标 `[回归]` 或 `[AI修正: 冲突修订]`;待确认项 11+6 处已于 2026-09-29 全部确认,涉及用例已按确定口径断言并在备注标注 `[已确认 2026-09-29: ...]` 与 `[AI修正: 待确认已确认 2026-09-29]`(见文末"确认结论"章节)。