This commit is contained in:
aozhiwei 2020-09-25 12:05:46 +08:00
parent fc9e64eae6
commit 7c531d2b0f
3 changed files with 28 additions and 13 deletions

View File

@ -237,6 +237,8 @@ void Guild::_CMGuildApplyList(f8::MsgHdr& hdr, const cs::CMGuildApplyList& msg)
[] (a8::XParams& param, const f8::DataSet* data_set) [] (a8::XParams& param, const f8::DataSet* data_set)
{ {
cs::MFPaging* paging = (cs::MFPaging*)param.param2.GetUserData(); cs::MFPaging* paging = (cs::MFPaging*)param.param2.GetUserData();
ss::SS_IM_ForwardGuildCMMsg* forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)
param.param3.GetUserData();
#if 0 #if 0
Player* hum = PlayerMgr::Instance()->GetPlayerByAccountId(param.sender.GetString()); Player* hum = PlayerMgr::Instance()->GetPlayerByAccountId(param.sender.GetString());
if (hum && hum->socket_handle == param.param1.GetInt()) { if (hum && hum->socket_handle == param.param1.GetInt()) {
@ -265,31 +267,33 @@ void Guild::_CMGuildApplyList(f8::MsgHdr& hdr, const cs::CMGuildApplyList& msg)
hum->SyncRedPoint(); hum->SyncRedPoint();
} }
#endif #endif
delete forward_msg;
delete paging; delete paging;
}; };
auto on_error = auto on_error =
[] (a8::XParams& param, int error_code, const std::string& error_msg) [] (a8::XParams& param, int error_code, const std::string& error_msg)
{ {
cs::MFPaging* paging = (cs::MFPaging*)param.param2.GetUserData(); cs::MFPaging* paging = (cs::MFPaging*)param.param2.GetUserData();
#if 0 ss::SS_IM_ForwardGuildCMMsg* forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)
Player* hum = PlayerMgr::Instance()->GetPlayerByAccountId(param.sender.GetString()); param.param3.GetUserData();
if (hum && hum->socket_handle == param.param1.GetInt()) {
cs::SMFriendApplyList respmsg; cs::SMGuildJoin respmsg;
hum->FillApplyList(*paging, respmsg); GuildMgr::Instance()->ForwardGuildSMMsg(param.param1,
hum->SendMsg(respmsg); forward_msg->context(),
} respmsg);
#endif
delete forward_msg;
delete paging; delete paging;
}; };
ss::SS_IM_ForwardGuildCMMsg *forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)hdr.user_data; ss::SS_IM_ForwardGuildCMMsg* forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)hdr.user_data;
ss::SS_IM_ForwardGuildCMMsg* forward_msg_copy = new ss::SS_IM_ForwardGuildCMMsg();
*forward_msg_copy = *forward_msg;
cs::MFPaging* paging_copy = new cs::MFPaging; cs::MFPaging* paging_copy = new cs::MFPaging;
*paging_copy = msg.paging(); *paging_copy = msg.paging();
#if 1
paging_copy->set_curr_page(0); paging_copy->set_curr_page(0);
paging_copy->set_page_size(20); paging_copy->set_page_size(20);
#endif
a8::XObject conn_info = DBEngine::Instance()->GetConnInfo(guild_id); a8::XObject conn_info = DBEngine::Instance()->GetConnInfo(guild_id);
std::string fmtstr = "SELECT '' AS account_id"; std::string fmtstr = "SELECT '' AS account_id";
std::vector<a8::XValue> sql_params; std::vector<a8::XValue> sql_params;
@ -312,8 +316,9 @@ void Guild::_CMGuildApplyList(f8::MsgHdr& hdr, const cs::CMGuildApplyList& msg)
sql_params, sql_params,
a8::XParams() a8::XParams()
.SetSender(guild_id) .SetSender(guild_id)
.SetParam1(0) .SetParam1(hdr.socket_handle)
.SetParam2(paging_copy), .SetParam2(paging_copy)
.SetParam3(forward_msg_copy),
on_ok, on_ok,
on_error, on_error,
guild_id guild_id

View File

@ -89,4 +89,5 @@ private:
std::map<std::string, GuildMember*> member_hash_; std::map<std::string, GuildMember*> member_hash_;
std::vector<GuildMember*> sorted_members_; std::vector<GuildMember*> sorted_members_;
ss::MFGuildLogDB* logdb_ = nullptr; ss::MFGuildLogDB* logdb_ = nullptr;
std::map<long long, GuildApply*> apply_hash_;
}; };

View File

@ -56,6 +56,15 @@ struct FriendApply
int flag = 0; int flag = 0;
}; };
struct GuildApply
{
long long idx = 0;
long long applyid = 0;
long long guild_id;
BaseUserData base_data;
int flag = 0;
};
struct Event struct Event
{ {
long long idx = 0; long long idx = 0;