2024年12月19日
| 文件状态: | 文档密级: | 公开 |
|---|---|---|
| 【√】草稿 | ||
| 【】修改稿 | ||
| 【】正式发布 | ||
| 当前版本: | V1.7 | |
| 作者: | 唐伟杰 | |
| 完成日期: | 2025-08-18 |
| 日期 | 版本号 | 作者 | 备注 |
|---|---|---|---|
| 2025-07-01 | V1.0 | 唐伟杰 | 初版 |
| 2025-07-17 | V1.1 | 唐伟杰 | 1.
同步详细设计中的模块,补充缺失模块。 2. 调整子系统划分与编号,确保逻辑清晰、编号连续。 3. 重构表务、报装、客户服务子系统,优化模块设计。 4. 统一概要设计与详细设计的结构,提升一致性。 |
| 2025-08-01 | V1.2 | 唐伟杰 | 完善 APP相关的模块设计 |
| 2025-08-01 | V1.3 | 唐伟杰 | 数据库系统变更:将OpenGauss替换为达梦数据库 8.0+,更新所有相关架构图和技术描述。 |
| 2025-08-01 | V1.4 | 唐伟杰 | 单点登录采用OAuth2.0+CAS协议:更新单点登录模块描述,强调基于OAuth2.0+CAS协议实现。 |
| 2025-08-18 | V1.5 | 唐伟杰 | 架构调整:将营收业务系统中的工单、表务、报装剥离为独立子系统(SYS-005/006/007),更新目录、功能范围、子系统列表、关系图与接口定义;保留客户服务模块在营收业务系统中的作用。 |
| 2025-08-18 | V1.6 | 唐伟杰 | 合并第三方支付能力至SYS-009”支付与银行结算子系统”,统一消息服务重编号为SYS-010;更新总体目标、功能范围、接口定义、子系统列表与相关架构图。 |
| 2026-03-12 | V1.7 | 唐伟杰 | 对照
Archive/03_Design_Docs/营业收费管理系统-概要设计说明书20250912.md
完成来源对齐:补充历史来源说明与引用路径,确认系统拆分、基础服务定位、外部集成与非功能约束已同步;保留当前正式系统名称、模块编号与接口编号标准,不沿用历史别名编码作为正式口径。 |
本文档是《福建水务营收系统详细设计说明书》的前导文档,旨在从总体架构和概要设计的角度对系统进行全面的技术规划和设计。
主要目的:
预期读者:
福建水务营收系统是为满足福建省水投数字科技有限公司客户服务管理领域的业务需求而建设的信息化系统。系统以客户为核心和基础,实现客户全生命周期管理。
建设背景:
福建水投集团注册资本46亿元,在全省40多个县市区投资重大水利项目超过450亿元,拥有全级次子公司超过67家,职工人数超3500人。当前,集团正紧紧抓住城乡供水一体化建设的机遇,需要构建以客户为中心的数字化服务体系。
| 术语、缩写 | 解释 |
|---|---|
| SaaS | Software as a Service,软件即服务 |
| RBAC | Role-Based Access Control,基于角色的访问控制 |
| JWT | JSON Web Token,基于JSON的Web令牌 |
| OAuth2 | 开放授权标准 |
| RESTful | Representational State Transfer,表现层状态转化 |
| OpenAPI | 开放应用程序接口规范 |
| DDL | Data Definition Language,数据定义语言 |
| DML | Data Manipulation Language,数据操作语言 |
| IoT | Internet of Things,物联网 |
| CAS | Central Authentication Service,中央认证服务 |
| DevOps | Development和Operations的组合词,开发运维一体化 |
| 业务参数 | 业务参数配置 |
| 站点 | 用于划分用户所属管辖区域,站点可以进行多级管理 |
| 册本 | 又称抄表本或抄表簿,根据抄表线路规划,按排相邻的一些水表给某一个抄表员进行抄表 |
| 用户编号 | 为签定了供用水合同的正式用户分配的唯一识别号 |
| 售水量 | 抄收水量+查处水量±调整水量 |
| 当期应收水费 | 当期售水量乘以不同类别的水价(到户价)所得的金额 |
| 水表抄见率 | (当期应抄用户数-当期估表用户数)/当期应抄用户数×100% |
../04_Appendix/Archive/03_Design_Docs/营业收费管理系统-概要设计说明书20250912.md本主文档已对齐
../04_Appendix/Archive/03_Design_Docs/营业收费管理系统-概要设计说明书20250912.md
中对当前正式设计仍有效的内容,主要包括:
SYS-001 ~ SYS-010
的职责边界、基础服务分层与跨系统协同关系。以下内容仅保留在 Archive 中作为历史来源,不直接作为当前正式主文档口径:
UP-SSO、REV-CUSTOM、WECHAT-*。IF-S-*、IF-C-*。当前正式口径继续统一采用:
福建水务营收系统UP-001、REV-001、CS-001、METER-001、INST-001IF-UP-*、IF-REV-*、IF-CS-*、IF-METER-*、IF-INST-*、IF-EXT-*福建水务营收系统采用分层解耦与子系统化建设,形成”业务服务层 + 基础服务层”的整体架构:
业务服务层:SYS-001 统一平台、SYS-002 营收业务系统、SYS-003 手机抄表APP、SYS-004 微网厅系统、SYS-005 工单管理系统、SYS-006 表务管理系统、SYS-007 报装业务系统
基础服务层:SYS-008 发票服务子系统(统一开票)、SYS-009 支付与银行结算子系统(统一聚合支付/退款/渠道适配/第三方支付平台/银行实时收费、代扣/托收签解约、批次与对账契约、加解密与支付回调,夜间批量代扣/完整对账结算按后续完善项管理)、SYS-010 消息服务子系统(统一短信/邮件/站内信/模板消息/微信通知/数科系统对接)、注册/配置中心、任务调度等基础服务
通过系统的建设,实现福建省水投数字科技有限公司客户服务管理领域的业务流程梳理再造、组织架构的优化、管理制度的建设、绩效考核标准的建设。构建以客户为中心的一体化服务体系,将客户的所有信息进行有机的关联,方便企业对营收信息进行综合分析和管理,为客户提供更多、更便捷、更主动的个性化服务,提高客户服务的质量和客户满意度。
系统整体架构特点:
本系统功能涵盖水务企业完整的营收业务流程,包括客户资料管理、抄表开账、营业收费、账务处理、催缴管理、发票管理(经SYS-008)、表务管理、报装业务、客户服务、工单管理,以及支付与银行结算(经SYS-009)等;还包含查询统计与报表打印功能。
BankWithholding
六条银行入口(客户状态查询、送盘、送盘状态查询、取消送盘、回盘、回盘状态查询)、代扣/托收签约解约和后台资源管理具备证据;其中
BankCollection
平行链路、夜间批量代扣、完整对账与结算仍按部分实现或后续完善项管理系统涉众:
本系统主要涉及用户为各水务公司与系统相关的业务参与者、福建省水投数字科技有限公司研发运维团队。
用户特点:
公司领导:对信息化在企业生产经营管理活动中的积极作用有深刻认识,并具有前瞻视角。
公司管理层:有丰富的企业管理经验,有良好的业务管理类系统使用经验。
系统管理人员:具有本科以上教育背景,计算机操作熟练,具有良好的软件系统维护经验,主要维护系统的后台权限管理、人员管理、部门管理等功能。
操作人员:部分用户已经使用过其他厂商提供的水务营收系统,部分用户对软件系统使用经验不足。
技术约束:
性能约束:
安全约束:
本系统需要与以下外部系统进行接口集成:
| 接口类型 | 接口名称 | 功能描述 | 接口协议 |
|---|---|---|---|
| 金融支付 | 银行代扣接口 | 银行托收代扣缴费 | HTTPS |
| 金融支付 | 微信支付接口 | 微信在线支付 | HTTPS |
| 金融支付 | 支付宝支付接口 | 支付宝在线支付 | HTTPS |
| 通信服务 | 短信平台接口 | 短信通知发送 | HTTPS |
| 通信服务 | 邮件服务接口 | 邮件通知发送 | HTTPS/SMTP |
| 通信服务 | 微信模板消息接口 | 微信模板消息下发 | HTTPS |
| 物联网 | 集抄系统接口 | 智能水表数据采集 | TCP/HTTPS |
| 税务服务 | 电子发票接口 | 第三方发票开具 | HTTPS |
| 认证服务 | 身份认证接口 | 第三方身份验证 | HTTPS |
| 认证服务 | CAS单点登录 | 第三方身份验证 | HTTPS |
| 认证服务 | OAuth2.0单点登录 | 第三方身份验证 | HTTPS |
| 外部系统 | CA电子签章 | CA签发/验章/存证 | HTTPS |
| 外部系统 | 邮件服务 | 邮件服务 | HTTPS |
| 外部系统 | 摄像表AI接口 | 表AI识别服务 | HTTPS |
架构设计方案:
系统采用现代化的多层分布式架构,基于微服务设计思想,实现松耦合、高内聚的系统架构。整体架构分为表现层、网关层、业务服务层、基础服务层和数据层五个层次。
技术选型方案:
部署方案:
采用容器化部署架构,支持多环境部署(开发、测试、生产),提供自动化部署脚本,支持弹性扩缩容。
系统采用现代化的多层分布式架构,基于微服务设计思想,实现松耦合、高内聚的系统架构。
graph TB
%% 表现层
subgraph "表现层"
ADMIN[Web管理端]
H5[微网厅H5]
APP[手机抄表APP]
end
%% 网关层
subgraph "网关层"
GATEWAY[API网关]
SSO[统一认证/SSO]
end
%% 业务服务层
subgraph "业务服务层"
UP[SYS-001 统一平台]
REV[SYS-002 营收业务系统]
WO[SYS-005 工单管理系统]
METER[SYS-006 表务管理系统]
INST[SYS-007 报装业务系统]
end
%% 基础服务层
subgraph "基础服务层"
INV[SYS-008 发票服务]
PAY[SYS-009 支付与银行结算]
MSG[SYS-010 消息服务]
MQ[RabbitMQ 消息队列]
FILE[MinIO 文件存储]
REDIS[Redis 缓存]
MON[监控/日志]
CONFIG[注册/配置中心]
SCHED[任务调度]
end
%% 数据层
subgraph "数据层"
DM[(达梦数据库集群)]
CACHE[(Redis集群)]
STORE[(MinIO集群)]
end
%% 外部系统
subgraph "外部系统"
EXT_CA[CA电子签章]
EXT_BANK[银行]
EXT_PSP[支付渠道 微信/支付宝/银联聚合]
EXT_INV[发票供应商 航天/博思]
EXT_SMS[短信平台]
EXT_MAIL[邮件服务]
EXT_IOT[集抄系统]
end
%% 连接关系
ADMIN --> GATEWAY
H5 --> GATEWAY
APP --> GATEWAY
GATEWAY --> SSO
GATEWAY --> UP
GATEWAY --> REV
GATEWAY --> WO
GATEWAY --> METER
GATEWAY --> INST
REV --> INV
REV --> PAY
REV --> MQ
REV -.-> MSG
REV --> FILE
REV --> REDIS
INST -.-> EXT_CA
INV -.-> EXT_INV
MSG -.-> EXT_SMS
MSG -.-> EXT_MAIL
PAY -.-> EXT_BANK
PAY -.-> EXT_PSP
%% 数据层连接
UP --> CACHE
REV --> DM
WO --> DM
METER --> DM
INST --> DM
FILE --> STORE
表现层(Presentation Layer)
网关层(Gateway Layer)
业务服务层(Business Service Layer)
基础服务层(Infrastructure Service Layer)
数据层(Data Layer)
外部系统(External Systems)
INST-002 工程管理)flowchart TB
%% 分层横向排布,垂直贯通,允许直连线穿越模块
subgraph L1["数据采集层"]
direction LR
A1[手机抄表APP/SYS-003]
A2[智能水表]
A3[管理后台/SYS-001]
A4[微网厅/SYS-004]
A5[外部系统]
end
subgraph L2["接入层"]
direction LR
GW[API网关]
AUTH[统一平台SSO/SYS-001]
CLEAN[数据清洗]
MQ[消息队列]
CACHE_TMP[临时缓存]
end
subgraph L3["业务层"]
direction LR
REV[营收系统/SYS-002]
WO[工单系统/SYS-005]
METER[表务系统/SYS-006]
INST[报装系统/SYS-007]
INV[发票服务/SYS-008]
PAY[支付与结算/SYS-009]
MSG[消息服务/SYS-010]
end
subgraph L4["存储层"]
direction LR
DM_MASTER[达梦主库]
DM_SLAVE[达梦从库]
REDIS[Redis缓存]
MINIO[MinIO对象存储]
BACKUP[备份库]
end
subgraph L5["数据服务层"]
direction LR
QRY[查询服务]
RPT[报表服务]
API[接口服务]
PUSH[推送服务]
end
subgraph L6["展现层"]
direction LR
F1[管理后台]
F2[统计大屏]
F3[移动端]
F4[微网厅]
F5[第三方系统]
end
%% 连接(精简且保持层间垂直分层,线可穿越模块)
A1 --> GW
A2 --> GW
A3 --> GW
A4 --> GW
A5 --> GW
%% 相邻层连线:采集层 → 接入层 已在上方;以下为 接入层 → 业务层
GW --> REV
GW --> WO
GW --> METER
GW --> INST
MQ --> REV
MQ --> WO
MQ --> METER
MQ --> INST
REV --> DM_MASTER
WO --> DM_MASTER
METER --> DM_MASTER
INST --> DM_MASTER
INV --> MINIO
MSG --> REDIS
%% 存储层内部链路省略,保持仅向下一层输出
DM_MASTER --> QRY
DM_MASTER --> RPT
DM_MASTER --> API
REDIS --> API
MINIO --> API
MSG --> PUSH
QRY --> F1
RPT --> F2
API --> F1
API --> F3
API --> F4
API --> F5
PUSH --> F3
PUSH --> F4
系统采用分布式部署架构,通过多个服务器集群实现高可用和高性能,支持 DevOps 持续交付。
graph TB
subgraph "DMZ区域"
subgraph "负载均衡集群"
LB1[Nginx 主<br/>8核16G]
LB2[Nginx 备<br/>8核16G]
WAF[Web应用防火墙]
end
end
subgraph "应用服务区"
subgraph "Web服务集群"
WEB1[Web服务器1<br/>8核32G]
WEB2[Web服务器2<br/>8核32G]
end
subgraph "应用服务集群"
APP1[应用服务器1<br/>16核64G]
APP2[应用服务器2<br/>16核64G]
end
subgraph "中间件集群"
MQ1[消息队列1<br/>8核16G]
MQ2[消息队列2<br/>8核16G]
end
end
subgraph "数据服务区"
subgraph "数据库集群"
DB1[达梦数据库主库<br/>32核128G]
DB2[达梦数据库从库<br/>32核128G]
DB3[达梦数据库备库<br/>32核128G]
end
subgraph "缓存集群"
REDIS1[Redis主节点<br/>16核32G]
REDIS2[Redis从节点<br/>16核32G]
REDIS3[Redis哨兵<br/>8核16G]
end
subgraph "文件存储集群"
FILE1[MinIO节点1<br/>8核32G 10TB]
FILE2[MinIO节点2<br/>8核32G 10TB]
FILE3[MinIO节点3<br/>8核32G 10TB]
end
end
subgraph "管理服务区"
MONITOR[监控服务器<br/>Prometheus + Grafana<br/>8核16G]
BACKUP[备份服务器<br/>8核32G 20TB]
JUMP[跳板服务器<br/>4核8G]
LOG[日志服务器<br/>ELK Stack<br/>16核32G]
end
graph TB
Internet[互联网] -.->|HTTPS| DMZ[DMZ区域]
DMZ -.->|HTTP/RPC| APP[应用服务区]
APP -.->|数据访问| DATA[数据服务区]
MGMT[管理服务区] -.->|监控管理| APP
MGMT -.->|监控管理| DATA
DMZ区域配置
| 设备类型 | 配置规格 | 数量 | 主要作用 |
|---|---|---|---|
| 负载均衡器 | 8核16G,双网卡 | 2台 | 负载均衡、高可用 |
| Web应用防火墙 | 硬件WAF设备 | 1台 | 安全防护 |
应用服务区配置
| 设备类型 | 配置规格 | 数量 | 主要作用 |
|---|---|---|---|
| Web服务器 | 8核32G,1TB SSD | 2台 | 前端应用部署 |
| 应用服务器 | 32核128G,2TB SSD | 3台 | 后端服务部署 |
| 消息队列服务器 | 8核16G,1TB SSD | 2台 | 异步消息处理 |
数据服务区配置
| 设备类型 | 配置规格 | 数量 | 主要作用 |
|---|---|---|---|
| 数据库服务器 | 32核128G,10TB SSD | 3台 | 主从备数据库 |
| 缓存服务器 | 16核32G,1TB SSD | 3台 | Redis集群 |
| 文件存储服务器 | 8核32G,10TB HDD | 3台 | 分布式文件存储 |
管理服务区配置
| 设备类型 | 配置规格 | 数量 | 主要作用 |
|---|---|---|---|
| 监控服务器 | 8核16G,1TB SSD | 1台 | 系统监控 |
| 备份服务器 | 8核32G,20TB HDD | 1台 | 数据备份 |
| 跳板服务器 | 4核8G,500GB SSD | 1台 | 运维管理 |
| 日志服务器 | 16核32G,5TB SSD | 1台 | 日志收集分析 |
系统采用达梦数据库分布式架构,支持高性能、高可用、高扩展性的数据存储服务。
graph TB
subgraph "达梦数据库分布式架构"
subgraph "协调节点"
CN1[协调节点1<br/>Coordinator Node]
CN2[协调节点2<br/>Coordinator Node]
end
subgraph "数据节点组1"
DN1_1[数据节点1-主<br/>Datanode Primary]
DN1_2[数据节点1-备<br/>Datanode Standby]
DN1_1 -.->|主备同步| DN1_2
end
subgraph "数据节点组2"
DN2_1[数据节点2-主<br/>Datanode Primary]
DN2_2[数据节点2-备<br/>Datanode Standby]
DN2_1 -.->|主备同步| DN2_2
end
subgraph "GTM节点"
GTM[全局事务管理器<br/>GTM Master]
GTM_S[GTM备节点<br/>GTM Standby]
GTM -.->|备份| GTM_S
end
end
%% 分布式架构调用关系
CN1 -.->|分片路由<br/>查询协调| DN1_1
CN1 -.->|分片路由<br/>查询协调| DN2_1
CN2 -.->|分片路由<br/>查询协调| DN1_1
CN2 -.->|分片路由<br/>查询协调| DN2_1
CN1 -.->|事务管理<br/>全局一致性| GTM
CN2 -.->|事务管理<br/>全局一致性| GTM
系统采用基于Docker的容器化部署,使用Docker Compose进行容器编排,使用Kubernetes进行容器编排和调度,支持DevOps持续交付。
graph TB
subgraph "容器化部署架构"
subgraph "前端服务层"
WEB_CONTAINER[前端容器<br/>Nginx + Vue3]
end
subgraph "后端服务层"
APP_CONTAINER[后端容器<br/>Spring Boot]
end
subgraph "数据存储层"
DB_CONTAINER[数据库容器<br/>达梦数据库]
CACHE_CONTAINER[缓存容器<br/>Redis]
FILE_CONTAINER[文件存储容器<br/>MinIO]
end
subgraph "监控服务层"
MONITOR_CONTAINER[监控容器<br/>Prometheus + Grafana]
LOG_CONTAINER[日志容器<br/>ELK Stack]
end
end
%% 容器服务调用关系
WEB_CONTAINER -.->|API请求<br/>静态资源| APP_CONTAINER
APP_CONTAINER -.->|数据操作| DB_CONTAINER
APP_CONTAINER -.->|缓存访问| CACHE_CONTAINER
APP_CONTAINER -.->|文件存储| FILE_CONTAINER
APP_CONTAINER -.->|监控数据| MONITOR_CONTAINER
APP_CONTAINER -.->|日志数据| LOG_CONTAINER
| 子系统编号 | 子系统名称(标识) | 功能描述 | 开发方式 |
|---|---|---|---|
| SYS-001 | 统一平台 | 单点登录、统一认证(SSO/OAuth2+CAS)、审计与监控、权限、组织、参数、多租户、字典等基础能力 | 自行开发 |
| SYS-002 | 营收业务系统 | 客户管理、抄表开账、营业收费、账务处理、发票管理、催缴管理、统计分析、代收业务、客户服务、业务参数配置 | 自行开发 |
| SYS-003 | 手机抄表APP | 移动端抄表、调用外部AI识别服务、现场作业、数据同步、离线支持 | 自行开发 |
| SYS-004 | 微网厅系统 | 微信公众号平台、账户绑定、在线缴费、信息查询、业务办理、网点服务 | 自行开发 |
| SYS-005 | 工单管理系统 | 统一工单中心、工单流程引擎、监控预警、绩效统计 | 自行开发 |
| SYS-006 | 表务管理系统 | 设备档案、表务全生命周期管理 | 自行开发 |
| SYS-007 | 报装业务系统 | 报装流程管理、合同签订与电子签章、工程管理、档案管理 | 自行开发 |
| SYS-008 | 发票服务子系统 | 统一开票网关、供应商适配器(优先对接航天)、回执处理与存证 | 自行开发 |
| SYS-009 | 支付与银行结算子系统 | 聚合支付/退款、渠道适配(微信/支付宝/银联)、支付通知、银行实时收费、代扣/托收签解约、送盘/回盘/对账契约、加解密签名;夜间批量代扣与完整结算闭环按后续完善项管理 | 自行开发 |
| SYS-010 | 消息服务子系统 | 短信/邮件/站内信模板与发送、回执查询、批量推送 | 自行开发 |
---
title: 子系统调用关系图
---
graph TB
%%{
run: {
"flowchart": {
"curve": "basis"
}
"sequence": {
"curve": "basis"
}
}
}%%
UP[ 【SYS-001 统一平台】<br/>单点登录<br/>统一认证SSO/OAuth2+CAS<br/>审计监控<br/>权限、组织<br/>参数、多租户<br/>字典管理]
REV_CORE[【SYS-002 营收业务子系统-营收核心模块群】<br/>客户管理<br/>抄表开账<br/>营业收费<br/>账务处理<br/>发票催缴<br/>统计代收<br/>业务参数配置]
CS_MOD[【SYS-002 营收业务子系统-客户服务模块群】<br/>账户绑定管理<br/>信息查询服务<br/>在线缴费服务<br/>业务办理服务]
APP[【SYS-003 手机抄表APP】<br/>移动抄表<br/>调用外部AI服务<br/>现场作业<br/>数据同步<br/>离线支持]
WECHAT[【SYS-004 微网厅子系统】<br/>账户绑定管理<br/>信息查询服务<br/>在线缴费服务<br/>业务办理服务]
WO_CENTER[【SYS-005 工单管理子系统】<br/>统一工单中心<br/>创建/派发/处理/验收<br/>监控预警]
METER_SYS[【SYS-006 表务管理子系统】 <br/>设备档案<br/>表务全生命周期管理]
INSTALL_SYS[【SYS-007 报装业务子系统】<br/>报装流程<br/>合同签订与电子签章<br/>工程管理<br/>档案管理]
PAY_SYS[【SYS-009 支付与银行结算子系统】<br/>聚合支付/退款/回调<br/>渠道适配/代扣/对账/加解密]
INVOICE_SYS[【SYS-008 发票服务子系统】<br/>统一开票网关<br/>供应商适配器<br/>回执/存证]
MSG_SYS[【SYS-010 消息服务子系统】<br/>统一短信/邮件/推送<br/>模板与回执]
%% 统一平台权限管理
UP -.->|用户认证/权限| REV_CORE
UP -.->|用户认证/权限| CS_MOD
UP -.->|用户认证/权限| APP
UP -.->|用户认证/权限| WECHAT
UP -.->|用户认证/权限| WO_CENTER
UP -.->|用户认证/权限| METER_SYS
UP -.->|用户认证/权限| INSTALL_SYS
%% 系统间协作
REV_CORE -.->|库存状态/换表结果| METER_SYS
REV_CORE -.->|支付/退款/代扣/对账| PAY_SYS
REV_CORE -.->|立户/工程结果| INSTALL_SYS
REV_CORE -.->|开票申请/作废/红冲| INVOICE_SYS
REV_CORE -.->|业务异常/流程触发| WO_CENTER
CS_MOD -.->|客户申请/服务工单| WO_CENTER
WO_CENTER -.->|换表派发| METER_SYS
WO_CENTER -.->|报装派发| INSTALL_SYS
WO_CENTER -.->|处理结果回填| REV_CORE
WO_CENTER -.->|结果通知| CS_MOD
%% 手机APP与营收业务系统协作关系
APP -.->|抄表数据/收费数据| REV_CORE
APP -.->|现场工单/问题上报| WO_CENTER
WO_CENTER -.->|工单派发/任务分配| APP
REV_CORE -.->|抄表任务/客户信息| APP
%% 微网厅与营收业务系统协作关系
WECHAT -.->|账单查询/在线缴费| REV_CORE
WECHAT -.->|业务申请/服务工单| WO_CENTER
REV_CORE -.->|账单信息/缴费状态| WECHAT
INVOICE_SYS -.->|电子发票链接/推送| WECHAT
MSG_SYS -.->|短信/邮件/推送| WECHAT
REV_CORE -.->|推送| MSG_SYS
WO_CENTER -.->|推送| MSG_SYS
CS_MOD -.->|推送| MSG_SYS
METER_SYS -.->|推送| MSG_SYS
INSTALL_SYS -.->|推送| MSG_SYS
INVOICE_SYS -.->|推送| MSG_SYS
PAY_SYS -.->|推送| MSG_SYS
WO_CENTER -.->|办理进度/结果通知| WECHAT
%% 样式定义
classDef coreSystem fill:#e3f2fd,stroke:#1976d2,stroke-width:4px,color:#000
classDef mobileSystem fill:#e8f5e8,stroke:#388e3c,stroke-width:3px,color:#000
classDef wechatSystem fill:#f3e5f5,stroke:#9c27b0,stroke-width:3px,color:#000
classDef platform fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class REV_CORE,CS_MOD coreSystem
class APP mobileSystem
class WECHAT wechatSystem
class UP platform
class WO_CENTER,METER_SYS,INSTALL_SYS coreSystem
统一平台对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-UP-001 | OAuth2认证接口 | 基于OAuth2.0的统一认证服务 | 所有子系统 | HTTP/REST | 客户端凭证、授权类型、作用域 | 访问令牌、刷新令牌、过期时间 |
| IF-UP-002 | 组织架构接口 | 获取部门和员工组织信息 | 营收/工单/表务系统 | HTTP/REST | 组织ID、查询层级、用户权限 | 组织树结构、员工信息、权限范围 |
| IF-UP-003 | 权限验证接口 | 验证用户操作权限和资源访问 | 所有子系统 | HTTP/REST | 用户Token、操作资源、权限类型 | 验证结果、权限详情、有效期限 |
| IF-UP-004 | 数据字典接口 | 提供系统基础数据字典服务 | 所有子系统 | HTTP/REST | 字典类型、字典编码、租户ID | 字典数据、层级关系、多语言支持 |
| IF-UP-005 | 多租户管理接口 | 多租户数据隔离和权限管理 | 所有子系统 | HTTP/REST | 租户ID、操作类型、数据范围 | 租户配置、数据权限、隔离策略 |
营收业务系统对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-REV-001 | 客户信息查询接口 | 查询客户档案、账户状态、联系人与水表绑定关系 | 柜台/客户渠道/工单 | HTTPS REST | 客户ID、客户编号、手机号、查询类型 | 客户档案、账户信息、联系人列表、水表绑定关系 |
| IF-REV-004 | 抄表数据提交接口 | 提交人工或远传抄表数据并触发校验 | 手机抄表APP/集抄系统 | HTTPS REST | 抄表任务ID、水表ID、读数、图片证据、GPS位置 | 上传结果、校验状态、异常标记 |
| IF-REV-005 | 账单生成接口 | 根据抄表结果、水价模板和费用组成生成账单 | 开账任务/批量任务 | HTTPS REST | 抄表批次、账期、客户范围、应收日期 | 账单结果、失败清单、生成汇总 |
| IF-REV-006 | 缴费处理接口 | 创建收费记录并核销账单 | 柜台/线上渠道 | HTTPS REST | 客户ID、账单ID列表、支付方式、实收金额 | 收费结果、核销状态、交易流水 |
| IF-REV-008 | 发票申请接口 | 发起电子发票申请并接收票据状态回写 | 柜台/客户渠道 | HTTPS REST | 客户ID、账单ID列表、开票抬头、税号、邮箱 | 发票申请结果、票据状态、下载地址 |
| IF-REV-011 | 银行代收协同接口 | 发起代扣、回盘、对账、结算协同 | 银行代收模块/SYS-009 | HTTPS REST / 文件交换 | 批次号、渠道编码、账期、账单明细 | 批次状态、回盘结果、对账差异、结算结果 |
| IF-REV-012 | 业务参数配置接口 | 查询和维护价格模板、优惠方案、业务参数配置 | 管理后台/参数管理端 | HTTPS REST | 参数分类、模板编码、站点范围 | 参数明细、模板信息、更新结果 |
| IF-CS-001 | 账户绑定接口 | 绑定、解绑、切换默认客户 | 微信/支付宝/微网厅 | HTTPS REST | 渠道用户标识、客户编号、身份校验信息 | 绑定结果、默认客户信息、绑定关系 |
| IF-CS-002 | 历史账单查询接口 | 查询账单、欠费、用水历史、缴费记录 | 客户端 | HTTPS REST | 客户ID、账期范围、查询类型 | 账单列表、欠费金额、用水趋势、缴费记录 |
| IF-CS-003 | 在线支付下单接口 | 创建微信/支付宝线上支付订单 | 客户端 | HTTPS REST | 客户ID、账单ID列表、支付渠道、支付金额 | 订单号、支付二维码/预支付信息、订单状态 |
| IF-CS-004 | 发票申请接口 | 提交电子发票申请、查询发票状态 | 客户端 | HTTPS REST | 缴费订单号、发票抬头、邮箱/手机号 | 发票状态、发票链接、申请结果 |
| IF-CS-005 | 网点与业务办理接口 | 查询营业网点、预约信息、可办事项 | 客户端 | HTTPS REST | 行政区划、关键字、业务类型 | 网点列表、营业时间、可办业务、预约信息 |
| IF-CS-006 | 业务办理进度接口 | 提交业务申请、查询办理进度与附件 | 客户端 | HTTPS REST | 申请类型、客户资料、附件清单、申请单号 | 受理结果、流程状态、进度轨迹、补件要求 |
| IF-CS-007 | 柜面扫码支付接口 | 创建柜面扫码支付订单并回写结果 | 柜台终端/营业前台 | HTTPS REST | 柜台编号、账单ID列表、订单金额、支付渠道 | 订单号、支付状态、回写结果 |
手机抄表APP对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-MOBILE-001 | 任务下载接口 | 下载抄表任务与客户信息 | 手机抄表APP | HTTP/REST | 抄表员ID、任务日期范围 | 任务列表、客户信息、水表信息 |
| IF-MOBILE-002 | 抄表数据上传接口 | 上传抄表数据与现场图片 | 手机抄表APP | HTTP/REST | 抄表记录、现场图片、GPS位置 | 上传状态、数据校验结果 |
| IF-MOBILE-003 | 工单接收接口 | 接收工单任务 | 工单管理系统 | HTTP/REST | 工单ID、工单类型、派发信息 | 接收确认、预计处理时间 |
| IF-MOBILE-004 | 工单回填接口 | 回填处理结果与附件 | 手机抄表APP | HTTP/REST | 工单ID、处理结果、现场图片 | 回填状态、审核结果 |
| IF-MOBILE-005 | 离线同步接口 | 离线数据同步 | 手机抄表APP | HTTP/REST | 离线数据包、时间戳 | 同步状态、冲突处理结果 |
微网厅系统对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-WECHAT-001 | 微信授权登录接口 | 通过微信OAuth2.0实现用户授权登录 | 微网厅系统 | HTTP/REST | 微信授权码、AppID、AppSecret | 用户OpenID、访问令牌、用户基本信息 |
| IF-WECHAT-002 | 微信支付接口 | 调用微信支付完成在线缴费 | 微网厅系统 | HTTP/REST | 订单信息、支付金额、用户OpenID | 预支付交易会话标识、支付结果 |
| IF-WECHAT-005 | 客户信息查询接口 | 查询绑定客户的基本信息 | 微网厅系统 | HTTP/REST | 客户编号/手机号/OpenID | 客户详细信息、绑定状态 |
| IF-WECHAT-006 | 账单信息查询接口 | 查询客户账单和欠费信息 | 微网厅系统 | HTTP/REST | 客户编号、查询月份范围 | 账单明细、欠费金额、阶梯用量 |
| IF-WECHAT-007 | 缴费处理接口 | 处理微信端发起的缴费业务 | 微网厅系统 | HTTP/REST | 客户编号、缴费金额、支付方式 | 缴费订单号、支付状态、发票信息 |
| IF-WECHAT-008 | 业务申请提交接口 | 提交报装、过户等业务申请 | 微网厅系统 | HTTP/REST | 申请类型、客户资料、申请材料 | 申请单号、预审结果、处理时限 |
| IF-WECHAT-009 | 电子发票申请接口 | 申请开具电子发票 | 微网厅系统 | HTTP/REST | 缴费订单号、发票抬头信息 | 电子发票PDF、发票代码和号码 |
| IF-WECHAT-011 | 账户绑定验证接口 | 验证客户身份并绑定微信账户 | 微网厅系统 | HTTP/REST | 客户编号、身份证号、手机号码 | 绑定验证结果、绑定关系ID |
工单管理系统对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-WO-001 | 工单创建接口 | 创建各类业务工单 | 营收/表务/报装/微网厅/APP | HTTP/REST | 工单类型、客户信息、问题描述、紧急程度 | 工单编号、预计处理时间、派发状态 |
| IF-WO-002 | 工单派发接口 | 向处理人/APP派发任务 | 工单管理系统 | HTTP/REST | 工单ID、处理人员、预期完成时间 | 派发结果、接收确认状态 |
| IF-WO-003 | 工单回填接口 | 回填处理结果与附件 | APP/各业务系统 | HTTP/REST | 工单ID、处理结果、现场图片、完成时间 | 回填状态、审核结果、客户满意度 |
| IF-WO-004 | 工单查询接口 | 查询工单状态和处理轨迹 | 各业务系统/客户端 | HTTP/REST | 工单编号/客户编号、查询条件 | 工单状态、处理进度、历史轨迹 |
表务管理系统对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-METER-001 | 库存查询接口 | 查询仓库库存状态和预警信息 | 工单/营收/报装系统 | HTTP/REST | 仓库编号、水表型号、库存状态 | 库存明细、预警状态、可用数量 |
| IF-METER-002 | 领用出库接口 | 支持换表/施工水表领用出库 | 工单管理系统 | HTTP/REST | 领用单号、水表型号、领用数量、领用人 | 出库状态、库存余量、领用凭证 |
| IF-METER-003 | 档案查询接口 | 查询水表设备档案信息 | 营收/工单/报装系统 | HTTP/REST | 水表编号、客户编号、查询类型 | 设备档案、安装历史、维修记录 |
报装业务系统对外接口(SYS-007)
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-INST-001 | 报装申请接口 | 提交报装申请信息与材料 | 微网厅/营收系统 | HTTP/REST | 申请人信息、用水地址、申请材料、联系方式 | 申请单号、预审结果、处理时限 |
| IF-INST-002 | 踏勘派工接口 | 现场踏勘任务派发 | 工单管理系统 | HTTP/REST | 报装单号、踏勘要求、预约时间 | 派工结果、踏勘人员、预计完成时间 |
| IF-INST-003 | 签章接口 | 调用CA系统进行电子签章 | CA电子签章系统 | HTTP/REST | 合同文档、签章类型、签章方信息 | 签章状态、签章文档、存证信息 |
| IF-INST-004 | 签章回执接口 | 接收CA系统签章完成回执 | CA电子签章系统 | HTTP/REST | 签章任务ID、签章结果、时间戳 | 接收确认、存档状态 |
| IF-INST-006 | 验收通水接口 | 验收合格并开通供水 | 营收业务系统 | HTTP/REST | 报装单号、验收结果、水表信息 | 开户结果、客户编号、通水状态 |
发票服务子系统对外接口
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-INV-001 | 统一开票接口 | 统一受理电子发票开具请求 | 营收业务系统/微网厅 | HTTP/REST | 开票信息、购买方信息、商品明细、税额 | 发票申请ID、开票状态、预计完成时间 |
| IF-INV-002 | 作废红冲接口 | 发票作废和红字发票处理 | 营收业务系统 | HTTP/REST | 原发票号码、作废/红冲原因、操作类型 | 处理结果、新发票信息、作废状态 |
| IF-INV-003 | 发票查询接口 | 查询发票状态和下载链接 | 营收系统/微网厅/客户端 | HTTP/REST | 发票代码、发票号码、查询类型 | 发票状态、PDF下载链接、发票详情 |
| IF-INV-004 | 回执推送接口 | 接收供应商发票处理回执 | 航天信息/博思等供应商 | HTTP/REST | 回执ID、处理结果、发票文件、时间戳 | 接收确认、存储状态、通知结果 |
支付与银行结算子系统对外接口(SYS-009)
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-PAY-001 | 统一支付下单接口 | 统一处理各渠道支付下单请求 | 营收系统/微网厅 | HTTP/REST | 订单信息、支付方式、支付金额、用户标识 | 预支付订单号、支付参数、二维码 |
| IF-PAY-002 | 统一关单接口 | 订单关闭和撤销处理 | 营收系统/微网厅 | HTTP/REST | 订单号、关闭原因、操作类型 | 关单状态、退款信息、处理结果 |
| IF-PAY-003 | 统一退款接口 | 原路退款和部分退款处理 | 营收系统/微网厅 | HTTP/REST | 原订单号、退款金额、退款原因 | 退款单号、退款状态、预计到账时间 |
| IF-PAY-004 | 支付回调接口 | 接收渠道支付结果回调 | 微信/支付宝/银联 | HTTP/REST | 回调数据、签名、时间戳 | 处理确认、业务更新状态 |
| IF-PAY-005 | 批量代扣送盘接口 | 银行批量代扣文件发送 | 营收业务系统 | HTTP/REST/SFTP | 代扣清单、客户签约信息、扣款金额 | 送盘状态、批次号、预计处理时间 |
| IF-PAY-006 | 批量代扣回盘接口 | 银行代扣结果回盘处理 | 银行系统 | HTTP/REST/SFTP | 回盘文件、处理结果、失败原因 | 解析结果、状态更新、异常处理 |
| IF-PAY-007 | 批量对账文件接口 | 银行对账文件处理分析 | 银行系统/营收系统 | HTTP/REST/SFTP | 对账文件、对账日期、差异规则 | 对账结果、差异明细、调整建议 |
消息服务子系统对外接口(SYS-010)
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-MSG-001 | 短信发送接口 | 发送短信通知消息 | 营收/微网厅/工单系统 | HTTP/REST | 手机号、消息内容、模板ID、发送时间 | 发送状态、消息ID、预计到达时间 |
| IF-MSG-002 | 邮件发送接口 | 发送邮件通知消息 | 营收/工单/报装系统 | HTTP/REST | 邮箱地址、邮件主题、邮件内容、附件 | 发送状态、邮件ID、送达确认 |
| IF-MSG-003 | 站内信接口 | 发送系统站内消息 | 各业务系统 | HTTP/REST | 用户ID、消息标题、消息内容、消息类型 | 发送结果、消息状态、已读状态 |
| IF-MSG-005 | 外部系统对接接口 | 对接OA/智水擎等外部系统 | OA系统/智水擎/水投数科APP | HTTP/REST | 系统标识、消息类型、接收用户、消息内容 | 对接状态、消息分发结果 |
统一平台是整个福建水务营收系统的基础支撑平台,负责为所有子系统提供统一的用户认证、权限管理、组织管理等基础服务。
设计目标:
功能范围:
技术约束:
性能约束:
安全约束:
接口设计说明:
统一平台为整个系统提供基础认证、权限、组织、字典等服务能力,采用OAuth2.0+CAS统一认证机制,支持多租户数据隔离和权限管理,为各业务子系统提供标准化的基础服务接口。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-UP-001 | 用户认证接口 | 用户登录认证和JWT令牌生成 | 所有业务子系统 | HTTP/REST | 用户名、密码、机构编号、验证码 | JWT令牌、用户信息、权限范围 |
| IF-UP-002 | 权限验证接口 | 验证用户访问资源权限 | 所有业务子系统 | HTTP/REST | JWT令牌、资源URL、操作类型 | 权限验证结果、资源访问权限 |
| IF-UP-003 | 用户信息接口 | 获取用户基本信息 | 营收/工单/表务系统 | HTTP/REST | 用户ID、查询范围 | 用户详细信息、角色权限 |
| IF-UP-004 | 组织架构接口 | 获取部门和员工组织信息 | 营收/工单/表务系统 | HTTP/REST | 部门ID、查询层级 | 部门信息、员工列表、权限范围 |
| IF-UP-005 | 实时通知接口 | 推送系统通知消息 | 所有业务子系统 | WebSocket | 消息内容、接收用户、消息类型 | 推送结果、送达状态 |
架构设计:
统一平台采用基于Spring Boot的微服务架构,使用Spring Security + OAuth2.0+CAS协议实现认证授权,Redis存储会话和缓存数据,支持水平扩展。
技术选型:
统一平台采用分层架构设计,从下至上分为数据层、业务层、服务层和应用层,确保系统的可维护性和可扩展性。
graph TB
subgraph "统一平台架构"
subgraph "应用层"
A1[Web管理界面]
A2[移动端界面]
A3[API网关]
end
subgraph "服务层"
B1[认证服务]
B2[权限服务]
B3[用户服务]
B4[组织服务]
B5[监控服务]
end
subgraph "业务层"
C1[登录业务]
C2[权限业务]
C3[用户管理业务]
C4[组织管理业务]
C5[系统监控业务]
end
subgraph "数据层"
D1[(用户数据库)]
D2[(权限数据库)]
D3[(日志数据库)]
D4[Redis缓存]
end
end
A1 --> B1
A2 --> B1
A3 --> B2
B1 --> C1
B2 --> C2
B3 --> C3
B4 --> C4
B5 --> C5
C1 --> D1
C2 --> D2
C3 --> D1
C4 --> D1
C5 --> D3
C1 --> D4
C2 --> D4
| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 |
|---|---|---|---|
| UP-001 | 单点登录模块 | 用户认证、授权管理、多种登录方式支持 | 自行开发 |
| UP-002 | 系统管理模块 | 用户、角色、部门、菜单等基础数据管理 | 自行开发 |
| UP-003 | 权限控制模块 | RBAC权限模型、菜单权限、数据权限 | 自行开发 |
| UP-004 | 租户管理模块 | 多租户数据隔离、租户配置管理 | 自行开发 |
| UP-005 | 系统监控模块 | 在线用户监控、系统性能监控、操作日志 | 自行开发 |
权限管理功能群:
权限管理功能群是统一平台的核心,实现了完整的RBAC权限控制模型。
graph TB
subgraph "权限管理功能群"
A[UP-002 系统管理模块-用户管理功能]
B[UP-003 系统管理模块-角色管理功能]
C[UP-003 系统管理模块-菜单管理功能]
D[UP-004 系统管理模块-部门管理功能]
E[UP-005 权限控制模块-权限控制功能]
end
A -->|用户角色关联| B
B -->|角色权限关联| C
A -->|用户部门关联| D
E -->|权限验证| A
E -->|权限验证| B
E -->|权限验证| C
A -.->|数据权限| D
B -.->|功能权限| C
功能群说明:
系统监控功能群:
系统监控功能群提供对整个系统运行状态的监控和管理。
graph TB
subgraph "系统监控功能群"
F[在线用户监控]
G[系统性能监控]
H[操作日志管理]
I[系统配置管理]
end
F -->|用户行为| H
G -->|性能数据| H
I -->|配置变更| H
F -.->|实时监控| G
H -.->|日志分析| G
功能描述:
单点登录模块基于OAuth2.0+CAS协议实现,提供统一的用户认证入口,支持多种登录方式和安全策略。该模块是整个系统安全的第一道防线,确保只有合法用户才能访问系统。
主要功能:
技术实现:
功能描述:
系统管理模块提供系统基础数据的维护功能,包括用户、角色、部门、菜单等核心数据的管理。
主要功能:
业务规则:
功能描述:
权限控制模块基于”主库+租户库”的多数据库架构,实现RBAC(基于角色的访问控制)模型的权限管理。通过统一的权限控制中心与租户独立的权限数据相结合,提供细粒度的功能权限和数据权限控制,同时支持跨租户用户授权的复杂场景。
多库权限架构设计:
graph TB
subgraph "主库(Master Database)"
MP[统一平台权限]
MT[租户管理权限]
MU[跨租户用户关系]
MA[全局审计日志]
end
subgraph "租户库A(Tenant-A Database)"
TA_U[用户表 system_user]
TA_R[角色表 system_role]
TA_UR[用户角色关系 system_user_role]
TA_RM[角色菜单权限 system_role_menu]
TA_D[部门表 system_dept]
end
subgraph "租户库B(Tenant-B Database)"
TB_U[用户表 system_user]
TB_R[角色表 system_role]
TB_UR[用户角色关系 system_user_role]
TB_RM[角色菜单权限 system_role_menu]
TB_D[部门表 system_dept]
end
subgraph "权限控制引擎"
PE[权限验证引擎]
PC[权限缓存层]
PR[权限路由器]
end
MP -.->|统一平台管理| PE
MT -.->|租户权限元数据| PE
MU -.->|跨租户关系| PE
PE -->|权限路由| PR
PR -->|租户A权限| TA_U
PR -->|租户B权限| TB_U
PE --> PC
PC -.->|缓存同步| TA_R
PC -.->|缓存同步| TB_R
主要功能:
多库数据模型:
主库权限数据结构:
1. 租户与用户关系表(tenant_user_relation) - 表功能:管理跨租户用户授权关系,记录用户在不同租户中的授权状态 - 核心字段: - 主键标识:唯一标识每条授权关系 - 租户标识:指向被授权的目标租户 - 用户标识:指向被授权的用户 - 授权类型:区分所有者(owner)、成员(member)、访客(guest)三种类型 - 授权人标识:记录执行授权操作的管理员 - 授权时间:记录授权建立的时间戳 - 过期时间:设置授权的有效期限,支持临时访问 - 状态标识:标记授权关系是否有效,支持动态启用/禁用
2. 全局权限配置表(global_permission) - 表功能:维护系统级别的权限定义,为各租户提供统一的权限基准 - 核心字段: - 主键标识:唯一标识每个权限配置 - 权限代码:系统内唯一的权限标识符,如”USER_MANAGE”、“BILL_QUERY” - 权限名称:面向用户的权限描述,支持多语言 - 权限类型:区分菜单权限(menu)、按钮权限(button)、接口权限(api) - 父权限标识:构建权限树形结构,支持权限继承 - 排序序号:控制权限在界面上的显示顺序 - 状态标识:标记权限是否启用,支持权限的动态管理
租户库权限数据结构:
1. 用户基础信息表(system_user) - 表功能:存储租户内部的用户基础信息和账户状态 - 核心字段: - 主键标识:租户内用户的唯一标识 - 用户账号:登录用户名,在租户内保持唯一性 - 密码哈希:加密存储的用户密码 - 用户昵称:显示名称,提升用户体验 - 部门标识:关联用户所属的组织部门 - 电子邮箱:用户联系邮箱,支持邮件通知 - 手机号码:用户联系电话,支持短信验证 - 用户性别:基础个人信息 - 账户状态:标记用户是否启用、锁定等状态 - 租户编号:明确用户所属的租户,支持数据隔离
2. 角色定义表(system_role) - 表功能:定义租户内的角色体系,实现权限的集中管理 - 核心字段: - 主键标识:租户内角色的唯一标识 - 角色名称:角色的显示名称,如”水务管理员”、“收费员” - 角色代码:系统内部的角色标识符,用于权限验证 - 显示顺序:控制角色在选择列表中的排序 - 数据范围:定义角色的数据访问范围(全部、本部门、仅本人等) - 角色状态:标记角色是否启用 - 角色类型:区分系统内置角色和自定义角色 - 租户编号:明确角色所属的租户
3. 用户角色关联表(system_user_role) - 表功能:建立用户与角色的多对多关联关系 - 核心字段: - 主键标识:唯一标识每个用户-角色关联关系 - 用户标识:关联到具体的用户记录 - 角色标识:关联到具体的角色记录 - 租户编号:确保关联关系在正确的租户范围内
4. 角色菜单权限关联表(system_role_menu) - 表功能:定义角色具体拥有的菜单和功能权限 - 核心字段: - 主键标识:唯一标识每个角色-菜单权限关联 - 角色标识:关联到具体的角色记录 - 菜单标识:关联到具体的菜单或功能权限 - 租户编号:确保权限配置在正确的租户范围内
权限验证流程:
flowchart TD
A[用户请求] --> B{用户已登录?}
B -->|否| C[跳转登录页面]
B -->|是| D[解析JWT令牌]
D --> E[获取当前租户上下文]
E --> F{是否跨租户操作?}
F -->|否| G[连接当前租户数据库]
F -->|是| H[验证跨租户授权关系]
H --> I{授权关系有效?}
I -->|否| J[权限拒绝]
I -->|是| K[切换目标租户上下文]
G --> L[查询用户权限]
K --> L
L --> M[权限缓存查询]
M --> N{缓存命中?}
N -->|是| O[返回缓存权限]
N -->|否| P[数据库查询权限]
P --> Q[更新权限缓存]
Q --> O
O --> R[权限验证]
R --> S{权限验证通过?}
S -->|是| T[允许访问]
S -->|否| J
T --> U[记录访问日志]
J --> V[记录拒绝日志]
技术实现:
核心业务规则:
功能描述:
租户管理模块基于”主库+租户库”的多数据库架构,提供完整的多租户架构支持,实现租户间物理级别的数据隔离、配置管理,以及跨租户用户授权等高级功能。该模块是实现集团化管理的核心基础设施。
多库租户架构设计:
graph TB
subgraph "主库(Master Database)"
MT[租户基础信息 sys_tenant]
MTC[租户配置参数 sys_tenant_config]
MTD[租户数据库映射 sys_tenant_database]
MTU[跨租户用户关系 tenant_user_relation]
MTA[全局审计日志 sys_audit_log]
end
subgraph "租户库A(福州水务)"
TA_USER[租户用户 tenant_user]
TA_DEPT[组织架构 tenant_department]
TA_CONFIG[业务配置 tenant_business_config]
TA_BIZ[业务数据表群]
end
subgraph "租户库B(厦门水务)"
TB_USER[租户用户 tenant_user]
TB_DEPT[组织架构 tenant_department]
TB_CONFIG[业务配置 tenant_business_config]
TB_BIZ[业务数据表群]
end
subgraph "租户管理引擎"
TME[租户管理引擎]
TR[租户路由器]
TCC[跨库事务协调器]
TDM[数据库动态管理器]
end
MT -.->|租户信息管理| TME
MTC -.->|配置参数管理| TME
MTD -.->|数据库映射| TME
MTU -.->|跨租户授权| TME
TME --> TR
TR -->|路由A| TA_USER
TR -->|路由B| TB_USER
TME --> TCC
TCC -.->|分布式事务| TA_BIZ
TCC -.->|分布式事务| TB_BIZ
TME --> TDM
TDM -.->|动态管理| TA_CONFIG
TDM -.->|动态管理| TB_CONFIG
主要功能:
跨租户用户授权业务流程:
graph TD
A[租户A管理员] --> B{选择授权用户}
B --> C[搜索其他租户用户]
C --> D[选择租户B的用户X]
D --> E[配置在租户A中的角色]
E --> H[设置数据权限范围]
H --> I[建立用户X在租户A的权限关系]
I --> J[用户X可访问租户A系统]
J --> K[用户X可在租户A/B间切换]
M[用户X登录] --> N{选择租户}
N --> O[租户A - 角色A权限]
N --> P[租户B - 角色B权限]
多库租户管理数据模型:
主库租户管理数据结构:
1. 租户基础信息表(sys_tenant) - 表功能:统一管理所有租户的基础信息和层级关系 - 核心字段: - 主键标识:全系统唯一的租户标识符 - 租户编码:业务层面的租户唯一编码,格式规范化 - 租户名称:面向用户的租户显示名称 - 父租户标识:支持母子公司层级结构 - 租户类型:区分集团总部、分公司、子公司等类型 - 联系信息:租户联系人、电话、邮箱等 - 数据库配置:租户专属数据库的连接配置信息 - 状态标识:租户启用、禁用、过期等状态 - 创建信息:创建时间、创建人等审计信息
2. 租户配置参数表(sys_tenant_config) - 表功能:管理租户级别的业务参数和系统配置 - 核心字段: - 主键标识:配置项的唯一标识 - 租户标识:关联的租户信息 - 配置分类:区分业务参数、系统配置、集成配置等 - 配置键名:配置项的标识符 - 配置值:具体的配置内容,支持JSON格式 - 配置描述:配置项的说明信息 - 是否加密:敏感配置的加密标识 - 生效状态:配置是否启用
3. 租户数据库映射表(sys_tenant_database) - 表功能:管理租户与数据库实例的映射关系 - 核心字段: - 主键标识:映射关系的唯一标识 - 租户标识:关联的租户信息 - 数据库标识:租户专属数据库的标识符 - 连接配置:数据库连接字符串和参数 - 读写配置:支持读写分离的配置信息 - 容量配置:数据库容量限制和监控阈值 - 备份配置:备份策略和恢复配置 - 状态信息:数据库运行状态和健康检查
租户库业务数据结构:
1. 租户用户信息表(tenant_user) - 表功能:存储租户内部的用户信息和组织关系 - 核心字段: - 主键标识:租户内用户的唯一标识 - 全局用户标识:关联主库中的用户信息 - 用户编号:租户内部的用户编号 - 部门标识:用户所属的组织部门 - 职位信息:用户在租户内的职位和级别 - 入职信息:用户在租户的入职时间和状态 - 权限范围:用户在租户内的数据访问范围 - 业务角色:用户在业务流程中的角色定位
2. 租户组织架构表(tenant_department) - 表功能:管理租户内部的组织架构和部门层级 - 核心字段: - 主键标识:部门的唯一标识 - 部门编码:租户内部的部门编码 - 部门名称:部门的显示名称 - 父部门标识:构建部门层级结构 - 部门层级:部门在组织架构中的层级深度 - 负责人信息:部门负责人和联系方式 - 业务范围:部门负责的业务领域 - 状态信息:部门的启用状态和变更历史
3. 租户业务配置表(tenant_business_config) - 表功能:管理租户特定的业务参数和流程配置 - 核心字段: - 主键标识:配置项的唯一标识 - 业务模块:配置所属的业务模块 - 配置类型:区分费率、流程、规则等配置类型 - 配置内容:具体的业务配置参数 - 生效范围:配置的适用范围和条件 - 生效时间:配置的生效和失效时间 - 审核信息:配置变更的审核记录
跨租户授权核心规则:
多库架构技术实现:
1. 主库租户管理引擎 - 租户信息统一管理:主库集中管理所有租户的基础信息、配置参数、层级关系 - 数据库实例管理:动态创建、配置和管理租户专属数据库实例 - 跨库事务协调:分布式事务管理器确保跨租户操作的数据一致性 - 租户路由器:根据用户上下文自动路由到正确的租户数据库
2. 租户数据库动态管理 - 数据库实例创建:基于模板自动为新租户创建独立数据库实例 - Schema同步管理:统一的数据库结构版本管理和升级机制 - 连接池管理:每个租户数据库的独立连接池配置和监控 - 数据迁移工具:支持租户数据的导入、导出和迁移功能
3. 多租户会话管理 - 租户上下文传递:ThreadLocal + Request Header的租户标识传递机制 - 会话状态隔离:Redis分布式缓存的租户命名空间隔离 - 权限缓存分层:主库权限 + 租户权限的两级缓存策略 - 切换状态同步:租户切换时的权限重载和会话状态更新
4. 跨租户授权协调 - 授权关系存储:主库统一存储和管理所有跨租户授权关系 - 权限验证引擎:跨库权限验证和数据访问控制 - 授权流程引擎:支持复杂的多级审批和自动化授权流程 - 审计日志统一:所有跨租户操作的统一审计和监控
多库架构业务规则:
1. 租户管理规则 - 租户编码全局唯一,格式:水务公司简称+年份+3位流水号 - 每个租户必须拥有独立的数据库实例,不允许共享 - 租户创建时自动生成标准的数据库Schema结构 - 租户删除前必须先完成数据备份和迁移确认
2. 数据隔离规则 - 租户数据库之间严格物理隔离,禁止直接跨库访问 - 跨租户数据访问必须通过主库的授权关系验证 - 租户数据库连接池独立配置,避免资源争用 - 敏感数据在租户库中加密存储,密钥独立管理
3. 用户授权规则 - 用户在单个租户下最多可拥有5个角色 - 跨租户授权操作需要双方租户管理员审批 - 一个用户最多可以绑定10个租户 - 用户在不同租户下的身份信息完全独立 - 跨租户授权关系统一在主库中管理和审计
4. 事务协调规则 - 涉及多个租户的操作必须使用分布式事务 - 单租户内的操作在租户库内保证ACID特性 - 跨库操作失败时自动回滚所有相关变更 - 重要业务操作需要在主库记录操作日志
5. 性能管理规则 - 每个租户数据库设置容量上限和性能监控 - 大租户可配置读写分离和分库分表策略 - 租户切换操作限制频率,防止系统资源滥用 - 定期清理过期的授权关系和会话数据
功能描述:
系统监控模块提供全面的系统运行状态监控、性能指标收集和运维管理功能。
主要功能:
技术实现:
营收业务系统是整个福建水务营收系统的核心业务系统,负责处理从客户管理到账务处理的完整营收业务流程,整合了原营收系统、表务系统、报装系统、客户服务、微网厅等所有核心业务功能。
设计目标:
功能范围:
营收业务系统包含两大核心模块群,实现水务企业营收业务闭环:
IF-REV-007
承接,并按共性能力先统一、场景能力再分批推进核心业务流程: 客户建档 → 抄表录入 → 复核开账 → 营业收费 → 账务处理 → 发票管理 → 催缴管理
技术约束:
性能约束:
安全约束:
接口设计说明:
营收业务系统作为核心业务平台,整合客户管理、账务处理、抄表计费、工单管理、报装业务等完整业务流程。系统提供标准化的RESTful接口,支持多租户业务配置,确保水务营收业务的高效运营和数据一致性。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-REV-001 | 客户信息查询接口 | 查询客户档案、账户状态、联系人与水表绑定关系 | 柜台/客户渠道/工单 | HTTPS REST | 客户ID、客户编号、手机号、查询类型 | 客户档案、账户信息、联系人列表、水表绑定关系 |
| IF-REV-004 | 抄表数据提交接口 | 提交人工或远传抄表数据并触发校验 | 手机抄表APP/集抄系统 | HTTPS REST | 抄表任务ID、水表ID、读数、图片证据、GPS位置 | 上传结果、校验状态、异常标记 |
| IF-REV-005 | 账单生成接口 | 根据抄表结果、水价模板和费用组成生成账单 | 开账任务/批量任务 | HTTPS REST | 抄表批次、账期、客户范围、应收日期 | 账单结果、失败清单、生成汇总 |
| IF-REV-006 | 缴费处理接口 | 创建收费记录并核销账单 | 柜台/线上渠道 | HTTPS REST | 客户ID、账单ID列表、支付方式、实收金额 | 收费结果、核销状态、交易流水 |
| IF-REV-008 | 发票申请接口 | 发起电子发票申请并接收票据状态回写 | 柜台/客户渠道 | HTTPS REST | 客户ID、账单ID列表、开票抬头、税号、邮箱 | 发票申请结果、票据状态、下载地址 |
| IF-REV-011 | 银行代收协同接口 | 发起代扣、回盘、对账、结算协同 | 银行代收模块/SYS-009 | HTTPS REST / 文件交换 | 批次号、渠道编码、账期、账单明细 | 批次状态、回盘结果、对账差异、结算结果 |
| IF-REV-012 | 业务参数配置接口 | 查询和维护价格模板、优惠方案、业务参数配置 | 管理后台/参数管理端 | HTTPS REST | 参数分类、模板编码、站点范围 | 参数明细、模板信息、更新结果 |
| IF-CS-001 | 账户绑定接口 | 绑定、解绑、切换默认客户 | 微信/支付宝/微网厅 | HTTPS REST | 渠道用户标识、客户编号、身份校验信息 | 绑定结果、默认客户信息、绑定关系 |
| IF-CS-002 | 历史账单查询接口 | 查询账单、欠费、用水历史、缴费记录 | 客户端 | HTTPS REST | 客户ID、账期范围、查询类型 | 账单列表、欠费金额、用水趋势、缴费记录 |
| IF-CS-003 | 在线支付下单接口 | 创建微信/支付宝线上支付订单 | 客户端 | HTTPS REST | 客户ID、账单ID列表、支付渠道、支付金额 | 订单号、支付二维码/预支付信息、订单状态 |
| IF-CS-004 | 发票申请接口 | 提交电子发票申请、查询发票状态 | 客户端 | HTTPS REST | 缴费订单号、发票抬头、邮箱/手机号 | 发票状态、发票链接、申请结果 |
| IF-CS-005 | 网点与业务办理接口 | 查询营业网点、预约信息、可办事项 | 客户端 | HTTPS REST | 行政区划、关键字、业务类型 | 网点列表、营业时间、可办业务、预约信息 |
| IF-CS-006 | 业务办理进度接口 | 提交业务申请、查询办理进度与附件 | 客户端 | HTTPS REST | 申请类型、客户资料、附件清单、申请单号 | 受理结果、流程状态、进度轨迹、补件要求 |
| IF-CS-007 | 柜面扫码支付接口 | 创建柜面扫码支付订单并回写结果 | 柜台终端/营业前台 | HTTPS REST | 柜台编号、账单ID列表、订单金额、支付渠道 | 订单号、支付状态、回写结果 |
架构设计:
营收系统采用领域驱动设计(DDD),按业务领域划分为客户域、抄表域、收费域、账务域等,每个域独立部署,通过事件驱动实现域间协作。
技术选型:
营收系统采用DDD领域驱动设计,按业务领域进行模块划分,实现高内聚低耦合的架构设计。系统核心分为营收核心模块群和客户服务模块群两大业务板块。
graph TB
subgraph "营收系统整体架构"
subgraph "应用层 - Application Layer"
A1[Web管理界面<br/> 管理端]
A2[移动收费界面<br/> 收费端]
A3[API接口层<br/> 接口网关]
end
subgraph "业务服务层 - Business Service Layer"
subgraph " 营收核心模块群 REV-001~009"
subgraph "核心业务流程"
B1[REV-001<br/>客户管理服务<br/> 客户基础]
B2[REV-002<br/>抄表开账服务<br/> 业务源头]
B3[REV-003<br/>营业收费服务<br/> 收入核心]
B4[REV-004<br/>账务处理服务<br/> 财务核心]
end
subgraph "辅助业务支撑"
B5[REV-005<br/>发票管理服务<br/> 票据管理]
B6[REV-006<br/>催缴管理服务<br/> 收益保障]
B7[REV-007<br/>统计分析服务<br/> 决策支持]
B8[REV-008<br/>代收业务服务<br/> 渠道扩展]
B9[REV-009<br/>业务参数配置<br/> 基础配置]
end
end
%% 工单管理模块群已独立为SYS-005
end
subgraph "领域层 - Domain Layer"
subgraph "营收核心业务领域"
C1[客户领域<br/>Customer Domain<br/>]
C2[抄表领域<br/>Meter Reading Domain<br/>]
C3[收费领域<br/>Billing Domain<br/>]
C4[账务领域<br/>Accounting Domain<br/>]
C5[发票领域<br/>Invoice Domain<br/>]
end
subgraph "工单管理业务领域"
C6[工单统一领域<br/>WorkOrder Domain<br/>]
C61[工单流程引擎<br/>Workflow Engine<br/>]
C62[工单状态管理<br/>Status Management<br/>]
C63[工单智能监控<br/>Monitor & Alert<br/>🔔]
end
end
subgraph "基础设施层 - Infrastructure Layer"
D1[(达梦数据库集群<br/>DM Database Cluster<br/> 核心存储)]
D2[Redis分布式缓存<br/>Distributed Cache<br/> 高速缓存]
D3[MinIO文件存储<br/>Distributed File Storage<br/> 文件管理]
D4[RabbitMQ消息队列<br/>Message Queue<br/> 异步通信]
D5[支付与结算服务(SYS-009)<br/>Payment & Settlement<br/> 聚合支付/代扣/对账]
D6[Flowable工作流引擎<br/>Workflow Engine<br/> 流程引擎]
end
subgraph "外部系统集成"
E1[手机抄表APP<br/> 移动端]
E2[微网厅系统<br/> 线上服务]
E3[表务系统<br/> 设备管理]
end
end
%% 应用层到业务服务层连接
A1 --> B1
A1 --> B9
A2 --> B3
A3 --> B8
A3 --> B9
%% 营收核心模块群内部业务流程
B1 -->|客户数据| B2
B2 -->|账单数据| B3
B3 -->|收费数据| B4
B4 -->|财务数据| B5
B1 -.->|客户信息| B6
B3 -.->|收费统计| B7
B8 -.->|代收数据| B3
%% 工单管理模块群已独立为SYS-005
%% 业务服务层到领域层映射
B1 --> C1
B2 --> C2
B3 --> C3
B4 --> C4
B5 --> C5
B6 --> C1
B7 --> C3
B8 --> C3
%% 工单领域移至SYS-005
%% 领域层到基础设施层
C1 --> D1
C2 --> D1
C3 --> D1
C4 --> D1
C5 --> D3
C6 --> D4
C61 --> D6
C62 --> D2
C63 --> D4
B8 --> D5
%% 外部系统集成(工单流转由SYS-005承担)
%% 样式定义
classDef coreModuleGroup fill:#e3f2fd,stroke:#1976d2,stroke-width:4px,color:#000
classDef workorderModuleGroup fill:#fce4ec,stroke:#c2185b,stroke-width:4px,color:#000
classDef coreModule fill:#e1f5fe,stroke:#0277bd,stroke-width:2px
classDef workorderModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef coreDomain fill:#e8f5e8,stroke:#388e3c,stroke-width:2px
classDef workorderDomain fill:#fff3e0,stroke:#f57c00,stroke-width:2px
classDef infrastructure fill:#f3e5f5,stroke:#9c27b0,stroke-width:2px
classDef external fill:#e0f2f1,stroke:#00695c,stroke-width:2px
%% 应用样式
class B1,B2,B3,B4,B5,B6,B7,B8,B9 coreModule
class B9,B91,B92,B93,B94 workorderModule
class C1,C2,C3,C4,C5 coreDomain
class C6,C61,C62,C63 workorderDomain
class D1,D2,D3,D4,D5,D6 infrastructure
class E1,E2,E3 external
营收系统的模块按业务性质分为两大模块群:
营收核心业务模块,实现从客户管理到收费账务的完整业务链条,并通过 SYS-008 发票服务、SYS-009 支付与银行结算、SYS-010 消息服务形成跨子系统协同闭环:
| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 |
|---|---|---|---|
| REV-001 | 客户资料管理 | 客户档案管理、客户分组、信息变更 | 自行开发 |
| REV-002 | 抄表开账 | 抄表录入、复核开账、异常处理 | 自行开发 |
| REV-003 | 营业收费 | 柜台收费、移动收费、在线缴费 | 自行开发 |
| REV-004 | 账务处理 | 账务调整、退款处理、坏账管理 | 自行开发 |
| REV-005 | 发票管理 | 发票开具、查询管理、电子发票 | 自行开发 |
| REV-006 | 催缴管理 | 欠费催缴、短信通知、停水管理 | 自行开发 |
| REV-007 | 统计分析 | 多维度数据统计和报表分析功能 | 自行开发 |
| REV-008 | 代收业务 | 集成银行渠道与聚合支付等代收方式 | 自行开发 |
| REV-009 | 业务参数配置 | 业务参数配置、参数管理 | 自行开发 |
为外部渠道(微网厅、第三方平台)和内部渠道(客服前台)提供服务接入能力:
| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 |
|---|---|---|---|
| CS-001 | 账户绑定管理 | 微信/支付宝账户绑定与解绑、多账户管理 | 自行开发 |
| CS-002 | 信息查询服务 | 账单查询、用水历史、缴费记录、停水公告 | 自行开发 |
| CS-003 | 在线缴费服务 | 快捷缴费、充值、代缴、结果查询(经SYS-009) | 自行开发 |
| CS-004 | 电子发票服务 | 发票查看、推送、下载(经SYS-008) | 自行开发 |
| CS-005 | 营业网点服务 | 网点查询、地图导航、预约(可选) | 自行开发 |
| CS-006 | 业务办理服务 | 联系方式/开票方式变更、更名过户、低保、换表、自主抄表等 | 自行开发 |
| CS-007 | 柜面扫码支付 | 柜台二维码收款、票据关联、结果回传(经SYS-009) | 自行开发 |
营收系统的两大模块群既相对独立又紧密协作,形成完整的业务生态系统。
营收核心业务群实现了从客户管理到账务处理的完整营收业务流程:
graph TD
subgraph "营收核心业务流程"
A[REV-001<br/>客户资料管理<br/>] --> B[REV-002<br/>抄表开账<br/>]
B --> C[REV-003<br/>营业收费<br/>]
C --> D[REV-004<br/>账务处理<br/>]
D --> E[REV-005<br/>发票管理<br/>]
subgraph "辅助业务流程"
F[REV-006<br/>催缴管理<br/>]
G[REV-007<br/>统计分析<br/>]
H[REV-008<br/>代收业务<br/>]
I[REV-009<br/>业务参数配置<br/>]
end
end
%% 主流程依赖关系
A -.->|客户信息| C
A -.->|客户信息| E
A -.->|客户信息| F
B -.->|账单信息| D
B -.->|欠费信息| F
C -.->|收费记录| E
C -.->|收费数据| G
D -.->|账务数据| G
H -.->|代收记录| C
I -.->|水价/参数| B
I -.->|打印/税率/参数| E
I -.->|收费参数| C
%% 样式
classDef coreFlow fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef supportFlow fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
class A,B,C,D,E coreFlow
class F,G,H,I supportFlow
客户服务模块群为对外提供服务的核心入口,构建以客户为中心的一体化服务体系:
graph TD
subgraph "客户服务核心流程"
A[CS-001<br/>账户绑定管理<br/>] --> B[CS-002<br/>信息查询服务<br/>]
B --> C[CS-003<br/>在线缴费服务<br/>]
C --> D[CS-004<br/>电子发票服务<br/>]
subgraph "辅助服务模块"
E[CS-005<br/>营业网点服务<br/>]
F[CS-006<br/>业务办理服务<br/>]
G[CS-007<br/>柜面扫码支付<br/>]
end
end
%% 服务调用关系
A -.->|绑定验证| F
B -.->|查询支撑| C
B -.->|查询支撑| D
B -.->|查询支撑| F
C -.->|支付回调| D
G -.->|线下支付| D
E -.->|网点导航| F
F -.->|办理结果| B
%% 外部系统依赖
C -.->|支付处理| SYS009[SYS-009<br/>支付系统]
D -.->|发票开具| SYS008[SYS-008<br/>发票系统]
G -.->|扫码支付| SYS009
F -.->|工单流转| SYS005[SYS-005<br/>工单系统]
%% 样式
classDef coreService fill:#e8f5e8,stroke:#4caf50,stroke-width:2px
classDef supportService fill:#fff3e0,stroke:#ff9800,stroke-width:2px
classDef externalSys fill:#f3e5f5,stroke:#9c27b0,stroke-width:2px
class A,B,C,D coreService
class E,F,G supportService
class SYS008,SYS009,SYS005 externalSys
服务流程说明:
两大模块群通过标准化接口进行协作,实现业务闭环:
graph TB
subgraph "营收核心模块群"
CORE[REV-001~009<br/>客户/抄表/收费/账务/发票/催缴/统计/代收/参数]
end
subgraph "客户服务模块群"
CS[CS-001~007<br/>账户绑定/查询/在线缴费/电子发票/网点/办理/柜面扫码]
end
subgraph "工单管理系统"
WO[SYS-005<br/>统一工单中心]
end
CORE <-->|标准API| CS
CORE -.->|业务异常/流程触发| WO
CS -.->|客户申请/服务工单| WO
classDef coreGroup fill:#e1f5fe,stroke:#0277bd,stroke-width:3px
classDef csGroup fill:#e8f5e8,stroke:#388e3c,stroke-width:3px
classDef workorderGroup fill:#f3e5f5,stroke:#7b1fa2,stroke-width:3px
class CORE coreGroup
class CS csGroup
class WO workorderGroup
功能概述:
客户资料管理模块是营收系统的基础,负责维护所有用水客户的基本信息和档案资料。
核心功能:
子功能扩展:
业务规则:
功能概述:
抄表开账模块实现了从抄表数据录入到自动生成账单的完整业务流程。
核心功能:
子功能扩展:
业务流程图:
flowchart TD
A[开始抄表] --> B{选择抄表方式}
B -->|手工抄表| C[手工录入抄表数据]
B -->|PDA抄表| D[PDA现场抄表]
B -->|远传抄表| E[自动采集抄表数据]
B -->|批量导入| F[Excel批量导入]
C --> G[系统数据验证]
D --> H[PDA数据上传]
E --> I[远传数据同步]
F --> J[批量数据校验]
H --> G
I --> G
J --> G
G --> K{数据是否有效?}
K -->|否| L[数据修正]
L --> G
K -->|是| M[抄表数据复核]
M --> N{复核是否通过?}
N -->|否| O[标记异常数据]
O --> P[人工处理异常]
P --> M
N -->|是| Q[计算用水量]
Q --> R[计算水费金额]
R --> S[生成账单]
S --> T[开账确认]
T --> U[结束]
业务规则:
功能概述:
营业收费模块提供完整的收费业务流程管理,支持多种收费方式和支付渠道。
核心功能:
子功能扩展:
业务流程图:
flowchart TD
A[客户缴费] --> B{选择缴费方式}
B -->|柜台缴费| C[到营业厅缴费]
B -->|在线缴费| D[选择在线支付]
B -->|银行代扣| E[银行自动扣费]
C --> F[查询客户账单]
D --> G[微信/支付宝支付]
E --> H[银行代扣处理]
F --> I{账单是否正确?}
I -->|否| J[账单调整]
J --> F
I -->|是| K[选择支付方式]
K --> L{支付方式}
L -->|现金| M[现金收费]
L -->|POS机| N[刷卡收费]
L -->|扫码| O[扫码支付]
G --> P[渠道支付确认]
H --> Q[银行扣费确认]
M --> R[收费确认]
N --> R
O --> R
P --> R
Q --> R
R --> S[更新账单状态]
S --> T[生成收费凭证]
T --> U{需要发票?}
U -->|是| V[开具发票]
U -->|否| W[完成收费]
V --> W
W --> X[结束]
业务规则:
功能概述:
负责处理各类复杂的账务调整、退款、坏账等业务,确保账务的准确性和合规性。
核心功能:
功能概述:
提供全面的发票管理功能,支持电子发票和纸质发票的开具、查询、作废等操作。
核心功能:
实现说明:
SYS-008 发票服务子系统的”统一开票接口/作废红冲接口/发票查询接口”实现具体的开票与回执处理,营收系统不直接对接供应商。功能概述:
对逾期未缴费的客户进行有效的催缴管理,提高水费回收率。
核心功能:
功能概述:
提供多维度的数据统计和报表分析功能,为管理决策提供数据支持。
核心功能:
功能概述:
集成银行渠道与聚合支付等代收方式,方便客户缴费。
核心功能:
功能概述:
集中管理与营收业务相关的参数与基础资料,提升配置一致性与运营效率。
核心功能:
功能概述:
账户绑定管理模块是客户服务体系的入口,负责处理客户与第三方平台账户的绑定关系管理,为后续的信息查询、在线缴费等服务奠定基础。
核心功能:
技术实现: - 基于OAuth2.0协议实现第三方授权 - Redis缓存绑定关系提升查询性能 - 数据加密存储保护客户隐私
功能概述:
信息查询服务模块为客户提供全方位的信息查询功能,包括账单查询、用水历史、缴费记录等,是客户服务的核心模块之一。
核心功能:
技术实现: - 分页查询优化大数据量处理 - 数据缓存策略提升响应速度 - 接口聚合减少客户端调用
功能概述:
在线缴费服务模块提供便捷的线上缴费功能,支持多种支付方式,与SYS-009支付系统深度集成,确保支付的安全性和可靠性。
核心功能:
技术实现: - 与SYS-009支付系统标准化对接 - 订单状态实时同步机制 - 支付安全策略与风控
功能概述:
电子发票服务模块与SYS-008发票系统集成,为客户提供电子发票的查看、下载、推送等服务,满足客户对发票的个性化需求。
核心功能:
技术实现: - 与SYS-008发票系统API对接 - 文件流处理与下载优化 - 发票防伪与验真机制
功能概述:
营业网点服务模块为客户提供营业网点相关的信息服务,包括网点查询、地图导航、预约服务等,提升客户线下服务体验。
核心功能:
技术实现: - 地理位置服务集成 - 地图API调用优化 - 预约队列管理机制
功能概述:
业务办理服务模块为客户提供各类水务业务的在线申请和办理功能,与SYS-005工单系统协作实现业务流程的数字化处理。
核心功能:
技术实现: - 与SYS-005工单系统流程集成 - 动态表单引擎支持 - 文件上传与存储管理
功能概述:
柜面扫码支付模块为营业厅提供便捷的扫码收款功能,与SYS-009支付系统集成,实现线下支付的数字化处理。
核心功能:
技术实现: - 与SYS-009支付系统深度集成 - 二维码动态生成与管理 - POS机硬件设备对接
手机抄表APP为抄表员、外勤人员提供移动作业工具,支持离线操作,通过调用外部摄像表AI系统实现抄表读数自动识别,提升现场工作效率。
设计目标:
功能范围:
核心业务流程: 任务下载 → 现场抄表 → 问题上报 → 工单处理 → 数据上传 → 结果同步
技术约束:
性能约束:
安全约束:
接口设计说明:
手机抄表APP系统作为移动端现场作业工具,需要与营收业务系统、工单管理系统保持数据同步。所有接口均采用HTTP/REST协议,支持离线缓存和在线同步模式,确保现场作业的连续性和数据一致性。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-MOBILE-001 | 任务下载接口 | 下载抄表任务与客户信息 | 手机抄表APP | HTTP/REST | 抄表员ID、任务日期范围 | 任务列表、客户信息、水表信息 |
| IF-MOBILE-002 | 抄表数据上传接口 | 上传抄表数据与现场图片 | 手机抄表APP | HTTP/REST | 抄表记录、现场图片、GPS位置 | 上传状态、数据校验结果 |
| IF-MOBILE-003 | 工单接收接口 | 接收工单任务 | 工单管理系统 | HTTP/REST | 工单ID、工单类型、派发信息 | 接收确认、预计处理时间 |
| IF-MOBILE-004 | 工单回填接口 | 回填处理结果与附件 | 手机抄表APP | HTTP/REST | 工单ID、处理结果、现场图片 | 回填状态、审核结果 |
| IF-MOBILE-005 | 离线同步接口 | 离线数据同步 | 手机抄表APP | HTTP/REST | 离线数据包、时间戳 | 同步状态、冲突处理结果 |
架构设计:
端云协同架构,APP端提供离线能力(本地缓存与任务包),在线时通过增量同步接口与服务端完成任务下载、数据上传与工单回填,确保弱网环境可用。
关键技术:
手机抄表APP采用原生移动应用架构,支持Android平台部署。系统采用端云协同模式,APP端具备强大的离线工作能力,通过本地存储任务数据和抄表记录,支持弱网环境下的连续作业。
graph TB
subgraph "手机抄表APP"
Login[登录认证]
Home[首页/搜索]
Task[采集任务]
Report[现场上报]
Sync[数据同步]
Settings[个人与设置]
end
subgraph "服务端"
AUTH[统一平台]
REV[营收业务系统]
WO[工单管理系统]
end
Login --> AUTH
Home --> REV
Task --> REV
Report --> WO
Sync <--> REV
WO -.-> Task
| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 |
|---|---|---|---|
| MOBILE-001 | 登录认证 | 机构编号、用户名/密码、自动登录、令牌管理 | 自行开发 |
| MOBILE-002 | 首页搜索 | 多维度搜索、最近记录、任务快捷入口 | 自行开发 |
| MOBILE-003 | 采集任务管理 | 任务列表、批量下载、单户采集、调用外部AI识别、读数校验 | 自行开发 |
| MOBILE-004 | 现场上报 | 问题上报、拍照取证、定位信息、异常标记 | 自行开发 |
| MOBILE-005 | 个人与设置 | 个人资料、偏好设置、缓存管理、安全退出 | 自行开发 |
| MOBILE-006 | 数据同步 | 任务包增量同步、离线数据包上传、冲突处理 | 自行开发 |
graph TD
subgraph "手机抄表APP模块关系"
A[MOBILE-001<br/>登录认证]
B[MOBILE-002<br/>首页搜索]
C[MOBILE-003<br/>采集任务管理]
D[MOBILE-004<br/>现场上报]
E[MOBILE-005<br/>个人与设置]
F[MOBILE-006<br/>数据同步]
end
subgraph "外部系统"
AI[摄像表AI系统<br/>(外部服务)]
end
A -->|认证通过| C
B -->|搜索定位| C
C -.->|API调用| AI
AI -.->|识别结果| C
C -->|任务数据| F
D -->|上报数据| F
E -.->|配置同步| F
F -->|数据上传| UP[统一平台]
F -->|任务下载| CS[营收业务系统]
%% 样式定义
classDef coreModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef syncModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef externalModule fill:#fff3e0,stroke:#e65100,stroke-width:2px,stroke-dasharray: 5 5
class A,B,C,D coreModule
class E,F syncModule
class AI externalModule
微网厅系统(SYS-004)基于微信公众号平台开发,为客户提供便民的自助服务平台。系统支持账户绑定、账单查询、在线缴费、电子发票、营业网点查询和各类业务办理等功能。通过微信生态为用户提供7×24小时不间断的自助服务,显著提升客户服务体验。
技术约束:
安全约束:
业务约束:
接口设计说明:
微网厅系统基于微信公众号平台,为用户提供便捷的水务服务。系统与微信平台、营收业务系统、发票服务、支付系统等多个外部系统进行集成,支持账户绑定、在线查询、移动缴费、电子发票、业务申请等全流程服务。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-WECHAT-001 | 微信授权登录接口 | 通过微信OAuth2.0实现用户授权登录 | 微网厅系统 | HTTP/REST | 微信授权码、AppID、AppSecret | 用户OpenID、访问令牌、用户基本信息 |
| IF-WECHAT-002 | 微信支付接口 | 调用微信支付完成在线缴费 | 微网厅系统 | HTTP/REST | 订单信息、支付金额、用户OpenID | 预支付交易会话标识、支付结果 |
| IF-WECHAT-003 | 微信模板消息接口 | 推送缴费成功、账单提醒等消息 | 消息服务系统 | HTTP/REST | 模板ID、用户OpenID、消息数据 | 消息推送状态、消息ID |
| IF-WECHAT-004 | 微信JS-SDK接口 | 调用微信JS-SDK实现前端功能 | 微网厅前端 | HTTP/REST | 页面URL、时间戳、随机字符串 | JS-SDK配置信息、签名 |
| IF-WECHAT-005 | 客户信息查询接口 | 查询绑定客户的基本信息 | 微网厅系统 | HTTP/REST | 客户编号/手机号/OpenID | 客户详细信息、绑定状态 |
| IF-WECHAT-006 | 账单信息查询接口 | 查询客户账单和欠费信息 | 微网厅系统 | HTTP/REST | 客户编号、查询月份范围 | 账单明细、欠费金额、阶梯用量 |
| IF-WECHAT-007 | 缴费处理接口 | 处理微信端发起的缴费业务 | 微网厅系统 | HTTP/REST | 客户编号、缴费金额、支付方式 | 缴费订单号、支付状态、发票信息 |
| IF-WECHAT-008 | 业务申请提交接口 | 提交报装、过户等业务申请 | 微网厅系统 | HTTP/REST | 申请类型、客户资料、申请材料 | 申请单号、预审结果、处理时限 |
| IF-WECHAT-009 | 电子发票申请接口 | 申请开具电子发票 | 微网厅系统 | HTTP/REST | 缴费订单号、发票抬头信息 | 电子发票PDF、发票代码和号码 |
| IF-WECHAT-010 | 营业网点查询接口 | 查询就近营业网点信息 | 微网厅系统 | HTTP/REST | 地理位置坐标、搜索半径 | 网点列表、营业时间、联系方式 |
| IF-WECHAT-011 | 账户绑定验证接口 | 验证客户身份并绑定微信账户 | 微网厅系统 | HTTP/REST | 客户编号、身份证号、手机号码 | 绑定验证结果、绑定关系ID |
| IF-WECHAT-012 | 用水历史查询接口 | 查询客户用水历史记录 | 微网厅系统 | HTTP/REST | 客户编号、查询时间段 | 用水量明细、趋势分析数据 |
采用微信公众号H5页面开发模式,前端使用响应式Web技术,后端基于Spring Boot微服务架构。通过微信OAuth2.0实现用户授权,通过唯一标识实现账户绑定,确保数据安全和用户体验。
微网厅系统基于微信公众号生态,采用前后端分离架构。前端采用Vue.js框架开发响应式H5页面,适配微信浏览器环境;后端采用Spring Boot微服务架构,通过API Gateway统一接口管理。
graph TB
subgraph "微信平台"
WeChat[微信公众号]
WeMsg[微信消息]
end
subgraph "微网厅系统"
Frontend[前端H5页面]
Backend[后端服务]
Cache[缓存层]
end
subgraph "营收业务系统"
Customer[客户管理]
Billing[账务处理]
Payment[收费管理]
Service[客户服务]
end
WeChat --> Frontend
Frontend --> Backend
Backend --> Cache
Backend --> Customer
Backend --> Billing
Backend --> Payment
Backend --> Service
Backend -.->|支付调用| PAY_SYS[支付与结算(SYS-009)]
Backend --> WeMsg
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| WECHAT-001 | 账户绑定管理 | 微信授权、账户绑定与解绑、多账户管理 | 自行开发 |
| WECHAT-002 | 信息查询服务 | 账单查询、用水历史、缴费记录、停水公告 | 自行开发 |
| WECHAT-003 | 在线缴费服务 | 快捷缴费、充值服务、多种支付方式 | 自行开发 |
| WECHAT-004 | 电子发票服务 | 发票查看、发票推送、电子发票管理 | 自行开发 |
| WECHAT-005 | 营业网点服务 | 网点查询、地图导航、距离计算 | 自行开发 |
| WECHAT-006 | 业务办理服务 | 联系方式变更、开票方式变更、更名业务、过户业务、一户多人口申请、水价变更、低保申请、换表申请、自主抄表 | 自行开发 |
| WECHAT-007 | 账户流水 | 账户历史缴费流水查询与导出 | 自行开发 |
| WECHAT-008 | 账号与机构管理 | 切换机构、添加/解绑客户、设置默认客户、客户详情 | 自行开发 |
graph TD
subgraph "微网厅系统模块关系"
A[WECHAT-001<br/>账户绑定管理]
B[WECHAT-002<br/>信息查询服务]
C[WECHAT-003<br/>在线缴费服务]
D[WECHAT-004<br/>电子发票服务]
E[WECHAT-005<br/>营业网点服务]
F[WECHAT-006<br/>业务办理服务]
G[WECHAT-007<br/>账户流水]
H[WECHAT-008<br/>账号与机构管理]
end
A -->|身份验证| B
A -->|授权支付| C
A -->|授权开票| D
A -->|位置服务| E
A -->|业务授权| F
A -->|流水授权| G
A -->|账号管理| H
B -.->|查询后开票| D
C -.->|支付后开票| D
F -.->|业务查询| B
F -.->|业务缴费| C
%% 样式定义
classDef coreService fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef supportService fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef bindingModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class A bindingModule
class B,C,D,F coreService
class E,G,H supportService
业务办理流程:
flowchart TD
Start([用户发起业务申请]) --> Select[选择业务类型]
Select --> Fill[填写申请信息]
Fill --> Upload[上传相关材料]
Upload --> Submit[提交申请]
Submit --> Review[系统审核]
Review --> Approve{审核结果}
Approve -->|通过| Process[业务处理]
Approve -->|退回| Modify[修改申请]
Modify --> Submit
Process --> Complete[办理完成]
Complete --> Notify[结果通知]
Notify --> End([结束])
工单管理系统(SYS-005)负责全业务工单统一受理、创建、派发、处理、验收与归档,覆盖营收、表务、报装、客户服务等场景,提供统一流程引擎与监控预警能力。
工单管理系统作为统一的工单处理平台,接收来自营收、表务、报装、微网厅、APP等各业务系统的工单需求,实现工单全生命周期管理。系统提供标准化的工单接口,支持多种工单类型的创建、派发、处理、跟踪全流程管理。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-WO-001 | 工单创建接口 | 创建各类业务工单 | 营收/表务/报装/微网厅/APP | HTTP/REST | 工单类型、客户信息、问题描述、紧急程度 | 工单编号、预计处理时间、派发状态 |
| IF-WO-002 | 工单派发接口 | 向处理人/APP派发任务 | 工单管理系统 | HTTP/REST | 工单ID、处理人员、预期完成时间 | 派发结果、接收确认状态 |
| IF-WO-003 | 工单回填接口 | 回填处理结果与附件 | APP/各业务系统 | HTTP/REST | 工单ID、处理结果、现场图片、完成时间 | 回填状态、审核结果、客户满意度 |
| IF-WO-004 | 工单查询接口 | 查询工单状态和处理轨迹 | 各业务系统/客户端 | HTTP/REST | 工单编号/客户编号、查询条件 | 工单状态、处理进度、历史轨迹 |
| IF-WO-005 | 工单统计接口 | 工单处理绩效统计分析 | 管理后台 | HTTP/REST | 统计维度、时间范围、部门筛选 | 统计报表、效率分析、排名数据 |
| IF-WO-006 | 工单预警接口 | 超时工单监控预警 | 监控系统 | HTTP/REST | 预警规则、时间阈值 | 预警工单列表、通知配置 |
架构采用”工单中心 + 流程编排 + 监控预警 + 绩效统计”的分层设计,提供统一API网关对接各业务系统,并通过可配置流程实现多类型工单的快速上线。
工单管理系统采用微服务分层架构,通过统一工单中心集中管理各类业务工单,配置化流程引擎支持不同工单类型的个性化流转,实时监控预警确保服务质量,绩效统计提供数据分析支撑。
graph TB
subgraph "工单管理系统"
WO_CENTER[统一工单中心]
FLOW[流程引擎]
MON[监控预警]
STAT[绩效统计]
end
subgraph "协作系统"
REV[营收业务系统]
METER[表务管理系统]
INSTALL[报装业务系统]
APP[手机抄表APP]
WECHAT[微网厅]
end
REV -.->|业务异常/申请| WO_CENTER
METER -.->|换表申请| WO_CENTER
INSTALL -.->|报装派单| WO_CENTER
WECHAT -.->|客户服务申请| WO_CENTER
APP -.->|问题上报/结果回填| WO_CENTER
WO_CENTER -.-> FLOW
WO_CENTER -.-> MON
WO_CENTER -.-> STAT
WO_CENTER -.->|派发任务| APP
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| WORK-001 | 工单中心 | 统一受理、路由、分派、跟踪 | 自行开发 |
| WORK-002 | 流程引擎 | 节点编排、条件路由、并行网关 | 自行开发 |
| WORK-003 | 监控预警 | 超时/积压/异常预警、看板 | 自行开发 |
| WORK-004 | 绩效统计 | 人员/环节时长、SLA达成率 | 自行开发 |
graph TD
subgraph "工单管理系统模块关系"
A[WORK-001<br/>工单中心]
B[WORK-002<br/>流程引擎]
C[WORK-003<br/>监控预警]
D[WORK-004<br/>绩效统计]
end
A -->|流程调度| B
A -->|状态监控| C
A -->|数据统计| D
B -.->|流程状态| C
C -.->|监控数据| D
%% 样式定义
classDef coreModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef processModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef monitorModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class A coreModule
class B processModule
class C,D monitorModule
表务管理系统(SYS-006)聚焦设备档案和表务全生命周期管理,面向换表等业务提供资源保障。
表务管理系统负责水表资产的全生命周期管理,包括基础参数配置、仓库库存管理、设备档案管理。系统与工单管理、营收业务等系统协作,支持水表领用、更换、维修、报废等全流程作业,确保水表资产的准确管理和有效利用。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-METER-001 | 库存查询接口 | 查询仓库库存状态和预警信息 | 工单/营收/报装系统 | HTTP/REST | 仓库编号、水表型号、库存状态 | 库存明细、预警状态、可用数量 |
| IF-METER-002 | 领用出库接口 | 支持换表/施工水表领用出库 | 工单管理系统 | HTTP/REST | 领用单号、水表型号、领用数量、领用人 | 出库状态、库存余量、领用凭证 |
| IF-METER-003 | 档案查询接口 | 查询水表设备档案信息 | 营收/工单/报装系统 | HTTP/REST | 水表编号、客户编号、查询类型 | 设备档案、安装历史、维修记录 |
| IF-METER-004 | 集抄数据接收接口 | 接收远传抄表、异常告警并同步状态 | 物联网平台 | HTTP/REST | 设备标识、采集时间、读数值、告警信息 | 接收结果、校验状态、异常标记 |
| IF-METER-005 | 资产调拨接口 | 仓库间水表调拨转移 | 表务管理系统 | HTTP/REST | 调出仓库、调入仓库、调拨清单 | 调拨状态、库存变更结果 |
| IF-METER-006 | 盘点核实接口 | 定期盘点和库存核实 | 表务管理系统 | HTTP/REST | 盘点计划、盘点范围、盘点人员 | 盘点结果、差异分析、调整建议 |
以”基础参数-仓库库存-设备档案”三层模型实现资产全生命周期管理;通过与工单系统联动完成领用/回填闭环,支持库存预警与追溯。
表务管理系统采用分层数据架构,通过基础参数管理建立水表标准规范,通过仓库库存管理实现设备资源调配,通过设备档案管理实现全生命周期跟踪。系统与工单管理系统深度集成,形成”需求-领用-安装-回收”的完整闭环。 周转率、维修频次等统计分析
graph TB
subgraph "表务管理系统"
BASE[基础参数]
WH[仓库与库存]
DOC[设备档案]
end
WO[工单系统] -.->|领用/回填| WH
REV[营收系统] -.->|档案/库存状态| DOC
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| METER-001 | 表务基础管理 | 厂家/型号/口径/量程等基础参数 | 自行开发 |
| METER-002 | 仓库与库存管理 | 入库/出库/盘点/调拨/预警 | 自行开发 |
| METER-003 | 设备档案管理 | 档案建档/状态管理/追溯 | 自行开发 |
graph TD
subgraph "表务管理系统模块关系"
A[METER-001<br/>表务基础管理]
B[METER-002<br/>仓库与库存管理]
C[METER-003<br/>设备档案管理]
end
A -->|基础参数| B
B -->|库存状态| C
C -.->|规格验证| A
%% 样式定义
classDef baseModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef warehouseModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef docModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class A baseModule
class B warehouseModule
class C docModule
报装业务系统(SYS-007)覆盖从申请、踏勘、设计、施工到验收通水的全流程,支持调用泛微进行合同签订和电子签章,并与工单系统协作完成现场派工与过程留痕。
报装业务系统负责新用户报装全流程管理,从申请受理到通水验收的全生命周期业务处理。系统与微网厅、营收系统、工单管理、表务管理、CA电子签章等外部系统协作,实现报装业务的规范化、数字化管理和全流程追溯。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-INST-001 | 报装申请接口 | 提交报装申请信息与材料 | 微网厅/营收系统 | HTTP/REST | 申请人信息、用水地址、申请材料、联系方式 | 申请单号、预审结果、处理时限 |
| IF-INST-002 | 踏勘派工接口 | 现场踏勘任务派发 | 工单管理系统 | HTTP/REST | 报装单号、踏勘要求、预约时间 | 派工结果、踏勘人员、预计完成时间 |
| IF-INST-003 | 签章接口 | 调用CA系统进行电子签章 | CA电子签章系统 | HTTP/REST | 合同文档、签章类型、签章方信息 | 签章状态、签章文档、存证信息 |
| IF-INST-004 | 签章回执接口 | 接收CA系统签章完成回执 | CA电子签章系统 | HTTP/REST | 签章任务ID、签章结果、时间戳 | 接收确认、存档状态 |
| IF-INST-005 | 报装归档接口 | 归档申请、合同、验收与签章回执资料 | 报装系统 | HTTP/REST | 报装单号、资料清单、签章回执、验收文档 | 归档状态、档案编号、存储位置 |
| IF-INST-006 | 验收通水接口 | 验收合格并开通供水 | 营收业务系统 | HTTP/REST | 报装单号、验收结果、水表信息 | 开户结果、客户编号、通水状态 |
| IF-INST-007 | 档案归档接口 | 竣工档案归档管理 | 档案管理系统 | HTTP/REST | 报装单号、竣工资料、验收文档 | 归档状态、档案编号、存储位置 |
报装业务系统采用阶段式流程架构,将复杂的报装业务分解为申请受理、现场踏勘、施工管理、验收通水四个核心阶段,每个阶段具有明确的输入输出和验收标准。系统与CA电子签章系统深度集成,实现合同文档的电子化签署和存证。
graph TB
subgraph "报装业务系统"
APPLY[申请受理]
SURVEY[现场踏勘]
BUILD[施工管理]
ACCEPT[验收通水]
ARCH[资料归档]
end
WECHAT[微网厅] -.->|报装申请| APPLY
APPLY -.-> SURVEY -.-> BUILD -.-> ACCEPT -.-> ARCH
INST_WO[工单系统] -.->|派工/回填| SURVEY
INST_WO -.->|派工/回填| BUILD
CA[CA电子签章]
ARCH -.->|签章/验章/存证| CA
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| INST-001 | 报装流程管理 | 端到端阶段流转,里程碑控制 | 自行开发 |
| INST-002 | 工程管理 | 进度/资源/质量/安全管理 | 自行开发 |
| INST-003 | 档案管理 | 资料归档、过程留痕、竣工档案 | 自行开发 |
graph TD
subgraph "报装业务系统模块关系"
A[INST-001<br/>报装流程管理]
B[INST-002<br/>工程管理]
C[INST-003<br/>档案管理]
end
A -->|流程驱动| B
B -->|工程资料| C
C -.->|档案反馈| A
%% 样式定义
classDef flowModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef projectModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef archiveModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class A flowModule
class B projectModule
class C archiveModule
功能概述:
报装流程管理模块负责端到端的报装业务流程控制,涵盖从申请受理到资料归档的完整生命周期管理。
核心功能:
功能概述:
工程管理模块负责报装工程的施工全过程管理,包括派工、安装、验收等关键环节的控制与监督。
核心功能:
功能概述:
档案管理模块负责报装业务全过程的资料归档、电子签章和竣工档案管理,确保业务合规性和可追溯性。
核心功能:
发票服务子系统(SYS-008)定位为”基础服务层”的统一开票能力中心,通过统一开票网关与供应商适配器屏蔽不同厂商差异,当前优先对接”航天信息”,预留”博思”等供应商接入能力。
发票服务子系统作为基础服务层的统一开票能力中心,为上游业务系统提供标准化的发票服务。系统采用适配器模式,支持多供应商接入,当前优先对接航天信息,预留博思等其他供应商接入能力,确保发票业务的合规性和可扩展性。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-INV-001 | 统一开票接口 | 统一受理电子发票开具请求 | 营收业务系统/微网厅 | HTTP/REST | 开票信息、购买方信息、商品明细、税额 | 发票申请ID、开票状态、预计完成时间 |
| IF-INV-002 | 作废红冲接口 | 发票作废和红字发票处理 | 营收业务系统 | HTTP/REST | 原发票号码、作废/红冲原因、操作类型 | 处理结果、新发票信息、作废状态 |
| IF-INV-003 | 发票查询接口 | 查询发票状态和下载链接 | 营收系统/微网厅/客户端 | HTTP/REST | 发票代码、发票号码、查询类型 | 发票状态、PDF下载链接、发票详情 |
| IF-INV-004 | 回执推送接口 | 接收供应商发票处理回执 | 航天信息/博思等供应商 | HTTP/REST | 回执ID、处理结果、发票文件、时间戳 | 接收确认、存储状态、通知结果 |
| IF-INV-005 | 供应商切换接口 | 供应商服务切换和负载均衡 | 发票服务网关 | HTTP/REST | 供应商标识、切换原因、备用方案 | 切换状态、新供应商信息、影响评估 |
| IF-INV-006 | 存证签章接口 | 发票电子存证和数字签章 | 存证签章模块 | HTTP/REST | 发票文件、签章类型、存证要求 | 存证凭证、签章状态、法律效力确认 |
发票服务子系统采用统一网关和适配器模式架构,通过统一开票网关屏蔽不同供应商的接口差异,供应商适配器实现具体厂商的协议转换,回执处理模块确保业务闭环,存证签章模块保障发票的法律效力。
graph TB
subgraph "发票服务子系统"
GW[统一开票网关]
ADP[供应商适配器]
RCPT[回执处理]
EVID[存证与签章]
end
subgraph "上游系统"
REV[营收业务系统]
WECHAT[微网厅]
end
subgraph "供应商"
HT[航天信息]
BOS[博思/预留]
end
REV -.->|INV-001/002/003| GW
WECHAT -.->|发票查询/下载| GW
GW --> ADP --> HT
ADP -.-> BOS
HT -.-> RCPT --> EVID
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| INV-001 | 统一开票网关 | 统一鉴权、参数校验、基础路由 | 自行开发 |
| INV-002 | 供应商适配器 | 航天/博思等供应商协议适配、签名加验签 | 自行开发 |
| INV-003 | 回执处理 | 回执解析、状态机、失败重试、告警通知 | 自行开发 |
| INV-004 | 存证与签章 | 发票PDF/JSON存证、签章与链接生成、合规审计 | 自行开发 |
graph TD
subgraph "发票服务子系统模块关系"
A[INV-001<br/>统一开票网关]
B[INV-002<br/>供应商适配器]
C[INV-003<br/>回执处理]
D[INV-004<br/>存证与签章]
end
A -->|请求路由| B
B -->|供应商回调| C
C -->|状态更新| D
C -.->|状态回馈| A
%% 样式定义
classDef gatewayModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef adapterModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef processModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
class A gatewayModule
class B adapterModule
class C,D processModule
支付与银行结算子系统(SYS-009)统一承载聚合支付/退款、渠道适配(微信/支付宝/银联聚合)、支付回调验签入账,以及银行实时收费、代扣/托收签约解约、送盘/回盘/对账契约与安全加解密/签名,向上对营收/微网厅等系统提供标准化支付与结算能力。夜间批量代扣、完整回盘状态补偿、对账差异处理与结算确认当前仍按后续完善项管理。
支付与银行结算子系统作为统一的支付能力中心,为上游业务系统提供聚合支付、银行实时收费、代扣/托收签解约、退款处理、对账管理等支付结算服务。以下接口表表达的是正式设计目标边界,其中聚合支付、实时收费查询/缴费、代扣/托收签解约已具备较明确实现证据;BankWithholding
六条银行入口已形成最小实现态闭环,托收平行链路、对账和完整结算闭环仍按部分实现或后续完善项管理。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-PAY-001 | 统一支付下单接口 | 统一处理各渠道支付下单请求 | 营收系统/微网厅 | HTTP/REST | 订单信息、支付方式、支付金额、用户标识 | 预支付订单号、支付参数、二维码 |
| IF-PAY-002 | 统一关单接口 | 订单关闭和撤销处理 | 营收系统/微网厅 | HTTP/REST | 订单号、关闭原因、操作类型 | 关单状态、退款信息、处理结果 |
| IF-PAY-003 | 统一退款接口 | 原路退款和部分退款处理 | 营收系统/微网厅 | HTTP/REST | 原订单号、退款金额、退款原因 | 退款单号、退款状态、预计到账时间 |
| IF-PAY-004 | 支付回调接口 | 接收渠道支付结果回调 | 微信/支付宝/银联 | HTTP/REST | 回调数据、签名、时间戳 | 处理确认、业务更新状态 |
| IF-PAY-005 | 批量代扣送盘接口 | 银行批量代扣文件发送 | 营收业务系统 | HTTP/REST/SFTP | 代扣清单、客户签约信息、扣款金额 | 送盘状态、批次号、预计处理时间(BankWithholding
已具备最小实现态闭环;真实文件通道联调仍待补证) |
| IF-PAY-006 | 批量代扣回盘接口 | 银行代扣结果回盘处理 | 银行系统 | HTTP/REST/SFTP | 回盘文件、处理结果、失败原因 | 解析结果、状态更新、异常处理(BankWithholding
已具备最小实现态闭环;真实文件解析与异常补偿仍待补证) |
| IF-PAY-007 | 批量对账文件接口 | 银行对账文件处理分析 | 银行系统/营收系统 | HTTP/REST/SFTP | 对账文件、对账日期、差异规则 | 对账结果、差异明细、调整建议(当前仍按部分实现或后续完善项管理) |
| IF-PAY-008 | 加解密签名接口 | 支付数据安全处理 | 内部模块调用 | HTTP/REST | 待处理数据、加密类型、签名算法 | 处理结果、安全凭证、验证状态 |
支付与银行结算子系统采用统一网关和多适配器架构,通过统一支付网关提供标准化支付接口,渠道适配器处理不同支付渠道的协议差异,银行适配器实现批量代扣和对账功能,回调处理确保支付结果的及时处理,加解密模块保障交易安全。
graph TB
subgraph "支付与银行结算子系统"
GW[统一支付与结算网关]
ADP_CH[渠道适配器]
ADP_BANK[银行适配器]
CB[回调处理]
RECON[对账处理]
CRYPTO[加解密/签名]
end
subgraph "上游系统"
REV[营收业务系统]
WECHAT[微网厅]
end
subgraph "外部机构"
WX[微信]
ALI[支付宝]
UPG[银联聚合]
BANK[银行]
end
REV -.->|PAY-001/002/003/005/006/007| GW
WECHAT -.->|下单/查询| GW
GW --> ADP_CH --> WX
ADP_CH --> ALI
ADP_CH --> UPG
GW --> ADP_BANK --> BANK
WX -.-> CB
ALI -.-> CB
UPG -.-> CB
ADP_BANK -.-> RECON
GW -.-> CRYPTO
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| PAY-001 | 统一支付与结算网关 | 鉴权、参数校验、幂等、基础路由 | 自行开发 |
| PAY-002 | 渠道适配器 | 渠道参数映射、签名/验签、错误码转换 | 自行开发 |
| PAY-003 | 银行适配器 | 协议/文件规范适配、编码转换、SFTP/HTTP | 自行开发 |
| PAY-004 | 回调处理 | 回调验签、订单入账、补偿重试 | 自行开发 |
| PAY-005 | 批量对账处理 | 对账接收/解析、差错处理、账务回填、报告 | 自行开发 |
| PAY-006 | 加解密/签名 | SM2/SM4/3DES等算法、密钥管理 | 自行开发 |
graph TD
subgraph "支付与银行结算子系统模块关系"
A[PAY-001<br/>统一支付与结算网关]
B[PAY-002<br/>渠道适配器]
C[PAY-003<br/>银行适配器]
D[PAY-004<br/>回调处理]
E[PAY-005<br/>批量对账处理]
F[PAY-006<br/>加解密/签名]
end
A -->|渠道路由| B
A -->|银行对接| C
B -->|支付回调| D
C -->|对账数据| E
A -->|安全加密| F
B -.->|状态反馈| A
C -.->|状态反馈| A
D -.->|结果通知| A
E -.->|对账结果| A
F -.->|密钥服务| A
%% 样式定义
classDef gatewayModule fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef adapterModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef processModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
classDef securityModule fill:#e8f5e8,stroke:#388e3c,stroke-width:2px
class A gatewayModule
class B,C adapterModule
class D,E processModule
class F securityModule
消息服务子系统(SYS-010)负责统一消息推送、接收与处理,为各业务子系统提供消息通知服务。
设计目标:
功能范围:
技术约束:
性能约束:
安全约束:
消息服务子系统作为统一的消息通知中心,为各业务系统提供多渠道消息推送能力。系统支持短信、邮件、站内信等多种消息渠道,与外部系统(OA、智水擎、水投数科APP)对接,实现消息的统一管理和分发。
| 接口编号 | 接口名称 | 功能描述 | 调用方 | 接口协议 | 输入参数 | 输出结果 |
|---|---|---|---|---|---|---|
| IF-MSG-001 | 短信发送接口 | 发送短信通知消息 | 营收/微网厅/工单系统 | HTTP/REST | 手机号、消息内容、模板ID、发送时间 | 发送状态、消息ID、预计到达时间 |
| IF-MSG-002 | 邮件发送接口 | 发送邮件通知消息 | 营收/工单/报装系统 | HTTP/REST | 邮箱地址、邮件主题、邮件内容、附件 | 发送状态、邮件ID、送达确认 |
| IF-MSG-003 | 站内信接口 | 发送系统站内消息 | 各业务系统 | HTTP/REST | 用户ID、消息标题、消息内容、消息类型 | 发送结果、消息状态、已读状态 |
| IF-MSG-004 | 微信消息推送接口 | 发送微信模板消息 | 微网厅系统 | HTTP/REST | 用户OpenID、模板ID、模板数据 | 推送状态、消息ID、送达状态 |
| IF-MSG-005 | 外部系统对接接口 | 对接OA/智水擎等外部系统 | OA系统/智水擎/水投数科APP | HTTP/REST | 系统标识、消息类型、接收用户、消息内容 | 对接状态、消息分发结果 |
| IF-MSG-006 | 固定模板管理接口 | 管理消息固定模板 | 系统管理员 | HTTP/REST | 模板类型、模板内容、适用场景 | 模板ID、保存状态、生效时间 |
架构设计:
消息服务子系统采用消息队列技术实现消息的异步处理。通过RabbitMQ实现消息的可靠传输和幂等处理。
技术选型:
消息服务子系统采用消息中心架构模式,通过统一消息网关接收各业务系统的消息发送请求,通过渠道适配器实现不同消息渠道的协议转换,固定模板管理确保消息内容的规范性,外部系统对接实现与OA、智水擎等系统的消息互通。
graph TB
subgraph "消息服务子系统"
PUB[消息推送]
SUB[消息接收]
MQ[RabbitMQ]
end
PUB --> MQ
SUB --> MQ
| 模块编号 | 模块名称 | 功能描述 | 开发方式 |
|---|---|---|---|
| MSG-001 | 消息网关模块 | 统一接入、鉴权、路由、幂等控制 | 自行开发 |
| MSG-002 | 短信服务模块 | 短信发送、回执处理、失败重试、供应商适配 | 自行开发 |
| MSG-003 | 邮件服务模块 | 邮件发送、附件管理、批量发送、回执处理 | 自行开发 |
| MSG-004 | 站内信模块 | 站内信管理、用户消息推送、已读状态跟踪 | 自行开发 |
| MSG-005 | 微信通知模块 | 微信模板消息、公众号推送通知 | 自行开发 |
| MSG-006 | 模板管理模块 | 消息模板管理、固定模板维护 | 自行开发 |
| MSG-007 | 外部系统适配模块 | 对接OA、智水擎、水投数科app等数科系统 | 自行开发 |
graph TD
subgraph "消息服务子系统模块关系"
A[MSG-001<br/>消息网关模块]
B[MSG-002<br/>短信服务模块]
C[MSG-003<br/>邮件服务模块]
D[MSG-004<br/>站内信模块]
E[MSG-005<br/>微信通知模块]
F[MSG-006<br/>模板管理模块]
G[MSG-007<br/>外部系统适配模块]
end
%% 核心流程
A -->|短信路由| B
A -->|邮件路由| C
A -->|站内信路由| D
A -->|微信路由| E
A -->|外部系统路由| G
%% 模板服务
F -->|短信模板| B
F -->|邮件模板| C
F -->|站内信模板| D
F -->|微信模板| E
F -->|外部模板| G
%% 回执反馈
B -.->|短信回执| A
C -.->|邮件回执| A
D -.->|已读状态| A
E -.->|微信回执| A
G -.->|外部回执| A
%% 样式定义
classDef gatewayModule fill:#e3f2fd,stroke:#1976d2,stroke-width:3px
classDef channelModule fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef templateModule fill:#fff3e0,stroke:#f57c00,stroke-width:2px
classDef externalModule fill:#e8f5e8,stroke:#388e3c,stroke-width:2px
class A gatewayModule
class B,C,D,E channelModule
class F templateModule
class G externalModule
设计目标:
设计措施:
浏览器兼容性:
数据库兼容性:
操作系统兼容性:
身份认证:
权限控制:
数据安全:
系统安全:
平台无关性:
云平台适配:
集成策略:
测试策略:
架构扩展:
功能扩展:
高可用设计:
容错机制:
数据备份:
代码质量:
运维友好:
文档管理: