21 KiB
21 KiB
数据字典
表名:Users
表说明:储存用户个人信息
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| Username | VARCHAR(50) | 是 | / | / | 唯一 | 唯一用户名 | admin |
| Avatar | VARCHAR(255) | 否 | / | / | / | 用户头像 | https://baidu.com/1.png |
| Password | VARCHAR(50) | 是 | / | / | / | 用户密码 | 123456 |
| NickName | VARCHAR(50) | 是 | / | / | / | 用户昵称 | / |
| OlineStatus | TINYINT | 是 | 0 | / | / | 用户在线状态 0(默认):不在线 1:在线 |
0 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 账户创建时间 | 2025/9/29 |
| Updated | DATETIME | 否 | / | / | / | 账户修改时间 | 2024/9/29 |
| Status | TINYINT | 是 | 1 | / | / | 账户状态 (0:未激活,1:正常,2:封禁) |
1 |
| IsDeleted | TINYINT | 是 | 0 | / | / | 软删除标识 0:账号正常 1:账号已删除 |
0 |
表名:Friends
表说明:好友关系映射
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| UserId | INT | 是 | / | 外键(Users.Id) | 索引 | 用户ID | 1 |
| FriendId | INT | 是 | / | 外键(Users.Id) | 索引 | 用户2ID | 2 |
| RemarkName | VARCHAR(20) | 是 | / | / | / | 好友备注 | 小王 |
| Avatar | VARCHAR(255) | 否 | / | / | / | 好友头像 | https://baidu.com/1.png |
| Status | TINYINT | 是 | 0 | / | / | 当前好友关系状态 (0:待通过,1:已添加,2:已拒绝,3:已拉黑) |
0 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 好友关系创建时间 | 2025/9/29 |
表名:Groups
表说明:群聊
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| Name | VARCHAT(20) | 是 | / | / | / | 群聊名称 | 测试群聊1 |
| GroupMaster | INT | 是 | / | 外键(Users.Id) | 索引 | 群主 | 1 |
| Auhority | TINYINT | 是 | 0 | / | / | 群权限 (0:需管理员同意,1:任意人可加群,2:不允许任何人加入) |
0 |
| AllMembersBanned | TINYINT | 是 | 0 | / | / | 全员禁言(0允许发言,2全员禁言) | 0 |
| Status | TINYINT | 是 | 1 | / | / | 群聊状态 (1:正常,2:封禁) |
1 |
| Announcement | TEXT | 否 | null | / | / | 群公告 | 这是一条测试群公告 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 群聊创建时间 | 2025/9/29 |
表名:GroupMember
表说明:群成员
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| UserId | INT | 是 | / | 外键(Users.Id) | 索引 | 用户编号 | 1 |
| GroupId | INT | 是 | / | 外键(Groups.Id) | 索引 | 群聊编号 | 1 |
| Role | TINYINT | 是 | 0 | / | / | 成员角色(0:普通成员,1:管理员,2:群主) | 1 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 加入群聊时间 | 1970/1/1 |
表名:GroupInvite
表说明:群聊邀请
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| GroupId | INT | 是 | / | 外键(Groups.Id) | 索引 | 群聊编号 | 1 |
| InvitedUser | INT | 是 | / | 外键(Users.Id) | 索引 | 被邀请用户 | 1 |
| InviteUser | INT | 是 | / | 外键(Users.Id) | 索引 | 邀请用户 | 1 |
| State | TINYINT | 是 | 0 | / | / | 当前状态(0:待被邀请人同意 1:被邀请人已同意) |
1 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | 1970/1/1 |
表名:GroupRequest
表说明:群聊入群申请
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| GroupId | INT | 是 | / | 外键(Groups.Id) | 索引 | 群聊编号 | 1 |
| UserId | INT | 是 | / | 外键(Users.Id) | 索引 | 申请人 | 1 |
| State | TINYINT | 是 | 0 | / | / | 申请状态(0:待管理员同意,1:已拒绝,2:已同意) | 1 |
| Description | TEXT | 是 | xxx申请加入群聊 | / | / | 入群附言 | / |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | / |
表名:Messages
表说明:用户消息
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| ChatType | TINYINT | 是 | 0 | / | / | 聊天类型 (0:私聊,1:群聊) |
0 |
| MsgType | TINYINT | 是 | 0 | / | / | 消息类型 (0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天) |
0 |
| Content | TEXT | 是 | / | / | / | 消息内容 | / |
| Sender | INT | 是 | / | 外键(Users.Id) | 索引 | 发送者 | / |
| Recipient | INT | 是 | / | / | / | 接收者(私聊为用户ID,群聊为群聊ID) | / |
| State | TINYINT | 是 | 0 | / | / | 消息状态(0:已发送,1:已撤回) | / |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 发送时间 | 、 |
表名:Files
表说明:文件
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| Name | VARCHAR(50) | 是 | / | / | / | 文件名 | 测试文件.txt |
| URL | VARCHAR(100) | 是 | / | / | / | 文件储存URL | https://baidu.com/1.txt |
| Size | INT | 是 | / | / | / | 文件大小(单位:KB) | 1024 |
| Type | VARCHAT(10) | 是 | / | / | / | 文件类型 | txt |
| MessageId | INT | 是 | / | 外键(Messages.Id) | 索引 | 关联消息ID | 1 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | 2025/9/29 |
表名:Notifications
表说明:系统通知消息
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| UserId | INT | 否 | / | 外键(Users.Id) | 索引 | 接收人(为空为全体通知) | 1 |
| NType | TINYINT | 是 | 0 | / | / | 通知类型(0:文本) | 0 |
| Title | NVARCHAR(20) | 是 | / | / | / | 通知标题 | 1 |
| Content | TEXT | 是 | / | / | / | 通知内容 | 1 |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | / |
表名:Conversations
表说明:用户会话
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| UserId | INT | 是 | / | 外键(Users.Id) | 索引 | 用户 | 1 |
| TargetId | INT | 是 | / | / | / | 对方ID(群聊为群聊ID,单聊为单聊ID) | 1 |
| MsgType | INT | 是 | / | / | / | 消息类型(同Messages.MsgType) | / |
| lastMessageId | INT | 是 | / | 外键(Messages.Id) | 索引 | 最后一条消息ID | 1 |
| unreadCount | INT | 是 | / | / | / | 未读消息数 | / |
表名:FriendRequest
表说明:好友申请
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| RequestUser | INT | 是 | / | 外键(Users.Id) | 索引 | 申请人 | / |
| ResponseUser | INT | 是 | / | 外键(Users.Id) | 索引 | 被申请人 | / |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 申请时间 | / |
| Description | TEXT | 否 | xxx申请添加你为好友 | / | / | 申请附言 | / |
| State | TINYINT | 是 | 0 | / | / | 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) | / |
表名:Devices
表说明:用户设备
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| UserId | INT | 是 | / | 外键(Users.Id) | 索引 | 设备所属用户 | / |
| DType | TINYINT | 是 | / | / | / | 设备类型( 0:Android,1:Ios,2:PC,3:Pad,4:未知) |
0 |
| LastLogin | DATETIME | 是 | 1970/1/1 | / | / | 最后一次登录 | / |
表名:Login_Log
表说明:登录日志
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| DType | TINYINT | 是 | / | / | / | 设备类型(通Devices/DType) | / |
| Logined | DATETIME | 是 | 1970/1/1 | / | / | 登录时间 | / |
| UserId | INT | 是 | / | 外键(Users.Id) | / | 登录用户 | / |
| State | TINYINT | 是 | 0 | / | / | 登录状态(0:登陆成功,1:未验证,2:已被拒绝) | / |
表名:Admins
表说明:系统管理员
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| Username | VARCHAR(50) | 是 | / | / | / | 用户名 | / |
| Password | VARCHAR(50) | 是 | / | / | / | 密码 | / |
| RoleId | INT | 是 | / | 外键(Roles.Id) | 索引 | 角色 | / |
| State | TINYINT | 是 | 0 | / | / | 状态(0:正常,2:封禁) | / |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | / |
| Updated | DATETIME | 是 | 1970/1/1 | / | / | 更新时间 | / |
表名:Roles
表说明:角色
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| Name | VARCHAR(20) | 是 | / | / | / | 角色名称 | / |
| Description | TEXT | 是 | 空字符串 | / | / | 角色描述 | / |
| Created | DATETIME | 是 | 1970/1/1 | / | / | 创建时间 | / |
表名:Permissions
表说明:权限
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| PType | INT | 是 | 0 | / | / | 权限类型(0:增,1:删,2:改,3:查) | / |
| Name | VARCHAR(50) | 是 | / | / | / | 权限名称 | / |
| Code | INT | 是 | / | / | / | 权限编码 | / |
| Created | DATETIME | 是 | / | / | / | 创建时间 | / |
表名:PermissionARole
表说明:权限角色关联
| 字段名 | 数据类型 | 是否必填 | 默认值 | 主/外键 | 约束/索引 | 字段说明 | 示例值 |
|---|---|---|---|---|---|---|---|
| Id | INT | 是 | / | 主键 | 索引 | 主键自增 | 1 |
| RoleId | INT | 是 | / | 外键(Roles.Id) | 索引 | 角色 | / |
| PermissionId | INT | 是 | / | 外键(Permissions.Id) | 索引 | 权限 | / |