This commit is contained in:
aozhiwei 2020-10-08 19:40:06 +08:00
parent a400648dd9
commit a97e7b5092
3 changed files with 32 additions and 0 deletions

View File

@ -173,6 +173,11 @@ void GuildMgr::__GuildSearch(f8::JsonHttpRequest* request)
delete guild_list;
}
void GuildMgr::__GuildUpdate(f8::JsonHttpRequest* request)
{
}
void GuildMgr::__GuildRank(f8::JsonHttpRequest* request)
{
if (!load_done_) {
@ -378,6 +383,7 @@ void GuildMgr::SyncGuild(int instance_id)
if (a8::XValue(row[17]).GetInt64() > last_sync_time) {
last_sync_time = a8::XValue(row[17]);
}
GuildMgr::Instance()->UpdateGuild(guild);
delete guild;
}
if (last_sync_time > GuildMgr::Instance()->sync_db_hash_[instance_id]) {
@ -512,6 +518,25 @@ void GuildMgr::UpdateRank(std::vector<cs::MFGuildBasic*>& rank_list, cs::MFGuild
}
}
void GuildMgr::UpdateGuild(cs::MFGuildBasic* new_guild)
{
auto guild = GetGuild(new_guild->guild_id());
if (guild) {
guild->set_guild_name(new_guild->guild_name());
guild->set_guild_lv(new_guild->guild_lv());
guild->set_guild_exp(new_guild->guild_exp());
guild->set_guild_badge(new_guild->guild_badge());
guild->set_member_num((new_guild->member_num()));
guild->set_guild_declaration((new_guild->guild_declaration()));
guild->set_owner_id((new_guild->owner_id()));
guild->set_owner_name((new_guild->owner_name()));
guild->set_owner_avatar_url((new_guild->owner_avatar_url()));
guild->set_join_unlimited((new_guild->join_unlimited()));
guild->set_join_cnod1((new_guild->join_cnod1()));
guild->set_join_cnod2((new_guild->join_cnod2()));
}
}
bool GuildMgr::CmpGuild(cs::MFGuildBasic* a, cs::MFGuildBasic* b)
{
if (a->guild_lv() > b->guild_lv()) {

View File

@ -19,6 +19,7 @@ class GuildMgr : public a8::Singleton<GuildMgr>
void __GuildCreate(f8::JsonHttpRequest* request);
void __GuildSearch(f8::JsonHttpRequest* request);
void __GuildUpdate(f8::JsonHttpRequest* request);
void __GuildRank(f8::JsonHttpRequest* request);
void __GuildConfirmed(f8::JsonHttpRequest* request);
void __GenTestData(f8::JsonHttpRequest* request);
@ -34,6 +35,7 @@ class GuildMgr : public a8::Singleton<GuildMgr>
void GenGuildRank();
void ResortRank(std::vector<cs::MFGuildBasic*>& rank_list);
void UpdateRank(std::vector<cs::MFGuildBasic*>& rank_list, cs::MFGuildBasic* guild);
void UpdateGuild(cs::MFGuildBasic* new_guild);
bool CmpGuild(cs::MFGuildBasic* a, cs::MFGuildBasic* b);
void InstallSyncGuildTimer();

View File

@ -40,6 +40,11 @@ void HandlerMgr::Init()
{
GuildMgr::Instance()->__GuildSearch(request);
});
RegisterGMMsgHandler("Guild@update",
[] (f8::JsonHttpRequest* request)
{
GuildMgr::Instance()->__GuildUpdate(request);
});
RegisterGMMsgHandler("Guild@rank",
[] (f8::JsonHttpRequest* request)
{