写 6 个核心概念到 prop-acc/concepts/deposit/: - deposit-account-vs-transaction:账户(余额状态)+ 流水(不可变历史)双对象模式 - account-state-machine:Active / Frozen / Closed 三状态机,canDeposit/canWithdraw 守护 - payer-types:6 种缴款人(Owner/Tenant/Contractor/Company/Supplier/Other),业户账户 vs 三方账户 - transaction-types:3 种合法流水(deposit/refund/forfeiture),已弃用 adjustment 的审计取舍 - red-receipt-design:退款扣罚走红字 CollectionOrder + Receipt(金额正负 vs 新枚举) - deposit-vs-adhoc-vs-prepaid:三个子模块会计本质区别(收入 / 预收 / 代管) 新建子模块知识地图: - prop-acc/maps/deposit-knowledge-map.md:6 概念入口 + 18 场景预占清单 + 跨域引用 + 代码索引 更新导航: - prop-acc/index.md:七大子模块表保证金行,链 deposit 知识地图,状态 🟡 - prop-acc/maps/knowledge-map.md:域总图同步 下一轮:18 个场景文档(deposit/scenarios/),按本知识地图骨架填充。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
6.1 KiB
6.1 KiB
title, aliases, tags, sub_feature, audience, status, last_review, code_version
| title | aliases | tags | sub_feature | audience | status | last_review | code_version | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| prop-acc · deposit · 知识地图 |
|
|
deposit |
|
已发布 | 2026-05-25 | 2026-05-22 |
保证金(deposit)知识地图
本子模块 = DepositAccount + DepositTransaction。覆盖物业代为保管的押金(装修保证金、入驻押金等)的开户、缴款、退款、扣罚、冻结、关账、强制关账等全套生命周期。
这是什么?
业户/装修方/供应商先交一笔钱给物业代为保管,等事情结束(装修完、租约满、合同执行完)再退还。中途如果发生损坏或违约,物业可扣除。这就是保证金 / 押金。
[!warning] 押金不是收入! 业户交的 5,000 装修押金,不算物业收入,是物业代为保管的钱。会计科目记入"其他应付款"(负债),不进收入。
这条原则决定了所有设计:必须有独立账户 + 完整流水台账 + 红字凭证(退款扣罚),不能像一次性收费那样"一笔进账完事"。
核心概念(6 篇)
| 文档 | 一句话 |
|---|---|
| 押金账户与押金流水 | 双对象模式:账户记余额状态,流水记每笔历史 |
| 账户状态机 | Active / Frozen / Closed 三状态,Frozen 严格冻结 |
| 缴款人类型 | 6 种(业主/租户/装修承包商/装修公司/供应商/其他)及业户账户 vs 三方账户 |
| 流水类型 | 3 种合法流水(deposit/refund/forfeiture),已弃用 adjustment 的设计取舍 |
| 红字凭证设计 | 退款扣罚走红字 CollectionOrder + Receipt,而非新增枚举 |
| 押金 vs 一次性收费 vs 预存款 | 三个子模块的会计本质区别(收入 vs 预收 vs 代管) |
场景手册(18 篇,待补充 ✋)
🚧 概念骨架已就位,场景文档将在下一轮产出。预定结构如下。
📥 缴纳(Deposit)— 3 篇
💰 退款(Refund)— 3 篇
- 🚧 装修完无损全额退还
- 🚧 部分扣罚后退还差额
- 🚧 退款渠道与缴款渠道不同
⚠️ 扣罚(Forfeiture)— 2 篇
🧊 冻结 / 解冻(Freeze / Unfreeze)— 2 篇
- 🚧 业户纠纷期间冻结账户
- 🚧 调解结束后解冻
🔒 结清(Close)— 2 篇
- 🚧 余额清零自动关闭
- 🚧 主动关账(已无业务往来)
🚨 强制关账(ForceClose)— 3 篇
解决 "Frozen + 有余额 + 想关账" 的设计困境。三种 disposition 对应不同业务出口。
🛡️ 异常 / 审计 / 配置 — 3 篇
- 🚧 冻结账户尝试缴款被守护拦截
- 🚧 月度押金账户余额对账
- 🚧 长期未关账户排查
跨域引用
本子模块引用以下跨域共享概念:
- 业户 — Owner / Tenant 类型的缴款人主体
- 房屋单元 —
asset_id,装修押金通常与具体房屋关联 - 组织结构 —
community_id,物业项目归属 - 角色与权限 —
DepositAccountPolicy权限模型
跨子模块引用
- adhoc · CollectionOrder 与 Receipt — 押金流水复用相同凭证模型,退款走红字
- adhoc · AdHocEvent 状态机 — 对比:adhoc 状态机 vs deposit 状态机
相关代码
- 模型:
packages/prop-acc/src/Models/DepositAccount.php、DepositTransaction.php - 枚举:
DepositAccountStatus、DepositPayerType、DepositTransactionType、FundSource - Policy:
DepositAccountPolicy、DepositTransactionPolicy - Actions(业务层):
packages/prop-acc/src/Actions/Deposits/(DepositIntoAccountAction/RefundFromDepositAccountAction/ForfeitFromDepositAccountAction/ForceCloseDepositAccountAction) - Filament Resource:
packages/prop-acc/src/Filament/Resources/DepositAccounts/ - 业务设计决策:
packages/prop-acc/issue.md的 Q3 段
相关文档
[!info] 概念已完成,场景待补 本轮(轮 1)产出:6 个概念 + 本子模块地图 + 域总图更新。 下一轮(轮 2)产出:18 个场景文档,基于本知识地图骨架填充。