diff --git a/output/新-数据库设计说明书.docx b/output/新-数据库设计说明书.docx index b450176..7a35b58 100644 Binary files a/output/新-数据库设计说明书.docx and b/output/新-数据库设计说明书.docx differ diff --git a/output/新-数据库设计说明书_processed.md b/output/新-数据库设计说明书_processed.md index 3ed5b29..8040ebe 100644 --- a/output/新-数据库设计说明书_processed.md +++ b/output/新-数据库设计说明书_processed.md @@ -3309,14 +3309,14 @@ CJKmainfont: "PingFang SC" **图表 1** -![图表 1](temp_mermaid_新-数据库设计说明书_23274/diagram_1.png) +![图表 1](temp_mermaid_新-数据库设计说明书_71551/diagram_1.png) ### 业务核心表关系图 **图表 2** -![图表 2](temp_mermaid_新-数据库设计说明书_23274/diagram_2.png) +![图表 2](temp_mermaid_新-数据库设计说明书_71551/diagram_2.png) ## 业务视图设计 diff --git a/output/新-概要设计说明书.docx b/output/新-概要设计说明书.docx index f14142a..40f34ca 100644 Binary files a/output/新-概要设计说明书.docx and b/output/新-概要设计说明书.docx differ diff --git a/output/新-概要设计说明书_processed.md b/output/新-概要设计说明书_processed.md index e1d0b92..e8b4131 100644 --- a/output/新-概要设计说明书_processed.md +++ b/output/新-概要设计说明书_processed.md @@ -41,88 +41,84 @@ CJKmainfont: "PingFang SC" - [术语与缩略语](#术语与缩略语) - [参考资料](#参考资料) - [系统总体设计](#系统总体设计) - - [逻辑架构](#逻辑架构) - - [整体架构图](#整体架构图) - - [层级说明](#层级说明) + - [任务概述](#任务概述) + - [系统总体目标](#系统总体目标) + - [功能范围](#功能范围) + - [系统涉众与用户特点](#系统涉众与用户特点) + - [设计概述](#设计概述) + - [总体约束](#总体约束) + - [系统外部接口](#系统外部接口) + - [设计方案概述](#设计方案概述) + - [系统架构设计](#系统架构设计) + - [系统的逻辑架构设计](#系统的逻辑架构设计) + - [整体架构图](#整体架构图) + - [层级说明](#层级说明) - [系统数据流向图](#系统数据流向图) - - [物理架构](#物理架构) - - [物理部署图](#物理部署图) - - [网络连接](#网络连接) - - [硬件配置规格](#硬件配置规格) - - [达梦数据库分布式架构](#达梦数据库分布式架构) - - [容器化部署架构](#容器化部署架构) - - [对外接口](#对外接口) - - [子系统列表](#子系统列表) - - [子系统相互关系与接口](#子系统相互关系与接口) - - [子系统调用关系图](#子系统调用关系图) - - [主要接口定义](#主要接口定义) + - [系统的物理架构设计](#系统的物理架构设计) + - [物理部署图](#物理部署图) + - [网络连接](#网络连接) + - [硬件配置规格](#硬件配置规格) + - [达梦数据库分布式架构](#达梦数据库分布式架构) + - [容器化部署架构](#容器化部署架构) + - [子系统定义](#子系统定义) + - [子系统列表](#子系统列表) + - [子系统间关系](#子系统间关系) + - [子系统调用关系图](#子系统调用关系图) + - [主要接口定义](#主要接口定义) - [子系统1设计: 统一平台](#子系统1设计-统一平台) - - [功能与界面](#功能与界面) - - [模块列表](#模块列表) - - [模块间关系](#模块间关系) - - [权限管理功能群](#权限管理功能群) - - [系统监控功能群](#系统监控功能群) - - [模块设计](#模块设计) - - [模块1: 单点登录](#模块1-单点登录) - - [模块2: 系统管理](#模块2-系统管理) - - [中间件和其他设计](#中间件和其他设计) - - [缓存](#缓存) - - [消息队列](#消息队列) - - [定时任务](#定时任务) - - [对外接口](#对外接口-1) + - [任务概述](#任务概述-1) + - [设计概述](#设计概述-1) + - [总体约束](#总体约束-1) + - [子系统外部接口](#子系统外部接口) + - [设计方案概述](#设计方案概述-1) + - [子系统架构设计](#子系统架构设计) + - [模块定义](#模块定义) + - [模块列表](#模块列表) + - [模块间关系](#模块间关系) + - [模块描述](#模块描述) - [子系统2设计: 营收系统](#子系统2设计-营收系统) - - [功能与界面](#功能与界面-1) - - [模块列表](#模块列表-1) - - [模块间关系](#模块间关系-1) - - [营收核心业务群](#营收核心业务群) - - [客户服务业务群](#客户服务业务群) - - [模块设计](#模块设计-1) - - [模块1: 客户资料管理](#模块1-客户资料管理) - - [模块2: 抄表开账](#模块2-抄表开账) - - [模块3: 营业收费](#模块3-营业收费) - - [模块4: 账务处理](#模块4-账务处理) - - [模块5: 发票管理](#模块5-发票管理) - - [模块6: 催缴管理](#模块6-催缴管理) - - [模块7: 统计分析](#模块7-统计分析) - - [模块8: 代收业务](#模块8-代收业务) - - [模块9: 业务工单](#模块9-业务工单) - - [中间件和其他设计](#中间件和其他设计-1) - - [对外接口](#对外接口-2) + - [任务概述](#任务概述-2) + - [设计概述](#设计概述-2) + - [总体约束](#总体约束-2) + - [子系统外部接口](#子系统外部接口-1) + - [设计方案概述](#设计方案概述-2) + - [子系统架构设计](#子系统架构设计-1) + - [模块定义](#模块定义-1) + - [模块列表](#模块列表-1) + - [模块间关系](#模块间关系-1) + - [模块描述](#模块描述-1) - [子系统3设计: 表务系统](#子系统3设计-表务系统) - - [功能与界面](#功能与界面-2) - - [模块列表](#模块列表-2) - - [模块设计](#模块设计-2) - - [模块1: 表务基础管理](#模块1-表务基础管理) - - [模块2: 仓库与库存管理](#模块2-仓库与库存管理) - - [模块3: 设备档案管理](#模块3-设备档案管理) + - [任务概述](#任务概述-3) + - [设计概述](#设计概述-3) + - [总体约束](#总体约束-3) + - [子系统外部接口](#子系统外部接口-2) + - [设计方案概述](#设计方案概述-3) + - [子系统架构设计](#子系统架构设计-2) + - [模块定义](#模块定义-2) + - [模块列表](#模块列表-2) + - [模块间关系](#模块间关系-2) + - [模块描述](#模块描述-2) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - - [功能与界面](#功能与界面-3) - - [模块设计](#模块设计-3) - - [模块1: 报装流程管理](#模块1-报装流程管理) - - [模块2: 工程管理](#模块2-工程管理) - - [模块3: 档案管理](#模块3-档案管理) + - [任务概述](#任务概述-4) + - [设计概述](#设计概述-4) + - [总体约束](#总体约束-4) + - [子系统外部接口](#子系统外部接口-3) + - [设计方案概述](#设计方案概述-4) + - [子系统架构设计](#子系统架构设计-3) + - [模块定义](#模块定义-3) + - [模块列表](#模块列表-3) + - [模块描述](#模块描述-3) - [子系统5设计: 客户服务](#子系统5设计-客户服务) - - [功能与界面](#功能与界面-4) - - [模块列表](#模块列表-3) - - [模块设计](#模块设计-4) - - [模块1: 账户绑定管理](#模块1-账户绑定管理) - - [模块2: 信息查询服务](#模块2-信息查询服务) - - [模块3: 在线缴费服务](#模块3-在线缴费服务) - - [模块4: 电子发票服务](#模块4-电子发票服务) + - [任务概述](#任务概述-5) + - [设计概述](#设计概述-5) + - [子系统架构设计](#子系统架构设计-4) + - [模块定义](#模块定义-4) - [子系统6设计: 手机抄表APP](#子系统6设计-手机抄表app) - - [功能与界面](#功能与界面-5) - - [模块列表](#模块列表-4) - - [模块设计](#模块设计-5) - - [模块1: 登录模块](#模块1-登录模块) - - [模块2: 首页搜索模块](#模块2-首页搜索模块) - - [模块3: 采集任务管理模块](#模块3-采集任务管理模块) - - [模块4: 换表工单模块](#模块4-换表工单模块) - - [模块5: 其他工单模块](#模块5-其他工单模块) - - [模块6: 个人信息与系统设置模块](#模块6-个人信息与系统设置模块) + - [任务概述](#任务概述-6) + - [设计概述](#设计概述-6) + - [子系统架构设计](#子系统架构设计-5) + - [模块定义](#模块定义-5) - [关键技术特性](#关键技术特性) - - [离线作业能力](#离线作业能力) - - [数据安全保障](#数据安全保障) - - [用户体验优化](#用户体验优化) - [非功能性需求的设计](#非功能性需求的设计) - [性能的考虑](#性能的考虑) - [兼容性的考虑](#兼容性的考虑) @@ -213,19 +209,124 @@ CJKmainfont: "PingFang SC" # 系统总体设计 -## 逻辑架构 +## 任务概述 + +### 系统总体目标 + +福建水务数智营收管理系统主要包含统一平台、营收系统、表务系统、报装系统、客户服务和手机抄表APP等子系统,以及相关外部接口集成。 + +通过系统的建设,实现福建省水投数字科技有限公司客户服务管理领域的业务流程梳理再造、组织架构的优化、管理制度的建设、绩效考核标准的建设。构建以客户为中心的一体化客户服务平台,将客户的所有信息进行有机的关联,方便企业对营收信息进行综合分析和管理,为客户提供更多、更便捷、更主动的个性化服务,提高客户服务的质量和客户满意度。 + +### 功能范围 + +本系统的功能涵盖客户资料管理、抄表开账、营业收费、账务处理、催缴管理、发票管理、表务工单、银行代扣代缴、第三方支付(微信、支付宝)、报装系统、水表仓库管理;还包含系统业务必要的查询统计及报表打印功能。 + +功能列表如下: + +- **统一平台**:单点登录、用户管理、角色管理、权限管理、组织机构、系统配置、数据字典管理; + +- **营收系统**:客户资料管理、抄表开账、营业收费、账务处理、发票管理、催缴管理、统计分析、代收业务、业务工单; + +- **表务系统**:表务基础管理、仓库与库存管理、设备档案管理; + +- **报装系统**:报装流程管理、工程管理、档案管理; + +- **客户服务**:账户绑定管理、信息查询服务、在线缴费服务、电子发票服务; + +- **手机抄表APP**:登录模块、首页搜索、采集任务管理、换表工单、其他工单、个人信息与系统设置。 + +### 系统涉众与用户特点 + +**系统涉众**: + +本系统主要涉及用户为各水务公司与系统相关的业务参与者、福建省水投数字科技有限公司研发运维团队。 + +**用户特点**: + +- **公司领导**:对信息化在企业生产经营管理活动中的积极作用有深刻认识,并具有前瞻视角。 + +- **公司管理层**:有丰富的企业管理经验,有良好的业务管理类系统使用经验。 + +- **系统管理人员**:具有本科以上教育背景,计算机操作熟练,具有良好的软件系统维护经验,主要维护系统的后台权限管理、人员管理、部门管理等功能。 + +- **操作人员**:部分用户已经使用过其他厂商提供的营业收费系统,部分用户对软件系统使用经验不足。 + +## 设计概述 + +### 总体约束 + +**技术约束**: + +- 采用现代化微服务架构,支持大规模并发访问 +- 支持多租户模式,满足集团化管理需求 +- 实现移动化办公,提高工作效率 +- 集成物联网技术,支持智能水表远程抄表 +- 适配国产化环境,确保系统安全可控 + +**性能约束**: + +- 系统并发用户数不低于200个 +- 移动设备同时登录系统的并发用户数不少于50个 +- 系统响应时间不超过3秒 +- 支持100万客户的业务量 +- 系统可用性达到99.5%以上 + +**安全约束**: + +- 系统满足国家信息安全等级保护要求 +- 支持数据加密存储和传输 +- 实现细粒度的权限控制 +- 提供完整的审计日志功能 + +### 系统外部接口 + +本系统需要与以下外部系统进行接口集成: + +| 接口类型 | 接口名称 | 功能描述 | 接口协议 | +|---------|---------|----------|----------| +| 金融支付 | 银行代扣接口 | 银行托收代扣缴费 | HTTPS | +| 金融支付 | 微信支付接口 | 微信在线支付 | HTTPS | +| 金融支付 | 支付宝支付接口 | 支付宝在线支付 | HTTPS | +| 通信服务 | 短信平台接口 | 短信通知发送 | HTTPS | +| 物联网 | 集抄系统接口 | 智能水表数据采集 | TCP/HTTPS | +| 税务服务 | 电子发票接口 | 第三方发票开具 | HTTPS | +| 认证服务 | 身份认证接口 | 第三方身份验证 | HTTPS | + +### 设计方案概述 + +**架构设计方案**: + +系统采用现代化的多层分布式架构,基于微服务设计思想,实现松耦合、高内聚的系统架构。整体架构分为表现层、网关层、业务服务层、基础服务层和数据层五个层次。 + +**技术选型方案**: + +- **后端技术栈**:Java 11+、Spring Boot 2.7+、Spring Cloud Gateway、MyBatis-Plus +- **前端技术栈**:Vue 3、Element Plus、TypeScript +- **数据库**:达梦数据库 8.0+(主从架构) +- **缓存**:Redis 6.0+(集群模式) +- **消息队列**:RabbitMQ 3.9+ +- **文件存储**:MinIO(分布式文件存储) +- **容器化**:Docker + Docker Compose + +**部署方案**: + +采用容器化部署架构,支持多环境部署(开发、测试、生产),提供自动化部署脚本,支持弹性扩缩容。 + +## 系统架构设计 + +### 系统的逻辑架构设计 系统采用现代化的多层分布式架构,基于微服务设计思想,实现松耦合、高内聚的系统架构。 -### 整体架构图 +#### 整体架构图 **图表 1** -![图表 1](temp_mermaid_新-概要设计说明书_23274/diagram_1.png) +![图表 1](temp_mermaid_新-概要设计说明书_71551/diagram_1.png) -### 层级说明 +#### 层级说明 **表现层(Presentation Layer)** - 负责用户交互和界面展示 @@ -257,28 +358,28 @@ CJKmainfont: "PingFang SC" **图表 2** -![图表 2](temp_mermaid_新-概要设计说明书_23274/diagram_2.png) +![图表 2](temp_mermaid_新-概要设计说明书_71551/diagram_2.png) -## 物理架构 +### 系统的物理架构设计 系统采用分布式部署架构,通过多个服务器集群实现高可用和高性能。 -### 物理部署图 +#### 物理部署图 **图表 3** -![图表 3](temp_mermaid_新-概要设计说明书_23274/diagram_3.png) +![图表 3](temp_mermaid_新-概要设计说明书_71551/diagram_3.png) -### 网络连接 +#### 网络连接 **图表 4** -![图表 4](temp_mermaid_新-概要设计说明书_23274/diagram_4.png) +![图表 4](temp_mermaid_新-概要设计说明书_71551/diagram_4.png) -### 硬件配置规格 +#### 硬件配置规格 **DMZ区域配置** @@ -312,39 +413,29 @@ CJKmainfont: "PingFang SC" | 跳板服务器 | 4核8G,500GB SSD | 1台 | 运维管理 | | 日志服务器 | 16核32G,5TB SSD | 1台 | 日志收集分析 | -### 达梦数据库分布式架构 +#### 达梦数据库分布式架构 系统采用达梦数据库分布式架构,支持高性能、高可用、高扩展性的数据存储服务。 **图表 5** -![图表 5](temp_mermaid_新-概要设计说明书_23274/diagram_5.png) +![图表 5](temp_mermaid_新-概要设计说明书_71551/diagram_5.png) -### 容器化部署架构 +#### 容器化部署架构 系统采用Docker容器化部署,使用Docker Compose进行服务编排,支持快速部署和弹性扩缩容。 **图表 6** -![图表 6](temp_mermaid_新-概要设计说明书_23274/diagram_6.png) +![图表 6](temp_mermaid_新-概要设计说明书_71551/diagram_6.png) -## 对外接口 +## 子系统定义 -| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | -|---|---|---|---|---|---| -| EXT-001 | 银行代扣接口 | 银行托收代扣缴费 | HTTPS | 用户信息、缴费金额、银行账户 | 扣款结果、交易流水号 | -| EXT-002 | 微信支付接口 | 微信在线支付 | HTTPS | 订单信息、金额、用户OpenID | 支付结果、微信交易号 | -| EXT-003 | 支付宝支付接口 | 支付宝在线支付 | HTTPS | 订单信息、金额、支付宝用户ID | 支付结果、支付宝交易号 | -| EXT-004 | 短信平台接口 | 短信通知发送 | HTTPS | 手机号、短信内容、模板ID | 发送结果、消息ID | -| EXT-005 | 集抄系统接口 | 智能水表数据采集 | TCP/HTTPS | 水表编号、采集时间 | 抄表数据、设备状态 | -| EXT-006 | 电子发票接口 | 第三方发票开具 | HTTPS | 开票信息、税务信息 | 发票文件、发票号码 | -| EXT-007 | 身份认证接口 | 第三方身份验证 | HTTPS | 身份证号、姓名 | 验证结果、认证状态 | - -## 子系统列表 +### 子系统列表 | 子系统编号 | 子系统名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -355,17 +446,17 @@ CJKmainfont: "PingFang SC" | SYS-005 | 客户服务 | 微信小程序、支付宝小程序、客户自助服务 | 自行开发 | | SYS-006 | 手机抄表APP | 移动端抄表、工单处理、数据同步 | 自行开发 | -## 子系统相互关系与接口 +### 子系统间关系 -### 子系统调用关系图 +#### 子系统调用关系图 **图表 7** -![图表 7](temp_mermaid_新-概要设计说明书_23274/diagram_7.png) +![图表 7](temp_mermaid_新-概要设计说明书_71551/diagram_7.png) -### 主要接口定义 +#### 主要接口定义 **统一平台对外接口** @@ -397,11 +488,18 @@ CJKmainfont: "PingFang SC" # 子系统1设计: 统一平台 -## 功能与界面 +## 任务概述 -统一平台是整个系统的基础支撑平台,提供统一的用户认证、权限管理、组织管理等功能。作为SaaS多租户平台的核心,统一平台确保了系统的安全性、可扩展性和可管理性。 +统一平台是整个福建水务数智营收管理系统的基础支撑平台,负责为所有子系统提供统一的用户认证、权限管理、组织管理等基础服务。 -**主要功能包括:** +**设计目标:** + +- 实现单点登录,用户一次认证即可访问所有授权的子系统 +- 提供统一的用户和权限管理,确保系统安全性 +- 支持多租户模式,满足集团化管理需求 +- 提供系统监控和运维支撑功能 + +**功能范围:** - **单点登录**:提供统一的登录入口,支持多种认证方式 - **用户管理**:管理系统用户的基本信息、状态和权限 @@ -411,7 +509,68 @@ CJKmainfont: "PingFang SC" - **租户管理**:支持多租户模式,实现数据隔离和个性化配置 - **系统监控**:实时监控系统运行状态和用户在线情况 -## 模块列表 +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于Spring Security + OAuth2.0协议实现认证授权 +- 采用JWT令牌实现无状态认证 +- 支持Redis分布式会话存储 +- 遵循RBAC权限控制模型 + +**性能约束:** + +- 用户认证响应时间≤1秒 +- 权限验证响应时间≤500ms +- 支持并发用户数≥200个 +- 系统可用性≥99.5% + +**安全约束:** + +- 支持密码复杂度策略 +- 提供登录安全控制(失败锁定、验证码等) +- 敏感数据加密存储 +- 完整的操作审计日志 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| UP-001 | 用户认证接口 | 用户登录认证和令牌生成 | HTTP/REST | 用户名、密码、机构编号 | JWT令牌、用户信息 | +| UP-002 | 权限验证接口 | 验证用户访问权限 | HTTP/REST | 用户ID、资源URL | 权限验证结果 | +| UP-003 | 用户信息接口 | 获取用户基本信息 | HTTP/REST | 用户ID | 用户详细信息 | +| UP-004 | 组织架构接口 | 获取部门和员工信息 | HTTP/REST | 部门ID | 部门及下属信息 | +| UP-005 | 实时通知接口 | 推送系统通知消息 | WebSocket | 消息内容、接收用户 | 推送结果 | + +### 设计方案概述 + +**架构设计:** + +统一平台采用基于Spring Boot的微服务架构,使用Spring Security + OAuth2.0实现认证授权,Redis存储会话和缓存数据,支持水平扩展。 + +**技术选型:** + +- **认证授权**:Spring Security + OAuth2.0 + JWT +- **缓存存储**:Redis 6.0+(分布式缓存) +- **数据库**:达梦数据库 8.0+ +- **消息队列**:RabbitMQ(异步通知) +- **监控日志**:Prometheus + Grafana + ELK + +## 子系统架构设计 + +统一平台采用分层架构设计,从下至上分为数据层、业务层、服务层和应用层,确保系统的可维护性和可扩展性。 + + +**图表 8** + +![图表 8](temp_mermaid_新-概要设计说明书_71551/diagram_8.png) + + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -421,16 +580,16 @@ CJKmainfont: "PingFang SC" | UP-004 | 租户管理模块 | 多租户数据隔离、租户配置管理 | 自行开发 | | UP-005 | 系统监控模块 | 在线用户监控、系统性能监控、操作日志 | 自行开发 | -## 模块间关系 +### 模块间关系 -### 权限管理功能群 +**权限管理功能群:** 权限管理功能群是统一平台的核心,实现了完整的RBAC权限控制模型。 -**图表 8** +**图表 9** -![图表 8](temp_mermaid_新-概要设计说明书_23274/diagram_8.png) +![图表 9](temp_mermaid_新-概要设计说明书_71551/diagram_9.png) **功能群说明:** @@ -440,19 +599,19 @@ CJKmainfont: "PingFang SC" - 部门管理模块维护组织架构 - 权限控制模块实现统一的权限验证 -### 系统监控功能群 +**系统监控功能群:** 系统监控功能群提供对整个系统运行状态的监控和管理。 -**图表 9** +**图表 10** -![图表 9](temp_mermaid_新-概要设计说明书_23274/diagram_9.png) +![图表 10](temp_mermaid_新-概要设计说明书_71551/diagram_10.png) -## 模块设计 +### 模块描述 -### 模块1: 单点登录 +#### 模块1: 单点登录 **功能描述:** @@ -474,7 +633,7 @@ CJKmainfont: "PingFang SC" - Spring Security实现安全控制 - 支持多种加密算法 -### 模块2: 系统管理 +#### 模块2: 系统管理 **功能描述:** @@ -496,63 +655,20 @@ CJKmainfont: "PingFang SC" - 超级管理员不能被删除 - 部门删除前需要先移除下属用户 -## 中间件和其他设计 - -### 缓存 - -**Redis缓存设计:** - -| 缓存类型 | Key格式 | Value类型 | 过期时间 | 用途说明 | -|---------|---------|-----------|----------|----------| -| 用户会话 | user:session:{userId} | Hash | 2小时 | 存储用户登录信息 | -| 用户权限 | user:permission:{userId} | Set | 30分钟 | 缓存用户权限列表 | -| 系统配置 | system:config:{configKey} | String | 24小时 | 系统配置参数 | -| 数据字典 | system:dict:{dictType} | List | 24小时 | 字典数据缓存 | -| 验证码 | captcha:{uuid} | String | 5分钟 | 图形验证码 | -| 短信验证码 | sms:code:{mobile} | String | 5分钟 | 短信验证码 | - -### 消息队列 - -**RabbitMQ消息队列设计:** - -| Queue名称 | Exchange | Routing Key | 消费者 | 用途说明 | -|-----------|----------|-------------|--------|----------| -| user.operation | topic.exchange | user.* | UserOperationConsumer | 用户操作日志 | -| system.notification | topic.exchange | system.* | NotificationConsumer | 系统通知消息 | -| sms.send | direct.exchange | sms.send | SmsConsumer | 短信发送队列 | -| email.send | direct.exchange | email.send | EmailConsumer | 邮件发送队列 | - -### 定时任务 - -| 任务名称 | Cron表达式 | 执行频率 | 功能描述 | -|---------|------------|----------|----------| -| 清理过期会话 | 0 0 2 * * ? | 每日凌晨2点 | 清理过期的用户会话 | -| 同步用户状态 | 0 */10 * * * ? | 每10分钟 | 同步用户在线状态 | -| 清理操作日志 | 0 0 3 * * ? | 每日凌晨3点 | 清理30天前的操作日志 | -| 系统健康检查 | 0 */5 * * * ? | 每5分钟 | 检查系统组件健康状态 | - -## 对外接口 - -| 接口类型 | 接口名称(标识) | 功能描述 | 接口协议 | 备注 | -|---|---|---|---|---| -| REST API | 用户认证接口 | 用户登录认证和令牌生成 | HTTP/REST | 详见《接口设计说明书》 | -| REST API | 权限验证接口 | 验证用户访问权限 | HTTP/REST | 供其他子系统调用 | -| REST API | 用户信息接口 | 获取用户基本信息 | HTTP/REST | 供其他子系统调用 | -| REST API | 组织架构接口 | 获取部门和员工信息 | HTTP/REST | 供其他子系统调用 | -| WebSocket | 实时通知接口 | 推送系统通知消息 | WebSocket | 实时消息推送 | - # 子系统2设计: 营收系统 -## 功能与界面 +## 任务概述 -营收系统是整个水务管理平台的核心业务系统,负责处理从客户管理到账务处理的完整营收业务流程。 +营收系统是整个福建水务数智营收管理系统的核心业务系统,负责处理从客户管理到账务处理的完整营收业务流程。 -**核心业务流程:** -客户建档 → 抄表录入 → 复核开账 → 营业收费 → 账务处理 → 发票管理 → 催缴管理 +**设计目标:** +- 实现完整的营收业务流程管理,从客户建档到费用收缴的全流程覆盖 +- 支持多种收费方式和支付渠道,提高收费便民性 +- 提供完善的账务处理和财务管理功能 +- 实现智能化的催缴管理,提高水费回收率 - -**主要功能模块:** +**功能范围:** - **客户资料管理**:客户档案建立、信息维护、分组管理 - **抄表开账**:抄表数据录入、复核确认、自动开账 @@ -560,10 +676,76 @@ CJKmainfont: "PingFang SC" - **账务处理**:账务调整、退款处理、坏账管理 - **发票管理**:发票开具、查询、重开、作废 - **催缴管理**:欠费统计、催缴通知、停水管理 +- **统计分析**:多维度数据统计和报表分析 +- **代收业务**:银行代扣、第三方支付等代收渠道 +- **业务工单**:各类业务工单的统一管理和流转 + +**核心业务流程:** +客户建档 → 抄表录入 → 复核开账 → 营业收费 → 账务处理 → 发票管理 → 催缴管理 + +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于Spring Boot微服务架构实现 +- 采用事务处理确保数据一致性 +- 支持分布式锁处理并发访问 +- 遵循水务行业财务规范 + +**性能约束:** + +- 支持10万+客户的业务处理 +- 抄表开账处理能力≥5000户/小时 +- 收费交易响应时间≤2秒 +- 报表生成时间≤30秒 + +**安全约束:** + +- 财务数据加密存储 +- 关键操作需要审批流程 +- 完整的操作审计日志 +- 支付接口安全认证 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| REV-001 | 客户信息查询接口 | 查询客户基本信息 | HTTP/REST | 客户编号、姓名、手机号 | 客户详细信息 | +| REV-002 | 账单查询接口 | 查询客户账单信息 | HTTP/REST | 客户编号、账期 | 账单详情 | +| REV-003 | 缴费处理接口 | 处理在线缴费业务 | HTTP/REST | 订单信息、支付方式 | 缴费结果 | +| REV-004 | 立户接口 | 新客户立户 | HTTP/REST | 客户资料、水表信息 | 立户结果 | +| REV-005 | 抄表任务接口 | 下发抄表任务 | HTTP/REST | 抄表员、任务范围 | 任务详情 | +| REV-006 | 抄表数据上传接口 | 上传抄表数据 | HTTP/REST | 抄表数据、图片证据 | 上传结果 | + +### 设计方案概述 + +**架构设计:** + +营收系统采用领域驱动设计(DDD),按业务领域划分为客户域、抄表域、收费域、账务域等,每个域独立部署,通过事件驱动实现域间协作。 + +**技术选型:** + +- **业务框架**:Spring Boot + MyBatis-Plus +- **工作流引擎**:Flowable(处理业务审批流程) +- **分布式事务**:Seata(确保数据一致性) +- **消息队列**:RabbitMQ(异步处理和事件通知) +- **缓存策略**:Redis(热点数据缓存) + +## 子系统架构设计 + +营收系统采用DDD领域驱动设计,按业务领域进行模块划分,实现高内聚低耦合的架构设计。 +**图表 11** -## 模块列表 +![图表 11](temp_mermaid_新-概要设计说明书_71551/diagram_11.png) + + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -575,32 +757,33 @@ CJKmainfont: "PingFang SC" | REV-006 | 催缴管理 | 欠费催缴、短信通知、停水管理 | 自行开发 | | REV-007 | 统计分析 | 提供多维度的数据统计和报表分析功能 | 自行开发 | | REV-008 | 代收业务 | 集成银行、第三方支付等代收渠道 | 自行开发 | +| REV-009 | 业务工单 | 各类业务工单的统一管理和流转 | 自行开发 | -## 模块间关系 +### 模块间关系 -### 营收核心业务群 +**营收核心业务群:** 营收核心业务群实现了完整的营收业务流程,各模块之间存在严格的业务依赖关系。 -**图表 10** +**图表 12** -![图表 10](temp_mermaid_新-概要设计说明书_23274/diagram_10.png) +![图表 12](temp_mermaid_新-概要设计说明书_71551/diagram_12.png) -### 客户服务业务群 +**客户服务业务群:** 客户服务业务群围绕客户服务展开,提供完整的客户服务链条。 -**图表 11** +**图表 13** -![图表 11](temp_mermaid_新-概要设计说明书_23274/diagram_11.png) +![图表 13](temp_mermaid_新-概要设计说明书_71551/diagram_13.png) -## 模块设计 +### 模块描述 -### 模块1: 客户资料管理 +#### 模块1: 客户资料管理 **功能概述:** @@ -632,7 +815,7 @@ CJKmainfont: "PingFang SC" - 客户状态变更需要审批流程 - 存在未结清账务的客户不允许注销 -### 模块2: 抄表开账 +#### 模块2: 抄表开账 **功能概述:** @@ -661,9 +844,9 @@ CJKmainfont: "PingFang SC" **业务流程图:** -**图表 12** +**图表 14** -![图表 12](temp_mermaid_新-概要设计说明书_23274/diagram_12.png) +![图表 14](temp_mermaid_新-概要设计说明书_71551/diagram_14.png) **业务规则:** @@ -673,7 +856,7 @@ CJKmainfont: "PingFang SC" - 异常判断:超过历史平均值2倍为量高,低于0.5倍为量低 - 复核规则:抄表人员不能复核自己录入的数据 -### 模块3: 营业收费 +#### 模块3: 营业收费 **功能概述:** @@ -702,9 +885,9 @@ CJKmainfont: "PingFang SC" **业务流程图:** -**图表 13** +**图表 15** -![图表 13](temp_mermaid_新-概要设计说明书_23274/diagram_13.png) +![图表 15](temp_mermaid_新-概要设计说明书_71551/diagram_15.png) **业务规则:** @@ -715,7 +898,7 @@ CJKmainfont: "PingFang SC" 4. 在线支付需要实时确认支付结果 5. 银行代扣需要客户事先签约授权 -### 模块4: 账务处理 +#### 模块4: 账务处理 **功能概述:** @@ -728,7 +911,7 @@ CJKmainfont: "PingFang SC" - **预付款退款**: 处理客户预付款的退还流程。 - **呆坏账处理**: 对长期无法收回的欠款进行核销。 -### 模块5: 发票管理 +#### 模块5: 发票管理 **功能概述:** @@ -740,7 +923,7 @@ CJKmainfont: "PingFang SC" - **发票查询与管理**: 查询发票历史,处理红冲、作废等请求。 - **电子发票集成**: 对接第三方电子发票平台,实现自动开具和推送。 -### 模块6: 催缴管理 +#### 模块6: 催缴管理 **功能概述:** @@ -752,7 +935,7 @@ CJKmainfont: "PingFang SC" - **催缴通知**: 通过短信、电话、通知单等多种方式进行催缴。 - **停复水管理**: 对恶意欠费用户执行停水,缴清后进行复水操作。 -### 模块7: 统计分析 +#### 模块7: 统计分析 **功能概述:** @@ -765,7 +948,7 @@ CJKmainfont: "PingFang SC" - **欠费分析**: 多维度分析欠费构成和趋势。 - **自定义报表**: 提供灵活的报表自定义工具。 -### 模块8: 代收业务 +#### 模块8: 代收业务 **功能概述:** @@ -777,7 +960,7 @@ CJKmainfont: "PingFang SC" - **第三方支付**: 集成微信、支付宝等支付网关。 - **对账管理**: 定期与各渠道进行账务核对。 -### 模块9: 业务工单 +#### 模块9: 业务工单 **功能概述:** @@ -797,40 +980,85 @@ CJKmainfont: "PingFang SC" 3. 工单处理过程需要详细记录操作日志 4. 换表工单需要与表务仓库系统同步水表状态 -## 中间件和其他设计 - -**缓存设计:** - -| 缓存类型 | Key格式 | 用途说明 | 过期时间 | -|---------|---------|----------|----------| -| 客户信息 | customer:info:{id} | 客户基本信息缓存 | 1小时 | -| 价格信息 | price:info:{type} | 价格政策缓存 | 12小时 | -| 抄表任务 | reading:task:{bookId} | 抄表任务缓存 | 24小时 | - -**消息队列:** - -| Queue名称 | 用途说明 | 消费者 | -|-----------|----------|--------| -| billing.generate | 账单生成队列 | BillingConsumer | -| sms.arrears | 欠费短信队列 | SmsConsumer | -| email.invoice | 发票邮件队列 | EmailConsumer | - -## 对外接口 - -| 接口类型 | 接口名称(标识) | 功能描述 | 接口协议 | 备注 | -|---|---|---|---|---| -| REST API | 客户查询接口 | 查询客户基本信息 | HTTP/REST | 供其他系统调用 | -| REST API | 账单查询接口 | 查询客户账单信息 | HTTP/REST | 供客户服务系统调用 | -| REST API | 缴费处理接口 | 处理在线缴费业务 | HTTP/REST | 供客户服务系统调用 | -| REST API | 立户接口 | 新客户立户 | HTTP/REST | 供报装系统调用 | - # 子系统3设计: 表务系统 -## 功能与界面 +## 任务概述 -表务系统负责水表全生命周期管理,从采购入库到报废退库的完整管理流程。其核心是确保水表资产的准确、高效流转,并为营收计量提供可靠的设备保障。 +表务系统负责水表全生命周期管理,从采购入库到报废退库的完整管理流程,为营收计量提供可靠的设备保障。 -## 模块列表 +**设计目标:** + +- 实现水表全生命周期的数字化管理 +- 确保水表资产的准确、高效流转 +- 提供完善的库存管理和设备档案管理 +- 支持水表的智能化运维和维护 + +**功能范围:** + +- **表务基础管理**:水表厂家、型号、规格等基础数据管理 +- **仓库与库存管理**:水表的入库、出库、盘点和调拨管理 +- **设备档案管理**:每一块水表的唯一电子档案管理 + +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于Spring Boot微服务架构 +- 采用条码/二维码技术进行水表标识 +- 支持RFID技术的水表管理 +- 遵循水表行业标准和规范 + +**性能约束:** + +- 支持100万+水表档案管理 +- 库存操作响应时间≤1秒 +- 支持并发库存操作≥50个 +- 盘点效率≥1000个/小时 + +**安全约束:** + +- 水表资产数据加密存储 +- 关键操作审批流程 +- 完整的操作审计日志 +- 防止水表资产丢失 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| METER-001 | 水表库存查询接口 | 查询水表库存信息 | HTTP/REST | 型号、规格、状态 | 库存详情 | +| METER-002 | 换表通知接口 | 换表完成通知 | HTTP/REST | 水表编号、客户信息 | 通知结果 | +| METER-003 | 设备档案接口 | 获取水表设备档案 | HTTP/REST | 水表编号 | 设备档案信息 | +| METER-004 | 库存预警接口 | 库存不足预警 | HTTP/REST | 预警阈值 | 预警信息 | + +### 设计方案概述 + +**架构设计:** + +表务系统采用资源管理架构,以库存为核心,设备档案为支撑,基础数据为保障,实现水表资产的全面管理。 + +**技术选型:** + +- **条码技术**:支持一维码/二维码水表标识 +- **RFID技术**:支持无线射频识别 +- **移动端**:支持PDA、手机等移动设备操作 +- **报表工具**:JasperReports生成各类统计报表 + +## 子系统架构设计 + +表务系统采用分层架构,从基础数据管理到业务流程处理,确保水表资产管理的完整性和准确性。 + + +**图表 16** + +![图表 16](temp_mermaid_新-概要设计说明书_71551/diagram_16.png) + + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -840,9 +1068,19 @@ CJKmainfont: "PingFang SC" **注意**: 表务工单管理功能已整合到营收系统的业务工单模块中,实现统一的工单管理。 -## 模块设计 +### 模块间关系 -### 模块1: 表务基础管理 +表务系统各模块之间形成完整的水表资产管理闭环,从基础数据到实物管理,再到档案记录。 + + +**图表 17** + +![图表 17](temp_mermaid_新-概要设计说明书_71551/diagram_17.png) + + +### 模块描述 + +#### 模块1: 表务基础管理 - **功能描述**: 定义和维护表务管理所需的基础数据和配置参数。 - **核心功能**: - **水表厂家管理**: 维护水表供应商信息。 @@ -850,14 +1088,14 @@ CJKmainfont: "PingFang SC" - **水表型号管理**: 根据厂家和口径,管理具体的水表型号。 - **水表量程管理**: 定义水表的计量范围。 -### 模块2: 仓库与库存管理 +#### 模块2: 仓库与库存管理 - **功能描述**: 负责水表的实物管理,与工单流程解耦,作为一个独立的资源中心。 - **核心功能**: - **入库管理**: 包括新表采购入库、旧表回收(维修或报废)入库。 - **出库管理**: 根据工单领料申请,发放新水表。 - **库存管理**: 提供库存查询、盘点、调拨、库存预警等功能。 -### 模块3: 设备档案管理 +#### 模块3: 设备档案管理 - **功能描述**: 作为表务系统的核心,统一管理所有水表的基础信息和生命周期状态。 - **核心功能**: - **水表信息登录**: 记录新购水表的型号、规格、供应商、批次等信息。 @@ -866,33 +1104,93 @@ CJKmainfont: "PingFang SC" # 子系统4设计: 报装系统 -## 功能与界面 +## 任务概述 -报装系统管理新用户从申请到通水的全过程业务流程。 +报装系统管理新用户从申请到通水的全过程业务流程,实现报装业务的标准化和信息化管理。 -**主要功能:** +**设计目标:** -- **报装流程管理**:管理从申请、踏勘到合同签订的完整流程。 -- **工程管理**:负责施工、验收和通水环节。 -- **档案管理**:对报装过程中的所有文档进行归档和管理。 +- 实现新用户报装的全流程数字化管理 +- 提高报装服务效率和客户满意度 +- 确保报装工程质量和安全 +- 实现报装档案的完整管理 -## 模块设计 +**功能范围:** -### 模块1: 报装流程管理 +- **报装流程管理**:管理从申请、踏勘到合同签订的完整流程 +- **工程管理**:负责施工、验收和通水环节 +- **档案管理**:对报装过程中的所有文档进行归档和管理 + +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于工作流引擎实现业务流程 +- 集成GIS系统支持地理信息管理 +- 支持移动端现场作业 +- 遵循建设工程管理规范 + +**性能约束:** + +- 支持年处理报装申请≥10000件 +- 流程流转响应时间≤3秒 +- 支持并发用户≥100个 +- 文档上传处理≤30秒 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| INSTALL-001 | 立户接口 | 报装完成后客户立户 | HTTP/REST | 客户资料、水表信息 | 立户结果 | +| INSTALL-002 | GIS接口 | 地理信息查询 | HTTP/REST | 地址、坐标 | 地理信息 | +| INSTALL-003 | 施工派工接口 | 施工任务派工 | HTTP/REST | 工程信息、施工队 | 派工结果 | + +### 设计方案概述 + +**架构设计:** + +报装系统采用流程驱动架构,以工作流引擎为核心,支持灵活的业务流程配置和管理。 + +**技术选型:** + +- **工作流引擎**:Flowable(流程管理) +- **GIS集成**:地理信息系统集成 +- **移动应用**:支持现场移动作业 +- **电子签章**:合同电子签署 + +## 子系统架构设计 + +报装系统采用流程驱动的架构设计,确保报装业务的规范化和标准化处理。 + +## 模块定义 + +### 模块列表 + +| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | +|---|---|---|---| +| INSTALL-001 | 报装流程管理 | 管理报装全流程 | 自行开发 | +| INSTALL-002 | 工程管理 | 施工和验收管理 | 自行开发 | +| INSTALL-003 | 档案管理 | 报装档案管理 | 自行开发 | + +### 模块描述 + +#### 模块1: 报装流程管理 - **功能描述**: 统一管理新用户报装的核心流程,确保各环节顺畅衔接。 - **核心功能**: - **报装申请**: 用户资料收集、申请材料审核、受理登记。 - **现场踏勘**: 安排并记录现场勘查、制定初步设计方案、进行工程预算。 - **合同管理**: 根据方案制作、签订供水合同,并收取相关费用。 -### 模块2: 工程管理 +#### 模块2: 工程管理 - **功能描述**: 聚焦于报装工程的现场实施与交付。 - **核心功能**: - **施工管理**: 施工派工、进度监控、质量检查与整改。 - **竣工验收**: 组织相关部门进行联合验收,确保工程质量达标。 - **立户通水**: 验收通过后,同步信息至营收系统进行客户立户,并最终开通供水。 -### 模块3: 档案管理 +#### 模块3: 档案管理 - **功能描述**: 负责报装全流程的资料归档和查询。 - **核心功能**: - **资料归档**: 对报装申请、踏勘记录、合同、施工图纸等所有文档进行电子化归档。 @@ -901,9 +1199,9 @@ CJKmainfont: "PingFang SC" **新用户报装业务流程图:** -**图表 14** +**图表 18** -![图表 14](temp_mermaid_新-概要设计说明书_23274/diagram_14.png) +![图表 18](temp_mermaid_新-概要设计说明书_71551/diagram_18.png) **业务规则:** diff --git a/output/新-详细设计说明书.docx b/output/新-详细设计说明书.docx index 02e2418..8fd35f0 100644 Binary files a/output/新-详细设计说明书.docx and b/output/新-详细设计说明书.docx differ diff --git a/output/新-详细设计说明书_processed.md b/output/新-详细设计说明书_processed.md index 1665ec6..5af6c45 100644 --- a/output/新-详细设计说明书_processed.md +++ b/output/新-详细设计说明书_processed.md @@ -548,7 +548,7 @@ CJKmainfont: "PingFang SC" **图表 1** -![图表 1](temp_mermaid_新-详细设计说明书_23274/diagram_1.png) +![图表 1](temp_mermaid_新-详细设计说明书_71551/diagram_1.png) ### 系统数据流向图 @@ -556,7 +556,7 @@ CJKmainfont: "PingFang SC" **图表 2** -![图表 2](temp_mermaid_新-详细设计说明书_23274/diagram_2.png) +![图表 2](temp_mermaid_新-详细设计说明书_71551/diagram_2.png) ### 表现层 @@ -590,7 +590,7 @@ CJKmainfont: "PingFang SC" **图表 3** -![图表 3](temp_mermaid_新-详细设计说明书_23274/diagram_3.png) +![图表 3](temp_mermaid_新-详细设计说明书_71551/diagram_3.png) ### 容器化部署架构 @@ -598,7 +598,7 @@ CJKmainfont: "PingFang SC" **图表 4** -![图表 4](temp_mermaid_新-详细设计说明书_23274/diagram_4.png) +![图表 4](temp_mermaid_新-详细设计说明书_71551/diagram_4.png) ### 硬件配置规格表 @@ -1089,7 +1089,7 @@ h、**错误响应码** **图表 5** -![图表 5](temp_mermaid_新-详细设计说明书_23274/diagram_5.png) +![图表 5](temp_mermaid_新-详细设计说明书_71551/diagram_5.png) ###### 数据设计 @@ -1124,7 +1124,7 @@ h、**错误响应码** **图表 6** -![图表 6](temp_mermaid_新-详细设计说明书_23274/diagram_6.png) +![图表 6](temp_mermaid_新-详细设计说明书_71551/diagram_6.png) ###### 业务规则 @@ -1291,7 +1291,7 @@ f、**响应参数** **图表 7** -![图表 7](temp_mermaid_新-详细设计说明书_23274/diagram_7.png) +![图表 7](temp_mermaid_新-详细设计说明书_71551/diagram_7.png) ###### 数据设计 @@ -1425,7 +1425,7 @@ f、**响应参数** **图表 8** -![图表 8](temp_mermaid_新-详细设计说明书_23274/diagram_8.png) +![图表 8](temp_mermaid_新-详细设计说明书_71551/diagram_8.png) ###### 输入输出数据 @@ -1528,7 +1528,7 @@ f、**响应参数** **图表 9** -![图表 9](temp_mermaid_新-详细设计说明书_23274/diagram_9.png) +![图表 9](temp_mermaid_新-详细设计说明书_71551/diagram_9.png) ###### 数据设计 @@ -1589,7 +1589,7 @@ f、**响应参数** **图表 10** -![图表 10](temp_mermaid_新-详细设计说明书_23274/diagram_10.png) +![图表 10](temp_mermaid_新-详细设计说明书_71551/diagram_10.png) ###### 数据设计 @@ -1650,7 +1650,7 @@ f、**响应参数** **图表 11** -![图表 11](temp_mermaid_新-详细设计说明书_23274/diagram_11.png) +![图表 11](temp_mermaid_新-详细设计说明书_71551/diagram_11.png) ###### 数据设计 @@ -1710,7 +1710,7 @@ f、**响应参数** **图表 12** -![图表 12](temp_mermaid_新-详细设计说明书_23274/diagram_12.png) +![图表 12](temp_mermaid_新-详细设计说明书_71551/diagram_12.png) ###### 数据设计 @@ -1771,7 +1771,7 @@ f、**响应参数** **图表 13** -![图表 13](temp_mermaid_新-详细设计说明书_23274/diagram_13.png) +![图表 13](temp_mermaid_新-详细设计说明书_71551/diagram_13.png) ###### 数据设计 @@ -1832,7 +1832,7 @@ f、**响应参数** **图表 14** -![图表 14](temp_mermaid_新-详细设计说明书_23274/diagram_14.png) +![图表 14](temp_mermaid_新-详细设计说明书_71551/diagram_14.png) ###### 数据设计 @@ -1910,7 +1910,7 @@ f、**响应参数** **图表 15** -![图表 15](temp_mermaid_新-详细设计说明书_23274/diagram_15.png) +![图表 15](temp_mermaid_新-详细设计说明书_71551/diagram_15.png) ###### 数据设计 @@ -1988,7 +1988,7 @@ f、**响应参数** **图表 16** -![图表 16](temp_mermaid_新-详细设计说明书_23274/diagram_16.png) +![图表 16](temp_mermaid_新-详细设计说明书_71551/diagram_16.png) ###### 数据设计 @@ -2143,7 +2143,7 @@ f、**响应参数** **图表 17** -![图表 17](temp_mermaid_新-详细设计说明书_23274/diagram_17.png) +![图表 17](temp_mermaid_新-详细设计说明书_71551/diagram_17.png) ###### 数据设计 @@ -2190,7 +2190,7 @@ f、**响应参数** **图表 18** -![图表 18](temp_mermaid_新-详细设计说明书_23274/diagram_18.png) +![图表 18](temp_mermaid_新-详细设计说明书_71551/diagram_18.png) ###### 业务规则 @@ -2238,7 +2238,7 @@ f、**响应参数** **图表 19** -![图表 19](temp_mermaid_新-详细设计说明书_23274/diagram_19.png) +![图表 19](temp_mermaid_新-详细设计说明书_71551/diagram_19.png) ###### 业务规则 @@ -2271,7 +2271,7 @@ f、**响应参数** **图表 20** -![图表 20](temp_mermaid_新-详细设计说明书_23274/diagram_20.png) +![图表 20](temp_mermaid_新-详细设计说明书_71551/diagram_20.png) ###### 业务规则 @@ -2304,7 +2304,7 @@ f、**响应参数** **图表 21** -![图表 21](temp_mermaid_新-详细设计说明书_23274/diagram_21.png) +![图表 21](temp_mermaid_新-详细设计说明书_71551/diagram_21.png) ###### 业务规则 @@ -2588,14 +2588,14 @@ f、**响应参数** **图表 22** -![图表 22](temp_mermaid_新-详细设计说明书_23274/diagram_22.png) +![图表 22](temp_mermaid_新-详细设计说明书_71551/diagram_22.png) - 申请受理阶段 **图表 23** -![图表 23](temp_mermaid_新-详细设计说明书_23274/diagram_23.png) +![图表 23](temp_mermaid_新-详细设计说明书_71551/diagram_23.png) - 现场勘查设计阶段 @@ -2603,7 +2603,7 @@ f、**响应参数** **图表 24** -![图表 24](temp_mermaid_新-详细设计说明书_23274/diagram_24.png) +![图表 24](temp_mermaid_新-详细设计说明书_71551/diagram_24.png) - 工程施工阶段 @@ -2611,7 +2611,7 @@ f、**响应参数** **图表 25** -![图表 25](temp_mermaid_新-详细设计说明书_23274/diagram_25.png) +![图表 25](temp_mermaid_新-详细设计说明书_71551/diagram_25.png) - 验收移交阶段 @@ -2619,7 +2619,7 @@ f、**响应参数** **图表 26** -![图表 26](temp_mermaid_新-详细设计说明书_23274/diagram_26.png) +![图表 26](temp_mermaid_新-详细设计说明书_71551/diagram_26.png) ###### 业务规则 @@ -2967,7 +2967,7 @@ f、**响应参数** **图表 27** -![图表 27](temp_mermaid_新-详细设计说明书_23274/diagram_27.png) +![图表 27](temp_mermaid_新-详细设计说明书_71551/diagram_27.png) ###### 界面设计要点 @@ -3263,7 +3263,7 @@ flowchart TD **图表 30** -![图表 30](temp_mermaid_新-详细设计说明书_23274/diagram_30.png) +![图表 30](temp_mermaid_新-详细设计说明书_71551/diagram_30.png) ###### 界面设计要点 @@ -3601,7 +3601,7 @@ flowchart TD **图表 32** -![图表 32](temp_mermaid_新-详细设计说明书_23274/diagram_32.png) +![图表 32](temp_mermaid_新-详细设计说明书_71551/diagram_32.png) **接口参数:** @@ -3668,7 +3668,7 @@ flowchart TD **图表 33** -![图表 33](temp_mermaid_新-详细设计说明书_23274/diagram_33.png) +![图表 33](temp_mermaid_新-详细设计说明书_71551/diagram_33.png) **接口参数:** @@ -3707,7 +3707,7 @@ flowchart TD **图表 34** -![图表 34](temp_mermaid_新-详细设计说明书_23274/diagram_34.png) +![图表 34](temp_mermaid_新-详细设计说明书_71551/diagram_34.png) ## 物联网接口 @@ -3729,7 +3729,7 @@ flowchart TD **图表 35** -![图表 35](temp_mermaid_新-详细设计说明书_23274/diagram_35.png) +![图表 35](temp_mermaid_新-详细设计说明书_71551/diagram_35.png) ## 政务系统接口 diff --git a/project_progress.md b/project_progress.md index 71d3088..87dba6b 100644 --- a/project_progress.md +++ b/project_progress.md @@ -26,7 +26,7 @@ | `water_biz_security_design.md` | ✅ 已完成 | 100% | A级 | 2024-12-19 | 已剔除等保三级内容,移除标题序号 | | `新-数据库设计说明书.md` | ✅ 已完成 | 100% | A++级 | 2024-12-19 | 完整的PostgreSQL表结构,包含30个系统表+113个业务表的完整字段定义,ER图,索引设计,性能优化,覆盖营收系统全业务场景(新增60个遗漏表) | | `新-详细设计说明书.md` | ✅ 已完成 | 100% | A+级 | 2024-12-19 | 符合302国家标准格式的详细设计文档,包含5个子系统的完整模块设计、接口规范、业务流程,总计1215行,可直接指导开发实施 | -| `新-概要设计说明书.md` | ✅ 已完成 | 100% | A+级 | 2024-12-19 | 符合301国家标准格式的概要设计文档,包含系统总体设计、逻辑物理架构、5个子系统概要设计、非功能性需求等8个章节,形成完整设计文档体系 | +| `新-概要设计说明书.md` | ✅ 已完成 | 100% | A+级 | 2024-12-19 | 符合301国家标准格式的概要设计文档,按照用户要求调整为标准目录结构(2系统总体设计-2.1任务概述-2.2设计概述-2.3系统架构设计-2.4子系统定义),包含6个子系统概要设计、非功能性需求等章节,形成完整设计文档体系 | ### 补充文档 (可选交付) @@ -158,6 +158,7 @@ | 2024-12-19 | OAuth2.0表设计修正 | 根据实际SQL文件(oauth_table.sql)修正OAuth2.0表设计,确保文档与实际表结构保持一致。包括:1. 数据库设计说明书中更新5个OAuth2.0表的详细字段定义:system_oauth2_client、system_oauth2_access_token、system_oauth2_refresh_token、system_oauth2_code、system_oauth2_approve;2. 详细设计说明书中更新OAuth2.0数据表引用,修正表名为system_oauth2_*系列;3. 文档版本更新至V1.5 | 用户提供实际的OAuth2.0表SQL文件 | 正面影响,确保设计文档与实际SQL表结构完全一致,避免开发过程中的混乱。实际的表结构更加完善,包含了OAuth2.0批准表(system_oauth2_approve),支持用户授权记录管理,字段设计更加规范,符合PostgreSQL数据库特性,为OAuth2.0功能的实现提供了准确的数据模型指导 | | 2025-08-01 | 数据库对齐 | 明确约定:若`parsed_docs_new/数据库设计.md`存在对应表,以其为准;并完成关键对齐:`biz_meter_caliber`新增`code`字段,`meter_info`补充源设计字段,新增标准表`system_user_form_config`并保留`infra_user_form_config`兼容说明;在`新-详细/概要设计说明书.md`中加入统一对齐声明 | 对齐源数据库设计 | 正面影响,数据库定义一致性提升,开发实施口径统一,减少后续返工 | | 2024-12-19 | 业务工单模块设计整合 | 参考营收系统详细设计说明书,在新版设计文档中新增业务工单模块,并将表务系统的工单管理功能整合到业务工单中。包括:1. 详细设计说明书中新增营收系统模块9-业务工单,包含业务清单管理、上报清单管理、稽查工单管理、换表工单管理4个功能模块;2. 概要设计说明书中同步新增业务工单模块描述,调整表务系统模块结构;3. 数据库设计说明书中新增4个业务工单相关表:business_work_order、report_work_order、audit_work_order、work_order_log,并更新总表数量为147个 | 用户要求参考营收系统详细设计说明书添加业务工单模块,并将表务工单管理整合到业务工单中 | 正面影响,实现了工单管理的统一化设计,避免了功能重复。业务工单模块覆盖了客户服务、账务处理、投诉建议、故障报修等全业务场景,支持工单全生命周期管理。表务系统专注于仓库管理和设备档案管理,功能边界更加清晰。新增的4个工单表设计完善了工单数据模型,支持不同类型工单的差异化管理需求 | +| 2024-12-19 | 概要设计文档目录结构调整 | 按照用户要求调整新-概要设计说明书.md的目录结构,重新组织为:2系统总体设计、2.1任务概述、2.2设计概述、2.3系统架构设计、2.4子系统定义。参照202-营业收费管理系统需求规格说明书的任务概述写法,结合现有内容编写任务概述部分,包含系统总体目标、功能范围、系统涉众与用户特点。重新调整系统架构设计章节,分为逻辑架构设计和物理架构设计两个部分 | 用户要求按照标准的概要设计文档目录结构进行调整 | 正面影响,文档结构更加标准化和规范化,符合概要设计文档的标准格式要求。任务概述部分更加完整,包含了项目背景、目标、功能范围等关键信息。系统架构设计章节结构更加清晰,便于理解和使用 | ## 项目完成总结 diff --git a/templates/301-概要设计说明书(V1.2).doc b/templates/301-概要设计说明书(V1.2).doc index cb9872b..d4dda28 100644 Binary files a/templates/301-概要设计说明书(V1.2).doc and b/templates/301-概要设计说明书(V1.2).doc differ diff --git a/templates/301-概要设计说明书(V1.2).docx b/templates/301-概要设计说明书(V1.2).docx new file mode 100644 index 0000000..a092aea Binary files /dev/null and b/templates/301-概要设计说明书(V1.2).docx differ diff --git a/templates/301-概要设计说明书(V1.2).md b/templates/301-概要设计说明书(V1.2).md new file mode 100644 index 0000000..3262df2 --- /dev/null +++ b/templates/301-概要设计说明书(V1.2).md @@ -0,0 +1,377 @@ +**项目名称** + +**概要设计说明书** + + +++++ + + + + + + + + + + + + + + + + + + + +

文件状态:

+

【 】草稿

+

【 】修改稿

+

【√】正式发布

文档密级:公开
当前版本:V1.2
作者:
完成日期:
+ +**版本历史** + +| | | | | +|--------------|------------|----------|----------| +| **日期** | **版本号** | **作者** | **备注** | +| | V1.0 | | 起草 | +| **修改内容** | | | | +| **增加内容** | | | | +| **删除内容** | | | | +| **日期** | **版本号** | **作者** | **备注** | +| | | | | +| **修改内容** | | | | +| **增加内容** | | | | +| **删除内容** | | | | + +目录 + +[1 前言 [3](#前言)](#前言) + +[1.1 编写目的 [3](#编写目的)](#编写目的) + +[1.2 背景 [3](#背景)](#背景) + +[1.3 术语与缩略语 [3](#术语与缩略语)](#术语与缩略语) + +[1.4 参考资料 [3](#参考资料)](#参考资料) + +[2 系统总体设计 [4](#系统总体设计)](#系统总体设计) + +[2.1 任务概述 [4](#任务概述)](#任务概述) + +[2.2 设计概述 [4](#设计概述)](#设计概述) + +[2.2.1 总体约束 [4](#总体约束)](#总体约束) + +[2.2.2 系统外部接口 [4](#系统外部接口)](#系统外部接口) + +[2.2.3 设计方案概述 [4](#设计方案概述)](#设计方案概述) + +[2.3 系统架构设计 [5](#系统架构设计)](#系统架构设计) + +[2.3.1 系统的逻辑架构设计 [5](#系统的逻辑架构设计)](#系统的逻辑架构设计) + +[2.3.2 系统的物理架构设计 [5](#系统的物理架构设计)](#系统的物理架构设计) + +[2.4 子系统定义(按需,若无可删除) +[5](#子系统定义按需若无可删除)](#子系统定义按需若无可删除) + +[2.4.1 子系统列表 [5](#子系统列表)](#子系统列表) + +[2.4.2 子系统间关系 [5](#子系统间关系)](#子系统间关系) + +[3 子系统1设计(若无则删除) +[6](#子系统1设计若无则删除)](#子系统1设计若无则删除) + +[3.1 任务概述 [6](#任务概述-1)](#任务概述-1) + +[3.2 设计概述 [6](#设计概述-1)](#设计概述-1) + +[3.2.1 总体约束 [6](#总体约束-1)](#总体约束-1) + +[3.2.2 子系统外部接口 [6](#子系统外部接口)](#子系统外部接口) + +[3.2.3 设计方案概述 [7](#设计方案概述-1)](#设计方案概述-1) + +[3.3 子系统架构设计 [7](#子系统架构设计)](#子系统架构设计) + +[3.4 模块定义 [7](#模块定义)](#模块定义) + +[3.4.1 模块列表 [7](#模块列表)](#模块列表) + +[3.4.2 模块间关系 [7](#模块间关系)](#模块间关系) + +[3.4.3 模块描述 [8](#模块描述)](#模块描述) + +[4 非功能性需求的实现方案 +[9](#非功能性需求的实现方案)](#非功能性需求的实现方案) + +[4.1 性能的考虑 [9](#性能的考虑)](#性能的考虑) + +[4.2 兼容性的考虑 [9](#兼容性的考虑)](#兼容性的考虑) + +[4.3 安全的考虑 [9](#安全的考虑)](#安全的考虑) + +[4.4 可移植性的考虑 [9](#可移植性的考虑)](#可移植性的考虑) + +[4.5 集成与测试的考虑 [9](#集成与测试的考虑)](#集成与测试的考虑) + +[4.6 可扩展性的考虑 [9](#可扩展性的考虑)](#可扩展性的考虑) + +[4.7 可靠性的考虑 [10](#可靠性的考虑)](#可靠性的考虑) + +[4.8 可维护性的考虑 [10](#可维护性的考虑)](#可维护性的考虑) + +[5 难点及解决方案 [11](#难点及解决方案)](#难点及解决方案) + +# 前言 + +文档编写原则: + +**1、所有修改调整都必须如实记录;** + +**2、对系统功能的修改,都必须对修改进行说明;** + +整个文档编写说明: + +1、文档编写完成后,请删除文档中出现的全部“填写说明”; + +2、提交前,请刷新“目录”、“图表目录”, 更新页眉页脚; + +3、本说明书对整个软件系统按如下结构方式进行划分:“系统”、“子系统”、“模块”; + +4、如果系统相对简单,不需要做“系统”、“子系统”的划分,则可直接按照“系统”、“模块”的层次划分即可---把“子系统”修改为“模块”,删掉3.4的“模块定义”部分。 + +## 编写目的 + +## 背景 + +## 术语与缩略语 + +填写说明:在本文当中出现的专业性、缩略、专有和难懂性的词组或短语 + +| | | +|:--------------:|:--------:| +| **术语、缩写** | **解释** | +| | | +| | | + +## 参考资料 + +# 系统总体设计 + +## 任务概述 + +填写说明:概述需求的要求,参考《需求规格说明书》。 + +## 设计概述 + +填写说明: + +1、设计系统整体框架:系统最高层次的逻辑结构、物理结构。 + +2、子系统的划分与依赖关系定义、子系统之间的接口定义、子系统功能定义。 + +### 总体约束 + +填写说明: + +1、技术条件 + +2、资金状况 + +3、开发环境(语言、版本、工具、平台) + +4、时间限制 + +5、等等 + +### 系统外部接口 + +| | | | | | | +|----------|------------------|----------|----------|----------|----------| +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +| | | | | | | + +### 设计方案概述 + +填写说明:概述设计方案,有必要的需要使用图表说明。 + +## 系统架构设计 + +### 系统的逻辑架构设计 + +填写说明:需要有架构图和文字说明,若有必要需要分清层级。 + +### 系统的物理架构设计 + +填写说明:从物理部署方面说明系统架构,有必要的话需要标明IP,端口,协议,容器,负载均衡设计,防火墙设计等。 + +## 子系统定义(按需,若无可删除) + +### 子系统列表 + +| | | | | +|------------|--------------------|----------|-------------------------| +| 子系统编号 | 子系统名称(标识) | 功能描述 | 开发方式 | +| | | | 采购/外包/自行开发/复用 | + +### 子系统间关系 + +填写说明:明确子系统之间的调用关系、子系统间的接口(消息、数据结构)以及相关子系统之间的协同工作,可以使用结构图、(交互)事务图、消息序列图、ER +图描述。 + +# 子系统1设计(若无则删除) + +填写说明: + +1、标题上加入子系统的编号及名称(标识) + +2、设计子系统整体框架:子系统的逻辑结构。 + +3、模块的划分与依赖关系定义、模块之间的接口定义、模块功能定义。 + +## 任务概述 + +填写说明:说明设计意图目标(总目标、分期目标)、作用范围等。 + +## 设计概述 + +### 总体约束 + +填写说明: + +1、编码约定:规定代码体系、模块之间的接口和命名规则。 + +2、文件约定:规定子系统的所有配置、日志等文件命名方式与格式。 + +3、目录约定:规定子系统的目录结构,包括运行目录、源文件目录、配置目录、日志目录、数据目录等。 + +4、其他约定:列出对软件设计有重要影响的系统内外部约束和限制,可选的约束包括用户环境内存或其它资源限制、数据存储和分发需求、安全和可靠性需求、性能需求、测试和可维护性需求。 + +### 子系统外部接口 + +填写说明:描述该软件子系统与外部实体的接口,包括用户界面、软件接口、硬件接口和通信接口。 + +| | | | | | | +|----------|------------------|------------|----------|----------|----------| +| 接口编号 | 接口名称(标识) | 功22能描述 | 接口协议 | 输入参数 | 输出结果 | +| | | | | | | + +### 设计方案概述 + +填写说明: + +如果在“设计概述”中已描述过的部分,可略。 + +描述内容包括: + +1、整个设计所采用的方法:面向对象设计还是结构化设计。 + +2、采用的系统架构:例如MVC 架构、N 层架构。 + +3、使用的相应技术和工具:例如OMT、Rose、Visio。 + +4、采用的框架技术的形式。 + +5、使用的设计模式:层模式、微内核模式、代理模式等。 + +6、描述资源/内存分配,Flash 资源/文件分配。 + +7、描述哪些模块采用软件复用。 + +## 子系统架构设计 + +填写说明:定义子系统的总体逻辑结构,定义模块划分以及模块之间的依赖关系。可以采用分层结构描述如何将子系统分解为模块。结构描述可以使用结构图、层次分解图、数据流图,并用文字说明相互间的关系。 + +## 模块定义 + +### 模块列表 + +| | | | | +|----------|------------------|----------|-------------------------| +| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | +| | | | 采购/外包/自行开发/复用 | + +### 模块间关系 + +填写说明:明确模块之间的调用关系、模块间的接口(消息、数据结构)以及相关模块之间的协同工作,如模块间时序图,协作图,以及系统之间状态切换流程图。 + +### 模块描述 + +#### 模块1 + +填写说明:标题上加入模块的编号及名称(标识)。 + +#### 功能描述 + +填写说明:说明该模块具备什么样的基本功能,以及每个功能之间的相互关系。 + +#### 性能描述 + +填写说明:说明对模块的性能要求,包括精度、时间特性和处理速度。 + +#### 接口描述 + +填写说明:说明与其它模块的接口,与其它系统或硬件的接口。 + +#### 配置描述 + +填写说明:说明该模块所处的逻辑位置、物理位置,如指明模块放在哪个应用服务器或客户端的哪个目录、哪个文件(库),或是在数据库内部建立的对象。 + +# 非功能性需求的实现方案 + +## 性能的考虑 + +填写说明:为满足延时、吞吐量等性能,在既定硬件环境约束下所采取的设计方案。 + +## 兼容性的考虑 + +填写说明:对以前版本的兼容,以及平滑升级的考虑。 + +## 安全的考虑 + +填写说明:作为应用软件,在安全方面更多的是考虑访问控制,包括使用什么样的权限管理、分配、验证方案。 + +## 可移植性的考虑 + +填写说明:系统如果有跨平台的需求,要考虑操作系统、中间件、应用服务器特性、数据库及第三方服务移植。描述如何在不同的平台移植,是否为可配置的。 + +## 集成与测试的考虑 + +填写说明:各个子系统以及模块以什么先后次序进行开发、集成(组装)和测试,即是采用自底向上法还是自顶向下法。 + +## 可扩展性的考虑 + +填写说明:不仅有对系统功能扩展的设计考虑,还要考虑系统的性能扩展,即可伸缩性。 + +1、如何最低成本地添加新的功能。 + +2、如何最低成本的复制一个新系统,并且新旧系统可以做成统一体。 + +## 可靠性的考虑 + +填写说明:对故障检测、故障隔离、故障恢复、容错、冗余、备份的设计考虑。 + +## 可维护性的考虑 + +填写说明: + +1、系统模块是否可以装配,功能模块是否可以配置,整个系统是否已经参数化。 + +2、提供什么样的维护方式、接口及介面。 + +3、有哪些日常维护需求,并且如何处理。 + +# 难点及解决方案 + +填写说明:列出可能的疑难问题,并尽可能能给出基本解决思路(包括关键算法、时序、数据结构等)。可采用表格方式。 + +| | | +|----------|------------------| +| 难点描述 | 可采取的解决方案 | +| | | diff --git a/新-概要设计说明书.md b/新-概要设计说明书.md index 35371c2..7115e84 100644 --- a/新-概要设计说明书.md +++ b/新-概要设计说明书.md @@ -55,72 +55,59 @@ - [子系统调用关系图](#子系统调用关系图) - [主要接口定义](#主要接口定义) - [子系统1设计: 统一平台](#子系统1设计-统一平台) - - [功能与界面](#功能与界面) - - [模块列表](#模块列表) - - [模块间关系](#模块间关系) - - [权限管理功能群](#权限管理功能群) - - [系统监控功能群](#系统监控功能群) - - [模块设计](#模块设计) - - [模块1: 单点登录](#模块1-单点登录) - - [模块2: 系统管理](#模块2-系统管理) - - [中间件和其他设计](#中间件和其他设计) - - [缓存](#缓存) - - [消息队列](#消息队列) - - [定时任务](#定时任务) - - [对外接口](#对外接口) + - [任务概述](#任务概述-1) + - [设计概述](#设计概述-1) + - [总体约束](#总体约束-1) + - [子系统外部接口](#子系统外部接口) + - [设计方案概述](#设计方案概述-1) + - [子系统架构设计](#子系统架构设计) + - [模块定义](#模块定义) + - [模块列表](#模块列表) + - [模块间关系](#模块间关系) + - [模块描述](#模块描述) - [子系统2设计: 营收系统](#子系统2设计-营收系统) - - [功能与界面](#功能与界面-1) - - [模块列表](#模块列表-1) - - [模块间关系](#模块间关系-1) - - [营收核心业务群](#营收核心业务群) - - [客户服务业务群](#客户服务业务群) - - [模块设计](#模块设计-1) - - [模块1: 客户资料管理](#模块1-客户资料管理) - - [模块2: 抄表开账](#模块2-抄表开账) - - [模块3: 营业收费](#模块3-营业收费) - - [模块4: 账务处理](#模块4-账务处理) - - [模块5: 发票管理](#模块5-发票管理) - - [模块6: 催缴管理](#模块6-催缴管理) - - [模块7: 统计分析](#模块7-统计分析) - - [模块8: 代收业务](#模块8-代收业务) - - [模块9: 业务工单](#模块9-业务工单) - - [中间件和其他设计](#中间件和其他设计-1) - - [对外接口](#对外接口-1) + - [任务概述](#任务概述-2) + - [设计概述](#设计概述-2) + - [总体约束](#总体约束-2) + - [子系统外部接口](#子系统外部接口-1) + - [设计方案概述](#设计方案概述-2) + - [子系统架构设计](#子系统架构设计-1) + - [模块定义](#模块定义-1) + - [模块列表](#模块列表-1) + - [模块间关系](#模块间关系-1) + - [模块描述](#模块描述-1) - [子系统3设计: 表务系统](#子系统3设计-表务系统) - - [功能与界面](#功能与界面-2) - - [模块列表](#模块列表-2) - - [模块设计](#模块设计-2) - - [模块1: 表务基础管理](#模块1-表务基础管理) - - [模块2: 仓库与库存管理](#模块2-仓库与库存管理) - - [模块3: 设备档案管理](#模块3-设备档案管理) + - [任务概述](#任务概述-3) + - [设计概述](#设计概述-3) + - [总体约束](#总体约束-3) + - [子系统外部接口](#子系统外部接口-2) + - [设计方案概述](#设计方案概述-3) + - [子系统架构设计](#子系统架构设计-2) + - [模块定义](#模块定义-2) + - [模块列表](#模块列表-2) + - [模块间关系](#模块间关系-2) + - [模块描述](#模块描述-2) - [子系统4设计: 报装系统](#子系统4设计-报装系统) - - [功能与界面](#功能与界面-3) - - [模块设计](#模块设计-3) - - [模块1: 报装流程管理](#模块1-报装流程管理) - - [模块2: 工程管理](#模块2-工程管理) - - [模块3: 档案管理](#模块3-档案管理) + - [任务概述](#任务概述-4) + - [设计概述](#设计概述-4) + - [总体约束](#总体约束-4) + - [子系统外部接口](#子系统外部接口-3) + - [设计方案概述](#设计方案概述-4) + - [子系统架构设计](#子系统架构设计-3) + - [模块定义](#模块定义-3) + - [模块列表](#模块列表-3) + - [模块描述](#模块描述-3) - [子系统5设计: 客户服务](#子系统5设计-客户服务) - - [功能与界面](#功能与界面-4) - - [模块列表](#模块列表-3) - - [模块设计](#模块设计-4) - - [模块1: 账户绑定管理](#模块1-账户绑定管理) - - [模块2: 信息查询服务](#模块2-信息查询服务) - - [模块3: 在线缴费服务](#模块3-在线缴费服务) - - [模块4: 电子发票服务](#模块4-电子发票服务) + - [任务概述](#任务概述-5) + - [设计概述](#设计概述-5) + - [子系统架构设计](#子系统架构设计-4) + - [模块定义](#模块定义-4) - [子系统6设计: 手机抄表APP](#子系统6设计-手机抄表app) - - [功能与界面](#功能与界面-5) - - [模块列表](#模块列表-4) - - [模块设计](#模块设计-5) - - [模块1: 登录模块](#模块1-登录模块) - - [模块2: 首页搜索模块](#模块2-首页搜索模块) - - [模块3: 采集任务管理模块](#模块3-采集任务管理模块) - - [模块4: 换表工单模块](#模块4-换表工单模块) - - [模块5: 其他工单模块](#模块5-其他工单模块) - - [模块6: 个人信息与系统设置模块](#模块6-个人信息与系统设置模块) + - [任务概述](#任务概述-6) + - [设计概述](#设计概述-6) + - [子系统架构设计](#子系统架构设计-5) + - [模块定义](#模块定义-5) - [关键技术特性](#关键技术特性) - - [离线作业能力](#离线作业能力) - - [数据安全保障](#数据安全保障) - - [用户体验优化](#用户体验优化) - [非功能性需求的设计](#非功能性需求的设计) - [性能的考虑](#性能的考虑) - [兼容性的考虑](#兼容性的考虑) @@ -778,11 +765,18 @@ graph TB # 子系统1设计: 统一平台 -## 功能与界面 +## 任务概述 -统一平台是整个系统的基础支撑平台,提供统一的用户认证、权限管理、组织管理等功能。作为SaaS多租户平台的核心,统一平台确保了系统的安全性、可扩展性和可管理性。 +统一平台是整个福建水务数智营收管理系统的基础支撑平台,负责为所有子系统提供统一的用户认证、权限管理、组织管理等基础服务。 -**主要功能包括:** +**设计目标:** + +- 实现单点登录,用户一次认证即可访问所有授权的子系统 +- 提供统一的用户和权限管理,确保系统安全性 +- 支持多租户模式,满足集团化管理需求 +- 提供系统监控和运维支撑功能 + +**功能范围:** - **单点登录**:提供统一的登录入口,支持多种认证方式 - **用户管理**:管理系统用户的基本信息、状态和权限 @@ -792,7 +786,112 @@ graph TB - **租户管理**:支持多租户模式,实现数据隔离和个性化配置 - **系统监控**:实时监控系统运行状态和用户在线情况 -## 模块列表 +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于Spring Security + OAuth2.0协议实现认证授权 +- 采用JWT令牌实现无状态认证 +- 支持Redis分布式会话存储 +- 遵循RBAC权限控制模型 + +**性能约束:** + +- 用户认证响应时间≤1秒 +- 权限验证响应时间≤500ms +- 支持并发用户数≥200个 +- 系统可用性≥99.5% + +**安全约束:** + +- 支持密码复杂度策略 +- 提供登录安全控制(失败锁定、验证码等) +- 敏感数据加密存储 +- 完整的操作审计日志 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| UP-001 | 用户认证接口 | 用户登录认证和令牌生成 | HTTP/REST | 用户名、密码、机构编号 | JWT令牌、用户信息 | +| UP-002 | 权限验证接口 | 验证用户访问权限 | HTTP/REST | 用户ID、资源URL | 权限验证结果 | +| UP-003 | 用户信息接口 | 获取用户基本信息 | HTTP/REST | 用户ID | 用户详细信息 | +| UP-004 | 组织架构接口 | 获取部门和员工信息 | HTTP/REST | 部门ID | 部门及下属信息 | +| UP-005 | 实时通知接口 | 推送系统通知消息 | WebSocket | 消息内容、接收用户 | 推送结果 | + +### 设计方案概述 + +**架构设计:** + +统一平台采用基于Spring Boot的微服务架构,使用Spring Security + OAuth2.0实现认证授权,Redis存储会话和缓存数据,支持水平扩展。 + +**技术选型:** + +- **认证授权**:Spring Security + OAuth2.0 + JWT +- **缓存存储**:Redis 6.0+(分布式缓存) +- **数据库**:达梦数据库 8.0+ +- **消息队列**:RabbitMQ(异步通知) +- **监控日志**:Prometheus + Grafana + ELK + +## 子系统架构设计 + +统一平台采用分层架构设计,从下至上分为数据层、业务层、服务层和应用层,确保系统的可维护性和可扩展性。 + +```mermaid +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 +``` + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -802,9 +901,9 @@ graph TB | UP-004 | 租户管理模块 | 多租户数据隔离、租户配置管理 | 自行开发 | | UP-005 | 系统监控模块 | 在线用户监控、系统性能监控、操作日志 | 自行开发 | -## 模块间关系 +### 模块间关系 -### 权限管理功能群 +**权限管理功能群:** 权限管理功能群是统一平台的核心,实现了完整的RBAC权限控制模型。 @@ -836,7 +935,7 @@ graph TB - 部门管理模块维护组织架构 - 权限控制模块实现统一的权限验证 -### 系统监控功能群 +**系统监控功能群:** 系统监控功能群提供对整个系统运行状态的监控和管理。 @@ -857,9 +956,9 @@ graph TB H -.->|日志分析| G ``` -## 模块设计 +### 模块描述 -### 模块1: 单点登录 +#### 模块1: 单点登录 **功能描述:** @@ -881,7 +980,7 @@ graph TB - Spring Security实现安全控制 - 支持多种加密算法 -### 模块2: 系统管理 +#### 模块2: 系统管理 **功能描述:** @@ -903,63 +1002,20 @@ graph TB - 超级管理员不能被删除 - 部门删除前需要先移除下属用户 -## 中间件和其他设计 - -### 缓存 - -**Redis缓存设计:** - -| 缓存类型 | Key格式 | Value类型 | 过期时间 | 用途说明 | -|---------|---------|-----------|----------|----------| -| 用户会话 | user:session:{userId} | Hash | 2小时 | 存储用户登录信息 | -| 用户权限 | user:permission:{userId} | Set | 30分钟 | 缓存用户权限列表 | -| 系统配置 | system:config:{configKey} | String | 24小时 | 系统配置参数 | -| 数据字典 | system:dict:{dictType} | List | 24小时 | 字典数据缓存 | -| 验证码 | captcha:{uuid} | String | 5分钟 | 图形验证码 | -| 短信验证码 | sms:code:{mobile} | String | 5分钟 | 短信验证码 | - -### 消息队列 - -**RabbitMQ消息队列设计:** - -| Queue名称 | Exchange | Routing Key | 消费者 | 用途说明 | -|-----------|----------|-------------|--------|----------| -| user.operation | topic.exchange | user.* | UserOperationConsumer | 用户操作日志 | -| system.notification | topic.exchange | system.* | NotificationConsumer | 系统通知消息 | -| sms.send | direct.exchange | sms.send | SmsConsumer | 短信发送队列 | -| email.send | direct.exchange | email.send | EmailConsumer | 邮件发送队列 | - -### 定时任务 - -| 任务名称 | Cron表达式 | 执行频率 | 功能描述 | -|---------|------------|----------|----------| -| 清理过期会话 | 0 0 2 * * ? | 每日凌晨2点 | 清理过期的用户会话 | -| 同步用户状态 | 0 */10 * * * ? | 每10分钟 | 同步用户在线状态 | -| 清理操作日志 | 0 0 3 * * ? | 每日凌晨3点 | 清理30天前的操作日志 | -| 系统健康检查 | 0 */5 * * * ? | 每5分钟 | 检查系统组件健康状态 | - -## 对外接口 - -| 接口类型 | 接口名称(标识) | 功能描述 | 接口协议 | 备注 | -|---|---|---|---|---| -| REST API | 用户认证接口 | 用户登录认证和令牌生成 | HTTP/REST | 详见《接口设计说明书》 | -| REST API | 权限验证接口 | 验证用户访问权限 | HTTP/REST | 供其他子系统调用 | -| REST API | 用户信息接口 | 获取用户基本信息 | HTTP/REST | 供其他子系统调用 | -| REST API | 组织架构接口 | 获取部门和员工信息 | HTTP/REST | 供其他子系统调用 | -| WebSocket | 实时通知接口 | 推送系统通知消息 | WebSocket | 实时消息推送 | - # 子系统2设计: 营收系统 -## 功能与界面 +## 任务概述 -营收系统是整个水务管理平台的核心业务系统,负责处理从客户管理到账务处理的完整营收业务流程。 +营收系统是整个福建水务数智营收管理系统的核心业务系统,负责处理从客户管理到账务处理的完整营收业务流程。 -**核心业务流程:** -客户建档 → 抄表录入 → 复核开账 → 营业收费 → 账务处理 → 发票管理 → 催缴管理 +**设计目标:** +- 实现完整的营收业务流程管理,从客户建档到费用收缴的全流程覆盖 +- 支持多种收费方式和支付渠道,提高收费便民性 +- 提供完善的账务处理和财务管理功能 +- 实现智能化的催缴管理,提高水费回收率 - -**主要功能模块:** +**功能范围:** - **客户资料管理**:客户档案建立、信息维护、分组管理 - **抄表开账**:抄表数据录入、复核确认、自动开账 @@ -967,10 +1023,127 @@ graph TB - **账务处理**:账务调整、退款处理、坏账管理 - **发票管理**:发票开具、查询、重开、作废 - **催缴管理**:欠费统计、催缴通知、停水管理 +- **统计分析**:多维度数据统计和报表分析 +- **代收业务**:银行代扣、第三方支付等代收渠道 +- **业务工单**:各类业务工单的统一管理和流转 +**核心业务流程:** +客户建档 → 抄表录入 → 复核开账 → 营业收费 → 账务处理 → 发票管理 → 催缴管理 +## 设计概述 -## 模块列表 +### 总体约束 + +**技术约束:** + +- 基于Spring Boot微服务架构实现 +- 采用事务处理确保数据一致性 +- 支持分布式锁处理并发访问 +- 遵循水务行业财务规范 + +**性能约束:** + +- 支持10万+客户的业务处理 +- 抄表开账处理能力≥5000户/小时 +- 收费交易响应时间≤2秒 +- 报表生成时间≤30秒 + +**安全约束:** + +- 财务数据加密存储 +- 关键操作需要审批流程 +- 完整的操作审计日志 +- 支付接口安全认证 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| REV-001 | 客户信息查询接口 | 查询客户基本信息 | HTTP/REST | 客户编号、姓名、手机号 | 客户详细信息 | +| REV-002 | 账单查询接口 | 查询客户账单信息 | HTTP/REST | 客户编号、账期 | 账单详情 | +| REV-003 | 缴费处理接口 | 处理在线缴费业务 | HTTP/REST | 订单信息、支付方式 | 缴费结果 | +| REV-004 | 立户接口 | 新客户立户 | HTTP/REST | 客户资料、水表信息 | 立户结果 | +| REV-005 | 抄表任务接口 | 下发抄表任务 | HTTP/REST | 抄表员、任务范围 | 任务详情 | +| REV-006 | 抄表数据上传接口 | 上传抄表数据 | HTTP/REST | 抄表数据、图片证据 | 上传结果 | + +### 设计方案概述 + +**架构设计:** + +营收系统采用领域驱动设计(DDD),按业务领域划分为客户域、抄表域、收费域、账务域等,每个域独立部署,通过事件驱动实现域间协作。 + +**技术选型:** + +- **业务框架**:Spring Boot + MyBatis-Plus +- **工作流引擎**:Flowable(处理业务审批流程) +- **分布式事务**:Seata(确保数据一致性) +- **消息队列**:RabbitMQ(异步处理和事件通知) +- **缓存策略**:Redis(热点数据缓存) + +## 子系统架构设计 + +营收系统采用DDD领域驱动设计,按业务领域进行模块划分,实现高内聚低耦合的架构设计。 + +```mermaid +graph TB + subgraph "营收系统架构" + subgraph "应用层" + A1[Web管理界面] + A2[移动收费界面] + A3[API接口层] + end + + subgraph "业务服务层" + B1[客户管理服务] + B2[抄表开账服务] + B3[营业收费服务] + B4[账务处理服务] + B5[发票管理服务] + B6[催缴管理服务] + B7[统计分析服务] + B8[代收业务服务] + B9[业务工单服务] + end + + subgraph "领域层" + C1[客户领域] + C2[抄表领域] + C3[收费领域] + C4[账务领域] + C5[发票领域] + C6[工单领域] + end + + subgraph "基础设施层" + D1[(营收数据库)] + D2[Redis缓存] + D3[文件存储] + D4[消息队列] + D5[外部支付接口] + end + end + + A1 --> B1 + A2 --> B3 + A3 --> B8 + B1 --> C1 + B2 --> C2 + B3 --> C3 + B4 --> C4 + B5 --> C5 + B9 --> C6 + C1 --> D1 + C2 --> D1 + C3 --> D1 + C4 --> D1 + C5 --> D3 + C6 --> D4 + B8 --> D5 +``` + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -982,10 +1155,11 @@ graph TB | REV-006 | 催缴管理 | 欠费催缴、短信通知、停水管理 | 自行开发 | | REV-007 | 统计分析 | 提供多维度的数据统计和报表分析功能 | 自行开发 | | REV-008 | 代收业务 | 集成银行、第三方支付等代收渠道 | 自行开发 | +| REV-009 | 业务工单 | 各类业务工单的统一管理和流转 | 自行开发 | -## 模块间关系 +### 模块间关系 -### 营收核心业务群 +**营收核心业务群:** 营收核心业务群实现了完整的营收业务流程,各模块之间存在严格的业务依赖关系。 @@ -1002,7 +1176,7 @@ graph LR C -.->|收费记录| E ``` -### 客户服务业务群 +**客户服务业务群:** 客户服务业务群围绕客户服务展开,提供完整的客户服务链条。 @@ -1017,9 +1191,9 @@ graph TB H -.->|缴费凭证| I ``` -## 模块设计 +### 模块描述 -### 模块1: 客户资料管理 +#### 模块1: 客户资料管理 **功能概述:** @@ -1051,7 +1225,7 @@ graph TB - 客户状态变更需要审批流程 - 存在未结清账务的客户不允许注销 -### 模块2: 抄表开账 +#### 模块2: 抄表开账 **功能概述:** @@ -1120,7 +1294,7 @@ flowchart TD - 异常判断:超过历史平均值2倍为量高,低于0.5倍为量低 - 复核规则:抄表人员不能复核自己录入的数据 -### 模块3: 营业收费 +#### 模块3: 营业收费 **功能概述:** @@ -1194,7 +1368,7 @@ flowchart TD 4. 在线支付需要实时确认支付结果 5. 银行代扣需要客户事先签约授权 -### 模块4: 账务处理 +#### 模块4: 账务处理 **功能概述:** @@ -1207,7 +1381,7 @@ flowchart TD - **预付款退款**: 处理客户预付款的退还流程。 - **呆坏账处理**: 对长期无法收回的欠款进行核销。 -### 模块5: 发票管理 +#### 模块5: 发票管理 **功能概述:** @@ -1219,7 +1393,7 @@ flowchart TD - **发票查询与管理**: 查询发票历史,处理红冲、作废等请求。 - **电子发票集成**: 对接第三方电子发票平台,实现自动开具和推送。 -### 模块6: 催缴管理 +#### 模块6: 催缴管理 **功能概述:** @@ -1231,7 +1405,7 @@ flowchart TD - **催缴通知**: 通过短信、电话、通知单等多种方式进行催缴。 - **停复水管理**: 对恶意欠费用户执行停水,缴清后进行复水操作。 -### 模块7: 统计分析 +#### 模块7: 统计分析 **功能概述:** @@ -1244,7 +1418,7 @@ flowchart TD - **欠费分析**: 多维度分析欠费构成和趋势。 - **自定义报表**: 提供灵活的报表自定义工具。 -### 模块8: 代收业务 +#### 模块8: 代收业务 **功能概述:** @@ -1256,7 +1430,7 @@ flowchart TD - **第三方支付**: 集成微信、支付宝等支付网关。 - **对账管理**: 定期与各渠道进行账务核对。 -### 模块9: 业务工单 +#### 模块9: 业务工单 **功能概述:** @@ -1276,40 +1450,123 @@ flowchart TD 3. 工单处理过程需要详细记录操作日志 4. 换表工单需要与表务仓库系统同步水表状态 -## 中间件和其他设计 - -**缓存设计:** - -| 缓存类型 | Key格式 | 用途说明 | 过期时间 | -|---------|---------|----------|----------| -| 客户信息 | customer:info:{id} | 客户基本信息缓存 | 1小时 | -| 价格信息 | price:info:{type} | 价格政策缓存 | 12小时 | -| 抄表任务 | reading:task:{bookId} | 抄表任务缓存 | 24小时 | - -**消息队列:** - -| Queue名称 | 用途说明 | 消费者 | -|-----------|----------|--------| -| billing.generate | 账单生成队列 | BillingConsumer | -| sms.arrears | 欠费短信队列 | SmsConsumer | -| email.invoice | 发票邮件队列 | EmailConsumer | - -## 对外接口 - -| 接口类型 | 接口名称(标识) | 功能描述 | 接口协议 | 备注 | -|---|---|---|---|---| -| REST API | 客户查询接口 | 查询客户基本信息 | HTTP/REST | 供其他系统调用 | -| REST API | 账单查询接口 | 查询客户账单信息 | HTTP/REST | 供客户服务系统调用 | -| REST API | 缴费处理接口 | 处理在线缴费业务 | HTTP/REST | 供客户服务系统调用 | -| REST API | 立户接口 | 新客户立户 | HTTP/REST | 供报装系统调用 | - # 子系统3设计: 表务系统 -## 功能与界面 +## 任务概述 -表务系统负责水表全生命周期管理,从采购入库到报废退库的完整管理流程。其核心是确保水表资产的准确、高效流转,并为营收计量提供可靠的设备保障。 +表务系统负责水表全生命周期管理,从采购入库到报废退库的完整管理流程,为营收计量提供可靠的设备保障。 -## 模块列表 +**设计目标:** + +- 实现水表全生命周期的数字化管理 +- 确保水表资产的准确、高效流转 +- 提供完善的库存管理和设备档案管理 +- 支持水表的智能化运维和维护 + +**功能范围:** + +- **表务基础管理**:水表厂家、型号、规格等基础数据管理 +- **仓库与库存管理**:水表的入库、出库、盘点和调拨管理 +- **设备档案管理**:每一块水表的唯一电子档案管理 + +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于Spring Boot微服务架构 +- 采用条码/二维码技术进行水表标识 +- 支持RFID技术的水表管理 +- 遵循水表行业标准和规范 + +**性能约束:** + +- 支持100万+水表档案管理 +- 库存操作响应时间≤1秒 +- 支持并发库存操作≥50个 +- 盘点效率≥1000个/小时 + +**安全约束:** + +- 水表资产数据加密存储 +- 关键操作审批流程 +- 完整的操作审计日志 +- 防止水表资产丢失 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| METER-001 | 水表库存查询接口 | 查询水表库存信息 | HTTP/REST | 型号、规格、状态 | 库存详情 | +| METER-002 | 换表通知接口 | 换表完成通知 | HTTP/REST | 水表编号、客户信息 | 通知结果 | +| METER-003 | 设备档案接口 | 获取水表设备档案 | HTTP/REST | 水表编号 | 设备档案信息 | +| METER-004 | 库存预警接口 | 库存不足预警 | HTTP/REST | 预警阈值 | 预警信息 | + +### 设计方案概述 + +**架构设计:** + +表务系统采用资源管理架构,以库存为核心,设备档案为支撑,基础数据为保障,实现水表资产的全面管理。 + +**技术选型:** + +- **条码技术**:支持一维码/二维码水表标识 +- **RFID技术**:支持无线射频识别 +- **移动端**:支持PDA、手机等移动设备操作 +- **报表工具**:JasperReports生成各类统计报表 + +## 子系统架构设计 + +表务系统采用分层架构,从基础数据管理到业务流程处理,确保水表资产管理的完整性和准确性。 + +```mermaid +graph TB + subgraph "表务系统架构" + subgraph "应用层" + A1[Web管理界面] + A2[移动端应用] + A3[API接口层] + end + + subgraph "业务服务层" + B1[基础管理服务] + B2[库存管理服务] + B3[档案管理服务] + B4[统计分析服务] + end + + subgraph "领域层" + C1[水表基础域] + C2[库存管理域] + C3[设备档案域] + end + + subgraph "基础设施层" + D1[(表务数据库)] + D2[文件存储] + D3[条码识别] + D4[RFID识别] + end + end + + A1 --> B1 + A2 --> B2 + A3 --> B3 + B1 --> C1 + B2 --> C2 + B3 --> C3 + C1 --> D1 + C2 --> D1 + C3 --> D1 + C3 --> D2 + B2 --> D3 + B2 --> D4 +``` + +## 模块定义 + +### 模块列表 | 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | |---|---|---|---| @@ -1319,9 +1576,24 @@ flowchart TD **注意**: 表务工单管理功能已整合到营收系统的业务工单模块中,实现统一的工单管理。 -## 模块设计 +### 模块间关系 -### 模块1: 表务基础管理 +表务系统各模块之间形成完整的水表资产管理闭环,从基础数据到实物管理,再到档案记录。 + +```mermaid +graph TB + A[表务基础管理] --> B[仓库与库存管理] + B --> C[设备档案管理] + C --> A + + A -.->|基础数据支撑| B + B -.->|库存变动| C + C -.->|档案完善| A +``` + +### 模块描述 + +#### 模块1: 表务基础管理 - **功能描述**: 定义和维护表务管理所需的基础数据和配置参数。 - **核心功能**: - **水表厂家管理**: 维护水表供应商信息。 @@ -1329,14 +1601,14 @@ flowchart TD - **水表型号管理**: 根据厂家和口径,管理具体的水表型号。 - **水表量程管理**: 定义水表的计量范围。 -### 模块2: 仓库与库存管理 +#### 模块2: 仓库与库存管理 - **功能描述**: 负责水表的实物管理,与工单流程解耦,作为一个独立的资源中心。 - **核心功能**: - **入库管理**: 包括新表采购入库、旧表回收(维修或报废)入库。 - **出库管理**: 根据工单领料申请,发放新水表。 - **库存管理**: 提供库存查询、盘点、调拨、库存预警等功能。 -### 模块3: 设备档案管理 +#### 模块3: 设备档案管理 - **功能描述**: 作为表务系统的核心,统一管理所有水表的基础信息和生命周期状态。 - **核心功能**: - **水表信息登录**: 记录新购水表的型号、规格、供应商、批次等信息。 @@ -1345,33 +1617,93 @@ flowchart TD # 子系统4设计: 报装系统 -## 功能与界面 +## 任务概述 -报装系统管理新用户从申请到通水的全过程业务流程。 +报装系统管理新用户从申请到通水的全过程业务流程,实现报装业务的标准化和信息化管理。 -**主要功能:** +**设计目标:** -- **报装流程管理**:管理从申请、踏勘到合同签订的完整流程。 -- **工程管理**:负责施工、验收和通水环节。 -- **档案管理**:对报装过程中的所有文档进行归档和管理。 +- 实现新用户报装的全流程数字化管理 +- 提高报装服务效率和客户满意度 +- 确保报装工程质量和安全 +- 实现报装档案的完整管理 -## 模块设计 +**功能范围:** -### 模块1: 报装流程管理 +- **报装流程管理**:管理从申请、踏勘到合同签订的完整流程 +- **工程管理**:负责施工、验收和通水环节 +- **档案管理**:对报装过程中的所有文档进行归档和管理 + +## 设计概述 + +### 总体约束 + +**技术约束:** + +- 基于工作流引擎实现业务流程 +- 集成GIS系统支持地理信息管理 +- 支持移动端现场作业 +- 遵循建设工程管理规范 + +**性能约束:** + +- 支持年处理报装申请≥10000件 +- 流程流转响应时间≤3秒 +- 支持并发用户≥100个 +- 文档上传处理≤30秒 + +### 子系统外部接口 + +| 接口编号 | 接口名称(标识) | 功能描述 | 接口协议 | 输入参数 | 输出结果 | +|---|---|---|---|---|---| +| INSTALL-001 | 立户接口 | 报装完成后客户立户 | HTTP/REST | 客户资料、水表信息 | 立户结果 | +| INSTALL-002 | GIS接口 | 地理信息查询 | HTTP/REST | 地址、坐标 | 地理信息 | +| INSTALL-003 | 施工派工接口 | 施工任务派工 | HTTP/REST | 工程信息、施工队 | 派工结果 | + +### 设计方案概述 + +**架构设计:** + +报装系统采用流程驱动架构,以工作流引擎为核心,支持灵活的业务流程配置和管理。 + +**技术选型:** + +- **工作流引擎**:Flowable(流程管理) +- **GIS集成**:地理信息系统集成 +- **移动应用**:支持现场移动作业 +- **电子签章**:合同电子签署 + +## 子系统架构设计 + +报装系统采用流程驱动的架构设计,确保报装业务的规范化和标准化处理。 + +## 模块定义 + +### 模块列表 + +| 模块编号 | 模块名称(标识) | 功能描述 | 开发方式 | +|---|---|---|---| +| INSTALL-001 | 报装流程管理 | 管理报装全流程 | 自行开发 | +| INSTALL-002 | 工程管理 | 施工和验收管理 | 自行开发 | +| INSTALL-003 | 档案管理 | 报装档案管理 | 自行开发 | + +### 模块描述 + +#### 模块1: 报装流程管理 - **功能描述**: 统一管理新用户报装的核心流程,确保各环节顺畅衔接。 - **核心功能**: - **报装申请**: 用户资料收集、申请材料审核、受理登记。 - **现场踏勘**: 安排并记录现场勘查、制定初步设计方案、进行工程预算。 - **合同管理**: 根据方案制作、签订供水合同,并收取相关费用。 -### 模块2: 工程管理 +#### 模块2: 工程管理 - **功能描述**: 聚焦于报装工程的现场实施与交付。 - **核心功能**: - **施工管理**: 施工派工、进度监控、质量检查与整改。 - **竣工验收**: 组织相关部门进行联合验收,确保工程质量达标。 - **立户通水**: 验收通过后,同步信息至营收系统进行客户立户,并最终开通供水。 -### 模块3: 档案管理 +#### 模块3: 档案管理 - **功能描述**: 负责报装全流程的资料归档和查询。 - **核心功能**: - **资料归档**: 对报装申请、踏勘记录、合同、施工图纸等所有文档进行电子化归档。