Files
EchoChat/backend/go-service/app/constants/im.go
bujinyuan 6ab04fb902 feat(im): Task 0 - IM 模型定义 + 数据库表迁移 + 常量定义
- 新增 3 个 GORM 模型:Conversation / ConversationMember / Message
- 新增 IM 常量:会话类型、消息类型、消息状态、撤回时限
- main.go 添加 IM 表 AutoMigrate
- init.sql 追加 IM 模块 DDL(含索引和全文搜索 GIN 索引)

Made-with: Cursor
2026-03-03 10:41:42 +08:00

49 lines
1.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package constants
// 会话类型
const (
ConversationTypePrivate = 1 // 单聊
ConversationTypeGroup = 2 // 群聊Phase 2c 预留)
)
// ConversationTypeMap 会话类型中文映射
var ConversationTypeMap = map[int]string{
ConversationTypePrivate: "单聊",
ConversationTypeGroup: "群聊",
}
// 消息类型
const (
MessageTypeText = 1 // 文本消息
MessageTypeImage = 2 // 图片消息(预留)
MessageTypeVoice = 3 // 语音消息(预留)
MessageTypeVideo = 4 // 视频消息(预留)
MessageTypeFile = 5 // 文件消息(预留)
)
// MessageTypeMap 消息类型中文映射
var MessageTypeMap = map[int]string{
MessageTypeText: "文本",
MessageTypeImage: "图片",
MessageTypeVoice: "语音",
MessageTypeVideo: "视频",
MessageTypeFile: "文件",
}
// 消息状态
const (
MessageStatusNormal = 1 // 正常
MessageStatusRecalled = 2 // 已撤回
MessageStatusDeleted = 3 // 已删除
)
// MessageStatusMap 消息状态中文映射
var MessageStatusMap = map[int]string{
MessageStatusNormal: "正常",
MessageStatusRecalled: "已撤回",
MessageStatusDeleted: "已删除",
}
// MessageRecallTimeLimit 消息撤回时限(秒),超过此时间不允许撤回
const MessageRecallTimeLimit = 2 * 60