Files
uniprop-manual/prop-acc/一次性收费/场景-收据-重打丢失收据.md
2026-05-25 13:49:34 +08:00

5.1 KiB

title, tags, audience, status, last_reviewed, code_version
title tags audience status last_reviewed code_version
场景 - 收据 - 重打丢失收据
prop-acc
一次性收费
业务场景
收据凭证
业户
业务人员
stable 2026-05-25 2026-05-22

场景:重打丢失收据

业户事后说收据丢了,要求物业补打或重发

[!success] 系统已支持 后端已有 PDF 下载路由(packages/prop-acc/routes/tenant.php)。本场景描述前台 + 业户的两种重打路径。

典型情境

[!example] 真实情境 张阿姨 3 个月前买了张 IC 卡 ¥30,需要找物业开发票报销公司。当时拿的是纸质收据,现在找不到了。来物业问:"能不能再打一份给我?"

业户视角

路径 A:业户自己在小程序下载

[!tip] 推荐这个最方便 业户自助操作,不用麻烦前台。

  1. 打开小程序 → 我家 → 我的订单
  2. 在"已完成"列表找到那笔订单
  3. 点订单详情 → 右上角 [下载收据]
  4. PDF 自动下载,微信里可保存/分享

路径 B:让前台职员帮忙

业户不会用小程序时:

  1. 到物业前台
  2. "我 3 月份买的 IC 卡,收据丢了,能不能再给我一份?"
  3. 报房号 / 大致日期 / 订单号(如果记得)
  4. 职员搜系统、重新打印 / 发微信

业务人员视角

操作步骤

1. 打开 Filament 后台 → 一次性收费
2. 搜业户(按房号、日期、订单号)
3. 找到目标订单,点击进入详情
4. 找到关联的 Receipt
5. 点"下载 PDF"或"打印"按钮
6. 把 PDF 发到业户微信,或纸质打印当场给

重要:不要新建一笔订单

[!warning] 关键 不要因为业户说"收据丢了"就重新录一笔订单 —— 这会变成系统里多了一笔不存在的交易,财务多收一份钱。

正确做法:用原订单重新生成一份 PDF。原 Receipt 不变(状态仍是 Issued),只是文档被重新渲染

收据号会变吗?

不会。重打的收据收据号、金额、日期 全部和原始收据一样。这是"重打",不是"新开"。

系统流程

sequenceDiagram
    participant 业户
    participant 前台/小程序
    participant 系统
    participant PDF生成器

    业户->>前台/小程序: 我要补一份收据
    前台/小程序->>系统: GET /receipts/{id}/pdf
    系统->>系统: 找到 Receipt 数据
    系统->>PDF生成器: 渲染收据 PDF
    PDF生成器-->>系统: PDF 二进制流
    系统-->>前台/小程序: 返回 PDF
    前台/小程序-->>业户: 下载/打印

[!info] 系统里发生了什么

  • Receipt 表没有任何写操作(没改也没新增)
  • 只是用现存数据重新生成 PDF
  • 重打多少次都不会影响财务记录

几种特殊情况

业户的订单已被作废

如果业户找到的订单是 Voided 状态(走过作废流程):

Filament 后台显示:
├── Receipt 状态:Voided
├── PDF 上会有水印 / 字样:"已作废"
└── 业户拿这张是"作废凭证",不是有效收据

[!warning] 业户可能会问"作废凭证能报销吗?" 不能(财务上这笔交易不存在了)。要重新报销,需要重新交易 + 拿新收据。

业户记不清是什么时候买的

1. 让业户回忆大致月份 / 商品类型
2. Filament 后台用业户 ID + 商品类型筛选
3. 列出该业户**所有历史订单**让业户认领

业户要发票而不是收据

[!info] 收据 ≠ 发票

  • 收据:系统自动生成,证明"我付了钱"
  • 发票:税务凭证,需要走开票流程(国税局接口)

一次性收费当前只生成收据,不开发票。业户要发票需要走单独的发票申请流程(超出本系统范围)。

常见问题

[!question] 业户说"前台给的收据上日期是错的"? 收据日期 = 订单的 collection_completed_at(收款完成时间)。如果业户付款时间和系统时间不一致(罕见),需要技术排查时间同步问题。业务上可以加备注说明

[!question] PDF 能不能加密 / 防伪? 当前未实现。如果有需要(防业户 PS),可以在 PDF 加二维码 + 收据号哈希,业户扫码到物业小程序验真。等业务方反馈再做

[!question] 重打的次数有限制吗? 没限制。每次重打都从数据库实时生成,不影响其他数据

[!question] 业户能查到所有历史收据吗? 在小程序"我的订单"里能看到所有自己的订单(无时间限制)。每笔订单都能重新下载收据。

[!question] 业务人员能帮业户删掉一笔订单 / 收据吗? 不能。Delete 入口在前台已经移除(详见 概念-AdHocEvent状态机)。如果业户希望"这笔订单不存在",走 场景-已收款作废 即可 —— Receipt 状态翻 Voided 但记录仍在,方便审计。

相关概念

异常分支

  • 收据上信息错(房号串错) → 走 场景-已收款作废 + 重做
  • 业户要的不是收据是发票 → 单独发票申请流程(超出本系统)