fujian_water_biz_doc/02_Detailed/01_Detailed_Design.md

52 KiB
Raw Blame History

福建水务营收系统详细设计说明书

文件状态: 文档密级: 公开
【】草稿
【√】修改稿
【】正式发布
当前版本: V1.6
作者: 唐伟杰
完成日期: 2026-03-10

版本历史

日期 版本号 作者 备注
2025-07-01 V1.0 唐伟杰 初版
2025-07-17 V1.1 唐伟杰 补充详细设计内容
2025-08-01 V1.2 唐伟杰 同步更新概要设计中的子系统和模块结构,补充数据库设计章节并统一主要模块逻辑。
2025-08-01 V1.3 唐伟杰 数据库系统口径统一为达梦数据库 8.0+。
2025-08-01 V1.4 唐伟杰 单点登录采用 OAuth2.0 协议,补充统一认证相关设计。
2026-03-10 V1.6 唐伟杰 将分散的模块设计、数据库设计、接口设计、安全设计、部署设计与报装电子签章设计整合为统一主详设,统一系统名称、章节体系、模块/接口编号及数据库口径,清理重复内容与部署脏片段。

目录

前言

编写目的

本文档用于指导福建水务营收系统的详细设计、开发实现、联调测试、部署上线及后续运维,是本项目详细设计阶段的统一主说明书。本文档以 02_Detailed/01_Detailed_Design.md 作为唯一主详设文件,吸收模块设计、数据库设计、接口设计、安全设计、部署设计以及报装电子签章专项设计中的可复用内容,形成可直接交付和实施使用的统一版本。

建设背景

福建水务营收系统面向集团化、多组织、多渠道的营收业务场景,覆盖客户资料、抄表开账、营业收费、账务处理、表务管理、报装立户、电子签章、客户服务、移动作业、外部支付与政务对接等核心业务。系统建设目标是形成统一平台、统一数据、统一接口、统一安全管控的营收业务支撑体系,满足集团及下属单位的标准化与可扩展管理要求。

设计范围

本文档覆盖以下设计内容:

  1. 系统总体架构与部署架构设计。
  2. 统一平台、营收业务、表务、报装与签章、客户服务渠道等业务模块详细设计。
  3. 达梦数据库 8.0+ 口径下的核心数据模型、核心表结构、索引与性能设计。
  4. 内部接口、外部接口、安全控制、部署与运维方案。
  5. 关键业务流程、模块关系、接口交互与审计留痕要求。

术语与缩略语

术语/缩略语 说明
SSO 单点登录
OAuth2.0 统一认证授权协议
RBAC 基于角色的访问控制模型
DM8 达梦数据库 8.0+
API 应用程序接口
CA 电子认证与电子签章能力
MFA 多因素认证
ETL 数据抽取、转换、加载

参考资料

  1. 《福建水务营收系统概要设计相关文档》
  2. 02_Detailed/02_Module_Design.md
  3. 02_Detailed/03_CA_Installation_Design.md
  4. 03_Technical/01_Database_Design.md
  5. 03_Technical/02_Table_Specs.md
  6. 03_Technical/03_Interface_Design.md
  7. 03_Technical/04_Security_Design.md
  8. 03_Technical/05_Deployment_Design.md
  9. 福建水投相关业务操作手册及需求说明资料

系统总体设计

总体目标

福建水务营收系统总体设计遵循“统一平台、业务协同、数据集中、接口标准、安全可控”的原则,实现以下目标:

  • 建立统一认证、统一组织、统一权限、统一参数、统一审计基础能力。
  • 构建覆盖营收、表务、报装、客户服务的完整业务闭环。
  • 形成达梦数据库 8.0+ 为核心的数据架构,支撑集团化数据管理与查询分析。
  • 通过标准化接口接入银行、第三方支付、短信、税控、物联网、政务、CA 签章等外部系统。
  • 满足生产部署、容灾备份、日志审计与安全监管要求。

逻辑架构设计

graph TB
    U1[柜台/客服/管理人员] --> A1[PC管理端]
    U2[抄表员/表务人员] --> A2[移动作业端]
    U3[客户用户] --> A3[微信/支付宝/微服务窗]
    U4[第三方系统] --> A4[外部系统接口]

    subgraph G[接入与网关层]
        G1[统一门户]
        G2[API网关]
        G3[统一认证中心]
    end

    subgraph B[业务服务层]
        B1[统一平台服务]
        B2[营收业务服务]
        B3[表务管理服务]
        B4[报装与签章服务]
        B5[客户服务渠道服务]
        B6[消息通知与任务调度]
    end

    subgraph D[数据与支撑层]
        D1[(达梦数据库 8.0+)]
        D2[(Redis缓存)]
        D3[对象存储/文件服务]
        D4[消息队列]
        D5[日志审计与监控]
    end

    A1 --> G1
    A2 --> G1
    A3 --> G1
    A4 --> G2
    G1 --> G2 --> G3
    G2 --> B1
    G2 --> B2
    G2 --> B3
    G2 --> B4
    G2 --> B5
    B1 --> D1
    B2 --> D1
    B3 --> D1
    B4 --> D1
    B5 --> D1
    B2 --> D2
    B3 --> D2
    B4 --> D3
    B5 --> D4
    B1 --> D5
    B2 --> D5
    B3 --> D5
    B4 --> D5
    B5 --> D5

设计说明

  1. 统一平台服务提供认证、组织、权限、参数、审计等公共能力。
  2. 营收业务服务承担客户、抄表、开账、收费、账务、发票、催缴、统计与业务工单等核心处理。
  3. 表务管理服务承担设备档案、表务工单、仓储、物联网集抄对接等处理。
  4. 报装与签章服务承担申请受理、现场踏勘、施工验收、合同签署与资料归档。
  5. 客户服务渠道服务面向微信、支付宝、微服务窗等客户侧渠道提供查询、缴费、电子发票与业务办理。

部署分区设计

graph TB
    INTERNET[互联网/政务外网/合作机构] --> DMZ[DMZ接入区]
    DMZ --> APP[应用服务区]
    APP --> DATA[数据服务区]
    APP --> OPS[管理运维区]

    subgraph DMZ[DMZ接入区]
        LB[负载均衡/Nginx]
        WAF[WAF与边界防护]
        GW[API网关]
    end

    subgraph APP[应用服务区]
        APP1[统一平台服务]
        APP2[营收业务服务]
        APP3[表务服务]
        APP4[报装签章服务]
        APP5[客户渠道服务]
    end

    subgraph DATA[数据服务区]
        DBM[(达梦主库)]
        DBS[(达梦备库/从库)]
        REDIS[(Redis)]
        FILE[文件存储]
    end

    subgraph OPS[管理运维区]
        MON[监控平台]
        LOG[日志平台]
        BAK[备份服务]
        JUMP[堡垒机/跳板机]
    end

子系统与模块划分

子系统 说明 核心模块
统一平台 提供统一认证、组织、权限、参数、审计与监控基础能力 UP-001 ~ UP-004
营收业务 覆盖客户、抄表、收费、账务、发票、催缴、统计、代收与业务工单 REV-001 ~ REV-009
表务管理 覆盖水表档案、表务工单、仓储、生命周期与物联网接入 METER-001 ~ METER-004
报装与签章 覆盖受理、踏勘、施工、签约、电子签章、归档 INST-001 ~ INST-005
客户服务模块 覆盖账户绑定、信息查询、在线缴费、电子发票、网点服务、业务办理与柜面扫码支付 CS-001 ~ CS-007

统一平台详细设计

UP-001 统一认证与单点登录

功能说明

UP-001 为全系统提供统一身份认证与单点登录能力,支撑 PC 管理端、移动作业端、客户渠道及外部集成应用的统一接入。

关键设计

  1. 支持用户名密码登录、短信验证码登录、第三方授权登录。
  2. 采用 OAuth2.0 + JWT 实现访问令牌签发与会话管理。
  3. 对外部系统开放标准认证接口,支持令牌续期与退出失效。
  4. 对高敏感操作支持 MFA 二次校验。

业务流程

sequenceDiagram
    participant 用户
    participant 接入端
    participant 认证中心
    participant 用户中心

    用户->>接入端: 提交登录信息
    接入端->>认证中心: 发起认证请求
    认证中心->>用户中心: 校验用户/角色/状态
    用户中心-->>认证中心: 返回校验结果
    认证中心-->>接入端: 返回Token/权限上下文
    接入端-->>用户: 登录成功并进入目标系统

核心数据

  • system_users:用户基本信息。
  • system_oauth2_client:客户端信息。
  • system_oauth2_access_token:访问令牌。
  • system_oauth2_refresh_token:刷新令牌。
  • system_login_log:登录审计日志。

UP-002 组织用户与权限管理

功能说明

UP-002 管理组织机构、岗位、角色、菜单、数据权限和用户授权关系,是业务系统权限控制与数据隔离的基础。

关键设计

  1. 支持集团—区域公司—营业所三级及以上组织结构。
  2. 基于 RBAC 实现菜单权限、按钮权限、数据权限。
  3. 支持多租户/多单位数据隔离与用户归属控制。
  4. 敏感操作如账务调整、退款、作废、签章回退必须经过权限校验。

主要规则

  • 角色权限与组织权限叠加生效。
  • 业务数据默认按所属单位、片区、岗位范围过滤。
  • 超权限查询、批量导出、敏感字段查看需单独授权。

UP-003 参数字典与基础配置

功能说明

UP-003 用于统一维护业务参数、地址参数、水价规则、短信模板、打印模板、字典数据与定时任务参数。

关键设计

配置类别 典型内容 用途
业务字典 客户类型、抄表方式、工单状态 统一编码与展示
地址参数 行政区划、片区、册本归属 客户与表务归属管理
价格体系 用水性质、阶梯水价、污水费规则 开账与账务计算
渠道参数 支付渠道、短信模板、税控配置 外部接口集成
任务参数 自动开账、对账、备份周期 运维调度

UP-004 审计监控与运维支撑

功能说明

UP-004 提供操作日志、登录日志、接口日志、异常监控、在线用户、任务监控、性能监控等能力。

关键设计

  1. 所有核心业务操作写入统一审计日志。
  2. 接口调用成功率、响应时长、异常码进入监控平台。
  3. 定时任务执行结果、失败重试与人工补偿过程可追踪。
  4. 监控与告警支持短信、邮件、站内信等通知方式。

营收业务详细设计

REV-001 客户资料管理

功能说明

负责客户主档、账户主档、联系人、客户分组、客户与水表关系、客户开票信息、客户渠道绑定及托收/代扣关系维护,是抄表、收费、发票、代扣等后续业务的主数据基础。

关键设计

  1. 客户建档覆盖立户、变更、更名、过户、销户、报停等全生命周期处理。
  2. 客户资料支持按客户类型、用水性质、片区、集团客户、重点客户等维度管理。
  3. 客户与水表、开票主体、托收/代扣签约关系按关联表维护,避免在主表中堆叠多类属性。
  4. 客户编号、集收标记、计划用水方案等规则类数据由统一配置与客户关系表共同支撑。

核心数据

  • biz_cust:客户主档。
  • biz_account:客户账户与账户状态。
  • biz_cust_contact:联系人及联系方式。
  • biz_cust_group:客户分组。
  • biz_cust_meter:客户与水表绑定关系。
  • biz_cust_invoice:客户开票信息。
  • biz_cust_app_binds:渠道绑定关系。
  • biz_cust_collection_rel:客户托收关系。
  • biz_cust_withholding_rel:客户代扣关系。
  • biz_cust_water_use_schemebiz_cust_water_scheme_rel:客户计划用水方案关系。
  • biz_cust_no_rule:客户编号规则。
  • biz_cust_hub_marks:集收号/集收标记关系。

落地边界

  • 已落地:客户主档、账户、联系人、分组、绑定、开票、托收/代扣关系。
  • 部分落地:客户扩展关系、集收与规则类对象已见明确关系表,但具体业务场景仍需结合流程进一步细化。
  • 文档先行:主副卡、部分复杂客户关系对象在当前 backend 中未见完全独立表族,文档中仅保留业务对象表述。

REV-002 抄表开账

功能说明

负责抄表计划、册本管理、抄表录入、抄表状态跟踪、异常复核、计费计算与账单生成,是营收核心处理链路的起点。

业务流程

flowchart TD
    A[制定抄表计划] --> B[生成抄表册本]
    B --> C[分配抄表任务]
    C --> D[人工/远传/自报抄表]
    D --> E[数据校验]
    E --> F{是否异常}
    F -->|是| G[异常复核处理]
    F -->|否| H[生成开账数据]
    G --> H
    H --> I[按价格模板与费用组成计费]
    I --> J[生成营业账与明细]
    J --> K[账单审核确认]
    K --> L[进入收费/催缴/开票]

关键规则

  1. 抄表数据同时校验本次读数、上次读数、用量波动和抄表状态。
  2. 异常抄表支持估抄、补抄、重录、人工复核。
  3. 开账按价格归属、价格模板、费用组成、阶梯规则、计划用水方案综合计算。
  4. 审核通过后的营业账方可进入收费、催缴和发票流程。
  5. 远传抄表数据可由 SYS-006 / IoT 能力提供采集支撑,但账单生成仍归属 SYS-002。

核心数据

  • biz_meter_book:册本与抄表计划。
  • biz_meter_read:抄表任务状态/执行状态。
  • biz_reading_data:抄表数据。
  • biz_last_reading:上次抄表结果。
  • biz_reading_logs:抄表日志与过程留痕。
  • biz_meter:计量水表主档引用。
  • biz_charge:营业账主表。
  • biz_charge_detail:营业账明细。
  • biz_price_category:价格归属。
  • biz_price_template:价格模板。
  • biz_price_adjustment_snap:调价快照。
  • biz_price_tier_adjustment:阶梯规则。
  • biz_cost_component:费用组成。
  • biz_water_use_schemebiz_water_use_scheme_tier:计划用水方案与阶梯。

落地边界

  • 已落地:册本、抄表数据、上次抄表、抄表日志、营业账主明细、价格模板与阶梯规则。
  • 部分落地:部分异常场景对象可能仍通过状态字段和日志表承载,而非全部拆成独立业务表。
  • 文档先行:个别精细稽查、轨迹、下载同步对象当前未在本轮映射中确认为独立表。

REV-003 营业收费

功能说明

支持柜台收费、预存款/余额抵扣、线上缴费回写、柜面扫码、营业网点收费及收费凭证管理,统一承接营收账单的核销处理。

业务流程

flowchart TD
    A[查询客户及待缴账单] --> B[选择账单与核销方式]
    B --> C[选择支付渠道]
    C --> D{支付方式}
    D -->|柜台现金/POS/扫码| E[现场收费]
    D -->|微信/支付宝/聚合支付| F[渠道下单]
    D -->|预存款/余额抵扣| G[账户余额核销]
    E --> H[更新营业账状态]
    F --> I[等待异步回调确认]
    G --> H
    I --> H
    H --> J[生成收费记录与凭证]
    J --> K[进入发票/对账流程]

关键规则

  1. 一次缴费可对应多个账单或账单明细的组合核销。
  2. 收费记录必须保留渠道、流水号、网点、操作员、终端信息。
  3. 线上支付必须以回调或查询确认结果为准,不得以发起状态直接记账。
  4. 支付能力由 SYS-009 提供SYS-002 负责账单核销与业务状态回写。

核心数据

  • biz_chargebiz_charge_detail:待缴与已缴账单主明细。
  • biz_collection:托收/代收主表。
  • biz_withholding:代扣/托收主表。
  • bk_transaction:渠道交易流水。
  • bk_transaction_callback:支付回调记录。
  • bk_transaction_exception:支付异常记录。

落地边界

  • 已落地:营业账主明细、交易流水、回调、异常、托收/代扣主对象。
  • 部分落地:柜台班结、部分收费汇总类对象可能通过业务流程与报表实现,不一定存在独立表。
  • 文档先行:部分红冲、实时收费汇总类台账暂不表述为已确认独立实体表。

REV-004 账务处理

功能说明

承担水量调整、金额调整、违约金减免、退款、冲正、呆坏账申请等账务修正与审批处理能力,保证收费后账务结果可追溯、可审计。

关键设计

  1. 调整类操作以营业账主明细为基础,并通过日志与审批留痕记录前后变化。
  2. 水量调整、金额调整、优惠调整等场景可引用价格模板、阶梯与优惠对象重新计算。
  3. 退款、冲正等交易修正需与原支付流水及渠道状态联动校验。
  4. 对于当前未见明确独立实体表的特账、跨周期水量、退款账等对象,文档以“业务处理场景”表述,不强行落为已实现表。

核心数据

  • biz_chargebiz_charge_detail:账务调整的核心对象。
  • 价格调整/优惠相关表:用于重算账单或差额追溯。
  • biz_operat_logbiz_operat_log_detail:操作与变更留痕。

主要场景

场景 说明 控制要点
水量调整 更正异常水量 需复核原因、附件和原抄表依据
金额调整 更正账单金额 需记录依据、差异金额和审批链路
退款处理 退回客户支付资金或预存款 需校验原交易、退款余额与幂等性
错误缴费冲正 修正误收/误核销记录 需关联原交易与账单状态
呆坏账申请 对长期欠费进行分类处理 需结合账龄、客户状态与审批结果

落地边界

  • 已落地:营业账主明细、操作日志、价格/方案相关重算支撑。
  • 部分落地:精细化账务对象更多表现为流程与场景,并未在 backend 中全部体现为独立表族。
  • 文档先行:特账、退款账、跨周期水量等对象保留业务语义,不宣称为已实现独立表。

REV-005 发票与税务处理

功能说明

负责发票申请、开票校验、开票结果回写、发票查询、作废与红冲处理,作为营收业务对发票服务的业务接入层。

关键设计

  1. 发票申请以客户信息、缴费记录、账单信息、税率配置为基础。
  2. 个人与企业开票均通过客户开票信息与税率表完成合法性校验。
  3. 发票开具、作废、红冲由 SYS-008 统一承接SYS-002 负责业务上下文传递与结果落账。
  4. 电子发票可通过客户服务渠道推送或下载。

核心数据

  • biz_invoice:发票主记录。
  • biz_invoice_taxrate:税率配置。
  • biz_cust_invoice:客户开票信息。

落地边界

  • 已落地:发票主记录、税率配置、客户开票信息。
  • 部分落地:发票修改、开票过程留痕在后端中已有相关对象,但整套发票明细/批次类对象尚未全部确认。
  • 文档先行:发票明细、营业账开票关系等对象仍按设计能力描述,不表述为本轮已确认独立表。

REV-006 催缴与通知

功能说明

针对欠费账单按账龄、金额、客户类别等规则生成催缴任务,通过短信、微信、站内通知等方式触达客户,并回写催缴结果。

关键设计

  1. 催缴策略以营业账状态、欠费金额、账龄分布和客户类别为基础。
  2. 自动催缴与人工催缴可并行,支持停复水等后续处置联动。
  3. 触达能力由 SYS-010 提供SYS-002 负责生成待发送业务事件、催缴名单与结果回写。
  4. 当前后端中部分催缴汇总、停水明细对象未确认独立落表,文档中保持保守描述。

核心数据

  • biz_chargebiz_charge_detail:催缴对象来源。
  • 催缴结果与通知日志:通过业务状态与消息结果联动留痕。

落地边界

  • 已落地:以营业账为基础的欠费识别与消息协同前提数据。
  • 部分落地:催缴登记汇总、停水汇总等对象暂未在 backend 中确认独立表。
  • 文档先行:复杂催缴台账与停复水统计仅作为业务场景保留。

REV-007 统计分析

功能说明

提供营收、抄表、收费、欠费、渠道、客户、工单等多维度统计分析能力,为经营分析和业务监管提供数据支撑。

关键设计

  1. 报表统计基于客户、账单、收费、渠道、时间、片区等维度聚合。
  2. 常用统计口径包括售水量、收费金额、欠费规模、渠道占比、客户类型分布、抄表完成率等。
  3. 导出与查询结果受数据权限控制,重点报表可采用预聚合或物化结果提升查询性能。

核心数据

  • 客户维度:biz_custbiz_account
  • 抄表维度:biz_meter_bookbiz_reading_databiz_last_reading
  • 账务与收费维度:biz_chargebiz_charge_detail
  • 渠道维度:bk_transactionbk_payment_channel

落地边界

  • 已落地:主要统计源数据在客户、抄表、收费、渠道等领域均已具备。
  • 部分落地:部分分析结果更多依赖报表层实现,而非单独分析表。
  • 文档先行:预测类、专题分析类深度模型暂不写成后端已实现能力。

REV-008 代收与银行业务

功能说明

支持银行代收、银行代扣、实时收费、夜间批量扣款、对账与结算处理,是 SYS-002 面向 SYS-009 支付与银行结算能力的业务承接模块。

关键设计

  1. 渠道、路由、接口配置、签约、交易、回调、异常、对账、结算形成完整银行业务链条。
  2. 实时收费场景由渠道交易流水驱动账单核销,批量代扣场景由签约关系与批次处理驱动。
  3. 对账结果区分一致、长款、短款、失败待处理等状态,支持差异追踪与人工补偿。
  4. 国密报文、批量文件、标准 API 等技术细节由 SYS-009 承载SYS-002 保留业务规则与状态协同。

核心数据

  • bk_payment_channel:支付渠道。
  • bk_channel_api_config:渠道接口配置。
  • bk_channel_route_rule:渠道路由规则。
  • bk_withholding_agreement:代扣签约。
  • bk_withholding_batchbk_withholding_item:代扣批次与明细。
  • bk_reconcile_batchbk_reconcile_diff:对账批次与差异。
  • bk_settlement_batch:结算批次。
  • bk_transactionbk_transaction_callbackbk_transaction_exception:交易、回调、异常。
  • biz_collectionbiz_withholding:代收/代扣业务主对象。

落地边界

  • 已落地:渠道、路由、交易、回调、异常、签约、批次、对账、结算等主链路对象。
  • 部分落地:部分统计类、汇总类对象可能在渠道报表或外部结算文件层体现。
  • 文档先行:不将未明确扫描到的扩展银行台账写成已实现独立表。

REV-009 业务参数配置

功能说明

负责营收域的价格参数、客户编号规则、页面配置、打印与渠道相关业务参数配置,为客户、开账、收费、发票、催缴等模块提供统一配置支撑。

关键设计

  1. 业务参数按租户、单位、片区、业务类别分层管理。
  2. 价格体系、客户编号规则、页面字段配置、打印与通知参数统一归口维护。
  3. 配置变更应具备版本化、操作留痕与生效范围控制。

核心数据

  • biz_parameter_settings:业务参数配置。
  • biz_page_settingsbiz_page_settings_detail:页面配置。
  • biz_price_categorybiz_price_templatebiz_template_dept_rel:价格归属与模板站点关系。
  • biz_cust_no_rule:客户编号规则。

客户服务模块详细设计

CS-001 账户绑定管理

功能说明

面向微信、支付宝、微网厅等渠道实现客户账户绑定、解绑、默认账户设置、多账户切换与身份校验。

关键规则

  1. 一个渠道账户可绑定多个用水账户。
  2. 绑定、解绑、默认账户变更等敏感操作需进行身份校验。
  3. 已销户、冻结或限制服务的账户不得新增绑定。

核心数据

  • biz_cust_app_binds
  • biz_cust
  • biz_account

CS-002 信息查询服务

功能说明

提供账单查询、缴费记录查询、用水分析、欠费查询、账户流水、历史账单等服务。

关键设计

  1. 查询范围严格限制在已绑定客户与账户范围内。
  2. 账单、缴费、发票、办理进度等数据通过 SYS-002 标准接口聚合展示。
  3. 常用历史数据支持按最近周期快速查询。

核心数据

  • biz_cust
  • biz_account
  • biz_charge
  • biz_charge_detail
  • biz_invoice

CS-003 在线缴费服务

功能说明

提供微信支付、支付宝支付、银行卡支付、预存款支付等在线缴费能力。

关键规则

  1. 下单前再次校验账单未缴状态和应缴金额。
  2. 支付结果以 SYS-009 回调/查询确认为准。
  3. 对失败订单支持补单、查询与结果回写。

核心数据

  • biz_charge
  • biz_charge_detail
  • bk_transaction
  • bk_transaction_callback

CS-004 电子发票服务

功能说明

在客户渠道中提供电子发票申请、查询、下载以及缴费后发票推送能力。

关键设计

  1. 电子发票开具能力经 SYS-008 统一提供。
  2. 发票申请与客户开票信息、缴费记录和账单状态联动校验。
  3. 发票结果支持下载、查看和渠道推送。

核心数据

  • biz_invoice
  • biz_cust_invoice
  • biz_invoice_taxrate

CS-005 营业网点服务

功能说明

提供营业网点查询、服务范围查看、办事指引与营业时间展示能力。

关键设计

  1. 网点信息展示地址、联系电话、营业时间与可办理业务范围。
  2. 网点服务以查询与引导为主,不在本模块中虚构额外业务实体表。
  3. 与 CS-006 业务办理服务协同,支持从网点查询跳转到线上办理。

CS-006 业务办理服务

功能说明

提供更名、过户、联系方式变更、开票方式变更、一户多人口、自主抄表、换表申请等线上业务办理入口。

关键设计

  1. 业务办理统一调用工单/流程能力,不与后台流程表重复建模。
  2. 办理结果与客户资料、工单状态、报装或表务流程联动更新。
  3. 触达通知通过 SYS-010 完成结果通知。

CS-007 柜面扫码支付

功能说明

支持营业厅柜台二维码收款、票据关联、结果回传,是柜台收费场景对线上支付能力的补充入口。

关键设计

  1. 柜面扫码支付与 REV-003 营业收费统一核销口径。
  2. 支付结果与交易流水经 SYS-009 回传后更新收费状态。
  3. 支持支付凭证、发票申请与收费记录联动。

核心数据

  • biz_charge
  • bk_transaction
  • bk_transaction_callback

表务详细设计

METER-001 表务基础管理

功能说明

管理水表档案、厂家、型号、口径、量程、检定证书、安装位置、当前状态等基础信息。

关键设计

  • 一块水表对应唯一档案主记录。
  • 设备状态覆盖在库、在用、待检、故障、报废等。
  • 与客户、水表工单、抄表记录形成关联闭环。

METER-002 表务工单管理

功能说明

处理换表、移表、拆表、复装、校表、稽查、维修等表务工单。

关键设计

  1. 工单类型决定必填字段、处理流程和附件要求。
  2. 换表工单需同时记录旧表拆除信息与新表安装信息。
  3. 表务工单完成后同步更新水表档案与客户绑定关系。

METER-003 仓储与生命周期管理

功能说明

管理新表入库、领用、出库、退库、报废及全生命周期追踪。

核心数据

  • water_meter_stock
  • water_meter_inventory
  • water_meter_archive

METER-004 物联网接入与数据同步

功能说明

接入集抄系统、智能表平台及厂家物联网平台,实现远程抄表、状态查询、设备参数同步与异常告警。

业务流程

flowchart TD
    A[定时采集任务] --> B[发送采集请求]
    B --> C[物联网平台返回数据]
    C --> D[数据校验]
    D --> E{是否有效}
    E -->|有效| F[写入抄表记录]
    E -->|无效| G[异常标记并告警]
    F --> H[参与开账]
    G --> I[人工复核处理]

报装与签章详细设计

INST-001 报装申请与受理

功能说明

支持新装、改造、一户一表等业务的申请受理、资料提交、受理审核与流程发起。

关键设计

  • 统一采集申请人、地址、产权、用水性质、附件材料等信息。
  • 支持政务平台、柜台、微网厅等多入口申请。
  • 受理后自动生成报装编号并进入踏勘流程。

INST-002 现场踏勘与方案设计

功能说明

组织现场勘查、工程条件确认、材料测算、施工方案与费用方案编制。

关键设计

  1. 踏勘记录包括现场照片、供水接入条件、施工难点、估算费用。
  2. 方案版本化管理,支持设计审核与退回修改。
  3. 勘查结果直接驱动合同金额与施工计划。

INST-003 施工验收与立户通水

功能说明

完成施工派工、安装实施、竣工验收、立户建档和通水确认。

关键设计

  • 施工节点按派工、实施、验收、归档逐步留痕。
  • 验收通过后自动触发客户建档、水表绑定和账户初始化。
  • 与表务系统共享水表安装与换表数据。

INST-004 合同签署与电子签章

功能说明

通过集成泛微 CA 电子签章系统,实现报装合同、用水协议等文件的电子签署、时间戳和电子存证。

集成架构

graph TD
    subgraph INST[报装业务系统]
        A[申请受理]
        B[合同管理]
        C[电子签章模块]
        D[档案归档]
    end

    subgraph CA[泛微CA电子签章系统]
        E[身份认证服务]
        F[电子签章服务]
        G[时间戳服务]
        H[电子存证服务]
    end

    A --> B
    B --> C
    C --> E
    C --> F
    C --> G
    C --> H
    C --> D

合同签署流程

sequenceDiagram
    participant 客户
    participant 报装系统
    participant 电子签章模块
    participant 泛微CA系统

    客户->>报装系统: 提交签署申请
    报装系统->>电子签章模块: 生成签署任务
    电子签章模块->>泛微CA系统: 发起身份认证
    泛微CA系统-->>电子签章模块: 返回认证结果
    电子签章模块->>泛微CA系统: 发起电子签章
    泛微CA系统-->>电子签章模块: 返回签章结果
    电子签章模块->>泛微CA系统: 申请时间戳与存证
    泛微CA系统-->>电子签章模块: 返回凭证
    电子签章模块-->>报装系统: 返回签署结果
    报装系统-->>客户: 通知合同签署完成

核心数据

数据对象 说明
installation_contract 报装合同主表
installation_signature 电子签章记录表
installation_evidence 电子存证记录表

关键规则

  1. 合同签署前必须完成身份认证。
  2. 合同正文、签署位置、签署人、签署时间必须完整留痕。
  3. 签署完成文件必须归档并生成可验证凭证。
  4. 外部 CA 接口异常时应支持重试与人工补偿处理。

INST-005 档案归档与过程留痕

功能说明

归集申请材料、设计方案、合同文件、验收资料、签章回执和过程日志,形成完整报装档案。

关键设计

  • 档案按申请单维度统一归档。
  • 电子签章合同、验收附件、影像资料统一存储。
  • 档案查询支持按申请编号、客户、地址、时间、状态检索。

数据库详细设计

数据库选型与原则

系统数据库统一采用达梦数据库 8.0+。数据库设计遵循以下原则:

  1. 统一主数据模型,避免多口径重复建模。
  2. 面向业务闭环设计客户、水表、账单、缴费、工单、报装、签章等核心对象。
  3. 兼顾 OLTP 事务处理与统计查询性能。
  4. 支持多单位、多区域的数据隔离与权限过滤。
  5. 敏感数据字段满足加密、脱敏和审计要求。

数据库逻辑架构

graph TB
    APP[业务应用] --> ORM[数据访问层]
    APP --> CACHE[Redis缓存]
    ORM --> MASTER[(达梦主库)]
    MASTER --> SLAVE[(达梦从库/备库)]
    MASTER --> FILE[文件与归档索引]

核心数据模型

erDiagram
    BIZ_CUST ||--o{ BIZ_CUST_CONTACT : 包含
    BIZ_CUST ||--o{ BIZ_CUST_METER : 绑定
    BIZ_CUST ||--|| BIZ_ACCOUNT : 对应
    BIZ_METER ||--o{ BIZ_READING_DATA : 产生
    BIZ_READING_DATA ||--|| BIZ_CHARGE : 生成
    BIZ_CHARGE ||--o{ BIZ_CHARGE_DETAIL : 包含
    BIZ_CHARGE ||--o{ BK_TRANSACTION : 核销
    BIZ_CUST ||--o{ BIZ_INVOICE : 开票
    INSTALLATION_APPLY ||--o{ INSTALLATION_CONTRACT : 生成
    INSTALLATION_CONTRACT ||--o{ INSTALLATION_SIGNATURE : 签署
    INSTALLATION_CONTRACT ||--o{ INSTALLATION_EVIDENCE : 存证

核心数据表设计

客户与账户类

表名 说明 关键字段
biz_cust 客户主档表 code、name、cust_type、id_no、mobile、address、status
biz_account 客户账户表 code、cust_id、balance、arrears_amount、status
biz_cust_contact 客户联系人表 cust_id、name、mobile、contact_type、is_default
biz_cust_app_binds 渠道绑定关系表 cust_id、app_type、app_user_id、status
biz_cust_invoice 客户开票信息表 cust_id、invoice_title、tax_no、email、mobile

水表与抄表类

表名 说明 关键字段
biz_meter 水表信息表 code、meter_no、model_code、caliber_code、status
biz_cust_meter 客户与水表关系表 cust_id、meter_id、bind_status、bind_time
biz_meter_book 抄表册本表 code、name、reader_id、cycle_type、status
biz_reading_data 抄表数据表 meter_id、cust_id、reading_time、current_reading、usage_amount
biz_last_reading 上次抄表结果表 meter_id、last_reading、last_reading_time
biz_meter_read 抄表任务状态表 book_id、meter_id、read_status、reader_id

账单、收费与发票类

表名 说明 关键字段
biz_charge 营业账主表 code、cust_id、record_id、total_amount、charge_status
biz_charge_detail 营业账明细表 charge_id、cost_component_code、usage_amount、detail_amount
biz_collection 托收资料表 cust_id、channel_code、collection_status、apply_time
biz_withholding 代扣资料表 cust_id、agreement_no、withholding_status、sign_time
biz_invoice 发票主表 code、cust_id、invoice_status、invoice_type、issue_time
biz_invoice_taxrate 发票税率表 tax_code、tax_name、tax_rate、status

银行渠道与交易类

表名 说明 关键字段
bk_payment_channel 支付渠道表 channel_code、channel_name、channel_type、status
bk_channel_api_config 渠道接口配置表 channel_code、api_url、sign_type、status
bk_channel_route_rule 渠道路由规则表 business_type、channel_code、priority、status
bk_transaction 渠道交易流水表 trade_no、biz_order_no、channel_code、trade_amount、trade_status
bk_transaction_callback 支付回调表 trade_no、callback_status、callback_time、payload
bk_transaction_exception 渠道异常表 trade_no、exception_type、exception_status、remark
bk_withholding_agreement 代扣签约表 agreement_no、cust_id、bank_code、status
bk_withholding_batch 代扣批次表 batch_no、batch_date、total_count、status
bk_withholding_item 代扣明细表 batch_no、cust_id、charge_id、item_status
bk_reconcile_batch 对账批次表 batch_no、channel_code、reconcile_date、status
bk_reconcile_diff 对账差异表 batch_no、trade_no、diff_type、diff_amount
bk_settlement_batch 结算批次表 batch_no、channel_code、settlement_date、status

表务与工单类

表名 说明 关键字段
water_meter_workorder 表务工单表 workorder_code、workorder_type、workorder_status、meter_id、customer_id
water_meter_stock 水表库存表 stock_code、meter_model、meter_caliber、stock_quantity
water_meter_inventory 出入库记录表 inventory_code、inventory_type、quantity、stock_id
business_work_order 业务工单主表 work_order_code、work_order_type、status、source_channel

报装与签章类

表名 说明 关键字段
installation_apply 报装申请表 apply_code、apply_type、customer_name、address、status
installation_survey 现场踏勘表 survey_code、apply_id、survey_result、estimated_fee
installation_contract 报装合同表 contract_code、installation_id、contract_type、contract_status
installation_signature 签章记录表 signature_code、contract_id、signer_id、signature_time、signature_status
installation_evidence 存证记录表 evidence_code、contract_id、evidence_hash、evidence_status

索引与性能设计

主要索引策略

  1. 唯一索引:客户编号、水表编号、账单编号、缴费编号、合同编号等业务唯一键。
  2. 复合索引:
    • 客户查询:(customer_type, status)
    • 账单查询:(customer_id, bill_month, bill_status)
    • 抄表查询:(meter_id, reading_date)
    • 缴费查询:(customer_id, payment_time)
  3. 时间分区:账单、缴费、日志等大表按月或按年管理归档。
  4. 热点缓存:参数字典、用户会话、移动端任务、发票状态等进入 Redis。

接口详细设计

接口设计原则

  1. 内部接口统一采用 RESTful 风格JSON 作为主要报文格式。
  2. 外部接口根据对接方规范支持 HTTPS API、SFTP 文件交换等方式。
  3. 接口编号统一采用 IF-EXT- 前缀,与模块编号区分。
  4. 关键交易接口必须支持幂等控制、签名校验、失败重试与调用日志。

统一平台接口

接口编号 接口名称 功能描述 调用方 协议
IF-UP-001 用户登录接口 用户登录并获取访问令牌 PC端/移动端/渠道端 HTTPS REST
IF-UP-002 用户信息接口 获取当前登录用户上下文 各业务系统 HTTPS REST
IF-UP-003 权限校验接口 校验菜单、按钮和数据权限 各业务模块 HTTPS REST
IF-UP-004 参数字典接口 获取字典与业务参数 各业务模块 HTTPS REST

营收业务接口

接口编号 接口名称 功能描述 调用方 协议
IF-REV-001 客户信息查询接口 查询客户档案、账户状态、联系人与水表绑定关系 柜台/客户渠道/工单 HTTPS REST
IF-REV-004 抄表数据提交接口 提交人工或远传抄表数据并触发校验 抄表APP/集抄系统 HTTPS REST
IF-REV-005 账单生成接口 根据抄表结果、水价模板和费用组成生成账单 开账任务 HTTPS REST
IF-REV-006 缴费处理接口 创建收费记录并核销账单 柜台/线上渠道 HTTPS REST
IF-REV-007 账务调整接口 发起金额调整、退款、冲正、坏账等业务处理 财务/营业人员 HTTPS REST
IF-REV-008 发票申请接口 发起开票申请并接收票据状态回写 柜台/客户渠道 HTTPS REST
IF-REV-009 催缴任务接口 生成催缴名单并提交消息触达请求 营收系统/消息服务 HTTPS REST
IF-REV-010 统计查询接口 查询营收、收费、欠费、渠道、客户统计结果 管理后台/统计分析端 HTTPS REST
IF-REV-011 银行代收协同接口 发起代扣、回盘、对账、结算协同 银行代收模块/SYS-009 HTTPS REST / 文件交换
IF-REV-012 业务参数配置接口 查询和维护价格模板、优惠方案、业务参数配置 管理后台/参数管理端 HTTPS REST

表务与物联网接口

接口编号 接口名称 功能描述 调用方 协议
IF-METER-001 水表档案查询接口 查询水表与生命周期信息 表务/营收/报装 HTTPS REST
IF-METER-002 表务工单处理接口 提交换表、移表等结果 移动作业端 HTTPS REST
IF-METER-003 库存出入库接口 处理领用、退库、报废 仓储管理端 HTTPS REST
IF-METER-004 集抄数据接收接口 接收远程抄表数据 物联网平台 HTTPS REST

报装与签章接口

接口编号 接口名称 功能描述 调用方 协议
IF-INST-001 报装申请提交接口 提交报装申请与附件 柜台/微网厅/政务平台 HTTPS REST
IF-INST-002 踏勘结果回填接口 回填现场踏勘结果 报装人员 HTTPS REST
IF-INST-003 合同签署发起接口 创建签章任务 报装系统 HTTPS REST
IF-INST-004 签章回执接口 回写签章结果和存证信息 CA系统/报装系统 HTTPS REST
IF-INST-005 报装归档接口 归档申请、合同和验收资料 报装系统 HTTPS REST

客户渠道接口

接口编号 接口名称 功能描述 调用方 协议
IF-CS-001 账户绑定接口 绑定或解绑客户账户 微信/支付宝/微网厅 HTTPS REST
IF-CS-002 历史账单查询接口 查询账单、欠费、用水趋势 客户端 HTTPS REST
IF-CS-003 在线支付下单接口 创建微信/支付宝支付订单 客户端 HTTPS REST
IF-CS-004 发票申请接口 提交电子发票申请 客户端 HTTPS REST
IF-CS-005 网点与业务办理接口 查询网点、提交业务办理 客户端 HTTPS REST
IF-CS-006 业务办理进度接口 查询业务办理和工单进度 客户端 HTTPS REST
IF-CS-007 柜面扫码支付接口 创建柜面扫码支付订单并回写结果 柜台终端/营业前台 HTTPS REST

外部系统接口

金融支付接口

接口编号 接口名称 功能描述 协议 输入参数 输出结果
EXT-001 银行代扣接口 批量代扣水费 HTTPS/SFTP 客户信息、账单金额、代扣日期 扣款结果
EXT-101 微信支付统一下单 创建微信支付订单 HTTPS 订单信息、金额 预支付信息
EXT-201 支付宝统一收单 创建支付宝支付订单 HTTPS 订单信息、金额 支付结果

税务与消息接口

接口编号 接口名称 功能描述 协议 输入参数 输出结果
EXT-301 短信发送接口 发送催缴或通知短信 HTTPS 手机号、模板、参数 发送结果
EXT-401 邮件发送接口 发送电子发票或通知邮件 HTTPS 邮箱、主题、内容 发送结果
EXT-501 电子发票开具接口 税控平台开票 HTTPS 发票信息、税率 发票结果

物联网、政务与签章接口

接口编号 接口名称 功能描述 协议 输入参数 输出结果
EXT-601 水表数据采集接口 获取远程抄表数据 HTTPS 水表编号、时间范围 抄表数据
EXT-701 政务数据汇聚接口 向政务平台推送业务数据 HTTPS 业务数据、统计数据 推送结果
EXT-801 环卫收费对接接口 同步污水费/环卫收费数据 HTTPS 收费数据 同步结果
EXT-901 客服工单创建接口 与客服系统同步工单 HTTPS 工单信息 工单编号
EXT-1001 消火栓控制接口 控制取水权限与设备状态 HTTPS 设备信息、控制指令 控制结果
EXT-CA-001 身份认证接口 验证合同签署方身份 HTTPS REST 用户信息、认证方式 认证结果
EXT-CA-002 电子签章接口 执行电子签章 HTTPS REST 文档内容、签章位置 签章结果
EXT-CA-003 时间戳接口 申请签署时间戳 HTTPS REST 文档哈希 时间戳凭证
EXT-CA-004 电子存证接口 存储签署后合同 HTTPS REST 签署文档、元数据 存证凭证

安全详细设计

安全目标与分层防护

系统安全设计遵循机密性、完整性、可用性、可审计性原则,采用边界安全、应用安全、数据安全、运维安全四层防护模式。

graph TB
    T[外部威胁] --> N[边界安全]
    N --> A[应用安全]
    A --> D[数据安全]
    D --> O[运维安全]
    O --> C[核心业务资产]

身份认证与访问控制

  1. 采用 OAuth2.0 + JWT 统一认证。
  2. 高风险操作支持 MFA 二次认证。
  3. 基于 RBAC 的菜单、按钮、数据权限控制。
  4. 管理端、移动端、客户端、外部系统按不同安全域实施权限隔离。

数据安全与隐私保护

  1. 核心数据库统一为达梦数据库 8.0+,关键数据按要求启用加密存储。
  2. 身份证号、手机号、银行账户等敏感字段按角色脱敏展示。
  3. 文件、合同、签章凭证、验收附件统一归档并控制访问权限。
  4. 备份数据加密存储,支持异地容灾保管。

接口安全与审计追踪

  • 所有外部接口采用 HTTPS 加密传输。
  • 关键接口支持签名、时间戳、随机数防重放。
  • 支付、退款、签章、账务调整等交易型接口必须具备幂等控制。
  • 统一记录调用时间、调用方、请求摘要、响应结果、异常码与处理人。

安全运营与应急响应

  1. 建立暴力破解、异常访问、接口失败、支付异常、签章异常等监控规则。
  2. 按 P0~P3 级别定义安全事件处置流程。
  3. 定期进行漏洞扫描、补丁更新、备份恢复演练和权限审计。

部署与运维设计

部署总体方案

系统采用集中部署模式,生产环境分为接入区、应用区、数据区、运维管理区,支持主备容灾与横向扩展。

graph TB
    U[外部访问] --> LB[负载均衡/Nginx]
    LB --> APP1[应用节点1]
    LB --> APP2[应用节点2]
    LB --> APP3[应用节点3]
    APP1 --> DB[(达梦主库)]
    APP2 --> DB
    APP3 --> DB
    DB --> DBS[(达梦备库/从库)]
    APP1 --> REDIS[(Redis)]
    APP1 --> FILE[对象存储]
    APP1 --> MON[监控与日志平台]

环境规划

环境 用途 说明
开发环境 开发联调 功能开发、单元验证
测试环境 集成测试 接口联调、业务测试、性能测试
预生产环境 上线前验证 模拟生产配置,进行发布演练
生产环境 正式运行 双机或多节点高可用部署

网络与分区设计

  1. DMZ 区部署负载均衡、WAF、网关等对外接入组件。
  2. 应用区部署统一平台、营收、表务、报装、客户渠道等应用节点。
  3. 数据区部署达梦数据库、Redis、对象存储与备份服务。
  4. 管理区部署堡垒机、日志平台、监控平台和运维工具。

监控告警与日志

监控指标

类别 监控项
主机监控 CPU、内存、磁盘、网络
应用监控 QPS、响应时间、错误率、线程池
数据库监控 连接数、慢 SQL、锁等待、主备同步
业务监控 开账量、收费量、退款量、签章成功率

日志分类

  • 操作日志
  • 登录日志
  • 接口调用日志
  • 任务执行日志
  • 安全审计日志
  • 外部系统对接日志

备份恢复与发布管理

  1. 数据库执行每日增量、每周全量备份。
  2. 关键文件、合同、电子发票、签章凭证同步纳入备份。
  3. 发布采用版本化管理,执行发布审批、健康检查、回滚预案。
  4. 对支付、签章、银行代扣等关键链路执行灰度验证前置检查,但生产方案不保留脚本碎片或临时配置片段。

附录

附录A 模块编号说明

前缀 模块域
UP 统一平台
REV 营收业务
METER 表务管理
INST 报装与签章
SERVICE 客户服务与渠道

附录B 接口编号说明

前缀 说明
IF 系统内部标准接口
EXT 对外系统接口
EXT-CA 电子签章专项外部接口

附录C 设计约束与统一口径

  1. 系统名称统一为“福建水务营收系统”。
  2. 数据库口径统一为“达梦数据库 8.0+”。
  3. 模块编号统一采用 UP/REV/METER/INST/CS-001 风格。
  4. 接口编号统一采用 IF-XXX-001EXT-XXX-001 风格。
  5. 本文档为唯一主详设文件,其他专项文档作为历史参考与内容来源,不再作为并行主文件使用。