# 好友
## 好友相关功能
```
/**
* 申请添加好友
* @param userId 用户id
* @param userName 用户姓名
* @param desc 申请理由
* @param callBack
*/
inviteFriend(String userId, String userName, String desc, QDResultCallBack callBack)
/**
* 删除好友
* @param userId 好友id
*/
deleteFriend(String userId, QDResultCallBack callBack)
/**
* 回复好友申请
* @param user 好友对象
* @param reply 同意或拒绝申请(1:同意,2:拒绝)
* @param callBack
*/
public void replyInvite(QDUser user, int reply, QDResultCallBack callBack)
```
## 好友相关对象
好友对象QDFriend
```
String id; //好友id
String name; //姓名
String icon; //头像
String note; //签名
String nameSP; //姓名简拼
String nameAP; //姓名全拼
String nickName; //昵称
int isTop; //是否置顶(为实现)
String mobile; //手机号
```
好友申请对象QDFriendInvite
```
//同意或拒绝申请
REPLY_NORMAL //普通状态
REPLY_AGREE //申请已同意
REPLY_REFUSE //申请已拒绝
String guid; //邀请信息的唯一值
String userId; //邀请者的用户id
String userName; //邀请者的用户姓名
long time; //邀请信息的创建时间(毫秒)
String desc; //描述
int isRead; //是否已读
int reply; //回复状态
```
## 好友相关数据库操作
```
/**
* 插入一组信息
* @param friendList
*/
QDFiendHelper.insertFriendList(List<QDFriend> friendList)
/**
* 插入一个信息
* @param friend
*/
QDFiendHelper.insertFriend(QDFriend friend)
/**
* 删除好友表
*/
QDFiendHelper.deleteTable()
/**
* 判断是否是好友
* @param id 用户id
* @return boolean
*/
QDFiendHelper.isFriend(String id)
/**
* 删除好友
* @param id 好友id
*/
QDFiendHelper.deleteFriend(String id)
/**
* 获取所有好友
* @return List<QDFriend>
*/
QDFiendHelper.getAllFriend()
```
```
/**
* 插入一个好友邀请信息
* @param invite
*/
QDFriendInviteHelper.insertInvite(QDFriendInvite invite)
/**
* 插入一组好友邀请信息
* @param inviteList
*/
QDFriendInviteHelper.insertInviteList(List<QDFriendInvite> inviteList)
/**
* 获取所有邀请信息
* @return
*/
QDFriendInviteHelper.loadAll()
/**
* 更新好友信息
* @param invite
*/
QDFriendInviteHelper.updateInvite(QDFriendInvite invite)
/**
* 根据用户id获取申请信息
* @param id 用户id
* @return QDFriendInvite
*/
QDFriendInviteHelper.getInviteById(String id)
/**
* 根据guid获取好友信息
* @param guid 申请唯一标识
* @return QDFriendInvite
*/
QDFriendInviteHelper.getInviteByGuid(String guid)
/**
* 获取未读的邀请信息数量
* @return int
*/
QDFriendInviteHelper.getUnreadCount()
/**
* 设置所有未读的已读
*/
QDFriendInviteHelper.setAllRead()
/**
* 设置申请回复状态
* @param userId 用户id
* @param reply 回复状态
*/
QDFriendInviteHelper.setInviteReply(String userId, int reply)
/**
* 根据用户id删除申请信息
* @param userId 用户id
*/
QDFriendInviteHelper.deleteInvite(String userId)
```