--- title: prop-acc · prepaid · 场景 - 低余额业户预警 + 逾期账单排查 aliases: - 低余额预警 - 预存款余额告警 - audit-low-balance-and-overdue - 场景-预存款低余额预警 tags: - 场景 - prop-acc - 预存款 - 审计 audience: - 业务人员 - 财务 - 产品 status: 已发布 sub_feature: prepaid last_review: 2026-05-25 code_version: 2026-05-22 --- # 场景:低余额业户预警 + 逾期账单排查 物业业务人员**每周** / 每月扫描: 1. **低余额预存款业户**(下月预计账单 > 当前余额) → 主动提醒充值 2. **预存款余额不够付未付账单的业户** → 跨核对 `LowBalancePrepaidListWidget` 是后台 Dashboard 上专门的 Widget,展示低余额账户清单。 ## 典型情境 > [!example] 真实情境 > 物业财务王主管每周一上午看 `DepositPrepaidDashboard`: > > - 低余额业户清单 widget 显示 **45 户**业户的预存款余额 < 下月预计账单 > - 其中 **12 户**已有当月未付账单 > - 主管按清单逐户联系: > - 12 户已欠 → 督促立即充值 > - 33 户预警(还没欠)→ 友好提醒"下月账单 ¥X,余额 ¥Y 不够,建议充值" ## 业务人员视角 ### Dashboard 查看 后台 → 仪表盘 → `DepositPrepaidDashboard` 页面 → 看 `LowBalancePrepaidListWidget`。 Widget 显示: | 业户 | 当前余额 | 下月预计账单 | 差额 | 当前未付账单 | |---|---|---|---|---| | 张阿姨(12-3-501)| ¥200 | ¥800 | -¥600 | 0 | | 陈先生(12-3-502)| ¥1,500 | ¥2,200 | -¥700 | 1(水电费 ¥220 已逾期 3 天)| | 刘先生(12-3-503)| ¥0 | ¥800 | -¥800 | 1(物业费 ¥800 未付)| | (省略)| | | | | ### 处置策略(分级) | 紧急度 | 业户特征 | 处置 | |---|---|---| | **🔴 紧急** | 已有逾期账单 + 余额不够 | 立即联系 + 督促充值 + 必要时手动催收 | | **🟡 警告** | 当前余额低于下月预计账单 | 提前 3-7 天友好提醒 | | **🟢 关注** | 余额低于 2 个月账单合计 | 月度提醒一次,无需紧急动作 | ### 第 1 步:扫描清单 打开 `DepositPrepaidDashboard` → 看清单 widget。也可手动 SQL 查: ```sql -- 低余额预存款业户(余额 < 下月预计账单) SELECT p.id AS account_id, p.community_user_profile_id, cup.name AS resident_name, p.balance AS current_balance, estimated_next_bill, -- 子查询算下月预计 (estimated_next_bill - p.balance) AS shortage, COUNT(b.id) AS overdue_bills_count FROM acc_prepaid_accounts p JOIN community_user_profiles cup ON p.community_user_profile_id = cup.id LEFT JOIN acc_bills b ON b.resident_id = cup.id AND b.community_id = p.community_id AND b.status = 'unpaid' AND b.due_at < NOW() WHERE p.status = 'active' GROUP BY p.id, ... HAVING current_balance < estimated_next_bill ORDER BY shortage DESC; ``` ### 第 2 步:分级处置 **🔴 紧急(已欠款)**: - 短信 / 微信 / 电话联系业户 - 告知"您欠 X 月物业费 ¥800,请立即处理(充值预存款 / 现金 / 微信付)" - 业户回应 → 处理(走 [[deposit-additional-topup]] 或其他渠道收款) - 业户不回应 → 走逾期催收流程(本文不展开) **🟡 警告(还没欠)**: - 微信 / App 推送"友好提醒" - "您的预存款余额 ¥X,下月账单约 ¥Y,建议提前充值" - 不强制 **🟢 关注**: - 月度汇总报告(给业户的"预存款健康度月报") - 不打扰 ### 第 3 步:出周报 ```markdown # 2026 年 5 月 第 4 周 预存款健康度周报 ## 低余额业户清单(共 45 户) - 🔴 紧急(已欠款):12 户,合计欠款 ¥9,860 - 🟡 警告:24 户 - 🟢 关注:9 户 ## 已处置 - 紧急 12 户:已联系 - 5 户已充值 / 付清 - 4 户承诺本周内处理 - 3 户失联(进入催收) - 警告 24 户:已推送提醒 ## 趋势 - 比上周(38 户低余额)增加 7 户 → 趋势变差 - 可能原因:5 月账单出账,部分业户余额不够付 ## 建议 - 加强自动抵扣 job 落地的紧迫性(目前业户充值后还得业务人员手动抵) - 主动给余额接近 0 的业户 push 充值提醒(改 widget 配置) ``` ## 业户视角 ### 您可能收到的通知 #### 🟡 警告(友好提醒) > 张阿姨您好,您的预存款余额 ¥200,下月物业费约 ¥800,**预计余额不够付**。建议提前充值,避免账单逾期产生提醒费用。 业户可选择: - 立即充值 - 现金 / 微信付下月账单 - 不管(后果自负) #### 🔴 紧急(欠款提醒) > 张阿姨您好,您 5 月物业费 ¥800 **已逾期 3 天**未付。请尽快通过以下方式付清: > 1. 微信小程序"我的预存款"充值后系统自动抵 > 2. 到前台现金 / POS 付 > 3. 微信扫码付 ## 系统流程 ```mermaid flowchart TD A[每周/月触发扫描] --> B[SQL 查低余额账户 + 未付账单] B --> C{分级} C -->|🔴 紧急已欠| D[强提醒 + 业务人员介入催收] C -->|🟡 警告未欠| E[友好推送提醒] C -->|🟢 关注| F[月度汇总报告] D --> G{业户响应?} G -->|充值| H[走 deposit-additional-topup] G -->|其他渠道付| I[正常收款流程] G -->|无响应| J[逾期催收流程
本文外] E --> K{业户行动?} K -->|充值| H K -->|不充| L[转入🔴紧急] H --> M[业务人员手动 ConsumeAction 抵账单] Note over M: 月初自动 job 落地后此步自动 ``` ## 关联工具 - **`DepositPrepaidDashboard`**:后台 Dashboard 页面,统一展示押金 + 预存款的健康指标 - **`LowBalancePrepaidListWidget`**:本场景核心 Widget,实时列出低余额账户 - **`MonthlyPrepaidFlowChart`**:展示预存款流入 / 流出趋势(充值 vs 消费 vs 退款),业务总监层面看 - **`DepositPrepaidStatsOverviewWidget`**:总览数字(总账户数、总余额、本月流水量) ## 常见问题 > [!question] "下月预计账单" 怎么算? > 不在系统内的硬规则,看 Widget 实现: > > - 取业户近 3 个月平均月账单 > - 或取上月账单 > - 或固定基数(物业费固定 ¥800) > > 实际取哪种,看 `LowBalancePrepaidListWidget` 内置逻辑。可调整。 > [!question] 业户被提醒"低余额"但其实人家就喜欢月月手动付,不想预存,怎么办? > 这种业户应**关账户**(走 [[close-resident-moveout|主动关账]]),避免后续骚扰。或者 Widget 上加"忽略"按钮,业户的"预存款关账"决策可以让业务人员跟进。 > [!question] 低余额预警有没有自动化(短信)? > 看产品决策。**强烈推荐**: > > - 🟢 关注:不推送(避免骚扰) > - 🟡 警告:每月 1 次推送(可控) > - 🔴 紧急:立即推送(必要) > > 实施需要短信 / 微信模板消息接入。 > [!question] 月初批量自动抵扣 job 落地后,本场景作用还大吗? > **仍重要**。job 跑完后,跳过的余额不足业户**仍需要业务人员介入**: > > - 通知充值 > - 跟踪是否充值 > - 充值后 / 业户其他渠道付后,手动 ConsumeAction 补抵 > > 详见 [[consume-batch-auto-monthly]] "业务人员视角 - 异常介入" 段。 > [!question] 多社区的业户低余额清单怎么展示? > Widget 按当前 panel 的 community 过滤(若是社区级 Filament Panel)。或者展示"按社区分组"。如果业务人员管多个社区,可在 Dashboard 选社区切换。 ## 与 deposit 长期未关账户排查的对比 | 维度 | deposit audit-long-pending-accounts | prepaid 本场景 | |---|---|---| | 关注什么 | 长期 Active 未关账户(>2 年)| 低余额账户(下月可能欠)| | 业务侧重 | 清理代管资金边界 | 预防业户欠费 | | 频率 | 季度 / 半年 | 每周 / 每月 | | 处置 | 关账 / retain / 联系业户 | 通知充值 / 催收 | 两者**都是审计扫描场景**,但关注点和频率不同。 ## 异常分支 - 业户充值后忘了抵 → 业务人员手动 ConsumeAction - 业户长期不响应低余额预警 → 进入逾期催收流程(本文外) - 业户决定不再用预存款 → [[close-with-zero-balance-decision]] / [[close-resident-moveout]] ## 相关文档 - [[consume-batch-auto-monthly]] - [[auto-deduction-design]] - [[deposit-additional-topup]] - [[close-resident-moveout]] - [[../deposit/audit-long-pending-accounts]](deposit 对应审计场景对比)