Deliverable for WANFi
This commit is contained in:
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档 v1.2.docx
Normal file
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档 v1.2.docx
Normal file
Binary file not shown.
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档 v1.3.docx
Normal file
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档 v1.3.docx
Normal file
Binary file not shown.
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档v1.4.docx
Normal file
BIN
docs/99-reference/02-WANFi控制平台软件系统设计文档v1.4.docx
Normal file
Binary file not shown.
BIN
docs/99-reference/CRM Product Overview.pptx
Normal file
BIN
docs/99-reference/CRM Product Overview.pptx
Normal file
Binary file not shown.
BIN
docs/99-reference/db.docx
Normal file
BIN
docs/99-reference/db.docx
Normal file
Binary file not shown.
396
docs/99-reference/db.md
Normal file
396
docs/99-reference/db.md
Normal file
@@ -0,0 +1,396 @@
|
||||
|
||||
# WANFi Control and Billing System 数据库设计文档
|
||||
|
||||
## 1. 概述
|
||||
|
||||
本数据库设计文档描述了 WANFi Control and Billing System 的数据库结构。系统采用 MySQL 数据库,字符集为 utf8mb4,主要涉及系统配置、部门、设备、数据字典、定时任务、日志、菜单、角色以及用户管理等模块。
|
||||
|
||||
## 2. 数据库架构
|
||||
|
||||
- **数据库名称**:`wfc_system_db`
|
||||
- **字符集**:utf8mb4
|
||||
- **校对规则**:utf8mb4_general_ci
|
||||
|
||||
---
|
||||
|
||||
## 3. 表结构及说明
|
||||
|
||||
### 3.1 参数配置表 - `sys_config`
|
||||
|
||||
用于存储全局系统配置参数。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-----------------|------------------------------------------|
|
||||
| config_id | int(11) | PRIMARY KEY<br/>AUTO_INCREMENT | 参数主键 |
|
||||
| config_name | varchar(100) | DEFAULT '' | 参数名称 |
|
||||
| config_key | varchar(100) | DEFAULT '' | 参数键名 |
|
||||
| config_value | varchar(500) | DEFAULT '' | 参数键值 |
|
||||
| config_type | char(1) | DEFAULT 'N' | 系统内置标识(Y表示内置, N表示非内置) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | NULLABLE | 备注 |
|
||||
|
||||
记录示例:初始化账号密码、开启用户注册功能、设置登录 IP 黑名单等。
|
||||
|
||||
---
|
||||
|
||||
### 3.2 部门表 - `sys_dept`
|
||||
|
||||
存储各部门信息,支持层级结构。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|--------------------------------|
|
||||
| dept_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 部门 ID |
|
||||
| parent_id | bigint(20) | DEFAULT 0 | 父部门 ID |
|
||||
| ancestors | varchar(50) | DEFAULT '' | 祖级列表 |
|
||||
| dept_name | varchar(30) | DEFAULT '' | 部门名称 |
|
||||
| order_num | int(11) | DEFAULT 0 | 显示顺序 |
|
||||
| leader | varchar(20) | 可空 | 负责人 |
|
||||
| phone | varchar(11) | 可空 | 联系电话 |
|
||||
| email | varchar(50) | 可空 | 邮箱 |
|
||||
| status | char(1) | DEFAULT '0' | 部门状态(0正常、1停用) |
|
||||
| del_flag | char(1) | DEFAULT '0' | 删除标志(0存在,2删除) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | NULLABLE | 备注 |
|
||||
|
||||
插入示例中创建了 ROOT 及其子部门。
|
||||
|
||||
---
|
||||
|
||||
### 3.3 设备表 - `sys_device`
|
||||
|
||||
存储客户平台中设备的各项信息。
|
||||
|
||||
| 列名 | 数据类型 | 约束 & 默认值 | 说明 |
|
||||
|------------------|---------------|-----------------------|--------------------------|
|
||||
| id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT | 主键 |
|
||||
| site_id | varchar(64) | NULLABLE | 站点 ID |
|
||||
| mac | varchar(64) | NULLABLE | MAC 地址 |
|
||||
| name | varchar(64) | NULLABLE | 设备名称 |
|
||||
| type | varchar(32) | NULLABLE | 类型 |
|
||||
| subtype | varchar(32) | NULLABLE | 子类型 |
|
||||
| device_series_type | varchar(32) | NULLABLE | 产品系列类型 |
|
||||
| model | varchar(64) | NULLABLE | 设备型号 |
|
||||
| ip | varchar(64) | NULLABLE | IP 地址 |
|
||||
| ipv6s | varchar(255) | NULLABLE | IPv6 地址(可能多个) |
|
||||
| uptime | varchar(64) | NULLABLE | 在线时长 |
|
||||
| status | int(11) | NULLABLE | 状态 |
|
||||
| last_seen | bigint(20) | NULLABLE | 最后在线时间 |
|
||||
| cpu_util | int(11) | NULLABLE | CPU 利用率 |
|
||||
| mem_util | int(11) | NULLABLE | 内存利用率 |
|
||||
| sn | varchar(64) | NULLABLE | 序列号 |
|
||||
| license_status | int(11) | NULLABLE | 授权状态 |
|
||||
| ... | ... | ... | 其它详细字段 |
|
||||
|
||||
表中记录了设备相关信息及状态等。
|
||||
|
||||
---
|
||||
|
||||
### 3.4 字典数据表 - `sys_dict_data`
|
||||
|
||||
存储系统使用的字典数据,包含常用的选项列表。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|-----------------------------|
|
||||
| dict_code | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 字典编码 |
|
||||
| dict_sort | int(11) | DEFAULT 0 | 字典排序 |
|
||||
| dict_label | varchar(100) | DEFAULT '' | 字典标签 |
|
||||
| dict_value | varchar(100) | DEFAULT '' | 字典键值 |
|
||||
| dict_type | varchar(100) | DEFAULT '' | 字典类型 |
|
||||
| css_class | varchar(100) | 可为空 | 样式属性(扩展) |
|
||||
| list_class | varchar(100) | 可为空 | 列表显示样式 |
|
||||
| is_default | char(1) | DEFAULT 'Y' | 是否默认(Y/N) |
|
||||
| status | char(1) | DEFAULT '0' | 状态(0正常 1停用) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | 可空 | 备注 |
|
||||
|
||||
示例记录包括用户性别、菜单显示与隐藏、系统开关、操作类型等配置项。
|
||||
|
||||
---
|
||||
|
||||
### 3.5 字典类型表 - `sys_dict_type`
|
||||
|
||||
存放字典分组及类型定义。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|-------------------------------|
|
||||
| dict_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 字典主键 |
|
||||
| dict_name | varchar(100) | DEFAULT '' | 字典名称 |
|
||||
| dict_type | varchar(100) | DEFAULT ''<br/>UNIQUE | 字典类型标识 |
|
||||
| status | char(1) | DEFAULT '0' | 状态(0正常 1停用) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | 可空 | 备注 |
|
||||
|
||||
示例记录包括“User Gender”、“Menu Status”、 “System Switch”等类型。
|
||||
|
||||
---
|
||||
|
||||
### 3.6 定时任务相关
|
||||
|
||||
#### 3.6.1 定时任务表 - `sys_job`
|
||||
|
||||
存储各定时任务的配置信息。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|------------------|----------------|-------------------------------|--------------------------------------------|
|
||||
| job_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 任务ID |
|
||||
| job_name | varchar(64) | NOT NULL, DEFAULT '' | 任务名称 |
|
||||
| job_group | varchar(64) | NOT NULL, DEFAULT 'DEFAULT' | 任务组名称 |
|
||||
| invoke_target | varchar(500) | NOT NULL | 调用目标字符串 |
|
||||
| cron_expression | varchar(255) | DEFAULT '' | CRON 表达式 |
|
||||
| misfire_policy | varchar(20) | DEFAULT '3' | 错误处理策略(1立即执行 2执行一次 3放弃执行) |
|
||||
| concurrent | char(1) | DEFAULT '1' | 是否并发执行(0允许、1禁止) |
|
||||
| status | char(1) | DEFAULT '0' | 任务状态(0正常 1暂停) |
|
||||
| ... | ... | ... | 其它字段,如创建与更新时间等 |
|
||||
|
||||
记录示例包括 Omada 同步任务及初始化任务。
|
||||
|
||||
#### 3.6.2 定时任务日志表 - `sys_job_log`
|
||||
|
||||
记录任务执行的日志信息。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|----------------|-------------------------------|-------------------------|
|
||||
| job_log_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 任务日志ID |
|
||||
| job_name | varchar(64) | NOT NULL | 任务名称 |
|
||||
| job_group | varchar(64) | NOT NULL | 任务组名称 |
|
||||
| invoke_target| varchar(500) | NOT NULL | 调用目标字符串 |
|
||||
| job_message | varchar(500) | 可空 | 日志信息 |
|
||||
| status | char(1) | DEFAULT '0' | 执行状态(0成功、1失败) |
|
||||
| exception_info | varchar(2000)| DEFAULT '' | 异常信息 |
|
||||
| create_time | datetime | NULLABLE | 执行时间 |
|
||||
|
||||
---
|
||||
|
||||
### 3.7 系统访问记录 - `sys_logininfor`
|
||||
|
||||
记录系统用户的登录访问情况。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|--------------------------------|
|
||||
| info_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 访问记录主键 |
|
||||
| user_name | varchar(50) | DEFAULT '' | 用户账号 |
|
||||
| ipaddr | varchar(128) | DEFAULT '' | 登录 IP 地址 |
|
||||
| status | char(1) | DEFAULT '0' | 登录状态(0成功,1失败) |
|
||||
| msg | varchar(255) | DEFAULT '' | 提示信息 |
|
||||
| access_time | datetime | NULLABLE | 访问时间 |
|
||||
|
||||
辅助索引包括 status 及 access_time。
|
||||
|
||||
---
|
||||
|
||||
### 3.8 菜单权限表 - `sys_menu`
|
||||
|
||||
存储系统菜单信息以及相应的访问权限标识。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|-------------------------------------------------------------|
|
||||
| menu_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 菜单 ID |
|
||||
| menu_name | varchar(50) | NOT NULL | 菜单名称,如 'menu.system.management' |
|
||||
| parent_id | bigint(20) | DEFAULT 0 | 父级菜单 ID |
|
||||
| order_num | int(11) | DEFAULT 0 | 显示顺序 |
|
||||
| path | varchar(200) | DEFAULT '' | 路由地址 |
|
||||
| component | varchar(255) | DEFAULT NULL | 组件路径 |
|
||||
| menu_type | char(1) | | 类型(M:目录, C:菜单, F:按钮) |
|
||||
| visible | char(1) | DEFAULT '0' | 菜单显示状态(0显示,1隐藏) |
|
||||
| status | char(1) | DEFAULT '0' | 菜单状态(0正常,1停用) |
|
||||
| perms | varchar(100) | DEFAULT NULL | 权限标识 |
|
||||
| icon | varchar(100) | DEFAULT '#' | 菜单图标 |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | DEFAULT '' | 备注 |
|
||||
| name | varchar(30) | DEFAULT NULL | 菜单 key,作为前端标识使用 |
|
||||
|
||||
记录插入部分展示了系统管理、工具、账户管理、角色管理、菜单管理、部门管理、岗位管理、字典管理以及多项操作权限的菜单。
|
||||
|
||||
---
|
||||
|
||||
### 3.9 操作日志记录 - `sys_oper_log`
|
||||
|
||||
记录用户在系统中的各项操作,用于安全审计。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|----------------------------------------------------|
|
||||
| oper_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 日志主键 |
|
||||
| title | varchar(50) | DEFAULT '' | 模块标题 |
|
||||
| business_type| int(11) | DEFAULT 0 | 业务类型(0其它、1新增、2修改、3删除) |
|
||||
| method | varchar(100) | DEFAULT '' | 方法名称 |
|
||||
| request_method | varchar(10) | DEFAULT '' | 请求方式 |
|
||||
| oper_name | varchar(50) | DEFAULT '' | 操作人员 |
|
||||
| dept_name | varchar(50) | DEFAULT '' | 部门名称 |
|
||||
| oper_url | varchar(255) | DEFAULT '' | 请求 URL |
|
||||
| oper_ip | varchar(128) | DEFAULT '' | IP 地址 |
|
||||
| oper_location| varchar(255) | DEFAULT '' | 操作地点 |
|
||||
| oper_param | varchar(2000) | DEFAULT '' | 请求参数 |
|
||||
| json_result | varchar(2000) | DEFAULT '' | 返回结果 |
|
||||
| status | int(11) | DEFAULT 0 | 操作状态(0正常、1异常) |
|
||||
| error_msg | varchar(2000) | DEFAULT '' | 错误消息 |
|
||||
| oper_time | datetime | NULLABLE | 操作时间 |
|
||||
| cost_time | bigint(20) | DEFAULT 0 | 消耗时间(毫秒) |
|
||||
|
||||
附带建立了 business_type、status 及 oper_time 的索引。
|
||||
|
||||
---
|
||||
|
||||
### 3.10 岗位信息表 - `sys_post`
|
||||
|
||||
记录系统中定义的岗位信息。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|---------------------------|
|
||||
| post_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 岗位 ID |
|
||||
| post_code | varchar(64) | NOT NULL | 岗位编码 |
|
||||
| post_name | varchar(50) | NOT NULL | 岗位名称 |
|
||||
| post_sort | int(11) | NOT NULL | 显示顺序 |
|
||||
| status | char(1) | NOT NULL | 状态(0正常、1停用) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | DEFAULT NULL | 备注 |
|
||||
|
||||
示例记录定义了 administrator、manager、hr 及 user 岗位。
|
||||
|
||||
---
|
||||
|
||||
### 3.11 用户信息表 - `sys_user`
|
||||
|
||||
存储用户账号及相关信息,实现系统登录和管理。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|--------------|---------------|-------------------------------|----------------------------------------|
|
||||
| user_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 用户 ID |
|
||||
| dept_id | bigint(20) | NULLABLE | 所属部门 ID |
|
||||
| user_name | varchar(30) | NOT NULL | 用户账号 |
|
||||
| nick_name | varchar(30) | NOT NULL | 用户昵称 |
|
||||
| user_type | varchar(2) | DEFAULT '00' | 用户类型(例如:00系统用户) |
|
||||
| email | varchar(50) | DEFAULT '' | 用户邮箱 |
|
||||
| phonenumber | varchar(11) | DEFAULT '' | 手机号码 |
|
||||
| sex | char(1) | DEFAULT '0' | 性别(0男、1女、2未知) |
|
||||
| avatar | varchar(100) | DEFAULT '' | 头像地址 |
|
||||
| password | varchar(100) | DEFAULT '' | 密码(通常加密存储,如 bcrypt 结果) |
|
||||
| status | char(1) | DEFAULT '0' | 帐号状态(0正常、1停用) |
|
||||
| del_flag | char(1) | DEFAULT '0' | 删除标志(0存在、2删除) |
|
||||
| login_ip | varchar(128) | DEFAULT '' | 最后登录IP |
|
||||
| login_date | datetime | NULLABLE | 最后登录时间 |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | DEFAULT NULL | 备注 |
|
||||
|
||||
系统默认记录了超级管理员(super)、管理员(admin)等用户信息。
|
||||
|
||||
---
|
||||
|
||||
### 3.12 用户与岗位关联表 - `sys_user_post`
|
||||
|
||||
用于关联用户与其所属岗位。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|----------|------------|-------------------------------|-------------------------|
|
||||
| user_id | bigint(20) | PRIMARY KEY (联合主键) | 用户 ID |
|
||||
| post_id | bigint(20) | PRIMARY KEY (联合主键) | 岗位 ID |
|
||||
|
||||
---
|
||||
|
||||
### 3.13 用户与角色关联表 - `sys_user_role`
|
||||
|
||||
用于关联用户与分配的角色,实现权限管理。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|----------|------------|-------------------------------|-------------------------|
|
||||
| user_id | bigint(20) | PRIMARY KEY (联合主键) | 用户 ID |
|
||||
| role_id | bigint(20) | PRIMARY KEY (联合主键) | 角色 ID |
|
||||
|
||||
插入示例中,用户 1 分配了角色 1(Supervisor),用户 2 分配了角色 2(Administrator)。
|
||||
|
||||
---
|
||||
|
||||
### 3.14 角色信息表 - `sys_role`
|
||||
|
||||
定义系统内各角色及其基本属性。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|-------------|---------------|-------------------------------|--------------------------------------|
|
||||
| role_id | bigint(20) | PRIMARY KEY<br/>AUTO_INCREMENT| 角色 ID |
|
||||
| role_name | varchar(30) | NOT NULL | 角色名称 |
|
||||
| role_key | varchar(100) | NOT NULL | 角色权限字符串(作为 RBAC 标识) |
|
||||
| role_sort | int(11) | 可空 | 显示顺序 |
|
||||
| data_scope | char(1) | DEFAULT '1' | 数据权限范围(例如全部、自定、部门等) |
|
||||
| menu_check_strictly | tinyint(1)| DEFAULT 1 | 菜单树选择时是否关联显示 |
|
||||
| dept_check_strictly | tinyint(1)| DEFAULT 1 | 部门树选择时是否关联显示 |
|
||||
| status | char(1) | NOT NULL | 角色状态(0正常、1停用) |
|
||||
| del_flag | char(1) | DEFAULT '0' | 删除标志(0存在、2删除) |
|
||||
| create_by | varchar(64) | DEFAULT '' | 创建者 |
|
||||
| create_time | datetime | NULLABLE | 创建时间 |
|
||||
| update_by | varchar(64) | DEFAULT '' | 更新者 |
|
||||
| update_time | datetime | NULLABLE | 更新时间 |
|
||||
| remark | varchar(500) | NULLABLE | 备注 |
|
||||
|
||||
示例中定义了 Supervisor、Administrator 及 User 角色。
|
||||
|
||||
---
|
||||
|
||||
### 3.15 角色与部门关联表 - `sys_role_dept`
|
||||
|
||||
用于关联角色和部门,控制数据权限。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|----------|------------|-------------------------------|-------------------------|
|
||||
| role_id | bigint(20) | PRIMARY KEY (联合主键) | 角色 ID |
|
||||
| dept_id | bigint(20) | PRIMARY KEY (联合主键) | 部门 ID |
|
||||
|
||||
---
|
||||
|
||||
### 3.16 角色与菜单关联表 - `sys_role_menu`
|
||||
|
||||
用于关联角色与菜单,实现系统权限的控制。
|
||||
|
||||
| 列名 | 数据类型 | 约束 | 说明 |
|
||||
|----------|------------|-------------------------------|-------------------------|
|
||||
| role_id | bigint(20) | PRIMARY KEY (联合主键) | 角色 ID |
|
||||
| menu_id | bigint(20) | PRIMARY KEY (联合主键) | 菜单 ID |
|
||||
|
||||
示例中,角色 2(Administrator)关联了大量菜单权限。
|
||||
|
||||
---
|
||||
|
||||
## 4. 关系与数据流
|
||||
|
||||
- **用户-角色**:通过 `sys_user_role` 表实现,一个用户可以拥有多个角色。
|
||||
- **角色-菜单**:通过 `sys_role_menu` 表关联角色与菜单,实现权限分配。
|
||||
- **用户-岗位**:通过 `sys_user_post` 实现,方便对岗位信息管理。
|
||||
- **角色-部门**:通过 `sys_role_dept` 表实现角色对部门数据的访问控制。
|
||||
- **数据字典**:`sys_dict_type` 定义字典类型,`sys_dict_data` 存储各字典项,系统中各模块均可引用以保证数据一致性。
|
||||
|
||||
---
|
||||
|
||||
## 5. 索引及性能优化
|
||||
|
||||
各表的主键和部分常用查询字段(如 `status`、`access_time`、`user_name` 等)均建立索引,确保数据查询速度满足系统需求。
|
||||
|
||||
---
|
||||
|
||||
## 6. 其他说明
|
||||
|
||||
- 表中的日期时间字段(如 `create_time`、`update_time` 等)建议统一使用 UTC+0 或转换为本地时区。
|
||||
- 部分字段如密码应进行加密存储。
|
||||
- 删除标志和状态字段为业务逻辑提供支持,后续可以根据需要进行索引和分区优化。
|
||||
|
||||
---
|
||||
|
||||
以上文档基于 SQL 脚本提取,适用于当前项目数据库设计说明。你可以进一步利用 ER 图工具生成图形化数据模型图,并补充业务流程说明。
|
||||
BIN
docs/99-reference/db.pdf
Normal file
BIN
docs/99-reference/db.pdf
Normal file
Binary file not shown.
26
docs/99-reference/架构模型.md
Normal file
26
docs/99-reference/架构模型.md
Normal file
@@ -0,0 +1,26 @@
|
||||
后端(Java + Spring Boot)
|
||||
1. Spring Boot:使用Spring Boot框架来简化配置和开发。Spring Boot提供了许多开箱即用的功能,如依赖注入、数据访问、事务管理等。
|
||||
2. Spring Data JPA:使用Spring Data JPA来简化数据库操作。它提供了对MySQL数据库的强大支持,并且可以通过简单的接口定义来实现复杂的查询。
|
||||
3. 安全性:使用Spring Security来实现用户认证和授权。可以结合JWT(JSON Web Token)来管理用户会话。
|
||||
4. RESTful API:设计和实现RESTful API,提供前端所需的数据接口。使用Spring MVC来处理HTTP请求和响应。
|
||||
|
||||
前端(Vue.js)
|
||||
1. 组件化开发:使用Vue.js的组件化开发模式,将页面拆分为多个可复用的组件,提升代码的可维护性和可读性。
|
||||
2. 状态管理:使用Vuex来管理应用的全局状态,确保不同组件之间的数据同步。
|
||||
3. 路由管理:使用Vue Router来管理前端路由,实现单页面应用(SPA)的导航。
|
||||
4. API调用:使用Axios库来与后端的RESTful API进行通信,处理数据的获取和提交。
|
||||
|
||||
数据库(MySQL)
|
||||
1. 数据库设计:根据业务需求设计合理的数据库表结构,确保数据的完整性和一致性。常见的表包括用户表、角色表、权限表、计费记录表等。
|
||||
2. 索引优化:为常用的查询字段添加索引,提高查询性能。
|
||||
3. 备份和恢复:定期备份数据库,确保数据的安全性和可恢复性。
|
||||
|
||||
示例架构图
|
||||
+---------------------+ +---------------------+ +---------------------+
|
||||
| Presentation | | Business Logic | | Data Access |
|
||||
| Layer | | Layer | | Layer |
|
||||
|---------------------| |---------------------| |---------------------|
|
||||
| - Vue.js | | - Spring Boot | | - MySQL |
|
||||
| - HTML/CSS/JS | | - Spring Data JPA | | - ORM (Hibernate) |
|
||||
| - Vue Router | | - Spring Security | | - SQL |
|
||||
+---------------------+ +---------------------+ +---------------------+
|
||||
36
docs/99-reference/架构选型比较.md
Normal file
36
docs/99-reference/架构选型比较.md
Normal file
@@ -0,0 +1,36 @@
|
||||
开发语言
|
||||
|
||||
1. Java:适用于大型企业级应用,具有丰富的生态系统和强大的社区支持。
|
||||
2. Python:简洁易学,适合快速开发和原型设计,拥有丰富的库和框架。
|
||||
3. Golang:高性能,适合构建高并发和高可用性的系统。
|
||||
4. C++:适用于需要高性能和低级别系统控制的应用。
|
||||
|
||||
系统架构
|
||||
1.
|
||||
三层架构:
|
||||
• 表示层(Presentation Layer):负责用户界面的展示和用户交互。可以使用前端框架如React、Vue.js等。
|
||||
|
||||
• 业务逻辑层(Business Logic Layer):处理具体的业务逻辑。可以使用Spring Boot(Java)、Django(Python)等框架。
|
||||
|
||||
• 数据访问层(Data Access Layer):负责与数据库的交互。常用的数据库包括MySQL、PostgreSQL等。
|
||||
|
||||
2.
|
||||
微服务架构:
|
||||
• 将系统拆分为多个独立的服务,每个服务负责特定的功能,如用户管理服务、计费服务等。
|
||||
|
||||
• 使用Docker和Kubernetes进行容器化和编排,确保系统的可扩展性和高可用性。
|
||||
|
||||
3.
|
||||
RBAC(基于角色的访问控制):
|
||||
• 实现用户权限管理时,采用RBAC模型,通过角色来管理用户权限。
|
||||
|
||||
• 用户-角色-权限的关系可以通过数据库表进行管理,确保权限的灵活配置和扩展。
|
||||
|
||||
示例架构图
|
||||
+---------------------+ +---------------------+ +---------------------+
|
||||
| Presentation | | Business Logic | | Data Access |
|
||||
| Layer | | Layer | | Layer |
|
||||
|---------------------| |---------------------| |---------------------|
|
||||
| - React/Vue.js | | - Spring Boot | | - MySQL/PostgreSQL |
|
||||
| - HTML/CSS/JS | | - Django | | - ORM (Hibernate) |
|
||||
+---------------------+ +---------------------+ +---------------------+
|
||||
Reference in New Issue
Block a user