dingdanquanliucheng/开发任务清单与验收标准.md
2026-05-14 13:51:06 +08:00

33 KiB
Raw Blame History

订单管理系统开发任务清单与验收标准

1. 文档说明

1.1 依据文档

  • 《确定版需求说明书.md》
  • 《数据库.sql》
  • 《系统标准API文档.md》
  • 《字段映射检查表.md》如字段口径发生冲突以该文档与 API 文档共同校验)

1.2 范围说明

本清单覆盖订单管理系统完整前后端开发任务,包括:

  • WEB 业务员端
  • 小程序管理层端
  • 小程序司机端
  • WEB 管理后台
  • 后端 API、数据库、权限、定时任务、第三方接口、审计与报表

1.3 技术选型

层级 技术 说明
后端语言 Python 后端统一使用 Python 开发
后端框架 FastAPI 用于构建标准 HTTP/JSON API支持自动接口文档、类型校验和异步扩展
数据库 MySQL 8.0+ 业务数据持久化,使用 utf8mb4 字符集
ORM/迁移 SQLAlchemy + Alembic 数据模型映射与数据库版本迁移
参数校验 Pydantic 请求、响应、配置项和业务 DTO 校验
鉴权 JWT Token 登录后通过 Authorization: Bearer <token> 访问接口
文件存储 阿里云 OSS 图片、视频、导入文件、导出文件统一存储
AI/OCR 阿里云模型/OCR 一期真实接入,封装为可替换适配层
WEB 前端 Vue 3 + Vite WEB 业务员端和 WEB 管理后台统一使用 Vue 开发
WEB UI 组件 Element Plus 适合后台、表格、表单、弹窗、分页等管理类页面
状态管理 Pinia 登录态、用户信息、权限菜单、页面状态管理
路由 Vue Router WEB 端页面路由和权限拦截
小程序 微信原生小程序 使用微信开发者工具开发管理层端和司机端

1.4 总体验收原则

  • 所有接口返回结构符合统一响应体:codemessagedata
  • 除登录接口外,所有接口必须校验 Authorization: Bearer <token>
  • 所有列表接口支持分页,并返回 totalpage_nopage_sizelist
  • 所有新增、修改、删除、提交、审批、取消、接单、揽货、送达等关键操作写入 audit_log
  • 所有状态流转必须校验当前状态,非法流转返回 40005
  • 所有角色的数据范围和字段可见性必须在后端控制,不能只依赖前端隐藏。
  • 金额、利润、利润率、欠款、统计数据必须以后端计算结果为准。
  • 与数据库字段、API 字段、需求字段不一致的地方,开发前必须明确映射并记录。

2. 开发里程碑

阶段 目标 主要交付物 验收标准
M1 基础工程 完成前后端工程骨架、数据库初始化、认证权限基础能力 工程结构、数据库迁移、登录鉴权、角色菜单 可登录、可获取当前用户、接口统一响应与错误码可用
M2 基础资料 完成客户、产品、工厂/供应商、配置管理 CRUD、列表、详情、导入、配置接口和页面 基础资料可维护,去重、分页、权限、审计可验证
M3 订单主流程 完成订单创建、提交、审批、下发文本、状态追踪 订单 API、审批 API、业务员端、管理层端 从录单到审批通过可完整闭环,利润计算正确
M4 履约与司机端 完成物流任务、司机接单、揽货、送达、附件上传 司机任务 API、小程序司机端、附件记录 司机只能看本人任务,任务状态与订单状态联动正确
M5 提醒与 AI 完成物流超时、欠款、沉默客户提醒AI 识别与修正 定时任务、提醒 API、AI 记录、修正页面 提醒只生成一次或按规则生成AI 原始与修正结果均留存
M6 报表与审计 完成业绩统计、导出、审计日志查询 报表 API、导出文件、审计后台 月/季/年统计正确,导出可下载,日志可追溯
M7 联调验收 完成端到端测试、权限测试、异常测试、数据核对 测试记录、缺陷清单、验收清单 核心流程无阻断缺陷,验收用例全部通过

3. 后端开发任务清单

3.1 基础工程与数据库

编号 任务 说明 验收标准
BE-001 后端工程初始化 使用 Python + FastAPI 建立 API 服务、环境配置、日志、统一异常处理 服务可启动;健康检查可访问;异常返回统一 JSON
BE-002 数据库初始化 基于 数据库.sql 建表,建立初始化脚本或迁移流程 所有表创建成功;字符集为 utf8mb4;索引与唯一约束存在
BE-003 数据访问层 使用 SQLAlchemy 建立核心表模型、仓储或 Mapper 表字段映射完整;逻辑删除字段默认生效
BE-004 ID 与编号生成 支持主键 ID、订单编号、任务编号生成 并发创建不重复;订单号和任务号唯一
BE-005 统一响应与错误码 实现 code/message/data、分页响应、错误码映射 参数错、未登录、无权限、资源不存在、重复、状态非法均返回文档约定错误码
BE-006 审计日志基础能力 封装审计日志写入 关键操作能记录操作人、时间、类型、业务主键、前后值、结果
BE-007 文件存储服务 图片、视频、导入文件、导出文件统一接入阿里云 OSS 对象存储 上传成功返回文件 URL、文件名、类型、大小文件元数据写入 file_attachment;凭证通过安全配置管理

3.2 认证、角色、权限

编号 任务 说明 验收标准
BE-101 登录接口 POST /api/auth/login,校验账号、密码、角色类型 成功返回 token、用户、角色、菜单、权限失败返回明确错误
BE-102 当前用户接口 GET /api/auth/me token 有效时返回当前用户信息token 无效返回 40002
BE-103 退出登录接口 POST /api/auth/logout 退出后 token 不可继续访问受保护接口
BE-104 角色权限模型 基于 sys_usersys_rolesys_menu 实现权限判断 不同角色访问未授权接口返回 40003
BE-105 数据范围控制 业务员、司机、管理层、管理员分别限制数据范围 业务员只能访问本人订单/客户/提醒;司机只能访问本人任务;管理层可访问全量订单和财务字段
BE-106 字段级脱敏 财务与客户敏感字段按角色屏蔽 司机端不返回客户敏感与财务字段;业务员不可越权查看利润等字段

3.3 客户管理

编号 任务 说明 验收标准
BE-201 新增客户 POST /api/customers 姓名 + 手机号重复返回 40006;成功写入 crm_customer
BE-202 客户列表 GET /api/customers 支持姓名、手机号、类型、结算方式、业务员、分页筛选
BE-203 客户详情 GET /api/customers/{customer_id} 返回结算、账期、欠款、归属业务员等字段
BE-204 客户导入 POST /api/customers/import 按姓名 + 手机号去重;返回总数、成功数、重复数、失败数、失败明细
BE-205 客户自动同步 订单创建时新客户自动写入客户库 不存在客户时自动创建;存在时复用客户 ID
BE-206 欠款字段维护 支持订单结算与欠款记录联动 客户欠款金额与 customer_arrears 可核对

3.4 产品管理

编号 任务 说明 验收标准
BE-301 新增产品 POST /api/products 必填字段校验;成功写入 product
BE-302 产品列表 GET /api/products 支持名称、规格、分类、状态、分页筛选
BE-303 产品详情 GET /api/products/{product_id} 返回成本价、售价、规格、单位、分类、状态
BE-304 产品状态控制 禁用产品不可被新订单误选或需明确提示 禁用产品创建订单时被拦截或提示
BE-305 产品快照 订单明细保存产品名称、规格、单位快照 产品后续修改不影响历史订单快照
BE-306 产品分类管理 管理员维护产品分类,不将分类固定写死为工业品/日用品 可新增、编辑、停用分类;产品创建时从分类字典中选择;报表按配置分类汇总

3.5 工厂/供应商管理

编号 任务 说明 验收标准
BE-401 新增工厂/供应商 POST /api/suppliers 成功写入 base_supplier,支持类型、模板类型、联系人
BE-402 工厂/供应商列表 GET /api/suppliers 支持名称、类型、状态、分页筛选
BE-403 下发文本生成 POST /api/orders/{order_id}/supplier-text approved 订单可生成可复制文本;不同模板类型返回对应内容
BE-404 工厂字典约束 工厂仅作为基础字典,不建设工厂独立登录端 无工厂登录入口;仅后台维护数据
BE-405 确认下发工厂 生成/确认下发工厂文本后推动订单状态流转 点击确认下发后,订单由 approved 变为 pending_factory,并写入审计日志

3.6 订单管理

编号 任务 说明 验收标准
BE-501 创建订单 POST /api/orders,写入 sales_ordersales_order_item 默认状态 draft;明细至少一条;金额字段计算正确
BE-502 利润计算 利润 = 销售价 - 成本价 - 回扣 - 运费 - 税费 - 其他费用 订单总利润、行利润、利润率与测试数据手工计算一致
BE-503 提交审核 POST /api/orders/{order_id}/submit draft 可提交为 pending_approve;记录提交时间;重复提交返回 4000540006
BE-504 订单详情 GET /api/orders/{order_id} 返回主信息、明细、审批记录、物流信息、备注;按角色控制字段
BE-505 订单列表 GET /api/orders 支持状态、客户、业务员、工厂、来源、时间、分页筛选
BE-506 订单取消 POST /api/orders/{order_id}/cancel 草稿/待审核可直接取消;已通过或履约中进入 cancel_pending 等待审批;记录原因和时间
BE-507 状态变更 POST /api/orders/{order_id}/status 只允许定义内状态流转;非法状态返回 40005
BE-508 订单通知 状态变化后生成相关提醒或通知 相关角色可收到通知;无关角色不可见
BE-509 订单快照 保存客户、产品、审批人等历史快照 基础资料修改后历史订单显示仍保持原快照
BE-510 电商订单标记 使用订单来源标签识别电商平台订单 报表统计可按规则剔除电商订单
BE-511 订单固定提成 每个订单维护固定提成金额,暂不按公式自动计算 创建或编辑订单时可保存订单提成金额;报表提成核对金额按订单固定提成汇总

3.7 审批管理

编号 任务 说明 验收标准
BE-601 最终审批 POST /api/orders/{order_id}/approve 管理层可审批;通过后状态变更为 approved;退回为 rejected
BE-602 审批记录 写入 sales_order_approve_log 记录审批类型、结果、意见、审批人、时间
BE-603 审批利润展示数据 审批接口或详情提供利润计算过程 管理层可看到销售、成本、回扣、运费、税费、其他费用、利润率
BE-604 取消审批 POST /api/orders/{order_id}/cancel-approve cancel_pending 订单取消需审批;审批通过后订单进入 canceled,审批拒绝后回到取消前状态
BE-605 退回通知 审批退回通知业务员 业务员能在提醒或通知中看到退回原因

3.8 司机任务与履约

编号 任务 说明 验收标准
BE-700 创建/分配司机任务 管理后台或管理层手动创建并分配司机任务 可选择订单、司机、取货地址、送达地址、取件内容、数量、工厂;不会在审批通过后自动创建
BE-701 司机任务列表 GET /api/driver/tasks 司机只能查看本人任务;支持状态和分页
BE-702 司机任务详情 GET /api/driver/tasks/{task_id} 仅返回取货地址、送达地址、取件内容、数量、工厂、任务状态、有限业务员信息
BE-703 接单 POST /api/driver/tasks/{task_id}/accept pending 变为 accepted;记录接单时间
BE-704 确认揽货 POST /api/driver/tasks/{task_id}/pickup accepted 变为 picked_up;支持照片附件;记录揽货时间
BE-705 确认送达 POST /api/driver/tasks/{task_id}/deliver picked_up 变为 delivered;记录送达时间
BE-706 订单状态联动 司机任务状态变化同步订单状态 接单、揽货、送达后订单状态按规则更新
BE-707 附件记录 上传图片、视频等文件到阿里云 OSS并写入 file_attachment 附件与任务或订单关联;可追溯上传人、文件 URL、文件类型、文件大小和时间

3.9 物流与 AI

编号 任务 说明 验收标准
BE-800 手动物流节点维护 一期支持人工录入、编辑物流节点 可按订单维护物流节点;节点写入 logistics_trace;订单详情可查看
BE-801 物流轨迹查询 GET /api/logistics/{order_id}/trace 一期优先返回手动维护的物流节点;保留快递 100 对接结构,第三方失败返回 40009
BE-802 物流轨迹存储 保存或缓存轨迹到 logistics_trace 节点时间、描述、类型、来源可查询
BE-803 物流超时提醒 首个物流节点超过 2 天无流转提醒一次 相同订单同一规则不重复提醒
BE-804 AI 图片识别 POST /api/ai/recognize 一期真实接入阿里云模型能力,包含图片 OCR 识别;识别服务做成可替换适配层;保存 raw_resultconfidenceimage_urlai_recognition_log
BE-805 AI 结果修正 POST /api/ai/recognize/{log_id}/correct 保存人工修正结果;原始结果不被覆盖
BE-806 AI 人工确认规则 AI 仅辅助,不自动审批 识别结果必须经人工确认后才进入业务流程

3.10 提醒管理

编号 任务 说明 验收标准
BE-901 欠款提醒检查 POST /api/reminders/arrears/check 或定时任务 按客户结算方式、账期起算口径、到期日生成提醒
BE-902 沉默客户提醒检查 POST /api/reminders/inactive-customers/check 或定时任务 超过配置周期且金额达到阈值的客户生成提醒
BE-903 提醒记录 写入 system_reminder 包含提醒类型、业务类型、业务 ID、接收人、标题、内容、状态
BE-904 提醒状态 支持 pending/sent/read/canceled 状态可流转;已取消提醒不再展示为待处理
BE-905 提醒配置 阈值、周期、账期起算口径从配置读取 修改配置后新生成提醒按新配置执行
BE-906 欠款生成模式配置 管理员配置欠款生成模式,提供 shipped 发货后记账、delivered 送达后记账两个选项,默认 delivered 新订单按当前配置节点生成欠款记录;订单结算后关闭欠款记录

3.11 报表统计

编号 任务 说明 验收标准
BE-1001 业绩统计 GET /api/reports/performance 支持月、季、年;返回订单数量、订单金额、按产品分类汇总金额、订单固定提成汇总
BE-1002 分类统计 按管理员维护的产品分类配置汇总,不硬编码工业品/日用品 新增分类后,报表可按新分类准确汇总
BE-1003 电商订单剔除 按订单来源标签剔除电商平台订单 同一时间范围内含/不含电商订单统计结果可核对
BE-1004 统计缓存 可使用 performance_stat_cache 缓存统计结果 缓存生成、查询、刷新规则明确且结果一致
BE-1005 报表导出 GET /api/reports/performance/export 返回可下载 file_url;导出内容与页面统计一致

3.12 配置与审计

编号 任务 说明 验收标准
BE-1101 配置查询 GET /api/configs/{config_key} 返回配置键、值、名称、备注
BE-1102 配置更新 PUT /api/configs/{config_key} 更新成功返回 updated=true;写审计日志
BE-1103 审计日志列表 GET /api/audit-logs 支持业务类型、业务 ID、操作人、时间、分页筛选
BE-1104 敏感操作审计 覆盖新增、修改、删除、提交、审批、取消、接单、揽货、送达 任一关键操作均可在审计日志查到

4. 前端开发任务清单

4.1 通用前端能力

编号 任务 说明 验收标准
FE-001 前端工程初始化 建立 Vue 3 + Vite WEB 工程,以及微信原生小程序工程 WEB 端可本地启动和构建;小程序可在微信开发者工具中运行;环境变量可区分开发/生产
FE-002 登录态管理 保存 token、请求自动带 Authorization 登录后可访问受保护页面;过期后跳转登录
FE-003 路由与权限菜单 menuspermissions 渲染导航和按钮 未授权菜单和按钮不可见;直接访问路由被拦截
FE-004 API 请求封装 统一处理响应体、错误码、分页、loading 接口错误能展示明确提示;分页组件与后端参数一致
FE-005 表单与校验组件 必填、手机号、金额、数量、日期等校验 无效输入不能提交;错误提示清晰
FE-006 文件/图片/视频上传组件 支持司机揽货照片、AI 识别图片、视频、导入文件,文件存储到阿里云 OSS 上传成功返回文件地址或附件 ID失败有提示
FE-007 字段脱敏展示 根据后端返回和角色控制页面字段 司机、业务员等角色看不到越权字段

4.2 WEB 业务员端

编号 任务 说明 验收标准
FE-101 业务员登录页 支持账号、密码、角色类型登录 登录成功进入业务员首页;失败显示错误信息
FE-102 订单录入页 录入客户、物流、订单明细、回扣、运费、税费、其他费用 必填校验完整;可新增/删除明细;金额自动汇总
FE-103 产品选择与快照 支持选择产品并带出规格、单位、成本、售价 手动修改后按提交值保存;历史订单不受产品修改影响
FE-104 新客户自动提示 按姓名 + 手机号判断是否新客户 新客户提交后可在客户列表看到
FE-105 订单提交审核 草稿订单可提交审核 提交后状态变为待审核;按钮状态同步变化
FE-106 我的订单列表 查看本人订单,按状态、客户、时间筛选 仅显示本人订单;分页、筛选正常
FE-107 订单详情页 展示订单、状态、物流、审批意见 业务员不可见无权限财务字段
FE-108 订单取消 支持输入取消原因并提交 草稿/待审核可取消;已审批或履约中提交后显示 cancel_pending 等待审批
FE-109 提醒中心 查看物流超时、欠款、沉默客户、退回通知 可区分未读/已读;只显示本人相关提醒
FE-110 状态追踪 展示订单状态流转与物流节点 状态与后端一致;物流节点按时间排序

4.3 小程序管理层端

编号 任务 说明 验收标准
FE-201 管理层登录 支持管理层角色登录 登录后进入审批首页
FE-202 待审批列表 展示待审核订单 支持分页、搜索;只展示可审批数据
FE-203 审批详情页 展示完整订单、明细、客户、利润计算过程 可看到销售额、成本、回扣、运费、税费、其他费用、利润、利润率
FE-204 审批操作 支持通过、退回、填写意见 操作后状态更新;业务员收到通知
FE-205 取消审批 处理 cancel_pending 订单取消申请 审批结果写入记录;通过后进入已取消,拒绝后回到取消前状态
FE-206 下发文本查看与确认 查看、复制并确认工厂下发文本 文本内容与订单和工厂模板一致;确认下发后订单由 approved 进入 pending_factory
FE-207 经营数据概览 查看核心订单与业绩指标 数据与报表接口一致
FE-208 司机任务创建/分配 管理层手动为订单创建并分配司机任务 可选择司机、取货地址、送达地址、取件内容、数量、工厂;保存后司机端可见

4.4 小程序司机端

编号 任务 说明 验收标准
FE-301 司机登录 支持司机角色登录 登录后进入任务列表
FE-302 任务列表 按待接单、已接单、已揽货、已送达查看任务 司机只能看到本人任务;分页和状态筛选正常
FE-303 任务详情 展示取货地址、送达地址、取件内容、数量、工厂、有限业务员信息 不展示客户敏感信息、报价、成本、利润、回扣
FE-304 接单 司机确认接单 任务状态变为已接单,记录接单时间
FE-305 确认揽货 上传照片并确认揽货 必须按规则上传照片;状态变为已揽货
FE-306 确认送达 确认送达并填写备注 状态变为已送达;订单状态联动
FE-307 异常提示 状态非法、无权限、上传失败等提示 错误提示清晰,不出现空白页或无反馈

4.5 WEB 管理后台

编号 任务 说明 验收标准
FE-401 后台首页与菜单 管理员进入系统后台 菜单按权限渲染;刷新后登录态保持
FE-402 用户管理 维护用户、角色归属、状态 用户可新增/编辑/停用;停用用户无法登录
FE-403 角色与菜单管理 维护角色、菜单、按钮权限 权限调整后重新登录生效
FE-404 客户管理 客户新增、列表、详情、导入 去重、导入结果、分页、筛选正常
FE-405 产品管理 产品新增、列表、详情、状态维护 禁用产品状态可见;筛选正常
FE-405A 产品分类管理 管理员维护可扩展产品分类 可新增、编辑、停用分类;报表分类配置可引用
FE-406 工厂/供应商管理 维护工厂、供应商、模板类型 可新增、查询、停用;订单下发可选择
FE-407 订单管理后台 管理员查看全量订单 可按状态、客户、业务员、工厂、时间筛选
FE-407A 司机任务管理 管理员手动创建、分配、查看司机任务 任务保存后司机端可见;任务状态可追踪
FE-408 物流与 AI 管理 手动维护物流节点、上传物流图片、发起 AI 识别、人工修正 物流节点可在订单详情显示;原始结果与修正结果均可查看
FE-409 提醒管理 查看系统提醒记录 可按类型、状态、接收人筛选
FE-410 报表统计 月/季/年业绩报表、分类统计 页面数据与导出数据一致
FE-411 报表导出 发起导出并下载文件 下载文件可打开,内容准确
FE-412 系统配置 维护提醒周期、金额阈值、账期口径、欠款生成模式、报表分类映射等配置 配置保存成功后新规则生效
FE-413 审计日志 查询操作日志 支持筛选;关键操作可追溯

5. 联调任务清单

编号 任务 说明 验收标准
INT-001 接口契约联调 按 API 文档逐个校验请求、响应、错误码 前后端字段一致;无临时字段依赖
INT-002 登录权限联调 校验业务员、管理层、司机、管理员权限 未授权接口和页面均不可访问
INT-003 订单主流程联调 录单、提交、审批、下发、履约、完成 全流程状态正确,审计日志完整
INT-004 取消流程联调 草稿取消、待审核取消、已通过取消、履约中取消 不同状态按规则处理,审批记录完整
INT-005 司机端联调 任务列表、详情、接单、揽货、送达 任务和订单状态联动,附件保存成功
INT-006 提醒联调 物流超时、欠款、沉默客户提醒 触发条件准确,不重复生成不该重复的提醒
INT-007 AI 联调 图片上传、识别、修正、留痕 AI 失败有兜底提示;修正结果保存成功
INT-008 报表联调 页面统计与数据库核对、导出核对 统计口径一致,导出内容一致
INT-009 异常联调 参数错、无权限、资源不存在、状态非法、第三方失败 错误码与提示符合 API 文档
INT-010 数据安全联调 越权访问、字段泄露、司机端敏感字段检查 后端不返回越权数据

6. 核心业务验收用例

6.1 订单主流程验收

步骤 操作 预期结果
1 业务员创建新客户订单 自动创建客户;订单状态为 draft;利润计算完成
2 业务员提交审核 状态变为 pending_approve;记录提交时间
3 管理层查看审批详情 可看到完整订单、成本、回扣、利润、利润率
4 管理层审批通过 状态变为 approved;写入审批记录
5 生成并确认工厂下发文本 返回可复制文本,内容包含订单核心信息;确认后状态变为 pending_factory
6 管理层或管理员手动创建/分配司机任务 司机端可看到任务
7 司机接单、揽货、送达 任务状态依次变更,订单状态联动
8 送达后生成欠款记录 按后台欠款生成模式配置生成欠款;默认订单送达后生成,结算后关闭
9 查看审计日志 录单、提交、审批、接单、揽货、送达均有日志

6.2 利润计算验收

场景 输入 预期结果
单明细订单 销售价 100成本 60回扣 5运费 10税费 3其他 2 利润 20利润率 20%
多明细订单 多行分别计算行利润 订单总利润等于所有行利润与总费用口径汇总结果
销售价为 0 销售价为 0 或非法金额 返回参数错误或业务规则错误,不产生错误利润率
修改产品成本 历史订单已保存快照 历史订单利润不受产品新成本影响
固定提成 订单录入固定提成金额 50 报表提成核对金额按 50 汇总,不按公式二次计算

6.3 权限验收

角色 可访问 不可访问
业务员 本人订单、本人客户、本人提醒、订单录入 他人订单、全局利润、后台配置
管理层 全量订单、审批、利润、报表 系统底层配置修改(除明确授权外)
司机 本人任务、任务相关有限信息 客户敏感信息、报价、成本、利润、回扣
管理员 基础资料、用户角色、配置、审计、报表 不应绕过业务状态规则直接破坏数据

6.4 提醒验收

类型 触发条件 预期结果
物流超时 首个物流节点后超过 2 天无流转 生成一次业务员提醒
欠款超期 超过客户账期配置未结算 生成欠款提醒,关联客户和订单
长期未下单 超过配置周期且金额达到阈值 生成沉默客户提醒
不满足阈值 金额低于配置阈值 不生成沉默客户提醒
欠款生成模式 后台配置为 shipped 发货后记账或 delivered 送达后记账 新订单按配置节点生成欠款记录,结算后关闭

6.5 AI 验收

场景 操作 预期结果
识别成功 上传图片发起识别 保存原始结果、置信度、建议结果
识别失败 第三方接口失败 返回统一错误;记录异常;允许人工录入
人工修正 提交修正结果 保存修正结果,不覆盖原始结果
相似订单 AI 识别到疑似重复 页面提示人工确认,不自动合并或审批

7. 数据库验收标准

验收点
sys_usersys_rolesys_menu 支持用户、角色、菜单权限;用户名唯一;角色编码唯一
crm_customer 姓名 + 手机号唯一;支持归属业务员、结算方式、账期、欠款
product 支持产品名称、规格、单位、分类、成本价、售价、状态
产品分类配置 支持管理员维护产品分类,并配置报表分类映射
base_supplier 支持工厂/供应商类型、联系人、模板类型
sales_order 保存订单主信息、金额汇总、利润、状态、时间节点、快照
sales_order_item 保存订单明细、产品快照、数量、单价、费用、行利润
sales_order_approve_log 保存提交审核、最终审批、取消审批记录
logistics_task 保存司机任务、状态、接单/揽货/送达时间
logistics_trace 保存物流轨迹节点
customer_arrears 保存客户欠款、账期起算、到期日、状态
system_reminder 保存提醒类型、业务关联、接收人、标题、内容、状态
system_config 保存提醒、阈值、账期等配置
file_attachment 保存阿里云 OSS 中的图片、视频、导入文件、导出文件等附件元数据
ai_recognition_log 保存 AI 原始结果、置信度、人工修正
performance_stat_cache 保存统计缓存数据
audit_log 保存关键操作审计记录

8. 非功能验收标准

类别 标准
安全 接口必须鉴权;越权返回 40003;敏感字段由后端控制不返回
一致性 订单、任务、提醒、欠款、报表数据可从数据库追溯核对
幂等性 重复提交、重复审批、重复接单等操作不能造成重复数据或非法状态
可维护性 状态值、错误码、配置键应集中定义,避免散落硬编码
可观测性 关键异常、第三方接口失败、定时任务执行结果应记录日志
性能 常用列表按索引字段查询;分页接口不能一次返回全量数据
兼容性 Vue WEB 端主流浏览器可用;小程序端按微信原生小程序开发,并在微信开发者工具和目标微信版本可用
数据安全 历史快照不随基础资料修改而被破坏;删除采用逻辑删除

9. 交付物清单

类型 交付物 验收标准
后端 Python/FastAPI API 服务代码、MySQL 数据库迁移、定时任务、第三方接口适配 接口测试通过,核心流程可跑通
WEB 业务员端 Vue 登录、录单、订单、提醒、状态追踪页面 业务员主流程可独立完成
小程序管理层端 审批、取消审批、下发文本、经营数据页面 管理层审批流程可完成
小程序司机端 任务列表、详情、接单、揽货、送达页面 司机履约流程可完成
WEB 管理后台 Vue 基础资料、用户角色、配置、报表、审计页面 管理员可完成系统维护
测试 接口测试、权限测试、端到端测试、验收记录 核心用例全部通过,阻断缺陷清零
文档 部署说明、接口联调说明、配置说明、操作手册 新环境可按文档部署并完成基础操作

10. 已确认实施口径

  • 订单审批通过后先进入 approved,点击“生成/确认下发工厂文本”后再进入 pending_factory
  • 新增订单状态 cancel_pending,用于已审批或履约中订单的取消申请待审批场景。
  • 司机任务由管理后台或管理层手动创建/分配,不在订单审批通过后自动创建。
  • 一期物流保留接口和数据结构,支持手动录入物流节点;快递 100 真实对接暂不作为一期验收前置条件。
  • 一期 AI 做“图片上传 + 阿里云模型/OCR 识别接口真实开发 + 人工修正留痕”AI 模型服务以可替换适配层实现。
  • 产品分类由管理员维护,不硬编码为工业品和日用品;报表按产品 category 和系统配置的分类映射统计。
  • 每个订单维护固定提成金额,暂不设计自动计算公式。
  • 欠款默认在订单送达后生成,结算后关闭;后台增加欠款生成模式配置,提供 shipped 发货后记账、delivered 送达后记账两个选项,默认 delivered
  • 小程序端按微信原生小程序开发。

11. 开发联调前准备事项

  • 阿里云模型/OCR 调用凭证、开通地域、费用预算、识别字段范围需要在 AI 联调前准备;凭证不写入代码,使用环境变量或安全配置管理。
  • 图片、视频和业务附件统一使用阿里云 OSS 对象存储;开发联调前需要准备 OSS Bucket、访问凭证、访问域名、上传大小限制和生命周期策略。
  • 微信小程序发布所需 AppID、服务器域名备案、上传域名白名单和体验成员名单由甲方在开发联调前准备。