# Backend 真实表清单与数据字典映射 ## 1. 文档目的 本文档用于在 `docs/guides/BACKEND_CURRENT_STATUS.md` 的模块级分析基础上,进一步补充: 1. `backend/` 中已扫描到的真实业务表名清单。 2. 这些表与 `docs/design/04_Appendix/Archive/05_Data_Dictionary/营收数据字典.md` 的映射关系。 3. 当前后端已实现领域、弱映射领域与明显缺口。 > 说明:本次范围聚焦三个与福建水务营收最相关的模块: > > - `backend/sw-business/sw-business-server` > - `backend/sw-business-bank/sw-business-bank-server` > - `backend/sw-module-iot/sw-module-iot-biz` > > 因此,`sw-module-system`、`sw-module-infra`、`sw-module-pay` 等模块中的系统表、基础设施表、支付表不在本文主清单内。 ## 2. 扫描口径 本轮真实表识别主要依据以下证据: - Java DO 上的 `@TableName` - Mapper XML / Mapper Java 中直接出现的表名 - 少量作业类、SQL 片段中的直接表名引用 当前结论属于“**代码中已命中的真实表**”,可信度高于仅根据需求文档或模块名推断的表。 ## 3. 模块级真实表概览 | 模块 | 已确认表数量 | 说明 | | --- | ---: | --- | | `sw-business-server` | 69 | 水务营收主业务表 | | `sw-business-bank-server` | 13 | 银行代收/代扣/对账表 | | `sw-module-iot-biz` | 14 | IoT 设备/产品/规则/插件表 | | **合计** | **96** | 当前三大核心模块已确认真实表 | ## 4. 真实表清单 ## 4.1 `sw-business-server` ### 4.1.1 客户与账户类 - `biz_cust` - `biz_cust_group` - `biz_cust_contact` - `biz_cust_meter` - `biz_cust_invoice` - `biz_cust_bill_type` - `biz_cust_app_binds` - `biz_cust_collection_rel` - `biz_cust_withholding_rel` - `biz_cust_water_use_scheme` - `biz_cust_water_scheme_rel` - `biz_cust_no_rule` - `biz_cust_hub_marks` - `biz_account` - `biz_company_account` - `biz_dept_account_rel` - `biz_dept_cust_no_rule_rel` - `biz_community` ### 4.1.2 水表、册本、抄表类 - `biz_meter` - `biz_meter_model` - `biz_meter_caliber` - `biz_meter_range` - `biz_meter_maker` - `biz_meter_book` - `biz_meter_read` - `biz_reading_data` - `biz_last_reading` - `biz_reading_logs` - `biz_meter_log` - `biz_meter_in_out` - `biz_meter_in_out_rel` ### 4.1.3 价格、用水方案、费用组成类 - `biz_price_category` - `biz_price_template` - `biz_price_adjustment_snap` - `biz_price_cost_adjustment` - `biz_price_tier_adjustment` - `biz_price_discount_scheme` - `biz_price_discount_tier` - `biz_price_discount_cost` - `biz_cost_component` - `biz_water_use_scheme` - `biz_water_use_scheme_tier` - `biz_exceed_water_use_scheme` - `biz_template_dept_rel` ### 4.1.4 收费、托收、代扣、开票类 - `biz_charge` - `biz_charge_detail` - `biz_invoice` - `biz_invoice_taxrate` - `biz_collection` - `biz_withholding` ### 4.1.5 业务办理、流程、资料类 - `biz_process` - `biz_process_transfer` - `biz_process_cust_contact` - `biz_process_meter_install` - `biz_process_invoice_modifys` - `biz_business_types` - `biz_business_datas` - `biz_content` - `biz_content_attach` ### 4.1.6 银行、网点、参数、页面、日志类 - `biz_bank` - `biz_bank_branch` - `biz_parameter_settings` - `biz_page_settings` - `biz_page_settings_detail` - `biz_extend_propertys` - `biz_operat_log` - `biz_operat_log_detail` - `biz_outlets` - `sys_wechat_app_settings` ## 4.2 `sw-business-bank-server` ### 4.2.1 银行渠道与路由类 - `bk_payment_channel` - `bk_channel_api_config` - `bk_channel_route_rule` - `bk_channel_statistics` ### 4.2.2 交易与回调类 - `bk_transaction` - `bk_transaction_callback` - `bk_transaction_exception` ### 4.2.3 托收/代扣批次类 - `bk_withholding_agreement` - `bk_withholding_batch` - `bk_withholding_item` - `bk_settlement_batch` ### 4.2.4 对账类 - `bk_reconcile_batch` - `bk_reconcile_diff` ## 4.3 `sw-module-iot-biz` ### 4.3.1 产品与设备类 - `iot_product` - `iot_product_category` - `iot_device` - `iot_device_group` - `iot_thing_model` ### 4.3.2 规则、告警、桥接类 - `iot_rule_scene` - `iot_alert_config` - `iot_alert_record` - `iot_data_bridge` ### 4.3.3 插件与实例类 - `iot_plugin_config` - `iot_plugin_instance` ### 4.3.4 OTA 类 - `iot_ota_firmware` - `iot_ota_upgrade_task` - `iot_ota_upgrade_record` ## 5. 与数据字典的领域映射 ## 5.1 客户信息域 数据字典中的典型对象包括:客户资料、联系人、客户组、客户应用绑定、托收资料、代扣资料、集收号、主副卡、客户关系、水表信息、开票信息等。 ### 后端已明确对应的表 - `biz_cust` → 客户资料 - `biz_cust_contact` → 联系人 / 主联系人类信息 - `biz_cust_group` → 客户组表 - `biz_cust_app_binds` → 客户应用绑定关联表 - `biz_cust_collection_rel` → 客户托收中间表 / 集收关系类 - `biz_cust_withholding_rel` → 客户代扣中间表 - `biz_cust_invoice` → 开票信息 / 客户开票信息 - `biz_cust_meter` → 客户与水表关系 - `biz_account`、`biz_company_account`、`biz_dept_account_rel` → 账户信息 / 水司账户站点关系 - `biz_bank`、`biz_bank_branch` → 银行表 / 银行分行表 ### 判断 - 客户主数据、联系人、分组、绑定、托收/代扣关系已经有较明确落表。 - 但数据字典里较细的“主副卡”“客户关系表”“集收号与客户关系表”等,当前后端未看到完全同名的一组独立表,可能被关系表折叠实现,也可能尚未完整下钻到其他模块。 ## 5.2 抄表信息域 数据字典中的典型对象包括:册本表、抄表数据、上次抄表、抄表日志、抄表任务、远传表日志、抄表轨迹等。 ### 后端已明确对应的表 - `biz_meter_book` → 册本表 - `biz_reading_data` → 抄表数据 - `biz_last_reading` → 上次抄表表 - `biz_reading_logs` → 抄表日志表 - `biz_meter_read` → 抄表状态 / 抄表任务状态类 - `biz_meter_log` → 表务/抄表相关日志 - `biz_meter`、`biz_meter_model`、`biz_meter_caliber`、`biz_meter_range`、`biz_meter_maker` → 水表主档及型号口径量程厂家基础表 ### 判断 - 抄表基础域在后端中是存在的,而且表结构比当前《sql/lhc_数据库设计.md` 已设计部分更完整。 - 但数据字典中的“稽查任务表”“抄表设备下载同步记录表”“抄表轨迹”“远传表日志表”等,本轮未在这三个模块内看到明显同名实体表。 ## 5.3 账务信息域 数据字典中的典型对象包括:营业账、营业账明细、跨周期水量、特账、特账明细、阶梯累计量、退款账。 ### 后端已明确对应的表 - `biz_charge` → 营业账 / 账单主表的最可能对应 - `biz_charge_detail` → 营业账明细的最可能对应 - `biz_price_tier_adjustment`、`biz_water_use_scheme_tier` → 阶梯与分段规则相关 - `biz_exceed_water_use_scheme` → 超计划用水 / 特殊计费规则相关 ### 弱映射或当前缺口 以下数据字典对象,本轮未看到明显一一对应的独立表: - 跨周期水量 - 特账 - 特账明细 - 退款账 - 阶梯累计量 ### 判断 - 后端已经有收费主表与明细表,但“账务信息域”中的部分精细账务对象,当前没有在 `sw-business-server` 中直接呈现为独立实体表。 - 这些能力可能尚未实现、可能被合并入 `biz_charge` / `biz_charge_detail`,也可能在未纳入本轮范围的模块中。 ## 5.4 收费、账务处理域 数据字典中的典型对象包括:收费汇总、收费小计、收费明细、托收账单明细、托收送盘总表、代扣账单明细、代扣送盘总表、预存退款、催缴、红冲、价差调整、分账调整、实时收费日志等。 ### 后端已明确对应的表 - `biz_charge`、`biz_charge_detail` → 收费 / 账单主明细 - `biz_collection` → 托收/代收主表 - `biz_withholding` → 代扣/托收主表 - `bk_withholding_agreement` → 代扣签约 - `bk_withholding_batch`、`bk_withholding_item` → 代扣送盘/批次/明细 - `bk_transaction`、`bk_transaction_callback`、`bk_transaction_exception` → 渠道交易、回调、异常 - `bk_reconcile_batch`、`bk_reconcile_diff` → 对账批次与差异 - `bk_settlement_batch` → 结算批次 ### 明显缺口 当前未看到明显独立实体表的对象包括: - 预存退款 / 预存退款详情 - 预存催缴 - 催缴登记汇总 / 催缴停水汇总 / 催缴停水详情 - 收费汇总 / 收费小计 / 实时收费汇总 / 实时收费日志 - 红冲表 - 价差调整汇总 / 明细 - 分账调整汇总 / 明细 - 已销调整汇总 / 明细 - 呆坏账汇总 / 明细 - IC 卡充退账、IC 卡结余、IC 卡操作日志 ### 判断 - 后端在“收费交易 + 银行代收/代扣 + 对账”这条主线已经具备较强基础。 - 但数据字典中大量细粒度账务处理台账,目前在代码中尚未体现为完整的独立表族。 ## 5.5 发票信息域 数据字典中的典型对象包括:营业账开票表、发票明细表、发票信息表、开票配置表。 ### 后端已明确对应的表 - `biz_invoice` → 发票信息表 - `biz_cust_invoice` → 客户开票信息 - `biz_invoice_taxrate` → 发票税率表 - `biz_process_invoice_modifys` → 发票修改记录 / 发票变更流程类 ### 明显缺口 - 发票明细表 - 营业账开票表 - 开票配置表 ### 判断 - 后端已具备发票主数据与税率基础,但尚未看到完整的发票明细、开票批次、开票配置等整套发票表族。 - 这部分能力也可能部分分布在 `sw-module-pay`、`sw-module-infra` 或其他模块中。 ## 5.6 业务办理 / 工单域 数据字典中的典型对象包括:欠费停水、停用启用、低保、更名、过户、自助抄表、客户工单记录、换表记录、稽查工单、PDA 派单等。 ### 后端已明确对应的表 - `biz_process` → 业务办理流程主表 - `biz_process_transfer` → 流程流转/转办 - `biz_process_cust_contact` → 流程中的客户联系人信息 - `biz_process_meter_install` → 流程中的装表/安装信息 - `biz_business_types` → 业务类型 - `biz_business_datas` → 业务办理扩展数据 - `biz_content`、`biz_content_attach` → 上报/资料/附件类 ### 判断 - 后端已经存在统一流程化的业务办理模型。 - 但数据字典中按业务种类拆开的“更名”“过户”“低保”“停复水”“换表”等,并未在本轮扫描中体现为大量独立业务表,更像是由统一流程表 + 业务数据表承载。 ## 5.7 系统参数与基础配置域 数据字典中的典型对象包括:小区管理、银行管理、价格站点关系、系统菜单、导出任务、编号生成、系统参数、页面基础配置、优惠方案、词语字典等。 ### 后端已明确对应的表 - `biz_community` → 小区管理表 - `biz_bank`、`biz_bank_branch` → 银行表 / 银行分行表 - `biz_parameter_settings` → 系统参数 / 业务参数配置 - `biz_page_settings`、`biz_page_settings_detail` → 页面基础配置表 - `biz_extend_propertys` → 拓展信息表 - `biz_price_category`、`biz_price_template`、`biz_template_dept_rel` → 价格分类、价格模板、站点关系类 - `biz_price_discount_scheme`、`biz_price_discount_tier`、`biz_price_discount_cost` → 优惠方案相关 - `sys_wechat_app_settings` → 微信基础配置类 ### 说明 - `system_menu`、`system_dict_*`、`system_user`、`system_role` 等系统底座表大概率在 `sw-module-system`,不在本文扫描范围内。 - 因此,不能据此认定这些系统表在整个后端仓库中缺失,只能说明它们**不在本轮三大业务模块中**。 ## 5.8 银行代收 / 代扣域 这是当前后端与历史数据字典相比,落地程度较高的一块。 ### 后端已明确对应的表 - `biz_collection` - `biz_withholding` - `biz_cust_collection_rel` - `biz_cust_withholding_rel` - `bk_withholding_agreement` - `bk_withholding_batch` - `bk_withholding_item` - `bk_payment_channel` - `bk_channel_api_config` - `bk_channel_route_rule` - `bk_channel_statistics` - `bk_transaction` - `bk_transaction_callback` - `bk_transaction_exception` - `bk_reconcile_batch` - `bk_reconcile_diff` - `bk_settlement_batch` ### 判断 - 相比旧数据字典中的“托收资料、代扣资料、送盘/回盘、对账”描述,当前后端已形成更现代化的渠道、路由、交易、回调、异常、对账、结算模型。 - 这说明银行代收相关能力在当前后端中不是停留在概念层,而是已经具备较明确的工程化落地结构。 ## 5.9 IoT / 远传表域 ### 后端已明确对应的表 - `iot_product` - `iot_product_category` - `iot_device` - `iot_device_group` - `iot_thing_model` - `iot_rule_scene` - `iot_alert_config` - `iot_alert_record` - `iot_data_bridge` - `iot_plugin_config` - `iot_plugin_instance` - `iot_ota_firmware` - `iot_ota_upgrade_task` - `iot_ota_upgrade_record` ### 判断 - 历史《营收数据字典》几乎没有覆盖现代 IoT 平台的产品、设备、物模型、规则场景、插件实例、OTA 升级等对象。 - 因此,IoT 这部分更多体现为:**当前后端新增了旧字典之外的一整块能力域**。 ## 6. 当前结论 ## 6.1 已可明确确认 1. 当前后端在水务核心业务模块中,已经落下了较完整的客户、抄表、水价、收费、托收/代扣、流程办理、基础参数等表结构。 2. 银行代收模块成熟度较高,已形成渠道、交易、批次、回调、异常、对账、结算的完整表族。 3. IoT 模块明显超出旧版营收数据字典覆盖范围,属于后端新增建设能力。 4. 当前代码中的真实表数量,明显多于 `sql/lhc_数据库设计.md` 已明确展开设计的表数量。 ## 6.2 明显缺口或待继续核实项 1. 旧数据字典中的大量细粒度收费处理台账,当前尚未在代码中发现明确独立实体表: - 红冲 - 催缴 - 呆坏账 - 已销调整 - 分账调整 - 价差调整 - 实时收费日志 - 预存退款 - IC 卡相关账务 2. 发票域当前只看到主表与辅助表,尚未看到完整的发票明细、开票配置、营业账开票关系表族。 3. 业务办理域更像“统一流程模型”,而不是旧系统那种“每类业务一张独立业务表”的模式。 4. 系统管理类表未纳入本轮扫描范围,后续如需完整数据库映射,还应继续补扫: - `sw-module-system` - `sw-module-infra` - `sw-module-pay` - `sw-module-bpm` ## 7. 对当前文档工作的直接价值 本文可直接支撑后续三项工作: 1. 反向修订 `sql/lhc_数据库设计.md`,识别“文档未设计但后端已存在”的真实表。 2. 识别历史《营收数据字典》中的“旧域对象”在当前后端里是: - 已有真实表 - 被合并重构 - 尚未实现 3. 为后续接口清单、模块功能点、详细设计章节提供“代码落地证据”。 ## 8. 相关文档 - 后端现状总览:`docs/guides/BACKEND_CURRENT_STATUS.md` - 历史数据字典:`docs/design/04_Appendix/Archive/05_Data_Dictionary/营收数据字典.md` - 当前数据库设计稿:`sql/lhc_数据库设计.md`