This commit is contained in:
aozhiwei 2020-09-17 16:09:21 +08:00
parent d4bece3b63
commit f3a85ea51f

View File

@ -163,10 +163,16 @@ void Guild::FillGuildDB(ss::MFGuildDB& guild_dto)
void Guild::SaveToDB()
{
ss::MFGuildDB guild_db;
FillGuildDB(guild_db);
std::string guild_data;
guild_db.SerializeToString(&guild_data);
std::string guild_log;
{
ss::MFGuildDB guild_db;
FillGuildDB(guild_db);
guild_db.SerializeToString(&guild_data);
}
{
logdb_->SerializeToString(&guild_log);
}
auto on_ok =
[] (a8::XParams& param, const f8::DataSet* data_set)
@ -180,32 +186,39 @@ void Guild::SaveToDB()
};
a8::XObject conn_info = DBEngine::Instance()->GetConnInfo(guild_id);
DBEngine::Instance()->
ExecAsyncScript(
conn_info,
"INSERT `guild`(guild_id, guild_name, owner_id, creator_id, guild_data "
" createtime, modifytime) "
"VALUES(%d, '%s', %d, %d, '%s', %d, %d) "
"ON DUPLICATE KEY UPDATE guild_name='%s', owner_id=%d, creator_id=%d, "
" guild_data='%s', modifytime=%d;",
{
guild_id,
guild_name,
owner_id,
creator_id,
guild_data,
App::Instance()->nowtime,
App::Instance()->nowtime,
guild_name,
owner_id,
creator_id,
guild_data,
App::Instance()->nowtime
},
a8::XParams(),
on_ok,
on_error,
guild_id
);
DBEngine::Instance()->ExecAsyncScript
(
conn_info,
"UPDATE `guild` SET guild_name='%s', guild_lv=%d, guild_exp=%d, guild_badge=%d, "
" guild_apply_num=%d, guild_members='%s', guild_notice='%s', guild_declaration='%s', "
" guild_log='%s', owner_id='%s', owner_name='%s', owner_avatar_url='%s', "
" creator_id='%s', creator_name='%s', creator_avatar_url='%s', guild_data='%s', guild_status='%d', "
" modifytime=%d "
"WHERE guild_id=%d;",
{
guild_name,
guild_lv,
guild_exp,
guild_badge,
guild_apply_num,
"",
guild_notice,
guild_declaration,
guild_log,
owner_id,
owner_name,
owner_avatar_url,
creator_id,
creator_name,
creator_avatar_url,
guild_data,
guild_status,
App::Instance()->nowtime,
guild_id
},
a8::XParams(),
on_ok,
on_error,
guild_id
);
}