Files
shanxia2.0/openspec/changes/transport-plan-management/specs/vehicle-driver/spec.md
T
2026-06-29 11:15:39 +08:00

4.8 KiB
Raw Blame History

Vehicle, Personnel & Certificate(车辆/人员/证书管理)

ADDED Requirements

Requirement: 车辆档案管理

系统 SHALL 支持车辆档案的完整管理,含关联人员子表与车辆证书子表。

Scenario: 车辆信息维护

  • WHEN 管理员新增或编辑车辆
  • THEN 系统 SHALL 记录车牌号(唯一)、车辆类型(自有/承运商)、承运商(类型为承运商时)、载重、车辆状态(可用/维修中/报废)、备注
  • AND 系统 SHALL 在车辆弹窗内以子表维护关联人员(姓名、手机号非必填、年龄、人员类型、关联备注、默认司机)
  • AND 系统 SHALL 在车辆弹窗内以子表维护车辆证书(证书名称、证号、有效期、提前提醒天数,默认 30)

Scenario: 车辆归属管理

  • WHEN 管理员编辑车辆归属类型
  • THEN 系统 SHALL 确保同一辆车只能属于一种类型(自有或承运商)
  • AND 系统 SHALL 禁止同一车牌号重复

Scenario: 车辆关联人员

  • WHEN 管理员在车辆弹窗维护关联人员子表
  • THEN 系统 SHALL 支持每车多人,人员类型为司机或押运员
  • AND 系统 SHALL 确保每辆车最多一名默认司机(仅 role=driver 的行可设为默认)
  • AND 系统 SHALL 在保存时 upsert 人员主数据(有手机号时按手机号去重,无手机号时按姓名弱匹配)

Requirement: 人员档案管理

系统 SHALL 支持人员(司机、押运员等)档案的独立管理。

Scenario: 人员信息维护

  • WHEN 管理员新增或编辑人员
  • THEN 系统 SHALL 记录姓名(必填)、手机号(非必填)、年龄、身份证号、在职状态、备注
  • AND 系统 SHALL 以子表维护人员证书(证书名称、证号、有效期、提前提醒天数,默认 30)
  • AND 系统 SHALL NOT 在人员表写死驾驶证/行驶证/危化品证等字段

Scenario: 人员与车辆绑定

  • WHEN 管理员在车辆弹窗或人员管理中维护绑定关系
  • THEN 系统 SHALL 允许同一人员关联多辆车、同一车辆关联多人
  • AND 系统 SHALL 在运输安排选择车辆后自动带出该车的默认司机
  • AND 系统 SHALL 在安排运输时司机下拉仅展示该车 role=driver 的关联人员

Requirement: 动态证书管理

系统 SHALL 使用独立证书表管理车辆与人员的各类证书。

Scenario: 证书实例维护

  • WHEN 管理员为车辆或人员添加证书
  • THEN 系统 SHALL 记录 owner_type(vehicle/personnel)、证书名称、证号、有效期、remind_days(默认 30)、附件
  • AND 系统 SHALL 允许同一主体持有多个证书,证种可动态增删
  • AND 证书附件 SHALL 使用 OpenSpec「附件上传卡片化布局」:AttachmentUploadField 组件,多附件以逗号分隔 URL 存入 attachment_urls;支持上传、下载、图片预览

Scenario: 证书到期提醒

  • WHEN 证书 expire_date 非空且剩余天数 ≤ remind_days
  • THEN 系统 SHALL 通过定时任务扫描 pl_cert 生成 pl_document_reminder
  • AND 提醒 SHALL 覆盖车辆与人员证书
  • AND 提醒列表 SHALL 展示主体类型、主体名称(车牌/姓名)、证书名称、到期日期、剩余天数

Requirement: 承运商管理

系统 SHALL 支持承运商档案管理,含资质附件与运输协议有效期校验。

Scenario: 承运商信息维护

  • WHEN 管理员新增承运商
  • THEN 系统 SHALL 记录承运商名称、联系人、联系电话、合作状态(合作中/已终止)
  • AND 系统 SHALL 要求上传营业执照、道路经营许可证、运输协议,并填写运输协议有效期
  • AND 附件 SHALL 使用 AttachmentUploadField 卡片化布局,URL 逗号分隔存库

Scenario: 协议过期阻断运输

  • WHEN 承运商运输协议有效期早于当前日期
  • THEN 系统 SHALL 展示「协议已过期」
  • AND 该承运商名下车辆 SHALL NOT 出现在安排运输与计划预选车辆列表
  • AND 安排/调整运输接口 SHALL 拒绝使用该承运商车辆
  • AND 协议过期时 SHALL 禁止调整运输,直至更新协议

Scenario: 历史承运商兼容

  • WHEN 存在未补全资质附件的历史承运商
  • THEN 系统 SHALL 允许保留基础档案
  • AND 在其资质补全且协议有效前 SHALL NOT 允许安排运输

Scenario: 承运商审核

  • WHEN 管理员审核承运商
  • THEN 系统 SHALL 支持将待审核承运商标记为已通过
  • AND 仅审核通过且资质齐全、协议有效的承运商车辆可用于运输安排
  • AND 修改资质附件后 SHALL 将审核状态重置为待审核

Scenario: 承运商车辆筛选

  • WHEN 用户选择承运商后安排运输
  • THEN 系统 SHALL 仅显示该承运商名下的车辆