diff --git a/yunke-server/app/db/models.py b/yunke-server/app/db/models.py index a72e587..8d5a249 100644 --- a/yunke-server/app/db/models.py +++ b/yunke-server/app/db/models.py @@ -269,12 +269,12 @@ class ChatGroup(Base): __tablename__ = "chat_group" + # 复合主键(channel, owner, room):同一群在每个员工名下各一行(2026-08-24) + # 原按 room_id 单列 PK 会把多员工同群去重(云客张士蓓 64 群 vs 我们 42) room_id: Mapped[str] = mapped_column(String(128), primary_key=True) - channel: Mapped[str] = mapped_column(String(16), nullable=False) + channel: Mapped[str] = mapped_column(String(16), primary_key=True) + owner_account_id: Mapped[str] = mapped_column(String(128), primary_key=True) room_name: Mapped[str | None] = mapped_column(String(255), nullable=True) - owner_account_id: Mapped[str | None] = mapped_column( - String(128), nullable=True - ) # wechatId / uid of owning staff account owner_account_nickname: Mapped[str | None] = mapped_column( String(255), nullable=True )