295 lines
8.5 KiB
Markdown
295 lines
8.5 KiB
Markdown
|
|
---
|
|||
|
|
title: prop-acc · billing · 场景 - 月度账单生成 vs 收款对比
|
|||
|
|
aliases:
|
|||
|
|
- 账单 vs 收款对比
|
|||
|
|
- MonthlyBillingVsCollectionChart
|
|||
|
|
- 收款率
|
|||
|
|
- audit-monthly-billing-vs-collection
|
|||
|
|
- 场景-月度账单收款对比
|
|||
|
|
tags:
|
|||
|
|
- 场景
|
|||
|
|
- prop-acc
|
|||
|
|
- 账单
|
|||
|
|
- 审计
|
|||
|
|
audience:
|
|||
|
|
- 业务人员
|
|||
|
|
- 财务
|
|||
|
|
- 管理层
|
|||
|
|
status: 已发布
|
|||
|
|
sub_feature: billing
|
|||
|
|
last_review: 2026-05-26
|
|||
|
|
code_version: 2026-05-22
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 场景:月度账单生成 vs 收款对比
|
|||
|
|
|
|||
|
|
物业**月度报表**核心指标 —— **本月生成多少账单 vs 本月收到多少款**。`MonthlyBillingVsCollectionChart` Widget 直观对比。是评估**收款率 / 应收账款健康度**的标准动作。
|
|||
|
|
|
|||
|
|
## 典型情境
|
|||
|
|
|
|||
|
|
> [!example] 真实情境
|
|||
|
|
> 5 月底,王主管打开 dashboard 看 `MonthlyBillingVsCollectionChart`:
|
|||
|
|
>
|
|||
|
|
> - 本月生成账单:¥120,000(300 户 × 平均 ¥400)
|
|||
|
|
> - 本月已收款:¥95,000
|
|||
|
|
> - **收款率:79.2%**
|
|||
|
|
> - **应收账款增长**:¥25,000(120 - 95)
|
|||
|
|
>
|
|||
|
|
> 与 4 月对比:
|
|||
|
|
> - 4 月生成:¥118,000,4 月收:¥110,000(93.2%)
|
|||
|
|
> - **5 月收款率下降 14%**,需排查原因
|
|||
|
|
|
|||
|
|
## Widget 显示
|
|||
|
|
|
|||
|
|
`MonthlyBillingVsCollectionChart`(在 BillingDashboard 或主 Dashboard):
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
2026 年月度账单 vs 收款对比图
|
|||
|
|
|
|||
|
|
| 生成 | 收款 | 收款率
|
|||
|
|
2026-01 | 120k | 115k | 95.8%
|
|||
|
|
2026-02 | 119k | 117k | 98.3%
|
|||
|
|
2026-03 | 121k | 113k | 93.4%
|
|||
|
|
2026-04 | 118k | 110k | 93.2%
|
|||
|
|
2026-05 | 120k | 95k | 79.2% ⚠️ 异常
|
|||
|
|
|
|||
|
|
(柱状图)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
可下钻看:
|
|||
|
|
|
|||
|
|
- 按费用类型分布(物业费 vs 水电气 vs 临时)
|
|||
|
|
- 按业户类别(住宅 vs 商铺)
|
|||
|
|
- 按收款方式(现金 / 微信 / 预存款抵 / 其他)
|
|||
|
|
- 逾期账单累计金额
|
|||
|
|
|
|||
|
|
## 业务人员视角
|
|||
|
|
|
|||
|
|
### 第 1 步:看 Widget
|
|||
|
|
|
|||
|
|
每月初(5/1-5/3)看上月数据。
|
|||
|
|
|
|||
|
|
### 第 2 步:对比历史
|
|||
|
|
|
|||
|
|
| 月份 | 收款率 | 趋势 |
|
|||
|
|
|---|---|---|
|
|||
|
|
| 4 月 | 93.2% | 平稳 |
|
|||
|
|
| 3 月 | 93.4% | 平稳 |
|
|||
|
|
| 2 月 | 98.3% | 高 |
|
|||
|
|
| 1 月 | 95.8% | 高 |
|
|||
|
|
| **5 月** | **79.2%** | **断崖** |
|
|||
|
|
|
|||
|
|
5 月异常,需要排查。
|
|||
|
|
|
|||
|
|
### 第 3 步:排查原因
|
|||
|
|
|
|||
|
|
可能原因:
|
|||
|
|
|
|||
|
|
| 原因 | 排查方式 |
|
|||
|
|
|---|---|
|
|||
|
|
| **逾期账单激增** | 看 `OverdueBillsListWidget`,看 5 月逾期累计 |
|
|||
|
|
| **某费用类型收款率低** | 按费用类型下钻 |
|
|||
|
|
| **某社区收款率低** | 多社区时按社区下钻 |
|
|||
|
|
| **某收款渠道异常** | 看渠道分布,例如微信掉单 |
|
|||
|
|
| **季节性**(例如春节后回流缓)| 与去年同月对比 |
|
|||
|
|
| **集抄数据异常**(导致账单虚高)| 看 [[../meter/exception-high-consumption]] |
|
|||
|
|
| **业务方调整 RatePlan**(账单变高,业户抗拒)| 看 RatePlan 变更日志 |
|
|||
|
|
|
|||
|
|
### 第 4 步:出月度报告
|
|||
|
|
|
|||
|
|
给物业总经理 / 财务总监:
|
|||
|
|
|
|||
|
|
```markdown
|
|||
|
|
# 2026 年 5 月 嘉禾花园收款月报
|
|||
|
|
|
|||
|
|
## 总览
|
|||
|
|
- 应收账款生成:¥120,000(300 户)
|
|||
|
|
- 实际收款:¥95,000
|
|||
|
|
- 收款率:79.2%(同比 -14% / 环比 -14%)
|
|||
|
|
|
|||
|
|
## 异常分析
|
|||
|
|
- 主要原因:5 月物业费 RatePlan 上调(¥3 → ¥3.5),业户抗拒
|
|||
|
|
- 60 户拒绝按新价付,只付旧价部分 → Partial 状态激增
|
|||
|
|
- 业主大会沟通中,预计 6 月底有结果
|
|||
|
|
|
|||
|
|
## 已采取措施
|
|||
|
|
- 暂停涨价部分的催收(挂起 60 户的差额账单)
|
|||
|
|
- 6 月初业主大会重新讨论
|
|||
|
|
|
|||
|
|
## 预测
|
|||
|
|
- 6 月若按新价确认,收款率回升 90%+
|
|||
|
|
- 6 月若需妥协 → 走批量作废涨价部分 + 重建按旧价
|
|||
|
|
|
|||
|
|
## 资金影响
|
|||
|
|
- 应收账款余额从 4 月底 ¥35,000 升至 5 月底 ¥60,000
|
|||
|
|
- 风险:占用物业现金流 + 6 月人员工资 / 维修 可能紧张
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## SQL 报表查询
|
|||
|
|
|
|||
|
|
### 本月生成账单总额
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
SELECT SUM(amount) AS billed_total
|
|||
|
|
FROM acc_bills
|
|||
|
|
WHERE community_id = ?
|
|||
|
|
AND billing_period_start BETWEEN '2026-05-01' AND '2026-05-31'
|
|||
|
|
AND status != 'void';
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 本月收款总额
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
SELECT SUM(actual_amount) AS collected_total
|
|||
|
|
FROM acc_collection_orders
|
|||
|
|
WHERE community_id = ?
|
|||
|
|
AND collection_type = 'Bill'
|
|||
|
|
AND status = 'completed'
|
|||
|
|
AND completed_at BETWEEN '2026-05-01' AND '2026-05-31 23:59:59';
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 收款率
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
-- 本月生成的账单的本月收款率(注意:可能本月生成的下月才付,本月也可能付上月生成的)
|
|||
|
|
-- 标准公式:本月收款总额 / 本月生成总额
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
更精准的"本月生成 → 本月收"对比需要 join,看具体业务定义。
|
|||
|
|
|
|||
|
|
### 按费用类型分布
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
SELECT
|
|||
|
|
ft.name AS fee_type,
|
|||
|
|
SUM(b.amount) AS billed,
|
|||
|
|
SUM(b.paid_amount) AS paid,
|
|||
|
|
SUM(b.amount - b.paid_amount) AS outstanding,
|
|||
|
|
ROUND(SUM(b.paid_amount) * 100.0 / NULLIF(SUM(b.amount), 0), 2) AS rate_pct
|
|||
|
|
FROM acc_bills b
|
|||
|
|
JOIN fee_types ft ON b.fee_type_id = ft.id
|
|||
|
|
WHERE b.community_id = ?
|
|||
|
|
AND b.billing_period_start BETWEEN '2026-05-01' AND '2026-05-31'
|
|||
|
|
AND b.status != 'void'
|
|||
|
|
GROUP BY ft.name
|
|||
|
|
ORDER BY billed DESC;
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
返回:
|
|||
|
|
|
|||
|
|
| fee_type | billed | paid | outstanding | rate_pct |
|
|||
|
|
|---|---|---|---|---|
|
|||
|
|
| 物业费 | 100,000 | 75,000 | 25,000 | 75.0% |
|
|||
|
|
| 水费 | 8,000 | 7,500 | 500 | 93.8% |
|
|||
|
|
| 电费 | 10,000 | 9,500 | 500 | 95.0% |
|
|||
|
|
| 燃气 | 2,000 | 1,950 | 50 | 97.5% |
|
|||
|
|
| 杂费 | 0 | 0 | 0 | N/A |
|
|||
|
|
|
|||
|
|
立刻能看出**物业费是问题**(其他费用收款率 90%+)。
|
|||
|
|
|
|||
|
|
## 关联 Widgets
|
|||
|
|
|
|||
|
|
| Widget | 用途 |
|
|||
|
|
|---|---|
|
|||
|
|
| **`MonthlyBillingVsCollectionChart`**(本场景)| 整体趋势 |
|
|||
|
|
| `BillingStatsOverviewWidget` | 总数 + 总额 + 收款率快照 |
|
|||
|
|
| `FeeTypeRevenueDistributionChart` | 按费用类型分布(饼图)|
|
|||
|
|
| `OverdueBillsListWidget` | 逾期清单 |
|
|||
|
|
| `MonthlyRevenueTrendChart` | 月度收入趋势(长期看 12 月)|
|
|||
|
|
|
|||
|
|
业务人员**月初看一圈**:整体 → 类别 → 逾期 → 长期趋势。
|
|||
|
|
|
|||
|
|
## 业户视角
|
|||
|
|
|
|||
|
|
业户**不直接看这种报表**。但物业**可能公布**(透明化):
|
|||
|
|
|
|||
|
|
- 业主大会汇报"上月物业费收款率 X%"
|
|||
|
|
- 在小区公告栏公示
|
|||
|
|
- 在业主群发月度总结
|
|||
|
|
|
|||
|
|
收款率高 → 业户感觉"物业团结" 反之有疑虑。
|
|||
|
|
|
|||
|
|
## 财务视角
|
|||
|
|
|
|||
|
|
### 财务关心的核心指标
|
|||
|
|
|
|||
|
|
| 指标 | 目标 | 含义 |
|
|||
|
|
|---|---|---|
|
|||
|
|
| **收款率** | > 90%(目标 95%+)| 月度收款 / 月度账单 |
|
|||
|
|
| **应收账款余额** | < 2 个月账单合计 | 累计欠款,反映现金流压力 |
|
|||
|
|
| **逾期账单占比** | < 10% | 长期不付的比例 |
|
|||
|
|
| **平均逾期天数** | < 30 | 收款时效 |
|
|||
|
|
|
|||
|
|
### 与会计核算的衔接
|
|||
|
|
|
|||
|
|
billing 报表与会计科目映射:
|
|||
|
|
|
|||
|
|
| 报表项 | 会计科目 |
|
|||
|
|
|---|---|
|
|||
|
|
| 本月生成账单总额 | "应收账款"(借方)+ "营业收入"(贷方,权责发生制) |
|
|||
|
|
| 本月收款总额 | "现金 / 银行存款"(借方)+ "应收账款"(贷方) |
|
|||
|
|
| 应收账款余额 | "应收账款"账户余额 |
|
|||
|
|
|
|||
|
|
报表为财务月度结账提供数据。
|
|||
|
|
|
|||
|
|
## 趋势分析
|
|||
|
|
|
|||
|
|
```mermaid
|
|||
|
|
xychart-beta
|
|||
|
|
title "嘉禾花园 6 个月账单 vs 收款"
|
|||
|
|
x-axis [Jan, Feb, Mar, Apr, May]
|
|||
|
|
y-axis "金额(千元)" 0 --> 150
|
|||
|
|
bar [120, 119, 121, 118, 120]
|
|||
|
|
line [115, 117, 113, 110, 95]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
异常点(5 月)立刻可见。趋势线告诉管理层何时介入。
|
|||
|
|
|
|||
|
|
## 常见问题
|
|||
|
|
|
|||
|
|
> [!question] 收款率多低算异常?
|
|||
|
|
> 看历史基线 + 行业标准:
|
|||
|
|
> - 健康物业:90%+
|
|||
|
|
> - 一般物业:80-90%
|
|||
|
|
> - 问题物业:< 80%
|
|||
|
|
>
|
|||
|
|
> 单月波动 5-10% 正常(春节后 / 大额账单后);连续 2-3 月低于基线 = 严重问题。
|
|||
|
|
|
|||
|
|
> [!question] 本月生成的账单本月没付完算异常吗?
|
|||
|
|
> 不一定。账单 due_at 通常是月底 + 宽限期(到下月中旬)。**本月内付清率 < 100% 是常态**。重要的是**到期前付清率**。
|
|||
|
|
|
|||
|
|
> [!question] 报表数据与银行账户对账不一致怎么办?
|
|||
|
|
> 排查:
|
|||
|
|
> - 是否有 CO 状态 = Completed 但银行未到账(在途资金)
|
|||
|
|
> - 是否有 CO 创建错(状态 Failed 但 amount 异常)
|
|||
|
|
> - 是否有 fund_source=prepaid 的(账面收款但银行没动)
|
|||
|
|
> - 是否有手工调账 / tinker 操作
|
|||
|
|
|
|||
|
|
> [!question] Widget 数据**慢**怎么办?
|
|||
|
|
> 大数据量(100k+ 账单)时 SQL 可能慢。优化:
|
|||
|
|
> - 加索引(`community_id`, `billing_period_start`, `status`)
|
|||
|
|
> - 用物化视图(定时刷新)
|
|||
|
|
> - 引入 OLAP 工具(BI dashboard 专门处理)
|
|||
|
|
>
|
|||
|
|
> 当前数据量不大,Widget 直接 SQL 应能秒级出。
|
|||
|
|
|
|||
|
|
> [!question] 多社区合并看怎么办?
|
|||
|
|
> Widget 通常按当前 Panel 的 community_id 过滤。**多社区合并**需要管理 Panel 角色(无社区限制)+ Widget 显示总览(可下钻到具体社区)。
|
|||
|
|
|
|||
|
|
## 异常分支
|
|||
|
|
|
|||
|
|
- 收款率低 + 逾期多 → 走 [[exception-overdue-bills|催收]]
|
|||
|
|
- 单业户 Partial 多 → [[exception-partial-payment|跟进部分付]]
|
|||
|
|
- 收款率异常(数据 bug)→ [[audit-activitylog-trace|查 activitylog]] 排查异常操作
|
|||
|
|
- 长期低收款率 → 业务方反思 RatePlan / 服务质量
|
|||
|
|
|
|||
|
|
## 相关文档
|
|||
|
|
|
|||
|
|
- [[exception-overdue-bills]]
|
|||
|
|
- [[exception-partial-payment]]
|
|||
|
|
- [[audit-activitylog-trace]]
|
|||
|
|
- [[bill-six-state-machine]]
|
|||
|
|
- [[bill-vs-collection-order]]
|
|||
|
|
- [[../prepaid/audit-low-balance-and-overdue]]
|
|||
|
|
- [[../deposit/audit-monthly-deposit-balance]]
|