我们简单实现一个添加好友和不添加好友(相当于拉黑)的思路
准备一张好友表 添加好友是针对与用户表中存在的数据
好友表中包含userid,friendid,islike islike字段是好友的标识,这里0表示单向好友,1表示双向好友
添加好友需要的参数为当前用户的id和要添加的好友的id,当前用户的id可以自己获取
假设controller层的添加好友的处理器为addfriend
addfriend( String friendid,String type) type表示是添加好友还是拉黑好友
service层需要进行三步操作
1,判读是否已经是好友,不能重复添加,这里可以查询数据和可以查询记录数
2,不过不是好友,直接添加好友,把好友表中的 userid到friendid中的type设为0,表示单向添加
3,判读firendid到userid是否有数据,如果有说明互相喜欢,把type设为1,表示双向好友
dao层
添加
根据userid和friendid查找 findByUserIdAndFriendId(String userid,String friendid)
根据userid和friendid更新type updateIsLike(String islike,String userid,String friendid) islike可以根据实际情况写死,因为我们默认为单向好友
如果是相互喜欢,我们需要通过userid到friendid进行更新islike的值,也要通过friendid到userid进行更新islike的值