更新福建水务营收系统文档,优化多个设计文档中的Mermaid图表,确保图表格式符合规范并提升可读性。同时,更新项目进度文档,标记相关文档为已完成,确保所有文档符合甲方A级交付标准,提升整体文档质量和一致性。
@ -62,7 +62,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 1**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 多租户架构设计
|
||||
@ -70,7 +70,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 2**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 通用字段设计
|
||||
@ -94,7 +94,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 3**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 营收管理模块ER图
|
||||
@ -102,7 +102,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 4**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 表务管理模块ER图
|
||||
@ -110,7 +110,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 5**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 系统管理模块ER图
|
||||
@ -118,7 +118,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 6**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 核心数据表设计
|
||||
@ -128,7 +128,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 7**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 系统管理模块ER图
|
||||
@ -136,7 +136,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 8**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 数据表结构设计
|
||||
|
||||
@ -54,7 +54,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 1**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 环境架构设计
|
||||
@ -131,7 +131,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 2**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 部署配置说明
|
||||
|
||||
@ -152,6 +152,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **认证方式**:API Key + 签名
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"merchantId": "WATER001",
|
||||
@ -189,6 +190,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **认证方式**:RSA2签名
|
||||
|
||||
**预创建支付请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"app_id": "2021001234567890",
|
||||
@ -241,6 +243,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **认证方式**:微信支付V3签名
|
||||
|
||||
**统一下单请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"appid": "wx8888888888888888",
|
||||
@ -315,6 +318,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求头**:`Authorization: Bearer {token}`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||||
|-------|------|------|------|------|
|
||||
| id | Long | 是 | 客户ID | 1 |
|
||||
@ -346,6 +350,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/customer/page`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||||
|-------|------|------|------|------|
|
||||
| pageNo | Integer | 否 | 页码,默认1 | 1 |
|
||||
@ -387,6 +392,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/customer/create`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"customerCode": "C002",
|
||||
@ -420,6 +426,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求头**:`Authorization: Bearer {token}`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||||
|-------|------|------|------|------|
|
||||
| id | Long | 是 | 水表ID | 1 |
|
||||
@ -457,6 +464,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/reading/create`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"meterId": 1,
|
||||
@ -488,6 +496,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **Content-Type**:`multipart/form-data`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||||
|-------|------|------|------|------|
|
||||
| file | MultipartFile | 是 | Excel文件 | reading_data.xlsx |
|
||||
@ -523,6 +532,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/bill/page`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|
||||
|-------|------|------|------|------|
|
||||
| pageNo | Integer | 否 | 页码,默认1 | 1 |
|
||||
@ -569,6 +579,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/bill/generate`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"billMonth": "2024-12",
|
||||
@ -608,6 +619,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/payment/create`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"customerId": 1,
|
||||
@ -645,6 +657,7 @@ CJKmainfont: "PingFang SC"
|
||||
- **请求路径**:`/admin-api/water/payment/online-pay`
|
||||
|
||||
**请求参数**:
|
||||
|
||||
```json
|
||||
{
|
||||
"customerId": 1,
|
||||
|
||||
@ -114,7 +114,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 1**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 技术架构图
|
||||
@ -122,7 +122,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 2**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 业务架构图
|
||||
@ -130,7 +130,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 3**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 统一平台
|
||||
@ -228,7 +228,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 4**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 主要功能
|
||||
@ -296,7 +296,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 5**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 主要功能
|
||||
@ -358,7 +358,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 6**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 主要功能
|
||||
@ -398,7 +398,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 7**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 核心接口定义
|
||||
@ -812,7 +812,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 8**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 技术栈整合方案
|
||||
|
||||
@ -53,7 +53,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 1**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## OpenGauss数据库安全
|
||||
@ -63,7 +63,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 2**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 国产密码算法应用
|
||||
@ -144,7 +144,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 3**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 防火墙策略配置
|
||||
@ -180,7 +180,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 4**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 数据保护策略
|
||||
@ -219,7 +219,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 5**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 安全事件检测规则
|
||||
@ -240,7 +240,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 6**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 应急响应预案
|
||||
@ -257,7 +257,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 7**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 安全管理制度
|
||||
@ -268,7 +268,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 8**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 安全管理制度
|
||||
|
||||
@ -43,9 +43,55 @@ CJKmainfont: "PingFang SC"
|
||||
### 系统总体架构图
|
||||
|
||||
|
||||
**图表 1**
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph USER["用户层"]
|
||||
A1[Web管理端<br/>yudao-ui-admin-vue3]
|
||||
A2[移动抄表端<br/>uni-app]
|
||||
A3[客户微信端<br/>微信小程序]
|
||||
A4[客户支付宝端<br/>支付宝小程序]
|
||||
end
|
||||
|
||||
subgraph GATEWAY["网关层"]
|
||||
B1[Nginx负载均衡]
|
||||
B2[API网关<br/>统一认证/权限控制]
|
||||
end
|
||||
|
||||
subgraph APP["应用层"]
|
||||
C1[营收管理<br/>RuoYi-Vue-Pro]
|
||||
C2[客户服务<br/>RuoYi-Vue-Pro]
|
||||
C3[表务管理<br/>RuoYi-Vue-Pro]
|
||||
C4[统计分析<br/>RuoYi-Vue-Pro]
|
||||
end
|
||||
|
||||
subgraph SERVICE["服务层"]
|
||||
D1[权限服务<br/>Spring Security]
|
||||
D2[工作流服务<br/>Flowable]
|
||||
D3[消息服务<br/>Redis MQ]
|
||||
D4[文件服务<br/>MinIO/OSS]
|
||||
end
|
||||
|
||||
subgraph DATA["数据层"]
|
||||
E1[(OpenGauss 5.0+<br/>主从架构)]
|
||||
E2[(Redis 6.0<br/>集群缓存)]
|
||||
E3[文件存储<br/>分布式存储]
|
||||
end
|
||||
|
||||
subgraph EXTERNAL["外部接口"]
|
||||
F1[银行接口<br/>代扣/托收]
|
||||
F2[支付接口<br/>微信/支付宝]
|
||||
F3[短信接口<br/>阿里云/腾讯云]
|
||||
F4[物联网接口<br/>智能水表]
|
||||
end
|
||||
|
||||
%% 层级间调用关系
|
||||
USER -.->|请求访问| GATEWAY
|
||||
GATEWAY -.->|负载均衡<br/>路由转发| APP
|
||||
APP -.->|服务调用| SERVICE
|
||||
APP -.->|外部集成| EXTERNAL
|
||||
SERVICE -.->|数据访问| DATA
|
||||
|
||||

|
||||
```
|
||||
|
||||
|
||||
### 物理部署架构图
|
||||
@ -53,7 +99,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 2**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
## 技术架构
|
||||
@ -65,7 +111,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 3**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 系统数据流向图
|
||||
@ -73,7 +119,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 4**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 服务端技术架构
|
||||
@ -122,7 +168,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 5**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 技术特性
|
||||
@ -146,7 +192,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 6**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 服务治理架构
|
||||
@ -154,7 +200,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 7**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 应用模块设计
|
||||
@ -207,7 +253,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 8**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 分片存储架构
|
||||
@ -215,7 +261,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 9**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 数据模型设计
|
||||
@ -261,7 +307,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 10**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
#### 访问控制安全
|
||||
@ -269,7 +315,7 @@ CJKmainfont: "PingFang SC"
|
||||
|
||||
**图表 11**
|
||||
|
||||

|
||||

|
||||
|
||||
|
||||
### 网络安全
|
||||
|
||||
40
temp_mermaid_water_biz_database_design_35098/diagram_1.mmd
Normal file
@ -0,0 +1,40 @@
|
||||
graph TB
|
||||
subgraph "应用层"
|
||||
APP[Water Biz Application<br/>RuoYi-Vue-Pro]
|
||||
end
|
||||
|
||||
subgraph "数据访问层"
|
||||
MP[MyBatis Plus<br/>ORM框架]
|
||||
CACHE[Redis缓存<br/>热点数据]
|
||||
end
|
||||
|
||||
subgraph "数据存储层"
|
||||
subgraph "OpenGauss主从集群"
|
||||
MASTER[(OpenGauss主库<br/>读写)]
|
||||
SLAVE[(OpenGauss从库<br/>只读)]
|
||||
end
|
||||
|
||||
subgraph "业务数据库"
|
||||
DB_CUSTOMER[(客户数据库<br/>Customer DB)]
|
||||
DB_BILLING[(营收数据库<br/>Billing DB)]
|
||||
DB_METER[(表务数据库<br/>Meter DB)]
|
||||
DB_SYSTEM[(系统数据库<br/>System DB)]
|
||||
end
|
||||
|
||||
subgraph "数据归档"
|
||||
DB_HISTORY[(历史数据库<br/>Archive DB)]
|
||||
BACKUP[(备份存储<br/>Backup Storage)]
|
||||
end
|
||||
end
|
||||
|
||||
APP --> MP
|
||||
APP --> CACHE
|
||||
MP --> MASTER
|
||||
MASTER --> SLAVE
|
||||
MASTER --> DB_CUSTOMER
|
||||
MASTER --> DB_BILLING
|
||||
MASTER --> DB_METER
|
||||
MASTER --> DB_SYSTEM
|
||||
SLAVE --> DB_HISTORY
|
||||
MASTER --> BACKUP
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_1.png
Normal file
|
After Width: | Height: | Size: 95 KiB |
31
temp_mermaid_water_biz_database_design_35098/diagram_2.mmd
Normal file
@ -0,0 +1,31 @@
|
||||
graph TB
|
||||
subgraph "多租户数据隔离"
|
||||
TENANT1[租户1: 福建水务集团]
|
||||
TENANT2[租户2: 厦门分公司]
|
||||
TENANT3[租户3: 泉州分公司]
|
||||
end
|
||||
|
||||
subgraph "共享数据库"
|
||||
subgraph "业务表结构"
|
||||
TABLE1[water_customer<br/>+ tenant_id]
|
||||
TABLE2[water_meter<br/>+ tenant_id]
|
||||
TABLE3[water_bill<br/>+ tenant_id]
|
||||
TABLE4[water_payment<br/>+ tenant_id]
|
||||
end
|
||||
|
||||
subgraph "租户隔离机制"
|
||||
INTERCEPTOR[MyBatis Plus<br/>多租户拦截器]
|
||||
FILTER[数据权限过滤器]
|
||||
end
|
||||
end
|
||||
|
||||
TENANT1 --> INTERCEPTOR
|
||||
TENANT2 --> INTERCEPTOR
|
||||
TENANT3 --> INTERCEPTOR
|
||||
|
||||
INTERCEPTOR --> FILTER
|
||||
FILTER --> TABLE1
|
||||
FILTER --> TABLE2
|
||||
FILTER --> TABLE3
|
||||
FILTER --> TABLE4
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_2.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
61
temp_mermaid_water_biz_database_design_35098/diagram_3.mmd
Normal file
@ -0,0 +1,61 @@
|
||||
erDiagram
|
||||
WATER_CUSTOMER {
|
||||
bigint id PK "主键ID"
|
||||
varchar customer_code UK "客户编号"
|
||||
varchar customer_name "客户名称"
|
||||
varchar customer_type "客户类型"
|
||||
varchar id_type "证件类型"
|
||||
varchar id_number "证件号码"
|
||||
varchar phone "联系电话"
|
||||
varchar address "详细地址"
|
||||
varchar area_code "行政区划代码"
|
||||
tinyint status "状态"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_METER {
|
||||
bigint id PK "主键ID"
|
||||
varchar meter_code UK "水表编号"
|
||||
varchar meter_no "水表表号"
|
||||
varchar meter_type "水表类型"
|
||||
varchar meter_model "水表型号"
|
||||
varchar meter_caliber "水表口径"
|
||||
date install_date "安装日期"
|
||||
varchar install_position "安装位置"
|
||||
decimal initial_reading "初始读数"
|
||||
decimal current_reading "当前读数"
|
||||
varchar reading_cycle "抄表周期"
|
||||
varchar book_code "册本编号"
|
||||
tinyint status "状态"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_CUSTOMER_ACCOUNT {
|
||||
bigint id PK "主键ID"
|
||||
decimal balance "账户余额"
|
||||
decimal credit_amount "信用额度"
|
||||
date last_payment_date "最近缴费日期"
|
||||
tinyint status "账户状态"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_CUSTOMER ||--o{ WATER_METER : "拥有"
|
||||
WATER_CUSTOMER ||--|| WATER_CUSTOMER_ACCOUNT : "对应"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_3.png
Normal file
|
After Width: | Height: | Size: 214 KiB |
67
temp_mermaid_water_biz_database_design_35098/diagram_4.mmd
Normal file
@ -0,0 +1,67 @@
|
||||
erDiagram
|
||||
WATER_METER_READING {
|
||||
bigint id PK "主键ID"
|
||||
varchar reading_code UK "抄表记录编号"
|
||||
date reading_date "抄表日期"
|
||||
decimal reading_value "抄表读数"
|
||||
decimal prev_reading_value "上次读数"
|
||||
decimal water_usage "用水量"
|
||||
varchar reading_type "抄表类型"
|
||||
varchar reader_id "抄表员ID"
|
||||
varchar remark "备注"
|
||||
tinyint status "状态"
|
||||
bigint meter_id FK "水表ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_BILL {
|
||||
bigint id PK "主键ID"
|
||||
varchar bill_code UK "账单编号"
|
||||
varchar bill_month "账期"
|
||||
decimal water_usage "用水量"
|
||||
decimal water_fee "水费金额"
|
||||
decimal sewage_fee "污水处理费"
|
||||
decimal other_fee "其他费用"
|
||||
decimal total_amount "总金额"
|
||||
date due_date "缴费截止日期"
|
||||
tinyint bill_status "账单状态"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint meter_id FK "水表ID"
|
||||
bigint reading_id FK "抄表记录ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_PAYMENT {
|
||||
bigint id PK "主键ID"
|
||||
varchar payment_code UK "缴费记录编号"
|
||||
varchar payment_type "缴费类型"
|
||||
varchar payment_channel "缴费渠道"
|
||||
decimal payment_amount "缴费金额"
|
||||
datetime payment_time "缴费时间"
|
||||
varchar transaction_no "交易流水号"
|
||||
varchar operator_id "操作员ID"
|
||||
varchar remark "备注"
|
||||
tinyint payment_status "缴费状态"
|
||||
bigint bill_id FK "账单ID"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_METER_READING ||--|| WATER_BILL : "生成"
|
||||
WATER_BILL ||--o{ WATER_PAYMENT : "对应"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_4.png
Normal file
|
After Width: | Height: | Size: 239 KiB |
64
temp_mermaid_water_biz_database_design_35098/diagram_5.mmd
Normal file
@ -0,0 +1,64 @@
|
||||
erDiagram
|
||||
WATER_METER_ARCHIVE {
|
||||
bigint id PK "主键ID"
|
||||
varchar archive_code UK "档案编号"
|
||||
varchar manufacturer "生产厂家"
|
||||
date production_date "生产日期"
|
||||
int valid_period "有效期(月)"
|
||||
date verification_date "检定日期"
|
||||
date next_verification_date "下次检定日期"
|
||||
varchar certificate_no "检定证书号"
|
||||
tinyint archive_status "档案状态"
|
||||
bigint meter_id FK "水表ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_METER_WORKORDER {
|
||||
bigint id PK "主键ID"
|
||||
varchar workorder_code UK "工单编号"
|
||||
varchar workorder_type "工单类型"
|
||||
varchar workorder_status "工单状态"
|
||||
date apply_date "申请日期"
|
||||
date plan_date "计划执行日期"
|
||||
date execute_date "实际执行日期"
|
||||
varchar applicant_id "申请人ID"
|
||||
varchar executor_id "执行人ID"
|
||||
varchar reason "申请原因"
|
||||
varchar result "执行结果"
|
||||
bigint meter_id FK "水表ID"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_METER_STOCK {
|
||||
bigint id PK "主键ID"
|
||||
varchar stock_code UK "库存编号"
|
||||
varchar warehouse_code "仓库编码"
|
||||
varchar warehouse_name "仓库名称"
|
||||
int stock_quantity "库存数量"
|
||||
int min_stock "最小库存"
|
||||
int max_stock "最大库存"
|
||||
varchar meter_model "水表型号"
|
||||
varchar meter_caliber "水表口径"
|
||||
tinyint stock_status "库存状态"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
WATER_METER ||--|| WATER_METER_ARCHIVE : "对应"
|
||||
WATER_METER ||--o{ WATER_METER_WORKORDER : "产生"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_5.png
Normal file
|
After Width: | Height: | Size: 242 KiB |
45
temp_mermaid_water_biz_database_design_35098/diagram_6.mmd
Normal file
@ -0,0 +1,45 @@
|
||||
erDiagram
|
||||
SYSTEM_TENANT {
|
||||
bigint id PK "主键ID"
|
||||
varchar tenant_name "租户名称"
|
||||
varchar tenant_code UK "租户编码"
|
||||
varchar contact_name "联系人"
|
||||
varchar contact_phone "联系电话"
|
||||
varchar contact_email "联系邮箱"
|
||||
tinyint tenant_status "租户状态"
|
||||
datetime expire_time "过期时间"
|
||||
varchar domain "域名"
|
||||
varchar package_name "套餐名称"
|
||||
int user_count "用户数量"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
SYSTEM_USERS {
|
||||
bigint id PK "主键ID"
|
||||
varchar username UK "用户名"
|
||||
varchar password "密码"
|
||||
varchar nickname "昵称"
|
||||
varchar remark "备注"
|
||||
varchar dept_id "部门ID"
|
||||
varchar post_ids "岗位ID列表"
|
||||
varchar email "邮箱"
|
||||
varchar mobile "手机号"
|
||||
tinyint sex "性别"
|
||||
varchar avatar "头像"
|
||||
tinyint status "状态"
|
||||
datetime login_date "最后登录时间"
|
||||
varchar login_ip "最后登录IP"
|
||||
bigint tenant_id "租户ID"
|
||||
varchar creator "创建者"
|
||||
datetime create_time "创建时间"
|
||||
varchar updater "更新者"
|
||||
datetime update_time "更新时间"
|
||||
tinyint deleted "是否删除"
|
||||
}
|
||||
|
||||
SYSTEM_TENANT ||--o{ SYSTEM_USERS : "包含"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_6.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
51
temp_mermaid_water_biz_database_design_35098/diagram_7.mmd
Normal file
@ -0,0 +1,51 @@
|
||||
erDiagram
|
||||
WATER_METER_WORKORDER {
|
||||
bigint id PK "主键ID"
|
||||
varchar workorder_code UK "工单编号"
|
||||
varchar workorder_type "工单类型"
|
||||
varchar workorder_status "工单状态"
|
||||
date apply_date "申请日期"
|
||||
date plan_date "计划执行日期"
|
||||
date execute_date "实际执行日期"
|
||||
varchar applicant_id "申请人ID"
|
||||
varchar executor_id "执行人ID"
|
||||
varchar reason "申请原因"
|
||||
varchar result "执行结果"
|
||||
bigint meter_id FK "水表ID"
|
||||
bigint customer_id FK "客户ID"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_METER_STOCK {
|
||||
bigint id PK "主键ID"
|
||||
varchar stock_code UK "库存编号"
|
||||
varchar meter_brand "水表品牌"
|
||||
varchar meter_model "水表型号"
|
||||
varchar meter_caliber "水表口径"
|
||||
int stock_quantity "库存数量"
|
||||
int min_stock "最小库存"
|
||||
decimal unit_price "单价"
|
||||
varchar warehouse_location "仓库位置"
|
||||
tinyint stock_status "库存状态"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_METER_INVENTORY {
|
||||
bigint id PK "主键ID"
|
||||
varchar inventory_code UK "出入库编号"
|
||||
varchar inventory_type "出入库类型"
|
||||
int quantity "数量"
|
||||
decimal unit_price "单价"
|
||||
decimal total_amount "总金额"
|
||||
varchar operator_id "操作员ID"
|
||||
datetime operation_time "操作时间"
|
||||
varchar remark "备注"
|
||||
bigint stock_id FK "库存ID"
|
||||
bigint workorder_id FK "工单ID"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_METER ||--o{ WATER_METER_WORKORDER : "生成"
|
||||
WATER_METER_STOCK ||--o{ WATER_METER_INVENTORY : "出入库"
|
||||
WATER_METER_WORKORDER ||--o{ WATER_METER_INVENTORY : "关联"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_7.png
Normal file
|
After Width: | Height: | Size: 174 KiB |
49
temp_mermaid_water_biz_database_design_35098/diagram_8.mmd
Normal file
@ -0,0 +1,49 @@
|
||||
erDiagram
|
||||
WATER_DICT_TYPE {
|
||||
bigint id PK "主键ID"
|
||||
varchar dict_name "字典名称"
|
||||
varchar dict_type UK "字典类型"
|
||||
varchar remark "备注"
|
||||
tinyint status "状态"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_DICT_DATA {
|
||||
bigint id PK "主键ID"
|
||||
varchar dict_type "字典类型"
|
||||
varchar dict_label "字典标签"
|
||||
varchar dict_value "字典键值"
|
||||
int dict_sort "字典排序"
|
||||
varchar color_type "颜色类型"
|
||||
varchar css_class "CSS类名"
|
||||
varchar remark "备注"
|
||||
tinyint status "状态"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_CONFIG {
|
||||
bigint id PK "主键ID"
|
||||
varchar config_name "参数名称"
|
||||
varchar config_key UK "参数键名"
|
||||
varchar config_value "参数键值"
|
||||
varchar config_type "系统内置"
|
||||
varchar remark "备注"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_PRICE_CONFIG {
|
||||
bigint id PK "主键ID"
|
||||
varchar price_name "水价名称"
|
||||
varchar customer_type "客户类型"
|
||||
varchar price_type "价格类型"
|
||||
decimal base_price "基础价格"
|
||||
decimal sewage_price "污水处理费"
|
||||
decimal garbage_price "垃圾处理费"
|
||||
date effective_date "生效日期"
|
||||
date expire_date "失效日期"
|
||||
tinyint status "状态"
|
||||
bigint tenant_id "租户ID"
|
||||
}
|
||||
|
||||
WATER_DICT_TYPE ||--o{ WATER_DICT_DATA : "包含"
|
||||
|
||||
BIN
temp_mermaid_water_biz_database_design_35098/diagram_8.png
Normal file
|
After Width: | Height: | Size: 135 KiB |
45
temp_mermaid_water_biz_deployment_design_35098/diagram_1.mmd
Normal file
@ -0,0 +1,45 @@
|
||||
graph
|
||||
subgraph EXTERNAL["外部用户访问"]
|
||||
direction TB
|
||||
A[移动端用户]
|
||||
B[PC端用户]
|
||||
C[第三方系统]
|
||||
end
|
||||
|
||||
subgraph LOADBALANCER["负载均衡层"]
|
||||
direction TB
|
||||
D[主负载均衡器]
|
||||
E[备负载均衡器]
|
||||
end
|
||||
|
||||
subgraph WEBSERVICE["Web服务层"]
|
||||
direction TB
|
||||
F[Web服务器1]
|
||||
G[Web服务器2]
|
||||
H[Web服务器3]
|
||||
end
|
||||
|
||||
subgraph APPSERVICE["应用服务层"]
|
||||
direction TB
|
||||
I[应用服务器1]
|
||||
J[应用服务器2]
|
||||
K[应用服务器3]
|
||||
L[应用服务器4]
|
||||
end
|
||||
|
||||
subgraph DATASERVICE["数据服务层"]
|
||||
direction TB
|
||||
M[(主数据库<br/>OpenGauss)]
|
||||
N[(备数据库<br/>OpenGauss)]
|
||||
O[缓存服务器<br/>Redis]
|
||||
P[文件服务器<br/>MinIO]
|
||||
|
||||
M -.->|数据同步| N
|
||||
end
|
||||
|
||||
%% 层级间调用关系
|
||||
EXTERNAL -.->|用户请求<br/>接口调用| LOADBALANCER
|
||||
LOADBALANCER -.->|负载分发<br/>故障切换| WEBSERVICE
|
||||
WEBSERVICE -.->|业务请求<br/>服务调用| APPSERVICE
|
||||
APPSERVICE -.->|数据访问<br/>缓存读写<br/>文件操作| DATASERVICE
|
||||
|
||||
BIN
temp_mermaid_water_biz_deployment_design_35098/diagram_1.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
21
temp_mermaid_water_biz_deployment_design_35098/diagram_2.mmd
Normal file
@ -0,0 +1,21 @@
|
||||
graph
|
||||
direction TB
|
||||
subgraph FRONTEND["前端服务层"]
|
||||
A[前端容器<br/>Nginx + Vue3]
|
||||
end
|
||||
|
||||
subgraph BACKEND["后端服务层"]
|
||||
B[后端容器<br/>Spring Boot]
|
||||
end
|
||||
|
||||
subgraph DATASTORAGE["数据存储层"]
|
||||
direction TB
|
||||
C[数据库容器<br/>OpenGauss]
|
||||
D[缓存容器<br/>Redis]
|
||||
E[文件存储容器<br/>MinIO]
|
||||
end
|
||||
|
||||
%% 容器服务调用关系
|
||||
FRONTEND -.->|API请求<br/>静态资源| BACKEND
|
||||
BACKEND -.->|数据操作<br/>缓存访问<br/>文件存储| DATASTORAGE
|
||||
|
||||
BIN
temp_mermaid_water_biz_deployment_design_35098/diagram_2.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
92
temp_mermaid_water_biz_module_design_35098/diagram_1.mmd
Normal file
@ -0,0 +1,92 @@
|
||||
graph TB
|
||||
subgraph "用户层"
|
||||
A1[管理员用户]
|
||||
A2[抄表员]
|
||||
A3[收费员]
|
||||
A4[客户用户]
|
||||
end
|
||||
|
||||
subgraph "接入层"
|
||||
B1[PC端管理后台<br/>yudao-ui-admin-vue3]
|
||||
B2[移动端抄表APP<br/>uni-app]
|
||||
B3[微信小程序]
|
||||
B4[支付宝小程序]
|
||||
B5[Web客户端]
|
||||
end
|
||||
|
||||
subgraph "网关层"
|
||||
C1[API网关<br/>Spring Cloud Gateway]
|
||||
C2[负载均衡<br/>Nginx]
|
||||
end
|
||||
|
||||
subgraph "服务层"
|
||||
D1[用户认证服务<br/>Spring Security + JWT]
|
||||
D2[营收管理服务<br/>RuoYi-Vue-Pro]
|
||||
D3[表务管理服务]
|
||||
D4[报装管理服务]
|
||||
D5[客户服务]
|
||||
D6[系统管理服务]
|
||||
end
|
||||
|
||||
subgraph "中间件层"
|
||||
E1[(Redis缓存<br/>6.0+)]
|
||||
E2[RabbitMQ消息队列]
|
||||
E3[Elasticsearch搜索]
|
||||
E4[MinIO文件存储]
|
||||
end
|
||||
|
||||
subgraph "数据层"
|
||||
F1[(主数据库<br/>OpenGauss 5.0+)]
|
||||
F2[(从数据库<br/>OpenGauss 5.0+)]
|
||||
F3[(历史数据库<br/>OpenGauss 5.0+)]
|
||||
end
|
||||
|
||||
subgraph "外部系统"
|
||||
G1[银行系统]
|
||||
G2[支付宝/微信]
|
||||
G3[短信平台]
|
||||
G4[集抄系统]
|
||||
G5[政务平台]
|
||||
end
|
||||
|
||||
A1 --> B1
|
||||
A2 --> B2
|
||||
A3 --> B1
|
||||
A4 --> B3
|
||||
A4 --> B4
|
||||
A4 --> B5
|
||||
|
||||
B1 --> C2
|
||||
B2 --> C2
|
||||
B3 --> C2
|
||||
B4 --> C2
|
||||
B5 --> C2
|
||||
|
||||
C2 --> C1
|
||||
C1 --> D1
|
||||
C1 --> D2
|
||||
C1 --> D3
|
||||
C1 --> D4
|
||||
C1 --> D5
|
||||
C1 --> D6
|
||||
|
||||
D1 --> E1
|
||||
D2 --> E1
|
||||
D2 --> E2
|
||||
D3 --> E1
|
||||
D4 --> E3
|
||||
D5 --> E4
|
||||
D6 --> E1
|
||||
|
||||
D2 --> F1
|
||||
D3 --> F1
|
||||
D4 --> F2
|
||||
D5 --> F2
|
||||
D6 --> F3
|
||||
|
||||
D2 --> G1
|
||||
D2 --> G2
|
||||
D5 --> G3
|
||||
D3 --> G4
|
||||
D4 --> G5
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_1.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
71
temp_mermaid_water_biz_module_design_35098/diagram_2.mmd
Normal file
@ -0,0 +1,71 @@
|
||||
graph TB
|
||||
subgraph "前端技术栈"
|
||||
FE1[Vue 3.x]
|
||||
FE2[TypeScript 4.x]
|
||||
FE3[Element Plus]
|
||||
FE4[Vite 4.x]
|
||||
FE5[Pinia状态管理]
|
||||
end
|
||||
|
||||
subgraph "后端技术栈"
|
||||
BE1[Spring Boot 3.x]
|
||||
BE2[Spring Security 6.x]
|
||||
BE3[MyBatis Plus 3.x]
|
||||
BE4[Spring Cloud Gateway]
|
||||
BE5[Hibernate Validator]
|
||||
end
|
||||
|
||||
subgraph "数据库技术"
|
||||
DB1[OpenGauss 5.0+]
|
||||
DB2[Redis 6.0+]
|
||||
DB3[HikariCP连接池]
|
||||
DB4[MyBatis-Plus代码生成]
|
||||
end
|
||||
|
||||
subgraph "中间件技术"
|
||||
MW1[RabbitMQ 3.x]
|
||||
MW2[Elasticsearch 8.x]
|
||||
MW3[MinIO对象存储]
|
||||
MW4[XXL-JOB定时任务]
|
||||
end
|
||||
|
||||
subgraph "运维技术"
|
||||
OPS1[Docker容器化]
|
||||
OPS2[Jenkins CI/CD]
|
||||
OPS3[Prometheus监控]
|
||||
OPS4[ELK日志分析]
|
||||
end
|
||||
|
||||
subgraph "安全技术"
|
||||
SEC1[JWT Token认证]
|
||||
SEC2[OAuth2.0授权]
|
||||
SEC3[AES数据加密]
|
||||
SEC4[RSA签名验证]
|
||||
end
|
||||
|
||||
FE1 --> FE2
|
||||
FE2 --> FE3
|
||||
FE3 --> FE4
|
||||
FE4 --> FE5
|
||||
|
||||
BE1 --> BE2
|
||||
BE2 --> BE3
|
||||
BE3 --> BE4
|
||||
BE4 --> BE5
|
||||
|
||||
DB1 --> DB2
|
||||
DB2 --> DB3
|
||||
DB3 --> DB4
|
||||
|
||||
MW1 --> MW2
|
||||
MW2 --> MW3
|
||||
MW3 --> MW4
|
||||
|
||||
OPS1 --> OPS2
|
||||
OPS2 --> OPS3
|
||||
OPS3 --> OPS4
|
||||
|
||||
SEC1 --> SEC2
|
||||
SEC2 --> SEC3
|
||||
SEC3 --> SEC4
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_2.png
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
64
temp_mermaid_water_biz_module_design_35098/diagram_3.mmd
Normal file
@ -0,0 +1,64 @@
|
||||
graph TB
|
||||
subgraph "统一平台层"
|
||||
UP1[单点登录]
|
||||
UP2[系统管理]
|
||||
UP3[用户权限]
|
||||
UP4[组织架构]
|
||||
end
|
||||
|
||||
subgraph "核心业务层"
|
||||
CB1[客户管理]
|
||||
CB2[抄表管理]
|
||||
CB3[收费管理]
|
||||
CB4[账务管理]
|
||||
CB5[表务管理]
|
||||
CB6[报装管理]
|
||||
end
|
||||
|
||||
subgraph "增值服务层"
|
||||
VS1[客户服务]
|
||||
VS2[移动应用]
|
||||
VS3[微信服务]
|
||||
VS4[电子发票]
|
||||
VS5[在线支付]
|
||||
end
|
||||
|
||||
subgraph "数据服务层"
|
||||
DS1[统计分析]
|
||||
DS2[报表查询]
|
||||
DS3[数据导出]
|
||||
DS4[决策支持]
|
||||
end
|
||||
|
||||
subgraph "集成服务层"
|
||||
IS1[银行接口]
|
||||
IS2[支付接口]
|
||||
IS3[短信接口]
|
||||
IS4[集抄接口]
|
||||
IS5[政务接口]
|
||||
end
|
||||
|
||||
UP1 --> CB1
|
||||
UP2 --> CB2
|
||||
UP3 --> CB3
|
||||
UP4 --> CB4
|
||||
|
||||
CB1 --> VS1
|
||||
CB2 --> VS2
|
||||
CB3 --> VS3
|
||||
CB4 --> VS4
|
||||
CB5 --> VS5
|
||||
CB6 --> VS1
|
||||
|
||||
VS1 --> DS1
|
||||
VS2 --> DS2
|
||||
VS3 --> DS3
|
||||
VS4 --> DS4
|
||||
VS5 --> DS1
|
||||
|
||||
DS1 --> IS1
|
||||
DS2 --> IS2
|
||||
DS3 --> IS3
|
||||
DS4 --> IS4
|
||||
DS1 --> IS5
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_3.png
Normal file
|
After Width: | Height: | Size: 77 KiB |
39
temp_mermaid_water_biz_module_design_35098/diagram_4.mmd
Normal file
@ -0,0 +1,39 @@
|
||||
flowchart TD
|
||||
Start([开始抄表周期]) --> BookPlan[制定抄表计划]
|
||||
BookPlan --> CreateBook[生成抄表册本]
|
||||
CreateBook --> AssignReader[分配抄表员]
|
||||
|
||||
AssignReader --> ReadingStart[开始抄表]
|
||||
ReadingStart --> ReadingType{抄表方式}
|
||||
|
||||
ReadingType -->|人工抄表| ManualReading[现场抄表录入]
|
||||
ReadingType -->|远程抄表| RemoteReading[远程采集数据]
|
||||
ReadingType -->|客户自报| SelfReporting[客户自主上报]
|
||||
|
||||
ManualReading --> DataValidation[数据校验]
|
||||
RemoteReading --> DataValidation
|
||||
SelfReporting --> DataValidation
|
||||
|
||||
DataValidation --> ValidationResult{校验结果}
|
||||
ValidationResult -->|异常| ExceptionHandle[异常处理]
|
||||
ValidationResult -->|正常| DataReview[数据复核]
|
||||
|
||||
ExceptionHandle --> ReviewException[人工审核异常]
|
||||
ReviewException --> DataReview
|
||||
|
||||
DataReview --> ReviewResult{复核结果}
|
||||
ReviewResult -->|退回| ReadingStart
|
||||
ReviewResult -->|通过| BillGeneration[生成账单]
|
||||
|
||||
BillGeneration --> CalcWaterFee[计算水费]
|
||||
CalcWaterFee --> CalcSewageFee[计算污水费]
|
||||
CalcSewageFee --> CalcOtherFee[计算其他费用]
|
||||
CalcOtherFee --> BillReview[账单审核]
|
||||
|
||||
BillReview --> BillResult{审核结果}
|
||||
BillResult -->|退回| BillGeneration
|
||||
BillResult -->|通过| BillConfirm[账单确认]
|
||||
|
||||
BillConfirm --> SendNotification[发送缴费通知]
|
||||
SendNotification --> End([完成开账])
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_4.png
Normal file
|
After Width: | Height: | Size: 112 KiB |
47
temp_mermaid_water_biz_module_design_35098/diagram_5.mmd
Normal file
@ -0,0 +1,47 @@
|
||||
flowchart TD
|
||||
Start([客户缴费]) --> QueryCustomer[查询客户信息]
|
||||
QueryCustomer --> CustomerExists{客户是否存在}
|
||||
CustomerExists -->|否| ErrorReturn[返回错误信息]
|
||||
CustomerExists -->|是| QueryBills[查询欠费账单]
|
||||
|
||||
QueryBills --> BillExists{是否有欠费}
|
||||
BillExists -->|否| NoDebt[无欠费提示]
|
||||
BillExists -->|是| ShowBills[显示账单列表]
|
||||
|
||||
ShowBills --> SelectBills[选择缴费账单]
|
||||
SelectBills --> CalcAmount[计算缴费金额]
|
||||
CalcAmount --> SelectPayMethod[选择支付方式]
|
||||
|
||||
SelectPayMethod --> PaymentType{支付方式}
|
||||
PaymentType -->|现金| CashPayment[现金收费]
|
||||
PaymentType -->|银行卡| BankCardPay[银行卡支付]
|
||||
PaymentType -->|在线支付| OnlinePayment[在线支付]
|
||||
PaymentType -->|预存款| PrepaidPayment[预存款支付]
|
||||
|
||||
CashPayment --> ValidatePayment[验证收费金额]
|
||||
BankCardPay --> ValidatePayment
|
||||
OnlinePayment --> ThirdPartyPay[第三方支付]
|
||||
PrepaidPayment --> CheckBalance[检查预存余额]
|
||||
|
||||
ThirdPartyPay --> PaymentCallback[支付回调]
|
||||
PaymentCallback --> ValidatePayment
|
||||
|
||||
CheckBalance --> BalanceOK{余额是否充足}
|
||||
BalanceOK -->|否| InsufficientBalance[余额不足]
|
||||
BalanceOK -->|是| ValidatePayment
|
||||
|
||||
ValidatePayment --> PaymentSuccess{支付成功}
|
||||
PaymentSuccess -->|否| PaymentFailed[支付失败处理]
|
||||
PaymentSuccess -->|是| UpdateAccount[更新账户状态]
|
||||
|
||||
UpdateAccount --> UpdateBills[更新账单状态]
|
||||
UpdateBills --> GenerateReceipt[生成收费凭证]
|
||||
GenerateReceipt --> PrintReceipt[打印收据]
|
||||
PrintReceipt --> SendNotification[发送缴费通知]
|
||||
SendNotification --> Complete([完成缴费])
|
||||
|
||||
PaymentFailed --> End([结束])
|
||||
InsufficientBalance --> End
|
||||
ErrorReturn --> End
|
||||
NoDebt --> End
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_5.png
Normal file
|
After Width: | Height: | Size: 156 KiB |
36
temp_mermaid_water_biz_module_design_35098/diagram_6.mmd
Normal file
@ -0,0 +1,36 @@
|
||||
flowchart TD
|
||||
Start(["账务处理请求"]) --> CheckAuth["权限验证"]
|
||||
CheckAuth --> AuthOK{"权限验证"}
|
||||
AuthOK -->|失败| AuthError["权限错误"]
|
||||
AuthOK -->|成功| ProcessType{"处理类型"}
|
||||
|
||||
ProcessType -->|调账| AdjustAccount["账务调整"]
|
||||
ProcessType -->|退款| RefundProcess["退款处理"]
|
||||
ProcessType -->|销账| WriteOff["销账处理"]
|
||||
ProcessType -->|预存调整| PrepaidAdjust["预存调整"]
|
||||
|
||||
AdjustAccount --> ValidateAdjust["验证调整数据"]
|
||||
RefundProcess --> ValidateRefund["验证退款数据"]
|
||||
WriteOff --> ValidateWriteOff["验证销账数据"]
|
||||
PrepaidAdjust --> ValidatePrepaid["验证预存数据"]
|
||||
|
||||
ValidateAdjust --> AdjustApproval["调账审批"]
|
||||
ValidateRefund --> RefundApproval["退款审批"]
|
||||
ValidateWriteOff --> WriteOffApproval["销账审批"]
|
||||
ValidatePrepaid --> PrepaidApproval["预存审批"]
|
||||
|
||||
AdjustApproval --> ApprovalResult{"审批结果"}
|
||||
RefundApproval --> ApprovalResult
|
||||
WriteOffApproval --> ApprovalResult
|
||||
PrepaidApproval --> ApprovalResult
|
||||
|
||||
ApprovalResult -->|拒绝| ApprovalReject["审批拒绝"]
|
||||
ApprovalResult -->|通过| ExecuteProcess["执行处理"]
|
||||
|
||||
ExecuteProcess --> UpdateAccount["更新账户"]
|
||||
UpdateAccount --> RecordLog["记录日志"]
|
||||
RecordLog --> Complete(["处理完成"])
|
||||
|
||||
AuthError --> End(["结束"])
|
||||
ApprovalReject --> End
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_6.png
Normal file
|
After Width: | Height: | Size: 100 KiB |
24
temp_mermaid_water_biz_module_design_35098/diagram_7.mmd
Normal file
@ -0,0 +1,24 @@
|
||||
flowchart TD
|
||||
Start([发票业务]) --> InvoiceType{发票类型}
|
||||
|
||||
InvoiceType -->|纸质发票| PaperInvoice[纸质发票管理]
|
||||
InvoiceType -->|电子发票| EInvoice[电子发票管理]
|
||||
|
||||
PaperInvoice --> PaperStock[发票库存管理]
|
||||
PaperStock --> PaperPrint[发票打印]
|
||||
PaperPrint --> PaperRecord[打印记录]
|
||||
|
||||
EInvoice --> EInvoiceGenerate[电子发票生成]
|
||||
EInvoiceGenerate --> EInvoiceSign[电子签章]
|
||||
EInvoiceSign --> EInvoiceSend[发票推送]
|
||||
|
||||
PaperRecord --> InvoiceQuery[发票查询]
|
||||
EInvoiceSend --> InvoiceQuery
|
||||
|
||||
InvoiceQuery --> InvoiceCancel{需要作废?}
|
||||
InvoiceCancel -->|是| CancelInvoice[发票作废]
|
||||
InvoiceCancel -->|否| Complete([完成])
|
||||
|
||||
CancelInvoice --> CancelRecord[作废记录]
|
||||
CancelRecord --> Complete
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_7.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
31
temp_mermaid_water_biz_module_design_35098/diagram_8.mmd
Normal file
@ -0,0 +1,31 @@
|
||||
graph TB
|
||||
subgraph "前端应用"
|
||||
F1[管理后台<br/>yudao-ui-admin-vue3]
|
||||
F2[移动端<br/>uni-app]
|
||||
F3[客户端<br/>微信小程序]
|
||||
end
|
||||
|
||||
subgraph "后端服务"
|
||||
B1[认证服务<br/>Spring Security]
|
||||
B2[业务服务<br/>RuoYi-Vue-Pro]
|
||||
B3[网关服务<br/>Spring Cloud Gateway]
|
||||
end
|
||||
|
||||
subgraph "数据存储"
|
||||
D1[(OpenGauss 5.0+)]
|
||||
D2[(Redis 6.0)]
|
||||
D3[MinIO文件存储]
|
||||
end
|
||||
|
||||
F1 --> B3
|
||||
F2 --> B3
|
||||
F3 --> B3
|
||||
|
||||
B3 --> B1
|
||||
B3 --> B2
|
||||
|
||||
B1 --> D2
|
||||
B2 --> D1
|
||||
B2 --> D2
|
||||
B2 --> D3
|
||||
|
||||
BIN
temp_mermaid_water_biz_module_design_35098/diagram_8.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
70
temp_mermaid_water_biz_security_design_35098/diagram_1.mmd
Normal file
@ -0,0 +1,70 @@
|
||||
graph TB
|
||||
subgraph "外部威胁"
|
||||
THREAT1[网络攻击]
|
||||
THREAT2[恶意软件]
|
||||
THREAT3[数据泄露]
|
||||
THREAT4[内部威胁]
|
||||
end
|
||||
|
||||
subgraph "安全防护层"
|
||||
subgraph "边界安全"
|
||||
WAF[Web应用防火墙]
|
||||
FW[网络防火墙]
|
||||
IPS[入侵防护系统]
|
||||
VPN[VPN网关]
|
||||
end
|
||||
|
||||
subgraph "应用安全"
|
||||
AUTH[身份认证]
|
||||
AUTHZ[访问控制]
|
||||
AUDIT[操作审计]
|
||||
ENCRYPT[数据加密]
|
||||
end
|
||||
|
||||
subgraph "数据安全"
|
||||
TDE[透明数据加密]
|
||||
RLS[行级安全]
|
||||
MASK[数据脱敏]
|
||||
BACKUP[安全备份]
|
||||
end
|
||||
|
||||
subgraph "运维安全"
|
||||
MONITOR[安全监控]
|
||||
LOG[日志分析]
|
||||
ALERT[告警响应]
|
||||
PATCH[安全更新]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph "核心资产"
|
||||
APP[水务营收系统]
|
||||
DB[OpenGauss数据库]
|
||||
FILE[文件存储]
|
||||
API[接口服务]
|
||||
end
|
||||
|
||||
THREAT1 --> WAF
|
||||
THREAT2 --> FW
|
||||
THREAT3 --> IPS
|
||||
THREAT4 --> VPN
|
||||
|
||||
WAF --> AUTH
|
||||
FW --> AUTHZ
|
||||
IPS --> AUDIT
|
||||
VPN --> ENCRYPT
|
||||
|
||||
AUTH --> TDE
|
||||
AUTHZ --> RLS
|
||||
AUDIT --> MASK
|
||||
ENCRYPT --> BACKUP
|
||||
|
||||
TDE --> MONITOR
|
||||
RLS --> LOG
|
||||
MASK --> ALERT
|
||||
BACKUP --> PATCH
|
||||
|
||||
MONITOR --> APP
|
||||
LOG --> DB
|
||||
ALERT --> FILE
|
||||
PATCH --> API
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_1.png
Normal file
|
After Width: | Height: | Size: 79 KiB |
46
temp_mermaid_water_biz_security_design_35098/diagram_2.mmd
Normal file
@ -0,0 +1,46 @@
|
||||
graph TB
|
||||
subgraph "OpenGauss安全特性"
|
||||
subgraph "身份认证"
|
||||
PWD[密码认证]
|
||||
CERT[证书认证]
|
||||
LDAP_AUTH[LDAP认证]
|
||||
KERBEROS[Kerberos认证]
|
||||
end
|
||||
|
||||
subgraph "访问控制"
|
||||
RBAC_DB[基于角色的访问控制]
|
||||
RLS_DB[行级安全策略]
|
||||
CLS_DB[列级访问控制]
|
||||
SCHEMA[模式权限控制]
|
||||
end
|
||||
|
||||
subgraph "数据加密"
|
||||
TDE_SM4[TDE透明加密<br/>SM4国密算法]
|
||||
SSL_SM[SSL传输加密<br/>SM2/SM3/SM4]
|
||||
FIELD_ENC[字段级加密]
|
||||
BACKUP_ENC[备份加密]
|
||||
end
|
||||
|
||||
subgraph "审计监控"
|
||||
AUDIT_LOG[操作审计日志]
|
||||
LOGIN_LOG[登录审计]
|
||||
DDL_LOG[DDL操作记录]
|
||||
SECURITY_LOG[安全事件日志]
|
||||
end
|
||||
end
|
||||
|
||||
PWD --> RBAC_DB
|
||||
CERT --> RLS_DB
|
||||
LDAP_AUTH --> CLS_DB
|
||||
KERBEROS --> SCHEMA
|
||||
|
||||
RBAC_DB --> TDE_SM4
|
||||
RLS_DB --> SSL_SM
|
||||
CLS_DB --> FIELD_ENC
|
||||
SCHEMA --> BACKUP_ENC
|
||||
|
||||
TDE_SM4 --> AUDIT_LOG
|
||||
SSL_SM --> LOGIN_LOG
|
||||
FIELD_ENC --> DDL_LOG
|
||||
BACKUP_ENC --> SECURITY_LOG
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_2.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
76
temp_mermaid_water_biz_security_design_35098/diagram_3.mmd
Normal file
@ -0,0 +1,76 @@
|
||||
graph TB
|
||||
subgraph "外网区域"
|
||||
INTERNET[互联网]
|
||||
CDN[CDN加速]
|
||||
DNS[DNS服务]
|
||||
end
|
||||
|
||||
subgraph "边界防护"
|
||||
WAF[Web应用防火墙<br/>国产WAF产品]
|
||||
FW_BORDER[边界防火墙<br/>安全审计]
|
||||
IPS[入侵防护系统<br/>威胁检测]
|
||||
DPI[深度包检测<br/>流量分析]
|
||||
end
|
||||
|
||||
subgraph "DMZ区域"
|
||||
LB[负载均衡器<br/>SSL卸载]
|
||||
WEB1[Web服务器1]
|
||||
WEB2[Web服务器2]
|
||||
PROXY[反向代理]
|
||||
end
|
||||
|
||||
subgraph "内网安全"
|
||||
FW_INTERNAL[内部防火墙]
|
||||
VLAN_APP[应用VLAN]
|
||||
VLAN_DB[数据库VLAN]
|
||||
VLAN_MGT[管理VLAN]
|
||||
end
|
||||
|
||||
subgraph "应用层"
|
||||
APP1[应用服务器1]
|
||||
APP2[应用服务器2]
|
||||
APP3[应用服务器3]
|
||||
end
|
||||
|
||||
subgraph "数据层"
|
||||
DB_MASTER[OpenGauss主库]
|
||||
DB_SLAVE[OpenGauss从库]
|
||||
REDIS[Redis集群]
|
||||
end
|
||||
|
||||
subgraph "管理层"
|
||||
JUMP[跳板机]
|
||||
MONITOR[监控服务器]
|
||||
LOG[日志服务器]
|
||||
end
|
||||
|
||||
INTERNET --> CDN
|
||||
CDN --> DNS
|
||||
DNS --> WAF
|
||||
WAF --> FW_BORDER
|
||||
FW_BORDER --> IPS
|
||||
IPS --> DPI
|
||||
DPI --> LB
|
||||
|
||||
LB --> WEB1
|
||||
LB --> WEB2
|
||||
WEB1 --> PROXY
|
||||
WEB2 --> PROXY
|
||||
|
||||
PROXY --> FW_INTERNAL
|
||||
FW_INTERNAL --> VLAN_APP
|
||||
FW_INTERNAL --> VLAN_DB
|
||||
FW_INTERNAL --> VLAN_MGT
|
||||
|
||||
VLAN_APP --> APP1
|
||||
VLAN_APP --> APP2
|
||||
VLAN_APP --> APP3
|
||||
|
||||
VLAN_DB --> DB_MASTER
|
||||
VLAN_DB --> DB_SLAVE
|
||||
VLAN_DB --> REDIS
|
||||
|
||||
VLAN_MGT --> JUMP
|
||||
VLAN_MGT --> MONITOR
|
||||
VLAN_MGT --> LOG
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_3.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
33
temp_mermaid_water_biz_security_design_35098/diagram_4.mmd
Normal file
@ -0,0 +1,33 @@
|
||||
graph TB
|
||||
subgraph "数据分类"
|
||||
SECRET[机密级<br/>重要业务数据]
|
||||
INTERNAL[内部级<br/>一般业务数据]
|
||||
PUBLIC[公开级<br/>公开业务数据]
|
||||
end
|
||||
|
||||
subgraph "水务业务数据"
|
||||
CUSTOMER[客户身份信息<br/>机密级]
|
||||
METER[水表计量数据<br/>内部级]
|
||||
BILLING[收费账务数据<br/>机密级]
|
||||
REPORT[统计报表数据<br/>内部级]
|
||||
CONFIG[系统配置数据<br/>内部级]
|
||||
LOG[日志审计数据<br/>内部级]
|
||||
end
|
||||
|
||||
subgraph "保护措施"
|
||||
ENC_HIGH[强加密<br/>SM4+数字签名]
|
||||
ENC_MID[访问控制<br/>权限管理]
|
||||
ENC_LOW[公开访问<br/>无特殊保护]
|
||||
end
|
||||
|
||||
SECRET --> ENC_HIGH
|
||||
INTERNAL --> ENC_MID
|
||||
PUBLIC --> ENC_LOW
|
||||
|
||||
CUSTOMER --> SECRET
|
||||
BILLING --> SECRET
|
||||
METER --> INTERNAL
|
||||
REPORT --> INTERNAL
|
||||
CONFIG --> INTERNAL
|
||||
LOG --> INTERNAL
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_4.png
Normal file
|
After Width: | Height: | Size: 57 KiB |
42
temp_mermaid_water_biz_security_design_35098/diagram_5.mmd
Normal file
@ -0,0 +1,42 @@
|
||||
graph TB
|
||||
subgraph "数据采集层"
|
||||
AGENT1[系统日志采集]
|
||||
AGENT2[应用日志采集]
|
||||
AGENT3[数据库日志采集]
|
||||
AGENT4[网络流量采集]
|
||||
end
|
||||
|
||||
subgraph "数据处理层"
|
||||
KAFKA[消息队列<br/>Kafka集群]
|
||||
STREAM[流处理<br/>Flink/Storm]
|
||||
ETL[数据清洗<br/>Logstash]
|
||||
end
|
||||
|
||||
subgraph "存储分析层"
|
||||
ES[Elasticsearch<br/>日志存储]
|
||||
SIEM[安全信息事件管理<br/>SIEM平台]
|
||||
AI[智能分析<br/>机器学习]
|
||||
end
|
||||
|
||||
subgraph "可视化层"
|
||||
DASHBOARD[监控仪表盘<br/>Grafana]
|
||||
ALERT[告警系统<br/>AlertManager]
|
||||
REPORT[安全报告<br/>自动生成]
|
||||
end
|
||||
|
||||
AGENT1 --> KAFKA
|
||||
AGENT2 --> KAFKA
|
||||
AGENT3 --> KAFKA
|
||||
AGENT4 --> KAFKA
|
||||
|
||||
KAFKA --> STREAM
|
||||
STREAM --> ETL
|
||||
ETL --> ES
|
||||
|
||||
ES --> SIEM
|
||||
SIEM --> AI
|
||||
AI --> DASHBOARD
|
||||
|
||||
DASHBOARD --> ALERT
|
||||
ALERT --> REPORT
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_5.png
Normal file
|
After Width: | Height: | Size: 72 KiB |
18
temp_mermaid_water_biz_security_design_35098/diagram_6.mmd
Normal file
@ -0,0 +1,18 @@
|
||||
graph LR
|
||||
DISCOVER[漏洞发现] --> ASSESS[风险评估]
|
||||
ASSESS --> PLAN[补丁计划]
|
||||
PLAN --> TEST[测试验证]
|
||||
TEST --> DEPLOY[生产部署]
|
||||
DEPLOY --> VERIFY[部署验证]
|
||||
VERIFY --> DOCUMENT[文档记录]
|
||||
|
||||
subgraph "评估标准"
|
||||
HIGH[高危<br/>24小时内]
|
||||
MEDIUM[中危<br/>7天内]
|
||||
LOW[低危<br/>30天内]
|
||||
end
|
||||
|
||||
ASSESS --> HIGH
|
||||
ASSESS --> MEDIUM
|
||||
ASSESS --> LOW
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_6.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
30
temp_mermaid_water_biz_security_design_35098/diagram_7.mmd
Normal file
@ -0,0 +1,30 @@
|
||||
graph TB
|
||||
INCIDENT[安全事件发生] --> DETECT[事件检测]
|
||||
DETECT --> REPORT[事件上报]
|
||||
REPORT --> ASSESS[影响评估]
|
||||
ASSESS --> RESPONSE[应急响应]
|
||||
|
||||
subgraph "应急响应措施"
|
||||
ISOLATE[系统隔离]
|
||||
PRESERVE[证据保全]
|
||||
RECOVER[系统恢复]
|
||||
INVESTIGATE[调查分析]
|
||||
end
|
||||
|
||||
subgraph "后续处理"
|
||||
LESSON[经验总结]
|
||||
IMPROVE[流程改进]
|
||||
TRAIN[培训加强]
|
||||
DOC[文档更新]
|
||||
end
|
||||
|
||||
RESPONSE --> ISOLATE
|
||||
RESPONSE --> PRESERVE
|
||||
RESPONSE --> RECOVER
|
||||
RESPONSE --> INVESTIGATE
|
||||
|
||||
INVESTIGATE --> LESSON
|
||||
LESSON --> IMPROVE
|
||||
IMPROVE --> TRAIN
|
||||
TRAIN --> DOC
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_7.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
39
temp_mermaid_water_biz_security_design_35098/diagram_8.mmd
Normal file
@ -0,0 +1,39 @@
|
||||
graph TB
|
||||
CEO[总经理<br/>安全最高责任人]
|
||||
CISO[信息安全负责人<br/>CISO]
|
||||
|
||||
subgraph "安全管理委员会"
|
||||
IT_DIR[IT总监]
|
||||
SECURITY_DIR[安全总监]
|
||||
COMPLIANCE[合规负责人]
|
||||
LEGAL[法务负责人]
|
||||
end
|
||||
|
||||
subgraph "安全执行团队"
|
||||
SEC_ADMIN[安全管理员]
|
||||
SYS_ADMIN[系统管理员]
|
||||
DBA[数据库管理员]
|
||||
NET_ADMIN[网络管理员]
|
||||
end
|
||||
|
||||
subgraph "业务安全责任人"
|
||||
BUS_OWNER[业务负责人]
|
||||
DATA_OWNER[数据负责人]
|
||||
USER_ADMIN[用户管理员]
|
||||
end
|
||||
|
||||
CEO --> CISO
|
||||
CISO --> IT_DIR
|
||||
CISO --> SECURITY_DIR
|
||||
CISO --> COMPLIANCE
|
||||
CISO --> LEGAL
|
||||
|
||||
IT_DIR --> SEC_ADMIN
|
||||
IT_DIR --> SYS_ADMIN
|
||||
IT_DIR --> DBA
|
||||
IT_DIR --> NET_ADMIN
|
||||
|
||||
SECURITY_DIR --> BUS_OWNER
|
||||
SECURITY_DIR --> DATA_OWNER
|
||||
SECURITY_DIR --> USER_ADMIN
|
||||
|
||||
BIN
temp_mermaid_water_biz_security_design_35098/diagram_8.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
@ -0,0 +1,47 @@
|
||||
graph TB
|
||||
subgraph USER["用户层"]
|
||||
A1[Web管理端<br/>yudao-ui-admin-vue3]
|
||||
A2[移动抄表端<br/>uni-app]
|
||||
A3[客户微信端<br/>微信小程序]
|
||||
A4[客户支付宝端<br/>支付宝小程序]
|
||||
end
|
||||
|
||||
subgraph GATEWAY["网关层"]
|
||||
B1[Nginx负载均衡]
|
||||
B2[API网关<br/>统一认证/权限控制]
|
||||
end
|
||||
|
||||
subgraph APP["应用层"]
|
||||
C1[营收管理<br/>RuoYi-Vue-Pro]
|
||||
C2[客户服务<br/>RuoYi-Vue-Pro]
|
||||
C3[表务管理<br/>RuoYi-Vue-Pro]
|
||||
C4[统计分析<br/>RuoYi-Vue-Pro]
|
||||
end
|
||||
|
||||
subgraph SERVICE["服务层"]
|
||||
D1[权限服务<br/>Spring Security]
|
||||
D2[工作流服务<br/>Flowable]
|
||||
D3[消息服务<br/>Redis MQ]
|
||||
D4[文件服务<br/>MinIO/OSS]
|
||||
end
|
||||
|
||||
subgraph DATA["数据层"]
|
||||
E1[(OpenGauss 5.0+<br/>主从架构)]
|
||||
E2[(Redis 6.0<br/>集群缓存)]
|
||||
E3[文件存储<br/>分布式存储]
|
||||
end
|
||||
|
||||
subgraph EXTERNAL["外部接口"]
|
||||
F1[银行接口<br/>代扣/托收]
|
||||
F2[支付接口<br/>微信/支付宝]
|
||||
F3[短信接口<br/>阿里云/腾讯云]
|
||||
F4[物联网接口<br/>智能水表]
|
||||
end
|
||||
|
||||
%% 层级间调用关系
|
||||
USER -.->|请求访问| GATEWAY
|
||||
GATEWAY -.->|负载均衡<br/>路由转发| APP
|
||||
APP -.->|服务调用| SERVICE
|
||||
APP -.->|外部集成| EXTERNAL
|
||||
SERVICE -.->|数据访问| DATA
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
graph
|
||||
subgraph ENCRYPT["加密层级"]
|
||||
direction TB
|
||||
L1[传输层加密<br/>SSL/TLS/国密SM]
|
||||
L2[存储层加密<br/>TDE透明数据加密]
|
||||
L3[字段级加密<br/>敏感字段加密]
|
||||
L4[备份加密<br/>备份文件加密]
|
||||
end
|
||||
|
||||
subgraph KEYMANAGE["密钥管理"]
|
||||
direction TB
|
||||
KMS[密钥管理系统<br/>Key Management]
|
||||
HSM[硬件安全模块<br/>Hardware Security]
|
||||
ROT[密钥轮换<br/>Key Rotation]
|
||||
end
|
||||
|
||||
subgraph GUOMI["国密算法"]
|
||||
direction TB
|
||||
SM2[SM2椭圆曲线<br/>非对称加密]
|
||||
SM3[SM3哈希算法<br/>消息摘要]
|
||||
SM4[SM4分组密码<br/>对称加密]
|
||||
end
|
||||
|
||||
%% 安全层级调用关系
|
||||
ENCRYPT -.->|密钥依赖<br/>加密管理| KEYMANAGE
|
||||
KEYMANAGE -.->|算法调用<br/>国密支持| GUOMI
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_10.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
@ -0,0 +1,29 @@
|
||||
graph
|
||||
subgraph AUTHENTICATION["身份认证"]
|
||||
direction TB
|
||||
AUTH1[用户名密码认证]
|
||||
AUTH2[LDAP集成认证]
|
||||
AUTH3[Kerberos认证]
|
||||
AUTH4[证书认证]
|
||||
end
|
||||
|
||||
subgraph AUTHORIZATION["权限控制"]
|
||||
direction TB
|
||||
RBAC[基于角色的权限控制<br/>Role-Based Access Control]
|
||||
RLS[行级安全策略<br/>Row Level Security]
|
||||
CLS[列级安全控制<br/>Column Level Security]
|
||||
TENANT[多租户数据隔离<br/>Multi-Tenant Isolation]
|
||||
end
|
||||
|
||||
subgraph AUDITING["审计监控"]
|
||||
direction TB
|
||||
AUDIT[操作审计日志<br/>Audit Logging]
|
||||
MONITOR[实时安全监控<br/>Security Monitoring]
|
||||
ALERT[安全告警<br/>Security Alert]
|
||||
REPORT[合规报告<br/>Compliance Report]
|
||||
end
|
||||
|
||||
%% 安全控制流程
|
||||
AUTHENTICATION -.->|身份验证<br/>授权检查| AUTHORIZATION
|
||||
AUTHORIZATION -.->|权限监控<br/>操作审计| AUDITING
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_11.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
@ -0,0 +1,51 @@
|
||||
graph TB
|
||||
subgraph DMZ["DMZ区域"]
|
||||
subgraph "负载均衡集群"
|
||||
LB1[负载均衡器<br/>Nginx Cluster]
|
||||
WAF[Web应用防火墙]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph APPZONE["应用服务区"]
|
||||
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
|
||||
end
|
||||
|
||||
subgraph DATAZONE["数据服务区"]
|
||||
subgraph "数据库集群"
|
||||
DB1[OpenGauss主库<br/>32核128G]
|
||||
DB2[OpenGauss从库<br/>32核128G]
|
||||
end
|
||||
|
||||
subgraph "缓存集群"
|
||||
REDIS1[Redis主节点<br/>16核32G]
|
||||
REDIS2[Redis从节点<br/>16核32G]
|
||||
REDIS3[Redis哨兵<br/>8核16G]
|
||||
end
|
||||
|
||||
subgraph "文件存储"
|
||||
FILE1[文件服务器1<br/>8核32G 10TB]
|
||||
FILE2[文件服务器2<br/>8核32G 10TB]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph MGMT["管理服务区"]
|
||||
MONITOR[监控服务器<br/>8核16G]
|
||||
BACKUP[备份服务器<br/>8核32G 20TB]
|
||||
JUMP[跳板服务器<br/>4核8G]
|
||||
end
|
||||
|
||||
%% 区域间调用关系
|
||||
Internet -.->|外网访问| DMZ
|
||||
DMZ -.->|负载均衡<br/>安全过滤| APPZONE
|
||||
APPZONE -.->|数据访问<br/>业务处理| DATAZONE
|
||||
MGMT -.->|监控管理<br/>备份恢复| DATAZONE
|
||||
MGMT -.->|系统监控<br/>运维管理| APPZONE
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_2.png
Normal file
|
After Width: | Height: | Size: 122 KiB |
@ -0,0 +1,57 @@
|
||||
graph
|
||||
subgraph FRONTEND["🏷 前端技术栈"]
|
||||
direction TB
|
||||
FE1["Vue 3.2+ TypeScript"]
|
||||
FE2["Element Plus UI"]
|
||||
FE3["Vite 构建工具"]
|
||||
FE4["Pinia 状态管理"]
|
||||
FE5["Vue Router 路由"]
|
||||
FE6["Axios HTTP请求"]
|
||||
FE7["ECharts 图表"]
|
||||
end
|
||||
|
||||
subgraph BACKEND["📦 后端技术栈"]
|
||||
direction TB
|
||||
BE1["Spring Boot 3.x"]:::spring
|
||||
BE2["Spring Security"]:::security
|
||||
BE3["MyBatis Plus"]:::orm
|
||||
BE4["Redis 缓存"]:::db
|
||||
BE5["OpenGauss DB"]:::db
|
||||
BE6["Knife4j 文档"]
|
||||
BE7["Jackson JSON"]
|
||||
BE8["Maven 管理"]
|
||||
end
|
||||
|
||||
subgraph MIDDLEWARE["⚙️ 中间件服务"]
|
||||
direction TB
|
||||
MW1["Nginx LB"]
|
||||
MW2["Redis集群"]
|
||||
MW3["Flowable工作流"]
|
||||
MW4["Quartz定时"]
|
||||
MW5["MinIO存储"]
|
||||
MW6["RocketMQ"]
|
||||
MW7["ElasticSearch"]
|
||||
MW8["Sentinel限流"]
|
||||
end
|
||||
|
||||
subgraph MOBILE["📱 移动应用"]
|
||||
direction TB
|
||||
MB1["uni-app"]
|
||||
MB2["uView UI"]
|
||||
MB3["微信小程序"]
|
||||
MB4["支付宝小程序"]
|
||||
MB5["H5响应式"]
|
||||
MB6["高德地图SDK"]
|
||||
MB7["NFC设备接口"]
|
||||
end
|
||||
|
||||
%% 技术栈间调用关系
|
||||
FRONTEND -.->|HTTP请求<br/>API调用| BACKEND
|
||||
MOBILE -.->|跨平台调用<br/>API集成| BACKEND
|
||||
BACKEND -.->|服务集成<br/>中间件调用| MIDDLEWARE
|
||||
|
||||
classDef spring fill:#6db33f,color:white
|
||||
classDef security fill:#b5e6c0
|
||||
classDef orm fill:#c7b3e5
|
||||
classDef db fill:#f9d27d
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_3.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
@ -0,0 +1,55 @@
|
||||
flowchart TD
|
||||
subgraph COLLECT["数据采集层"]
|
||||
A1[移动抄表APP<br/>数据采集]
|
||||
A2[智能水表<br/>远程数据]
|
||||
A3[Web管理端<br/>业务录入]
|
||||
A4[客户端小程序<br/>用户数据]
|
||||
A5[外部系统<br/>接口数据]
|
||||
end
|
||||
|
||||
subgraph ACCESS["数据接入层"]
|
||||
B1[API网关<br/>数据验证]
|
||||
B2[数据清洗<br/>格式转换]
|
||||
B3[消息队列<br/>异步处理]
|
||||
B4[数据缓存<br/>临时存储]
|
||||
end
|
||||
|
||||
subgraph PROCESS["业务处理层"]
|
||||
C1[抄表服务<br/>水量计算]
|
||||
C2[收费服务<br/>账单生成]
|
||||
C3[账务服务<br/>财务处理]
|
||||
C4[工单服务<br/>流程处理]
|
||||
C5[统计服务<br/>数据分析]
|
||||
end
|
||||
|
||||
subgraph STORAGE["数据存储层"]
|
||||
D1[(OpenGauss主库<br/>核心业务数据)]
|
||||
D2[(OpenGauss从库<br/>查询数据)]
|
||||
D3[(Redis缓存<br/>热点数据)]
|
||||
D4[文件存储<br/>附件图片]
|
||||
D5[(备份库<br/>历史数据)]
|
||||
end
|
||||
|
||||
subgraph SERVICE["数据服务层"]
|
||||
E1[查询服务<br/>数据检索]
|
||||
E2[报表服务<br/>统计分析]
|
||||
E3[接口服务<br/>对外开放]
|
||||
E4[推送服务<br/>消息通知]
|
||||
end
|
||||
|
||||
subgraph PRESENT["数据展现层"]
|
||||
F1[管理后台<br/>业务操作]
|
||||
F2[统计大屏<br/>可视化展示]
|
||||
F3[移动端<br/>现场作业]
|
||||
F4[客户端<br/>自助服务]
|
||||
F5[第三方系统<br/>数据集成]
|
||||
end
|
||||
|
||||
%% 数据流向关系
|
||||
COLLECT -.->|数据采集<br/>格式验证| ACCESS
|
||||
ACCESS -.->|数据接入<br/>清洗转换| PROCESS
|
||||
PROCESS -.->|业务处理<br/>数据持久化| STORAGE
|
||||
STORAGE -.->|数据查询<br/>统计分析| SERVICE
|
||||
SERVICE -.->|数据服务<br/>接口调用| PRESENT
|
||||
PRESENT -.->|用户反馈<br/>业务交互| PROCESS
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_4.png
Normal file
|
After Width: | Height: | Size: 96 KiB |
@ -0,0 +1,31 @@
|
||||
graph TB
|
||||
subgraph FRAMEWORK["跨平台框架"]
|
||||
M1[uni-app 3.x]
|
||||
M2[Vue 3 Composition API]
|
||||
M3[TypeScript支持]
|
||||
end
|
||||
|
||||
subgraph UIKIT["UI组件库"]
|
||||
N1[uView UI 2.0]
|
||||
N2[uni-ui组件]
|
||||
N3[自定义水务组件]
|
||||
end
|
||||
|
||||
subgraph DEVICE["设备能力"]
|
||||
P1[相机API<br/>水表拍照]
|
||||
P2[NFC读取<br/>水表标签]
|
||||
P3[GPS定位<br/>抄表轨迹]
|
||||
P4[扫码API<br/>二维码扫描]
|
||||
end
|
||||
|
||||
subgraph NETWORK["网络通信"]
|
||||
Q1[uni.request<br/>HTTP请求]
|
||||
Q2[WebSocket<br/>实时通信]
|
||||
Q3[文件上传<br/>图片处理]
|
||||
end
|
||||
|
||||
%% 移动架构调用关系
|
||||
FRAMEWORK -.->|UI渲染<br/>组件调用| UIKIT
|
||||
FRAMEWORK -.->|设备调用<br/>原生能力| DEVICE
|
||||
FRAMEWORK -.->|网络通信<br/>数据交互| NETWORK
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_5.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
@ -0,0 +1,35 @@
|
||||
graph TD
|
||||
subgraph ACCESS["接入层"]
|
||||
GW[API网关]
|
||||
AUTH[认证服务]
|
||||
end
|
||||
|
||||
subgraph BUSINESS["业务服务层"]
|
||||
SYS[系统服务]
|
||||
CUST[客户服务]
|
||||
READ[抄表服务]
|
||||
BILL[账单服务]
|
||||
PAY[收费服务]
|
||||
ORDER[工单服务]
|
||||
RPT[报表服务]
|
||||
end
|
||||
|
||||
subgraph SUPPORT["支撑服务层"]
|
||||
METER[水表管理]
|
||||
WF[工作流引擎]
|
||||
PAY_GW[支付网关]
|
||||
IOT[物联网]
|
||||
end
|
||||
|
||||
subgraph DATA["数据存储层"]
|
||||
DB[(OpenGauss数据库)]
|
||||
REDIS[(Redis缓存)]
|
||||
FILE_STORE[文件存储]
|
||||
end
|
||||
|
||||
%% 层级间的调用关系
|
||||
ACCESS -.->|请求路由<br/>认证授权| BUSINESS
|
||||
BUSINESS -.->|服务调用| SUPPORT
|
||||
BUSINESS -.->|数据访问| DATA
|
||||
SUPPORT -.->|数据访问| DATA
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_6.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
@ -0,0 +1,38 @@
|
||||
graph TB
|
||||
subgraph REGISTRY["服务发现与注册"]
|
||||
NACOS[Nacos注册中心<br/>服务注册/发现/配置]
|
||||
end
|
||||
|
||||
subgraph MESH["服务网格层"]
|
||||
subgraph BALANCE["负载均衡"]
|
||||
LB[Ribbon负载均衡<br/>客户端负载均衡]
|
||||
FEIGN[OpenFeign<br/>服务间调用]
|
||||
end
|
||||
|
||||
subgraph PROTECTION["容错保护"]
|
||||
CB[Sentinel熔断器<br/>流量控制/熔断降级]
|
||||
RETRY[重试机制<br/>失败重试]
|
||||
end
|
||||
|
||||
subgraph TRACING["链路追踪"]
|
||||
TRACE[SkyWalking<br/>分布式链路追踪]
|
||||
METRIC[Micrometer<br/>指标收集]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph CONFIG_MGMT["配置管理"]
|
||||
CONFIG[Nacos Config<br/>配置中心]
|
||||
SECRET[配置加密<br/>敏感信息保护]
|
||||
end
|
||||
|
||||
subgraph MONITORING["监控告警"]
|
||||
MONITOR[Spring Boot Admin<br/>应用监控]
|
||||
ALERT[告警系统<br/>异常通知]
|
||||
LOG[ELK日志系统<br/>日志聚合分析]
|
||||
end
|
||||
|
||||
%% 服务治理调用关系
|
||||
REGISTRY -.->|服务发现<br/>配置下发| MESH
|
||||
MESH -.->|配置获取<br/>服务注册| CONFIG_MGMT
|
||||
MESH -.->|监控数据<br/>链路追踪| MONITORING
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_7.png
Normal file
|
After Width: | Height: | Size: 93 KiB |
@ -0,0 +1,30 @@
|
||||
graph
|
||||
subgraph DBCLUSTER["OpenGauss高可用集群"]
|
||||
MASTER[("OpenGauss主库<br/>Primary Node<br/>读写操作")]
|
||||
STANDBY[("OpenGauss备库<br/>Standby Node<br/>只读操作")]
|
||||
CASCADE[("OpenGauss级联备库<br/>Cascade Standby<br/>负载分担")]
|
||||
|
||||
MASTER -.->|流复制| STANDBY
|
||||
STANDBY -.->|级联复制| CASCADE
|
||||
end
|
||||
|
||||
subgraph APPLAYER["应用层"]
|
||||
APP1[应用服务器1]
|
||||
APP2[应用服务器2]
|
||||
APP3[应用服务器3]
|
||||
end
|
||||
|
||||
subgraph POOLING["连接池"]
|
||||
POOL[连接池<br/>HikariCP<br/>Druid]
|
||||
end
|
||||
|
||||
subgraph MANAGEMENT["监控管理"]
|
||||
MON[OpenGauss Monitor<br/>性能监控]
|
||||
BACKUP[定时备份<br/>gs_backup]
|
||||
end
|
||||
|
||||
%% 高可用架构调用关系
|
||||
APPLAYER -.->|连接请求<br/>负载均衡| POOLING
|
||||
POOLING -.->|数据访问<br/>读写分离| DBCLUSTER
|
||||
MANAGEMENT -.->|监控管理<br/>备份恢复| DBCLUSTER
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_8.png
Normal file
|
After Width: | Height: | Size: 81 KiB |
@ -0,0 +1,31 @@
|
||||
graph TB
|
||||
subgraph DISTRIBUTED["OpenGauss分布式架构"]
|
||||
subgraph COORDINATOR["协调节点"]
|
||||
CN1[协调节点1<br/>Coordinator Node]
|
||||
CN2[协调节点2<br/>Coordinator Node]
|
||||
end
|
||||
|
||||
subgraph DATANODE1["数据节点组1"]
|
||||
DN1_1[数据节点1-主<br/>Datanode Primary]
|
||||
DN1_2[数据节点1-备<br/>Datanode Standby]
|
||||
DN1_1 -.->|主备同步| DN1_2
|
||||
end
|
||||
|
||||
subgraph DATANODE2["数据节点组2"]
|
||||
DN2_1[数据节点2-主<br/>Datanode Primary]
|
||||
DN2_2[数据节点2-备<br/>Datanode Standby]
|
||||
DN2_1 -.->|主备同步| DN2_2
|
||||
end
|
||||
|
||||
subgraph GTM_CLUSTER["GTM节点"]
|
||||
GTM[全局事务管理器<br/>GTM Master]
|
||||
GTM_S[GTM备节点<br/>GTM Standby]
|
||||
GTM -.->|备份| GTM_S
|
||||
end
|
||||
end
|
||||
|
||||
%% 分布式架构调用关系
|
||||
COORDINATOR -.->|分片路由<br/>查询协调| DATANODE1
|
||||
COORDINATOR -.->|分片路由<br/>查询协调| DATANODE2
|
||||
COORDINATOR -.->|事务管理<br/>全局一致性| GTM_CLUSTER
|
||||
|
||||
BIN
temp_mermaid_water_biz_system_architecture_35098/diagram_9.png
Normal file
|
After Width: | Height: | Size: 87 KiB |
@ -41,66 +41,50 @@
|
||||
### 总体部署架构
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "外部用户访问"
|
||||
graph
|
||||
subgraph EXTERNAL["外部用户访问"]
|
||||
direction TB
|
||||
A[移动端用户]
|
||||
B[PC端用户]
|
||||
C[第三方系统]
|
||||
end
|
||||
|
||||
subgraph "负载均衡层"
|
||||
subgraph LOADBALANCER["负载均衡层"]
|
||||
direction TB
|
||||
D[主负载均衡器]
|
||||
E[备负载均衡器]
|
||||
end
|
||||
|
||||
subgraph "Web服务层"
|
||||
subgraph WEBSERVICE["Web服务层"]
|
||||
direction TB
|
||||
F[Web服务器1]
|
||||
G[Web服务器2]
|
||||
H[Web服务器3]
|
||||
end
|
||||
|
||||
subgraph "应用服务层"
|
||||
subgraph APPSERVICE["应用服务层"]
|
||||
direction TB
|
||||
I[应用服务器1]
|
||||
J[应用服务器2]
|
||||
K[应用服务器3]
|
||||
L[应用服务器4]
|
||||
end
|
||||
|
||||
subgraph "数据服务层"
|
||||
subgraph DATASERVICE["数据服务层"]
|
||||
direction TB
|
||||
M[(主数据库<br/>OpenGauss)]
|
||||
N[(备数据库<br/>OpenGauss)]
|
||||
O[缓存服务器<br/>Redis]
|
||||
P[文件服务器<br/>MinIO]
|
||||
|
||||
M -.->|数据同步| N
|
||||
end
|
||||
|
||||
A --> D
|
||||
B --> D
|
||||
C --> D
|
||||
D --> F
|
||||
D --> G
|
||||
D --> H
|
||||
E --> F
|
||||
E --> G
|
||||
E --> H
|
||||
F --> I
|
||||
F --> J
|
||||
G --> K
|
||||
G --> L
|
||||
H --> I
|
||||
H --> J
|
||||
I --> M
|
||||
J --> M
|
||||
K --> M
|
||||
L --> M
|
||||
I --> O
|
||||
J --> O
|
||||
K --> O
|
||||
L --> O
|
||||
I --> P
|
||||
J --> P
|
||||
K --> P
|
||||
L --> P
|
||||
M --> N
|
||||
%% 层级间调用关系
|
||||
EXTERNAL -.->|用户请求<br/>接口调用| LOADBALANCER
|
||||
LOADBALANCER -.->|负载分发<br/>故障切换| WEBSERVICE
|
||||
WEBSERVICE -.->|业务请求<br/>服务调用| APPSERVICE
|
||||
APPSERVICE -.->|数据访问<br/>缓存读写<br/>文件操作| DATASERVICE
|
||||
```
|
||||
|
||||
### 环境架构设计
|
||||
@ -175,19 +159,26 @@ graph TB
|
||||
#### 核心服务组件
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
subgraph "容器化服务"
|
||||
graph
|
||||
direction TB
|
||||
subgraph FRONTEND["前端服务层"]
|
||||
A[前端容器<br/>Nginx + Vue3]
|
||||
end
|
||||
|
||||
subgraph BACKEND["后端服务层"]
|
||||
B[后端容器<br/>Spring Boot]
|
||||
end
|
||||
|
||||
subgraph DATASTORAGE["数据存储层"]
|
||||
direction TB
|
||||
C[数据库容器<br/>OpenGauss]
|
||||
D[缓存容器<br/>Redis]
|
||||
E[文件存储容器<br/>MinIO]
|
||||
end
|
||||
|
||||
A --> B
|
||||
B --> C
|
||||
B --> D
|
||||
B --> E
|
||||
%% 容器服务调用关系
|
||||
FRONTEND -.->|API请求<br/>静态资源| BACKEND
|
||||
BACKEND -.->|数据操作<br/>缓存访问<br/>文件存储| DATASTORAGE
|
||||
```
|
||||
|
||||
#### 部署配置说明
|
||||
|
||||
@ -33,87 +33,65 @@
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "用户层"
|
||||
subgraph USER["用户层"]
|
||||
A1[Web管理端<br/>yudao-ui-admin-vue3]
|
||||
A2[移动抄表端<br/>uni-app]
|
||||
A3[客户微信端<br/>微信小程序]
|
||||
A4[客户支付宝端<br/>支付宝小程序]
|
||||
end
|
||||
|
||||
subgraph "网关层"
|
||||
subgraph GATEWAY["网关层"]
|
||||
B1[Nginx负载均衡]
|
||||
B2[API网关<br/>统一认证/权限控制]
|
||||
end
|
||||
|
||||
subgraph "应用层"
|
||||
subgraph APP["应用层"]
|
||||
C1[营收管理<br/>RuoYi-Vue-Pro]
|
||||
C2[客户服务<br/>RuoYi-Vue-Pro]
|
||||
C3[表务管理<br/>RuoYi-Vue-Pro]
|
||||
C4[统计分析<br/>RuoYi-Vue-Pro]
|
||||
end
|
||||
|
||||
subgraph "服务层"
|
||||
subgraph SERVICE["服务层"]
|
||||
D1[权限服务<br/>Spring Security]
|
||||
D2[工作流服务<br/>Flowable]
|
||||
D3[消息服务<br/>Redis MQ]
|
||||
D4[文件服务<br/>MinIO/OSS]
|
||||
end
|
||||
|
||||
subgraph "数据层"
|
||||
subgraph DATA["数据层"]
|
||||
E1[(OpenGauss 5.0+<br/>主从架构)]
|
||||
E2[(Redis 6.0<br/>集群缓存)]
|
||||
E3[文件存储<br/>分布式存储]
|
||||
end
|
||||
|
||||
subgraph "外部接口"
|
||||
subgraph EXTERNAL["外部接口"]
|
||||
F1[银行接口<br/>代扣/托收]
|
||||
F2[支付接口<br/>微信/支付宝]
|
||||
F3[短信接口<br/>阿里云/腾讯云]
|
||||
F4[物联网接口<br/>智能水表]
|
||||
end
|
||||
|
||||
A1 --> B1
|
||||
A2 --> B1
|
||||
A3 --> B1
|
||||
A4 --> B1
|
||||
|
||||
B1 --> B2
|
||||
B2 --> C1
|
||||
B2 --> C2
|
||||
B2 --> C3
|
||||
B2 --> C4
|
||||
|
||||
C1 --> D1
|
||||
C1 --> D2
|
||||
C1 --> D3
|
||||
C1 --> D4
|
||||
C2 --> D1
|
||||
C2 --> D3
|
||||
C3 --> D1
|
||||
C3 --> D2
|
||||
C4 --> D1
|
||||
|
||||
D1 --> E1
|
||||
D2 --> E1
|
||||
D3 --> E2
|
||||
D4 --> E3
|
||||
|
||||
C1 --> F1
|
||||
C1 --> F2
|
||||
C2 --> F3
|
||||
C3 --> F4
|
||||
%% 层级间调用关系
|
||||
USER -.->|请求访问| GATEWAY
|
||||
GATEWAY -.->|负载均衡<br/>路由转发| APP
|
||||
APP -.->|服务调用| SERVICE
|
||||
APP -.->|外部集成| EXTERNAL
|
||||
SERVICE -.->|数据访问| DATA
|
||||
```
|
||||
|
||||
### 物理部署架构图
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "DMZ区域"
|
||||
LB1[负载均衡器<br/>Nginx Cluster]
|
||||
WAF[Web应用防火墙]
|
||||
subgraph DMZ["DMZ区域"]
|
||||
subgraph "负载均衡集群"
|
||||
LB1[负载均衡器<br/>Nginx Cluster]
|
||||
WAF[Web应用防火墙]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph "应用服务区"
|
||||
subgraph APPZONE["应用服务区"]
|
||||
subgraph "Web服务集群"
|
||||
WEB1[Web服务器1<br/>8核32G]
|
||||
WEB2[Web服务器2<br/>8核32G]
|
||||
@ -125,7 +103,7 @@ graph TB
|
||||
end
|
||||
end
|
||||
|
||||
subgraph "数据服务区"
|
||||
subgraph DATAZONE["数据服务区"]
|
||||
subgraph "数据库集群"
|
||||
DB1[OpenGauss主库<br/>32核128G]
|
||||
DB2[OpenGauss从库<br/>32核128G]
|
||||
@ -143,43 +121,18 @@ graph TB
|
||||
end
|
||||
end
|
||||
|
||||
subgraph "管理服务区"
|
||||
subgraph MGMT["管理服务区"]
|
||||
MONITOR[监控服务器<br/>8核16G]
|
||||
BACKUP[备份服务器<br/>8核32G 20TB]
|
||||
JUMP[跳板服务器<br/>4核8G]
|
||||
end
|
||||
|
||||
Internet --> WAF
|
||||
WAF --> LB1
|
||||
LB1 --> WEB1
|
||||
LB1 --> WEB2
|
||||
|
||||
WEB1 --> APP1
|
||||
WEB1 --> APP2
|
||||
WEB2 --> APP1
|
||||
WEB2 --> APP2
|
||||
|
||||
APP1 --> DB1
|
||||
APP2 --> DB1
|
||||
DB1 --> DB2
|
||||
|
||||
APP1 --> REDIS1
|
||||
APP2 --> REDIS1
|
||||
REDIS1 --> REDIS2
|
||||
REDIS3 --> REDIS1
|
||||
REDIS3 --> REDIS2
|
||||
|
||||
APP1 --> FILE1
|
||||
APP2 --> FILE2
|
||||
FILE1 --> FILE2
|
||||
|
||||
MONITOR --> APP1
|
||||
MONITOR --> APP2
|
||||
MONITOR --> DB1
|
||||
MONITOR --> REDIS1
|
||||
|
||||
BACKUP --> DB1
|
||||
BACKUP --> FILE1
|
||||
%% 区域间调用关系
|
||||
Internet -.->|外网访问| DMZ
|
||||
DMZ -.->|负载均衡<br/>安全过滤| APPZONE
|
||||
APPZONE -.->|数据访问<br/>业务处理| DATAZONE
|
||||
MGMT -.->|监控管理<br/>备份恢复| DATAZONE
|
||||
MGMT -.->|系统监控<br/>运维管理| APPZONE
|
||||
```
|
||||
|
||||
## 技术架构
|
||||
@ -189,8 +142,9 @@ graph TB
|
||||
### 技术栈总览
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
subgraph 前端技术栈["🏷 前端技术栈"]
|
||||
graph
|
||||
subgraph FRONTEND["🏷 前端技术栈"]
|
||||
direction TB
|
||||
FE1["Vue 3.2+ TypeScript"]
|
||||
FE2["Element Plus UI"]
|
||||
FE3["Vite 构建工具"]
|
||||
@ -200,7 +154,8 @@ graph LR
|
||||
FE7["ECharts 图表"]
|
||||
end
|
||||
|
||||
subgraph 后端技术栈["📦 后端技术栈"]
|
||||
subgraph BACKEND["📦 后端技术栈"]
|
||||
direction TB
|
||||
BE1["Spring Boot 3.x"]:::spring
|
||||
BE2["Spring Security"]:::security
|
||||
BE3["MyBatis Plus"]:::orm
|
||||
@ -211,7 +166,8 @@ graph LR
|
||||
BE8["Maven 管理"]
|
||||
end
|
||||
|
||||
subgraph 中间件服务["⚙️ 中间件服务"]
|
||||
subgraph MIDDLEWARE["⚙️ 中间件服务"]
|
||||
direction TB
|
||||
MW1["Nginx LB"]
|
||||
MW2["Redis集群"]
|
||||
MW3["Flowable工作流"]
|
||||
@ -222,7 +178,8 @@ graph LR
|
||||
MW8["Sentinel限流"]
|
||||
end
|
||||
|
||||
subgraph 移动应用["📱 移动应用"]
|
||||
subgraph MOBILE["📱 移动应用"]
|
||||
direction TB
|
||||
MB1["uni-app"]
|
||||
MB2["uView UI"]
|
||||
MB3["微信小程序"]
|
||||
@ -232,16 +189,10 @@ graph LR
|
||||
MB7["NFC设备接口"]
|
||||
end
|
||||
|
||||
FE6 -- HTTP请求 --> BE1
|
||||
MB1 -- API调用 --> BE1
|
||||
BE1 --> BE2
|
||||
BE1 --> BE3
|
||||
BE3 --> BE5
|
||||
BE1 --> BE4
|
||||
BE1 --> MW6
|
||||
BE1 --> MW5
|
||||
BE1 --> MW7
|
||||
BE1 --> MW3
|
||||
%% 技术栈间调用关系
|
||||
FRONTEND -.->|HTTP请求<br/>API调用| BACKEND
|
||||
MOBILE -.->|跨平台调用<br/>API集成| BACKEND
|
||||
BACKEND -.->|服务集成<br/>中间件调用| MIDDLEWARE
|
||||
|
||||
classDef spring fill:#6db33f,color:white
|
||||
classDef security fill:#b5e6c0
|
||||
@ -253,7 +204,7 @@ graph LR
|
||||
|
||||
```mermaid
|
||||
flowchart TD
|
||||
subgraph "数据采集层"
|
||||
subgraph COLLECT["数据采集层"]
|
||||
A1[移动抄表APP<br/>数据采集]
|
||||
A2[智能水表<br/>远程数据]
|
||||
A3[Web管理端<br/>业务录入]
|
||||
@ -261,14 +212,14 @@ flowchart TD
|
||||
A5[外部系统<br/>接口数据]
|
||||
end
|
||||
|
||||
subgraph "数据接入层"
|
||||
subgraph ACCESS["数据接入层"]
|
||||
B1[API网关<br/>数据验证]
|
||||
B2[数据清洗<br/>格式转换]
|
||||
B3[消息队列<br/>异步处理]
|
||||
B4[数据缓存<br/>临时存储]
|
||||
end
|
||||
|
||||
subgraph "业务处理层"
|
||||
subgraph PROCESS["业务处理层"]
|
||||
C1[抄表服务<br/>水量计算]
|
||||
C2[收费服务<br/>账单生成]
|
||||
C3[账务服务<br/>财务处理]
|
||||
@ -276,7 +227,7 @@ flowchart TD
|
||||
C5[统计服务<br/>数据分析]
|
||||
end
|
||||
|
||||
subgraph "数据存储层"
|
||||
subgraph STORAGE["数据存储层"]
|
||||
D1[(OpenGauss主库<br/>核心业务数据)]
|
||||
D2[(OpenGauss从库<br/>查询数据)]
|
||||
D3[(Redis缓存<br/>热点数据)]
|
||||
@ -284,14 +235,14 @@ flowchart TD
|
||||
D5[(备份库<br/>历史数据)]
|
||||
end
|
||||
|
||||
subgraph "数据服务层"
|
||||
subgraph SERVICE["数据服务层"]
|
||||
E1[查询服务<br/>数据检索]
|
||||
E2[报表服务<br/>统计分析]
|
||||
E3[接口服务<br/>对外开放]
|
||||
E4[推送服务<br/>消息通知]
|
||||
end
|
||||
|
||||
subgraph "数据展现层"
|
||||
subgraph PRESENT["数据展现层"]
|
||||
F1[管理后台<br/>业务操作]
|
||||
F2[统计大屏<br/>可视化展示]
|
||||
F3[移动端<br/>现场作业]
|
||||
@ -299,42 +250,13 @@ flowchart TD
|
||||
F5[第三方系统<br/>数据集成]
|
||||
end
|
||||
|
||||
A1 --> B1
|
||||
A2 --> B2
|
||||
A3 --> B1
|
||||
A4 --> B1
|
||||
A5 --> B3
|
||||
|
||||
B1 --> B4
|
||||
B2 --> B3
|
||||
B3 --> C1
|
||||
B4 --> C2
|
||||
|
||||
C1 --> D1
|
||||
C2 --> D1
|
||||
C3 --> D1
|
||||
C4 --> D1
|
||||
C5 --> D2
|
||||
|
||||
D1 --> D2
|
||||
D1 --> D3
|
||||
D1 --> D5
|
||||
|
||||
D2 --> E1
|
||||
D3 --> E1
|
||||
D1 --> E2
|
||||
D2 --> E3
|
||||
|
||||
E1 --> F1
|
||||
E2 --> F2
|
||||
E3 --> F3
|
||||
E4 --> F4
|
||||
E3 --> F5
|
||||
|
||||
F1 -.-> C2
|
||||
F3 -.-> C1
|
||||
F4 -.-> C3
|
||||
F5 -.-> C4
|
||||
%% 数据流向关系
|
||||
COLLECT -.->|数据采集<br/>格式验证| ACCESS
|
||||
ACCESS -.->|数据接入<br/>清洗转换| PROCESS
|
||||
PROCESS -.->|业务处理<br/>数据持久化| STORAGE
|
||||
STORAGE -.->|数据查询<br/>统计分析| SERVICE
|
||||
SERVICE -.->|数据服务<br/>接口调用| PRESENT
|
||||
PRESENT -.->|用户反馈<br/>业务交互| PROCESS
|
||||
```
|
||||
|
||||
### 服务端技术架构
|
||||
@ -382,37 +304,35 @@ flowchart TD
|
||||
**技术栈组成:**
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "跨平台框架"
|
||||
subgraph FRAMEWORK["跨平台框架"]
|
||||
M1[uni-app 3.x]
|
||||
M2[Vue 3 Composition API]
|
||||
M3[TypeScript支持]
|
||||
end
|
||||
|
||||
subgraph "UI组件库"
|
||||
subgraph UIKIT["UI组件库"]
|
||||
N1[uView UI 2.0]
|
||||
N2[uni-ui组件]
|
||||
N3[自定义水务组件]
|
||||
end
|
||||
|
||||
subgraph "设备能力"
|
||||
subgraph DEVICE["设备能力"]
|
||||
P1[相机API<br/>水表拍照]
|
||||
P2[NFC读取<br/>水表标签]
|
||||
P3[GPS定位<br/>抄表轨迹]
|
||||
P4[扫码API<br/>二维码扫描]
|
||||
end
|
||||
|
||||
subgraph "网络通信"
|
||||
subgraph NETWORK["网络通信"]
|
||||
Q1[uni.request<br/>HTTP请求]
|
||||
Q2[WebSocket<br/>实时通信]
|
||||
Q3[文件上传<br/>图片处理]
|
||||
end
|
||||
|
||||
M1 --> N1
|
||||
M1 --> P1
|
||||
M1 --> Q1
|
||||
N1 --> N3
|
||||
P1 --> P2
|
||||
Q1 --> Q2
|
||||
%% 移动架构调用关系
|
||||
FRAMEWORK -.->|UI渲染<br/>组件调用| UIKIT
|
||||
FRAMEWORK -.->|设备调用<br/>原生能力| DEVICE
|
||||
FRAMEWORK -.->|网络通信<br/>数据交互| NETWORK
|
||||
```
|
||||
|
||||
### 技术特性
|
||||
@ -435,12 +355,12 @@ graph TB
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
subgraph "接入层"
|
||||
subgraph ACCESS["接入层"]
|
||||
GW[API网关]
|
||||
AUTH[认证服务]
|
||||
end
|
||||
|
||||
subgraph "业务服务层"
|
||||
subgraph BUSINESS["业务服务层"]
|
||||
SYS[系统服务]
|
||||
CUST[客户服务]
|
||||
READ[抄表服务]
|
||||
@ -450,89 +370,66 @@ graph TD
|
||||
RPT[报表服务]
|
||||
end
|
||||
|
||||
subgraph "支撑服务层"
|
||||
subgraph SUPPORT["支撑服务层"]
|
||||
METER[水表管理]
|
||||
WF[工作流引擎]
|
||||
PAY_GW[支付网关]
|
||||
IOT[物联网]
|
||||
end
|
||||
|
||||
subgraph "数据存储层"
|
||||
subgraph DATA["数据存储层"]
|
||||
DB[(OpenGauss数据库)]
|
||||
REDIS[(Redis缓存)]
|
||||
FILE_STORE[文件存储]
|
||||
end
|
||||
|
||||
%% 接入层连接
|
||||
GW --> AUTH
|
||||
GW --> SYS
|
||||
GW --> CUST
|
||||
GW --> READ
|
||||
GW --> ORDER
|
||||
|
||||
%% 业务流程连接
|
||||
READ --> METER
|
||||
READ --> BILL
|
||||
BILL --> PAY
|
||||
ORDER --> WF
|
||||
|
||||
%% 外部集成连接
|
||||
PAY --> PAY_GW
|
||||
READ --> IOT
|
||||
|
||||
%% 数据连接
|
||||
CUST -.-> DB
|
||||
BILL -.-> DB
|
||||
PAY -.-> DB
|
||||
AUTH -.-> REDIS
|
||||
SYS -.-> FILE_STORE
|
||||
%% 层级间的调用关系
|
||||
ACCESS -.->|请求路由<br/>认证授权| BUSINESS
|
||||
BUSINESS -.->|服务调用| SUPPORT
|
||||
BUSINESS -.->|数据访问| DATA
|
||||
SUPPORT -.->|数据访问| DATA
|
||||
```
|
||||
|
||||
### 服务治理架构
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "服务发现与注册"
|
||||
subgraph REGISTRY["服务发现与注册"]
|
||||
NACOS[Nacos注册中心<br/>服务注册/发现/配置]
|
||||
end
|
||||
|
||||
subgraph "服务网格层"
|
||||
subgraph "负载均衡"
|
||||
subgraph MESH["服务网格层"]
|
||||
subgraph BALANCE["负载均衡"]
|
||||
LB[Ribbon负载均衡<br/>客户端负载均衡]
|
||||
FEIGN[OpenFeign<br/>服务间调用]
|
||||
end
|
||||
|
||||
subgraph "容错保护"
|
||||
subgraph PROTECTION["容错保护"]
|
||||
CB[Sentinel熔断器<br/>流量控制/熔断降级]
|
||||
RETRY[重试机制<br/>失败重试]
|
||||
end
|
||||
|
||||
subgraph "链路追踪"
|
||||
subgraph TRACING["链路追踪"]
|
||||
TRACE[SkyWalking<br/>分布式链路追踪]
|
||||
METRIC[Micrometer<br/>指标收集]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph "配置管理"
|
||||
subgraph CONFIG_MGMT["配置管理"]
|
||||
CONFIG[Nacos Config<br/>配置中心]
|
||||
SECRET[配置加密<br/>敏感信息保护]
|
||||
end
|
||||
|
||||
subgraph "监控告警"
|
||||
subgraph MONITORING["监控告警"]
|
||||
MONITOR[Spring Boot Admin<br/>应用监控]
|
||||
ALERT[告警系统<br/>异常通知]
|
||||
LOG[ELK日志系统<br/>日志聚合分析]
|
||||
end
|
||||
|
||||
NACOS --> LB
|
||||
NACOS --> FEIGN
|
||||
LB --> CB
|
||||
FEIGN --> TRACE
|
||||
CB --> RETRY
|
||||
|
||||
CONFIG --> SECRET
|
||||
MONITOR --> ALERT
|
||||
TRACE --> LOG
|
||||
%% 服务治理调用关系
|
||||
REGISTRY -.->|服务发现<br/>配置下发| MESH
|
||||
MESH -.->|配置获取<br/>服务注册| CONFIG_MGMT
|
||||
MESH -.->|监控数据<br/>链路追踪| MONITORING
|
||||
```
|
||||
|
||||
### 应用模块设计
|
||||
@ -583,80 +480,70 @@ graph TB
|
||||
#### 主从高可用架构
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "OpenGauss高可用集群"
|
||||
graph
|
||||
subgraph DBCLUSTER["OpenGauss高可用集群"]
|
||||
MASTER[("OpenGauss主库<br/>Primary Node<br/>读写操作")]
|
||||
STANDBY[("OpenGauss备库<br/>Standby Node<br/>只读操作")]
|
||||
CASCADE[("OpenGauss级联备库<br/>Cascade Standby<br/>负载分担")]
|
||||
|
||||
MASTER -.->|流复制| STANDBY
|
||||
STANDBY -.->|级联复制| CASCADE
|
||||
end
|
||||
|
||||
subgraph "应用层"
|
||||
subgraph APPLAYER["应用层"]
|
||||
APP1[应用服务器1]
|
||||
APP2[应用服务器2]
|
||||
APP3[应用服务器3]
|
||||
end
|
||||
|
||||
subgraph "连接池"
|
||||
subgraph POOLING["连接池"]
|
||||
POOL[连接池<br/>HikariCP<br/>Druid]
|
||||
end
|
||||
|
||||
subgraph "监控管理"
|
||||
subgraph MANAGEMENT["监控管理"]
|
||||
MON[OpenGauss Monitor<br/>性能监控]
|
||||
BACKUP[定时备份<br/>gs_backup]
|
||||
end
|
||||
|
||||
APP1 --> POOL
|
||||
APP2 --> POOL
|
||||
APP3 --> POOL
|
||||
POOL --> MASTER
|
||||
POOL --> STANDBY
|
||||
POOL --> CASCADE
|
||||
|
||||
MASTER -.->|流复制| STANDBY
|
||||
STANDBY -.->|级联复制| CASCADE
|
||||
|
||||
MON --> MASTER
|
||||
MON --> STANDBY
|
||||
BACKUP --> MASTER
|
||||
%% 高可用架构调用关系
|
||||
APPLAYER -.->|连接请求<br/>负载均衡| POOLING
|
||||
POOLING -.->|数据访问<br/>读写分离| DBCLUSTER
|
||||
MANAGEMENT -.->|监控管理<br/>备份恢复| DBCLUSTER
|
||||
```
|
||||
|
||||
#### 分片存储架构
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "OpenGauss分布式架构"
|
||||
subgraph "协调节点"
|
||||
subgraph DISTRIBUTED["OpenGauss分布式架构"]
|
||||
subgraph COORDINATOR["协调节点"]
|
||||
CN1[协调节点1<br/>Coordinator Node]
|
||||
CN2[协调节点2<br/>Coordinator Node]
|
||||
end
|
||||
|
||||
subgraph "数据节点组1"
|
||||
subgraph DATANODE1["数据节点组1"]
|
||||
DN1_1[数据节点1-主<br/>Datanode Primary]
|
||||
DN1_2[数据节点1-备<br/>Datanode Standby]
|
||||
DN1_1 -.->|主备同步| DN1_2
|
||||
end
|
||||
|
||||
subgraph "数据节点组2"
|
||||
subgraph DATANODE2["数据节点组2"]
|
||||
DN2_1[数据节点2-主<br/>Datanode Primary]
|
||||
DN2_2[数据节点2-备<br/>Datanode Standby]
|
||||
DN2_1 -.->|主备同步| DN2_2
|
||||
end
|
||||
|
||||
subgraph "GTM节点"
|
||||
subgraph GTM_CLUSTER["GTM节点"]
|
||||
GTM[全局事务管理器<br/>GTM Master]
|
||||
GTM_S[GTM备节点<br/>GTM Standby]
|
||||
GTM -.->|备份| GTM_S
|
||||
end
|
||||
end
|
||||
|
||||
CN1 --> DN1_1
|
||||
CN1 --> DN2_1
|
||||
CN2 --> DN1_1
|
||||
CN2 --> DN2_1
|
||||
|
||||
DN1_1 -.->|主备同步| DN1_2
|
||||
DN2_1 -.->|主备同步| DN2_2
|
||||
|
||||
GTM -.->|备份| GTM_S
|
||||
CN1 --> GTM
|
||||
CN2 --> GTM
|
||||
%% 分布式架构调用关系
|
||||
COORDINATOR -.->|分片路由<br/>查询协调| DATANODE1
|
||||
COORDINATOR -.->|分片路由<br/>查询协调| DATANODE2
|
||||
COORDINATOR -.->|事务管理<br/>全局一致性| GTM_CLUSTER
|
||||
```
|
||||
|
||||
### 数据模型设计
|
||||
@ -700,70 +587,65 @@ graph TB
|
||||
#### 数据加密安全
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "加密层级"
|
||||
graph
|
||||
subgraph ENCRYPT["加密层级"]
|
||||
direction TB
|
||||
L1[传输层加密<br/>SSL/TLS/国密SM]
|
||||
L2[存储层加密<br/>TDE透明数据加密]
|
||||
L3[字段级加密<br/>敏感字段加密]
|
||||
L4[备份加密<br/>备份文件加密]
|
||||
end
|
||||
|
||||
subgraph "密钥管理"
|
||||
subgraph KEYMANAGE["密钥管理"]
|
||||
direction TB
|
||||
KMS[密钥管理系统<br/>Key Management]
|
||||
HSM[硬件安全模块<br/>Hardware Security]
|
||||
ROT[密钥轮换<br/>Key Rotation]
|
||||
end
|
||||
|
||||
subgraph "国密算法"
|
||||
subgraph GUOMI["国密算法"]
|
||||
direction TB
|
||||
SM2[SM2椭圆曲线<br/>非对称加密]
|
||||
SM3[SM3哈希算法<br/>消息摘要]
|
||||
SM4[SM4分组密码<br/>对称加密]
|
||||
end
|
||||
|
||||
L1 --> KMS
|
||||
L2 --> HSM
|
||||
L3 --> ROT
|
||||
L4 --> KMS
|
||||
|
||||
KMS --> SM2
|
||||
HSM --> SM3
|
||||
ROT --> SM4
|
||||
%% 安全层级调用关系
|
||||
ENCRYPT -.->|密钥依赖<br/>加密管理| KEYMANAGE
|
||||
KEYMANAGE -.->|算法调用<br/>国密支持| GUOMI
|
||||
```
|
||||
|
||||
#### 访问控制安全
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph "身份认证"
|
||||
graph
|
||||
subgraph AUTHENTICATION["身份认证"]
|
||||
direction TB
|
||||
AUTH1[用户名密码认证]
|
||||
AUTH2[LDAP集成认证]
|
||||
AUTH3[Kerberos认证]
|
||||
AUTH4[证书认证]
|
||||
end
|
||||
|
||||
subgraph "权限控制"
|
||||
subgraph AUTHORIZATION["权限控制"]
|
||||
direction TB
|
||||
RBAC[基于角色的权限控制<br/>Role-Based Access Control]
|
||||
RLS[行级安全策略<br/>Row Level Security]
|
||||
CLS[列级安全控制<br/>Column Level Security]
|
||||
TENANT[多租户数据隔离<br/>Multi-Tenant Isolation]
|
||||
end
|
||||
|
||||
subgraph "审计监控"
|
||||
subgraph AUDITING["审计监控"]
|
||||
direction TB
|
||||
AUDIT[操作审计日志<br/>Audit Logging]
|
||||
MONITOR[实时安全监控<br/>Security Monitoring]
|
||||
ALERT[安全告警<br/>Security Alert]
|
||||
REPORT[合规报告<br/>Compliance Report]
|
||||
end
|
||||
|
||||
AUTH1 --> RBAC
|
||||
AUTH2 --> RLS
|
||||
AUTH3 --> CLS
|
||||
AUTH4 --> TENANT
|
||||
|
||||
RBAC --> AUDIT
|
||||
RLS --> MONITOR
|
||||
CLS --> ALERT
|
||||
TENANT --> REPORT
|
||||
%% 安全控制流程
|
||||
AUTHENTICATION -.->|身份验证<br/>授权检查| AUTHORIZATION
|
||||
AUTHORIZATION -.->|权限监控<br/>操作审计| AUDITING
|
||||
```
|
||||
|
||||
### 网络安全
|
||||
|
||||