From bfce47f8ccc9f4ae87a6d734ed9be453865c9fc7 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 19 Apr 2024 10:48:54 +0800 Subject: [PATCH] 1 --- server/imserver/guild/guildmgr.go | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/server/imserver/guild/guildmgr.go b/server/imserver/guild/guildmgr.go index c1c67e0f..438ea75b 100644 --- a/server/imserver/guild/guildmgr.go +++ b/server/imserver/guild/guildmgr.go @@ -322,13 +322,28 @@ func (this *guildMgr) AsyncGetApplyList(lastIdx int64, accountId string, } func (this *guildMgr) AsyncApplyJoin(accountId string, guildId string, cb func(int32, string)) { - guild := this.internalGetGuildByAccountId(accountId) - if guild != nil { + if this.internalGetGuildByAccountId(accountId) != nil { cb(0, "") return } + guild := this.internalGetGuildByGuildId(guildId) + if guild == nil { + cb(0, "") + return + } + nowTime := f5.GetApp().GetNowSeconds() if guild.joinCondType == constant.JoinCondFree && !guild.isFull() { + m := newMember() + m.init(guild, constant.GuildMemberLevelDefault, accountId, int32(nowTime)) + guild.addMember(m) + this.addGuildMember(m) + model.GuildApply.SetStatus(guild.guildId, accountId, constant.GUILD_APPLY_STATUS_ACCEPT, + func (err error, lastInsertId int64, rowsAffected int64) { + GetDbLogMgr().GuildAccpetApply(guild.guildId, accountId, accountId) + cb(0, "") + return + }) } else { model.GuildApply.Force( guildId,