| 模块 | 测试项 | 结果 |
|---|---|---|
| 登录 | 正确凭据登录 | ✅ 通过 |
| 登录 | 错误密码登录 | ❌ 无错误提示(BUG-1) |
| 登录 | 空表单提交 | ✅ 前端验证正常 |
| 退出 | 点击退出按钮 | ✅ 正常跳转 |
| 客户管理 | 列表展示 | ✅ 通过 |
| 客户管理 | 新增客户 | ✅ 编号自动生成 |
| 客户管理 | 搜索(按编号) | ✅ 通过 |
| 客户管理 | 空表单验证 | ✅ 通过 |
| 客户管理 | 删除有关联订单的客户 | ❌ 前端无错误提示(BUG-2) |
| 供应商管理 | 列表展示 | ✅ 通过 |
| 产品管理 | 列表展示 | ✅ 通过 |
| 产品管理 | 售价/采购价校验 | ⚠️ 无校验(建议改进) |
| 销售订单 | 创建订单 | ✅ 通过 |
| 销售订单 | 确认订单(库存充足) | ✅ 库存正确扣减 |
| 销售订单 | 确认订单(库存不足) | ❌ 前端无错误提示(BUG-3) |
| 销售订单 | 取消已确认订单 | ✅ 库存正确恢复 |
| 销售订单 | 恢复已取消订单 | ✅ 库存重新扣减 |
| 销售订单 | 日期范围筛选 | ✅ UI 存在 |
| 采购订单 | 列表展示 | ✅ 通过 |
| 库存列表 | 展示 | ✅ 数量与订单一致 |
| 变动记录 | 审计轨迹 | ✅ 完整记录所有变动 |
LoginView.vue + request.jsElMessage.error{"message":"用户名或密码错误"} (401)CustomerList.vue 的 handleDelete(供应商、产品同理)catch (e) { /* user cancel */ } 吞掉了所有异常SalesOrderDetail.vue 的确认/取消/恢复操作部分页面用 #prefix 图标,部分用 #append 按钮,建议统一
部分 el-table 有 stripe 属性,部分没有,建议统一
| # | 建议 |
|---|---|
| 1 | 产品售价/采购价无交叉校验 — 允许售价低于采购价,可能导致亏损订单 |
| 2 | 库存不足已被后端正确阻止,但前端未展示错误信息 |
| 3 | 订单状态流转完整:已创建 → 已确认 → 已取消 → 已确认(恢复),逻辑正确 ✅ |
| 4 | 库存变动审计轨迹完整,记录了销售出库、采购入库、取消恢复、取消回滚 ✅ |
系统核心业务流程(进销存)运行正常,后端数据校验和业务逻辑实现完善。主要问题集中在前端错误提示的缺失 — 多个页面的 catch 块统一吞掉了 API 错误和用户取消操作,导致后端返回的有意义的错误信息无法展示给用户。建议优先修复 BUG-1(登录无反馈)和 BUG-2/3(操作失败无反馈)。