# 智慧停车管理系统功能缺失清单 > 更新日期:2026-08-11 > 评估范围:`lc_garage` 当前前端、后端、设备接入和自动化测试代码 > 状态说明:本文用于记录尚未完成的业务闭环和生产风险,不代表相关模块完全没有代码。 ## 1. 总体结论 当前项目已经具备单机人工收费停车场的基础业务链路,包括停车场配置、车辆管理、统一进出场、停车会话、数字票、人工收费、支付流水、月卡、交接班、报表、道闸模拟和小票打印。 距离正式运营仍缺少三个关键闭环: 1. POS、扫码、中央缴费机等真实资金交易。 2. 业务异常、设备异常的记录和处置。 3. 摄像头、道闸、地感、LED 屏的状态反馈和联动。 “存在支付方式配置”不等同于“已经接入真实支付”。当前非现金支付主要用于业务流程确认,尚未连接实际支付终端或支付网关。 ## 2. P0:上线前必须解决 ### 2.1 非现金支付没有真实交易能力 **当前情况** - 已支持支付入口、支付方式及可用关系配置。 - POS 和外部扫码方式可以直接创建支付流水并把会话标记为已支付。 - 尚未实现支付订单、POS 驱动、扫码下单、支付网关、异步回调、主动查询和超时处理。 **业务影响** - 操作员确认不能证明外部资金已经到账。 - 网络超时、支付成功但本地未更新等情况可能造成资金与业务状态不一致。 **完成标准** - 增加独立支付订单和明确的待支付、处理中、成功、失败、不确定、已退款状态。 - 外部支付只能由可信终端结果、回调或主动查询确认成功。 - 支付回调、重复通知和主动查询必须幂等。 - 实现退款、撤销、冲正、失败补偿和财务对账。 ### 2.2 异常报表和异常处置未实现 **当前情况** - `frontend/src/view/report/sheet.vue` 只有静态表单和空表格。 - 没有异常事件实体、后端接口、查询、处置状态和审计记录。 **应覆盖的异常** - 无牌车、车牌识别冲突、重复入场、无入场记录出场。 - 丢票、票据打印失败、支付失败、支付状态不确定。 - 人工抬杆、强制免费、开闸失败、设备离线。 - 余位为负、会话与数字票状态不一致。 **完成标准** - 异常自动落库,包含来源、停车会话、车辆、通道、设备和操作员。 - 支持待处理、处理中、已解决、已关闭状态和处理备注。 - 人工放行和资金相关异常需要权限控制与完整审计。 ### 2.3 票机打印失败补偿未完成 **当前情况** - 票机已经接入 `PassageService`,按通道定位停车场和设备,并执行统一准入、会话、数字票和开闸流程。 - 已按新建停车会话直接返回数字票,不再通过车牌查询最新票据。 - 无牌取票会生成唯一票机会话身份,避免多辆无牌车共用空车牌。 - 当前打印仍是同步硬件调用;打印失败时会返回已完成的会话、票据和闸机状态,但尚无持久化任务、自动重试、重打和作废机制。 **完成标准** - 打印任务持久化,支持失败重试、重打、作废和操作审计。 - 会话创建、开闸和打印失败之间有明确的补偿规则。 ## 3. P1:已有基础实现但业务闭环不足 ### 3.1 计费引擎能力不足 - 当前只有免费时长、起步价、固定时间单位、单次日封顶和 VIP 优惠。 - 超过 24 小时仍只应用一次日封顶,多日停车计费不正确。 - 缺少自然日或滚动 24 小时规则、跨日分段、夜间价、节假日、阶梯计费和不同停车场费率。 - 缺少缴费后免费离场时限及超时重新计费。 - 未配置收费规则时按每分钟 `0.1` 隐式收费,可能造成错误收费。 - 收费配置缺少负值、折扣范围、时间单位和封顶金额等完整校验。 ### 3.2 月卡办理、续费和退卡不是完整事务 - 创建月卡、写白名单和写支付流水没有放在同一事务中,部分错误被忽略。 - 续费更新月卡、白名单和支付流水时也可能产生部分成功。 - 月卡收费固定记为收费岗亭现金,不能选择支付入口和支付方式。 - 退卡只标记 `refunded` 并删除白名单,没有退款金额、退款流水和审批。 - 月、季、年按 30、90、365 天计算,不是自然月、自然季度和自然年。 - 缺少过期清理、提前续费、冻结、转车、退款计算等业务规则。 ### 3.3 交接班只覆盖现金 - 只统计 `payment_method='cash'`,没有按支付入口和支付方式汇总其他交易。 - 支付流程没有要求操作员必须处于当班状态。 - 开班、收款和交班缺少统一事务约束。 - 缺少管理者复核、差异审批、交班单打印和交班后锁定。 - 页面缺少完整分页、筛选、备注管理和审核能力。 ### 3.4 收入报表维度和财务口径不足 - 当前主要按日期和停车场汇总,只单独展示现金和免费。 - 缺少支付入口、支付方式、操作员、班次、车型、通道等维度。 - 缺少退款、撤销、冲正、月卡收入和交班差异。 - 缺少明细追溯、日结、月结、导出和打印。 ### 3.5 数字票过期状态没有自动执行机制 - 已定义 `expired` 状态和状态流转规则。 - 没有发现根据 `expire_at` 自动过期的定时任务。 - 需要明确待支付票、已支付未离场票分别在何种条件下过期,以及过期后的恢复策略。 ### 3.6 道闸和设备模型不够独立 - 当前工作台从 `UHFReader` 获取道闸设备,读卡器和道闸控制器共用设备模型。 - 无法完整表达一个通道包含摄像头、读卡器、入口票机、道闸、地感等多设备拓扑。 - 缺少闸杆状态反馈、地感、防砸、落杆确认、失败重试和指令流水。 - 模拟道闸配置若在生产环境误开启,会显示在线但不发送真实指令。 ### 3.7 停车场基础配置约束不足 - 已修复按 `LotId` 查询条件、容量低于当前在场车辆数校验,以及存在未出场会话时禁止删除。 - 删除停车场前仍未检查岗亭、通道和设备关联。 - 已结束的历史停车会话仍允许所属停车场被软删除,历史页面需要统一处理已删除配置的名称展示。 ### 3.8 操作审计和敏感数据保护不足 - 操作日志保存请求体和响应体,未见密码、令牌、支付字段统一脱敏。 - 摄像头账号密码缺少加密存储方案。 - 设备失败主要写日志,尚未进入业务告警和异常处置中心。 ## 4. P2:完全缺失或只有模型 | 功能 | 当前状态 | 目标能力 | | --- | --- | --- | | 车牌摄像头接入 | 只有 `camera` 数据实体 | 摄像头配置、RTSP/SDK、OCR 回调、置信度、抓拍、防重复识别、通道绑定 | | 中央缴费机 | 只有支付入口概念 | 终端注册、心跳、订单查询、支付、出场校验、远程配置 | | LED 余位屏 | 未实现 | 屏幕配置、协议适配、余位推送、离线重试 | | 线上支付 | 未实现 | 微信/支付宝等下单、回调、查询、退款和对账 | | 设备告警中心 | 未实现 | 在线状态、故障事件、告警等级、确认和恢复 | | 远程设备诊断 | 未实现 | 设备参数、连通性测试、指令测试、诊断审计 | | 数据备份恢复 | 未实现 | SQLite 备份、校验、恢复、保留策略和恢复演练 | | 数据归档清理 | 未实现 | 历史会话、日志、抓拍图片的归档和容量管理 | | 报表导出打印 | 未实现 | Excel/PDF 导出、日结单、月报和打印 | | 打印任务管理 | 未实现 | 打印机配置、任务队列、状态、失败重试和重打权限 | | 短信/邮件验证 | 模拟实现 | 服务商配置、发送限制、验证码校验和审计 | ## 5. 测试覆盖缺口 现有自动化测试重点覆盖停车会话、数字票、支付金额边界、重复和并发支付、事务回滚、道闸接口及 USB 票据版式。以下范围仍缺少完整测试: - 票机打印任务持久化、失败补偿、重打和作废权限。 - 月卡办理、续费、退卡的跨表事务和退款。 - 交接班、收入报表和多支付方式对账。 - 多日计费、跨日规则、缴费后超时和收费配置异常。 - 异常事件的生成、处置、权限和审计。 - 摄像头、地感、真实道闸、LED 屏的集成和现场测试。 - 数据备份、恢复和故障恢复演练。 ## 6. 推荐实施顺序 1. 建立异常事件、人工处置和设备指令流水。 2. 建立支付订单层,接入 POS、扫码和中央缴费机。 3. 重构多日计费及缴费后离场超时规则。 4. 完成月卡事务、退款、交接班和财务对账。 5. 接入摄像头、地感、道闸反馈和 LED 余位屏。 6. 补充报表导出、打印任务、备份恢复和生产运维能力。 ## 7. 维护规则 - 功能开始开发时,在对应条目中补充负责人、计划版本和关联任务。 - 功能完成后必须同时满足代码实现、权限控制、自动化测试和业务验收,不能仅因页面或配置存在就标记完成。 - 已完成条目从本文移除前,应同步更新 `项目进度.md`、相关流程文档和测试报告。