# mini-feishu **Repository Path**: wzh11222/mini-feishu ## Basic Information - **Project Name**: mini-feishu - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-05-11 - **Last Updated**: 2025-05-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 获取用户信息 - 用户表 ```Kotlin data class User( @BsonId val id: ObjectId = ObjectId(), // 用户唯一标识 //唯一索引 val username: String, // 用户名(唯一) // 加密后的密码 val profilePicture: String, // 头像URL ) ``` - 消息表 ```kotlin data class Message( @BsonId val id: ObjectId = ObjectId(), // 消息唯一标识 val conversationId: ObjectId, // 所属会话ID(私聊/群聊) val username: String, // 发送者ID val profilePicture: String, // 发送者头像URL(冗余存储) val content: String, // 消息内容(文本或文件URL) val type: Int = 0, // 消息类型:0/1/2/3——文本/图片/视频/at val fileMeta: FileMeta? = null, // 文件元数据(图片/视频专用) val status: MessageStatus = MessageStatus.SENT, // 消息状态:SENT/DELIVERED/READ val timestamp: Long = System.currentTimeMillis() // 消息发送时间(Unix时间戳,毫秒) ) ``` 实现接口 - Post: /login?Username= —— 用户名登录,如果不在用户表中,增加到用户表中;如果在就查询信息:返回添加或者查询后的信息 - WebSocket: ws/chat-socket - sendMessage: - TODO:发送图片和视频功能需要看客户端如何写 - @人的功能? - Get: /getAllMessages?conversationId = 在进入聊天后需要给出信息 - Get: /getAllMembers 在@之后需要给出