From 70ee014252208723f15dd74ca686b0a4419806af Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Mon, 8 Apr 2024 20:40:19 +0800 Subject: [PATCH] 1 --- server/imserver_new/guild/guild.go | 16 ++++++++++++++++ server/imserver_new/guild/guildmgr.go | 3 +++ 2 files changed, 19 insertions(+) diff --git a/server/imserver_new/guild/guild.go b/server/imserver_new/guild/guild.go index ec129bf7..eb1e129c 100644 --- a/server/imserver_new/guild/guild.go +++ b/server/imserver_new/guild/guild.go @@ -76,6 +76,22 @@ func (this *guild) isOwner(accountId string) bool { return this.ownerId == accountId } +func (this *guild) updateByKv(kv map[int32]string) { + for k, v := range(kv) { + if k == constant.GUILD_UPDATE_FIELD_NOTICE { + this.notice = v + } else if k == constant.GUILD_UPDATE_FIELD_AVATAR { + this.badge = q5.ToInt32(v) + } else if k == constant.GUILD_UPDATE_FIELD_NAME { + this.guildName = v + } else if k == constant.GUILD_UPDATE_FIELD_COND_TYPE { + this.joinCondType = q5.ToInt32(v) + } else if k == constant.GUILD_UPDATE_FIELD_COND_VALUE { + this.joinCondVal = q5.ToInt32(v) + } + } +} + func (this *guild) disband() { { f5.GetJsStyleDb().Update( diff --git a/server/imserver_new/guild/guildmgr.go b/server/imserver_new/guild/guildmgr.go index c7cd1e44..9852d3cc 100644 --- a/server/imserver_new/guild/guildmgr.go +++ b/server/imserver_new/guild/guildmgr.go @@ -600,6 +600,7 @@ func (this *guildMgr) AsyncUpdateGuild(accountId string, kv map[int32]string, cb cb(2, "Insufficient permissions") return } + guildName := f5.GetApp().NewGlobalUuid() if name, ok := kv[constant.GUILD_UPDATE_FIELD_NAME]; ok { if this.internalGetGuildByGuildName(name) != nil { cb(4, "Cube name already exists") @@ -610,10 +611,12 @@ func (this *guildMgr) AsyncUpdateGuild(accountId string, kv map[int32]string, cb return } this.addUsingName(name) + guildName = name } f5.NewLockAsyncTask([][]string{ {constant.GUILD_ID_LOCK_KEY, guild.guildId}, {constant.GUILD_NAME_LOCK_KEY, guild.guildName}, + {constant.GUILD_NAME_LOCK_KEY, guildName}, {constant.GUILD_MEMBER_LOCK_KEY, accountId}, }, func (task *f5.LockAsyncTask) {