diff --git a/database/frienddb_new.sql b/database/frienddb_new.sql index 42d666a0..b91480b9 100644 --- a/database/frienddb_new.sql +++ b/database/frienddb_new.sql @@ -143,8 +143,9 @@ DROP TABLE IF EXISTS `t_guild_member`; CREATE TABLE `t_guild_member` ( `idx` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增id', `guild_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '公会id', - `member_id` varchar(60) CHARACTER SET utf8 NOT NULL COMMENT '公会长', + `member_id` varchar(60) CHARACTER SET utf8 NOT NULL COMMENT '成员id', `deleted` int(11) NOT NULL DEFAULT '0' COMMENT '是否已删除', + `guild_job` int(11) NOT NULL DEFAULT '0' COMMENT '1:公会长 20:副会长 30:精英 40:普通成员', `join_time` int(11) NOT NULL DEFAULT '0' COMMENT '加入时间', `createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', `modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间', diff --git a/server/imserver_new/guild/guildmgr.go b/server/imserver_new/guild/guildmgr.go index eb51dd19..03016b45 100644 --- a/server/imserver_new/guild/guildmgr.go +++ b/server/imserver_new/guild/guildmgr.go @@ -46,6 +46,7 @@ func (this *guildMgr) loadGuild() { "SELECT * FROM t_guild WHERE idx > %d AND deleted = 0", func (ds *f5.DataSet) { p := newGuild() + p.loadFromDb(ds) this.idHash[p.guildId] = p this.nameHash[p.guildName] = p }, @@ -65,12 +66,13 @@ func (this *guildMgr) loadGuildMember() { "SELECT * FROM t_guild_member WHERE idx > %d AND deleted = 0", func (ds *f5.DataSet) { guildId := ds.GetByName("guild_id") + guildJob := q5.ToInt32(ds.GetByName("guild_job")) memberId := ds.GetByName("member_id") joinTime := q5.ToInt32(ds.GetByName("join_time")) g := this.internalGetGuildByGuildId(guildId) if g != nil { p := newMember() - p.init(g, memberId, joinTime) + p.init(g, guildJob, memberId, joinTime) g.addMember(p) this.memberIdHash[memberId] = p } @@ -214,11 +216,13 @@ func (this *guildMgr) asyncCreateGuildTask(task *f5.AsyncTask, }, [][]string{ {"guild_id", guildId}, + {"guild_job", q5.ToString(constant.GuildMemberLevelLeader)}, {"deleted", q5.ToString(0)}, {"join_time", q5.ToString(nowTime)}, }, [][]string{ {"guild_id", guildId}, + {"guild_job", q5.ToString(constant.GuildMemberLevelLeader)}, {"member_id", accountId}, {"join_time", q5.ToString(nowTime)}, {"createtime", q5.ToString(nowTime)}, @@ -233,7 +237,8 @@ func (this *guildMgr) asyncCreateGuildTask(task *f5.AsyncTask, guild := newGuild() { p := newMember() - p.init(guild, accountId, int32(nowTime)) + p.init(guild, constant.GuildMemberLevelLeader, + accountId, int32(nowTime)) this.memberIdHash[accountId] = p } this.idHash[guild.guildId] = guild @@ -244,7 +249,8 @@ func (this *guildMgr) asyncCreateGuildTask(task *f5.AsyncTask, panic(fmt.Sprintf("asyncCreateGuildTask:%s", "")) } else { m := newMember() - m.init(guild, accountId, q5.ToInt32(nowTime)) + m.init(guild, constant.GuildMemberLevelLeader, + accountId, q5.ToInt32(nowTime)) guild.addMember(m) this.memberIdHash[accountId] = m task.SetSucc() @@ -398,6 +404,7 @@ func (this *guildMgr) asyncAcceptApplyTask(task *f5.AsyncTask, guild *guild, }, [][]string{ {"guild_id", guild.guildId}, + {"guild_job", q5.ToString(constant.GuildMemberLevelDefault)}, {"deleted", q5.ToString(0)}, {"join_time", q5.ToString(nowTime)}, }, @@ -408,7 +415,7 @@ func (this *guildMgr) asyncAcceptApplyTask(task *f5.AsyncTask, guild *guild, return } m := newMember() - m.init(guild, targetId, nowTime) + m.init(guild, constant.GuildMemberLevelDefault, targetId, nowTime) guild.addMember(m) this.memberIdHash[targetId] = m this.asyncSetApplyStatus( diff --git a/server/imserver_new/guild/member.go b/server/imserver_new/guild/member.go index bc5b9e8a..843d678a 100644 --- a/server/imserver_new/guild/member.go +++ b/server/imserver_new/guild/member.go @@ -5,12 +5,14 @@ import ( type member struct { guild *guild + guildJob int32 memberId string joinTime int32 } -func (this *member) init(guild *guild, memberId string, joinTime int32) { +func (this *member) init(guild *guild, guildJob int32, memberId string, joinTime int32) { this.guild = guild + this.guildJob = guildJob this.memberId = memberId this.joinTime = joinTime } diff --git a/server/imserver_new/player/player.go b/server/imserver_new/player/player.go index 73e89e65..6a21c8b9 100644 --- a/server/imserver_new/player/player.go +++ b/server/imserver_new/player/player.go @@ -434,6 +434,8 @@ func (this *player) CMSetMemberLevel(hdr *f5.MsgHdr, msg *cs.CMSetMemberLevel) { func (this *player) CMDisband(hdr *f5.MsgHdr, msg *cs.CMDisband) { rspMsg := new(cs.SMDisband) + this.SendMsg(rspMsg) + /* GetGuildMgr().AsyncDisband( this.GetAccountId(), func (errCode int32, errMsg string, members []string) { @@ -442,7 +444,7 @@ func (this *player) CMDisband(hdr *f5.MsgHdr, msg *cs.CMDisband) { return } this.SendMsg(rspMsg) - }) + })*/ } func (this *player) CMSetNotice(hdr *f5.MsgHdr, msg *cs.CMSetNotice) {