求个站内信的设计思路,要求类似于 微信,例如:
A给B发站内信,会创建一个对话,点开对话,就是A和B的聊天记录
难点:
1,A删除了聊天记录中的一条,但B的聊天记录不变
2,A删除了对话,但B的对话不变
求mysql表设计思路,多谢!!!
回复讨论(解决方案)
userid 用户id
conten 会话内容
del 删除标志 :1 删除
userid 用户id
conten 会话内容
del 删除标志 :1 删除
亲,能说详细点么?谢谢
表结构。
id, type, own_id, user_id, content, status, addtime, lastmodify
type: 1表示发出的 2表示收到的
own_id:表示自己的id
user_id:表示对方的id
content: 内容
status: 1显示 0删除
addtime:发布时间
lastmodify:最后修改时间(如没可以不用)
当id=1的人发信息给id=2的人。发送后,表记录如下
id type own_id user_id content addtime lastmodify
1 1 1 2 内容 发布时间 修改时间
2 2 2 1 内容 发布时间 修改时间
第一条记录表示 id=1发了一条信息给id=2
第二条记录表示id=2 收到id=1的一条信息。
当id=1的删了信息,对id=2的信息列表也不会影响,反之一样。
所以要看自己与某人发出与收到的记录。
select * from table where own_id=xxx and user_id=xxx and status=1就可以了。
所以要看自己与某人发出与收到的记录。
select * from table where own_id=xxx and user_id=xxx and status=1就可以了。
嗯,我已经实现了,用了4个表。