聊天資料表設計

h6play 發表於 2020-12-04
# 使用者表
ma_im_user {
  id,           // ID 
  re_id,        // 關聯ID
  re_ty,        // 關聯型別 manage=管理員 user=使用者
  avatar,       // 頭像
  nick_name,    // 暱稱
  sex,          // 性別
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 使用者好友
ma_im_user_friend {
  id,           // ID
  user_id,      // 使用者ID
  friend_id,    // 好友ID
  status,       // 狀態 0=刪除 1=正常
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 群組
ma_im_room {
  id,           // ID
  sn,           // 編號
  name,         // 名稱
  logo,         // 圖示
  desc,         // 描述
  number,       // 成員數(冗餘欄位)
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 使用者群組
ma_im_user_room {
  id,           // ID
  user_id,      // 使用者ID
  room_id,      // 群組ID
  status,       // 狀態 0=刪除 1=正常
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 聊天室
ma_im_chat {
  id,           // ID
  type,         // 型別 0=好友 1=群組
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 聊天室訊息
ma_im_chat_msg {
  id,           // ID
  user_id,      // 使用者ID
  chat_id,      // 聊天室ID
  type,         // 型別 0=訊息 1=圖片 2=圖文 4=卡片
  content,      // 訊息內容 JSON
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}

# 好友聊天室(記錄兩條|好友|自己|訪問群)
ma_im_user_chat {
  id,           // ID
  user_id,      // 使用者ID
  friend_id,    // 好友ID
  stranger_id,  // 陌生人ID
  room_id,      // 群組ID
  chat_id,      // 聊天室ID
  type,         // 型別 0=陌生人 1=好友 2=聊天室
  unread,       // 未讀訊息數量
  status,       // 狀態 0=刪除 1=正常
  program_id,   // 應用ID
  updated_at,   // 更新時間
  created_at,   // 建立時間
}
本作品採用《CC 協議》,轉載必須註明作者和本文連結