This commit is contained in:
殷勇 2023-08-16 14:28:49 +08:00
parent 971855d04b
commit 20ab0cddd5
2 changed files with 31 additions and 6 deletions

View File

@ -36,7 +36,11 @@ func (fm *FriendsMgr) init() {
mt.Table.GameDb.GetById(0).GetPasswd(), mt.Table.GameDb.GetById(0).GetPasswd(),
mt.Table.GameDb.GetById(0).GetDatabase(), mt.Table.GameDb.GetById(0).GetDatabase(),
) )
gameDBStore.Open() err := gameDBStore.Open()
if err != nil {
f5.GetSysLog().Info("mysql error:%s\n", err)
return
}
fm.loadUsersFromDB(gameDBStore) fm.loadUsersFromDB(gameDBStore)
// init friendDB // init friendDB
@ -47,7 +51,12 @@ func (fm *FriendsMgr) init() {
mt.Table.FriendDb.GetById(0).GetPasswd(), mt.Table.FriendDb.GetById(0).GetPasswd(),
mt.Table.FriendDb.GetById(0).GetDatabase(), mt.Table.FriendDb.GetById(0).GetDatabase(),
) )
friendDBStore.Open() err = friendDBStore.Open()
if err != nil {
f5.GetSysLog().Info("mysql error:%s\n", err)
return
}
// 加载好友关系表 列表 // 加载好友关系表 列表
fm.loadFriendshipsFromDB(friendDBStore) fm.loadFriendshipsFromDB(friendDBStore)
// 加载等待验证好友请求 列表 // 加载等待验证好友请求 列表
@ -158,14 +167,23 @@ func (fm *FriendsMgr) acceptFriendRequest(user1Id string, user2Id string) error
// rejectFriendRequest 拒绝好友请求 // rejectFriendRequest 拒绝好友请求
func (fm *FriendsMgr) rejectFriendRequest(user1Id string, user2Id string) error { func (fm *FriendsMgr) rejectFriendRequest(user1Id string, user2Id string) error {
if fm.pendingReqs[user1Id] == nil {
return errors.New("no pending friend request to reject")
}
if !fm.pendingReqs[user1Id][user2Id] { if !fm.pendingReqs[user1Id][user2Id] {
return errors.New("no pending friend request from user1 to user2") return errors.New("no pending friend request from user1 to user2")
} }
err := fm.acceptFriendRequestToDB(user1Id, user2Id)
if err != nil { delete(fm.pendingReqs[user1Id], user2Id)
return err if len(fm.pendingReqs[user2Id]) == 0 {
delete(fm.pendingReqs, user2Id)
} }
//err := fm.acceptFriendRequestToDB(user1Id, user2Id)
//if err != nil {
// return err
//}
//fm.pendingReqs[user1Id], user2Id //fm.pendingReqs[user1Id], user2Id
//fm.pendingReqs[user2Id], user1Id //fm.pendingReqs[user2Id], user1Id

View File

@ -20,7 +20,7 @@ func TestRegisterUser(t *testing.T) {
fm.registerUser("4", "panasonic") fm.registerUser("4", "panasonic")
fm.registerUser("5", "nec") fm.registerUser("5", "nec")
fm.registerUser("6", "ntt") fm.registerUser("6", "ntt")
for i := 7; i <= 20; i++ { for i := 7; i <= 10; i++ {
fm.registerUser(fmt.Sprint(i), RandomUsername()) fm.registerUser(fmt.Sprint(i), RandomUsername())
} }
fmt.Printf("users: %d \n", len(fm.users)) fmt.Printf("users: %d \n", len(fm.users))
@ -38,12 +38,16 @@ func TestRegisterUser(t *testing.T) {
fm.addFriendRequest("3", "2") fm.addFriendRequest("3", "2")
fm.addFriendRequest("4", "2") fm.addFriendRequest("4", "2")
fm.addFriendRequest("5", "6") fm.addFriendRequest("5", "6")
fm.addFriendRequest("6", "2")
fmt.Printf("before: pendingReqs count: %d \n", len(fm.pendingReqs)) fmt.Printf("before: pendingReqs count: %d \n", len(fm.pendingReqs))
// Accept friend requests // Accept friend requests
fm.acceptFriendRequest("2", "1") fm.acceptFriendRequest("2", "1")
fm.acceptFriendRequest("2", "3") fm.acceptFriendRequest("2", "3")
fm.acceptFriendRequest("2", "4") fm.acceptFriendRequest("2", "4")
fm.rejectFriendRequest("2", "6")
fm.acceptFriendRequest("6", "5")
// Get friends // Get friends
googleFriends := fm.listFriend("1") googleFriends := fm.listFriend("1")
@ -51,4 +55,7 @@ func TestRegisterUser(t *testing.T) {
appleFriends := fm.listFriend("2") appleFriends := fm.listFriend("2")
PrintUsers("appleFriends", appleFriends) PrintUsers("appleFriends", appleFriends)
necFriends := fm.listFriend("5")
PrintUsers("necFriends", necFriends)
} }