This commit is contained in:
aozhiwei 2020-06-12 14:30:18 +08:00
parent 57f80f83c3
commit f402a38a41
7 changed files with 60 additions and 41 deletions

View File

@ -87,14 +87,14 @@ void Group::MarkDirty()
} }
} }
void Group::FillGroupDB(cs::MFGroupDB& group_dto) void Group::FillGroupDB(ss::MFGroupDB& group_dto)
{ {
} }
void Group::SaveToDB() void Group::SaveToDB()
{ {
cs::MFGroupDB group_db; ss::MFGroupDB group_db;
FillGroupDB(group_db); FillGroupDB(group_db);
std::string group_data; std::string group_data;
group_db.SerializeToString(&group_data); group_db.SerializeToString(&group_data);

View File

@ -13,7 +13,7 @@ struct GroupMember
int data_version1 = 0; int data_version1 = 0;
}; };
namespace cs namespace ss
{ {
class MFGroupDB; class MFGroupDB;
} }
@ -40,7 +40,7 @@ class Group
void MarkDirty(); void MarkDirty();
private: private:
void FillGroupDB(cs::MFGroupDB& group_dto); void FillGroupDB(ss::MFGroupDB& group_dto);
void SaveToDB(); void SaveToDB();
private: private:

View File

@ -86,8 +86,8 @@ void GroupMgr::_CMGroupCreate(const ss::MFIMMsgConext& context, const cs::CMGrou
Group* group = GetGroup(context.group_id()); Group* group = GetGroup(context.group_id());
if (group) { if (group) {
cs::SMGroupCreate respmsg; cs::SMGroupCreate respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("群id已经存在"); respmsg.set_errmsg("群id已经存在");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
@ -98,8 +98,8 @@ void GroupMgr::_CMGroupJoin(const ss::MFIMMsgConext& context, const cs::CMGroupJ
Group* group = GetGroup(msg.group_id()); Group* group = GetGroup(msg.group_id());
if (!group) { if (!group) {
cs::SMGroupJoin respmsg; cs::SMGroupJoin respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("群id已经存在"); respmsg.set_errmsg("群id已经存在");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
@ -111,8 +111,8 @@ void GroupMgr::_CMGroupJoin(const ss::MFIMMsgConext& context, const cs::CMGroupJ
} }
if (group->IsFull()) { if (group->IsFull()) {
cs::SMGroupJoin respmsg; cs::SMGroupJoin respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("群已满"); respmsg.set_errmsg("群已满");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
@ -140,8 +140,8 @@ void GroupMgr::_CMGroupKick(const ss::MFIMMsgConext& context, const cs::CMGroupK
Group* group = GetGroup(context.group_id()); Group* group = GetGroup(context.group_id());
if (!group) { if (!group) {
cs::SMGroupKick respmsg; cs::SMGroupKick respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("群id错误"); respmsg.set_errmsg("群id错误");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
@ -161,8 +161,8 @@ void GroupMgr::_CMGroupQuit(const ss::MFIMMsgConext& context, const cs::CMGroupQ
Group* group = GetGroup(context.group_id()); Group* group = GetGroup(context.group_id());
if (!group) { if (!group) {
cs::SMGroupQuit respmsg; cs::SMGroupQuit respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("群id错误"); respmsg.set_errmsg("群id错误");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
@ -189,16 +189,16 @@ void GroupMgr::_CMGroupRename(const ss::MFIMMsgConext& context, const cs::CMGrou
Group* group = GetGroup(context.group_id()); Group* group = GetGroup(context.group_id());
if (!group) { if (!group) {
cs::SMGroupRename respmsg; cs::SMGroupRename respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("群id错误"); respmsg.set_errmsg("群id错误");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }
GroupMember* member = group->GetMember(context.account_id()); GroupMember* member = group->GetMember(context.account_id());
if (!member) { if (!member) {
cs::SMGroupRename respmsg; cs::SMGroupRename respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("没有权限"); respmsg.set_errmsg("没有权限");
ForwardGroupSMMsg(context, respmsg); ForwardGroupSMMsg(context, respmsg);
return; return;
} }

View File

@ -28,8 +28,9 @@ void Player::UnInit()
timer_attacher.ClearTimerList(); timer_attacher.ClearTimerList();
} }
void Player::Deserialize(const cs::MFUserDB& user_db) void Player::Deserialize(const ss::MFUserDB& user_db)
{ {
#if 0
for (auto& friend_db : user_db.friends()) { for (auto& friend_db : user_db.friends()) {
Friend friendobj; Friend friendobj;
friendobj.account_id = friend_db.account_id(); friendobj.account_id = friend_db.account_id();
@ -44,10 +45,12 @@ void Player::Deserialize(const cs::MFUserDB& user_db)
);; );;
friend_hash_[friendobj.account_id] = friendobj; friend_hash_[friendobj.account_id] = friendobj;
} }
#endif
} }
void Player::Serialize(cs::MFUserDB& user_db) void Player::Serialize(ss::MFUserDB& user_db)
{ {
#if 0
for (auto& pair : friend_hash_) { for (auto& pair : friend_hash_) {
auto p = user_db.add_friends(); auto p = user_db.add_friends();
p->set_account_id(pair.second.account_id); p->set_account_id(pair.second.account_id);
@ -57,6 +60,7 @@ void Player::Serialize(cs::MFUserDB& user_db)
p->set_group_id(pair.second.group_id); p->set_group_id(pair.second.group_id);
p->set_data_version1(pair.second.data_version1); p->set_data_version1(pair.second.data_version1);
} }
#endif
} }
void Player::_CMFriendList(f8::MsgHdr& hdr, const cs::CMFriendList& msg) void Player::_CMFriendList(f8::MsgHdr& hdr, const cs::CMFriendList& msg)
@ -70,8 +74,8 @@ void Player::_CMFriendApply(f8::MsgHdr& hdr, const cs::CMFriendApply& msg)
{ {
cs::SMFriendApply respmsg; cs::SMFriendApply respmsg;
if (GetFriendById(msg.friend_id())) { if (GetFriendById(msg.friend_id())) {
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("已经是好友"); respmsg.set_errmsg("已经是好友");
} }
SendMsg(respmsg); SendMsg(respmsg);
{ {
@ -232,8 +236,8 @@ void Player::_CMGroupCreate(f8::MsgHdr& hdr, const cs::CMGroupCreate& msg)
{ {
if (group_id != 0) { if (group_id != 0) {
cs::SMGroupCreate respmsg; cs::SMGroupCreate respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("你已经有群"); respmsg.set_errmsg("你已经有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -244,8 +248,8 @@ void Player::_CMGroupJoin(f8::MsgHdr& hdr, const cs::CMGroupJoin& msg)
{ {
if (group_id != 0) { if (group_id != 0) {
cs::SMGroupJoin respmsg; cs::SMGroupJoin respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
respmsg.set_error_msg("你已经有群"); respmsg.set_errmsg("你已经有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -256,8 +260,8 @@ void Player::_CMGroupAgree(f8::MsgHdr& hdr, const cs::CMGroupAgree& msg)
{ {
if (group_id == 0) { if (group_id == 0) {
cs::SMGroupAgree respmsg; cs::SMGroupAgree respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("你还没有群"); respmsg.set_errmsg("你还没有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -268,8 +272,8 @@ void Player::_CMGroupKick(f8::MsgHdr& hdr, const cs::CMGroupKick& msg)
{ {
if (group_id == 0) { if (group_id == 0) {
cs::SMGroupKick respmsg; cs::SMGroupKick respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("你还没有群"); respmsg.set_errmsg("你还没有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -280,8 +284,8 @@ void Player::_CMGroupQuit(f8::MsgHdr& hdr, const cs::CMGroupQuit& msg)
{ {
if (group_id == 0) { if (group_id == 0) {
cs::SMGroupQuit respmsg; cs::SMGroupQuit respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("你还没有群"); respmsg.set_errmsg("你还没有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -292,8 +296,8 @@ void Player::_CMGroupDismiss(f8::MsgHdr& hdr, const cs::CMGroupDismiss& msg)
{ {
if (group_id == 0) { if (group_id == 0) {
cs::SMGroupQuit respmsg; cs::SMGroupQuit respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("你还没有群"); respmsg.set_errmsg("你还没有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -304,8 +308,8 @@ void Player::_CMGroupRename(f8::MsgHdr& hdr, const cs::CMGroupRename& msg)
{ {
if (group_id == 0) { if (group_id == 0) {
cs::SMGroupRename respmsg; cs::SMGroupRename respmsg;
respmsg.set_error_code(2); respmsg.set_errcode(2);
respmsg.set_error_msg("你还没有群"); respmsg.set_errmsg("你还没有群");
SendMsg(respmsg); SendMsg(respmsg);
return; return;
} }
@ -337,6 +341,7 @@ void Player::NotifyOffline()
void Player::FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserInfo >* friend_list) void Player::FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserInfo >* friend_list)
{ {
#if 0
for (auto& pair : friend_hash_) { for (auto& pair : friend_hash_) {
auto p = friend_list->Add(); auto p = friend_list->Add();
p->set_account_id(pair.second.account_id); p->set_account_id(pair.second.account_id);
@ -345,6 +350,7 @@ void Player::FillFriendList(::google::protobuf::RepeatedPtrField< ::cs::MFUserIn
p->set_sex(pair.second.sex); p->set_sex(pair.second.sex);
p->set_online(pair.second.online); p->set_online(pair.second.online);
} }
#endif
} }
void Player::FillIMMsgConext(f8::MsgHdr& hdr, ss::MFIMMsgConext* conext) void Player::FillIMMsgConext(f8::MsgHdr& hdr, ss::MFIMMsgConext* conext)
@ -397,7 +403,7 @@ void Player::MarkDirty()
void Player::SaveToDB() void Player::SaveToDB()
{ {
cs::MFUserDB user_db; ss::MFUserDB user_db;
Serialize(user_db); Serialize(user_db);
std::string friend_data; std::string friend_data;
user_db.SerializeToString(&friend_data); user_db.SerializeToString(&friend_data);

View File

@ -28,8 +28,8 @@ class Player
void Init(); void Init();
void UnInit(); void UnInit();
void Deserialize(const cs::MFUserDB& friend_db); void Deserialize(const ss::MFUserDB& friend_db);
void Serialize(cs::MFUserDB& friend_db); void Serialize(ss::MFUserDB& friend_db);
template <typename T> template <typename T>
void SendMsg(T& msg) void SendMsg(T& msg)

View File

@ -44,7 +44,7 @@ void PlayerMgr::_CMLogin(f8::MsgHdr& hdr, const cs::CMLogin& msg)
if (GetHdrBySocket(hdr.socket_handle) || if (GetHdrBySocket(hdr.socket_handle) ||
GetHdrByAccountId(msg.account_id())) { GetHdrByAccountId(msg.account_id())) {
cs::SMLogin respmsg; cs::SMLogin respmsg;
respmsg.set_error_code(1); respmsg.set_errcode(1);
WSListener::Instance()->SendToClient(hdr.socket_handle, 0, respmsg); WSListener::Instance()->SendToClient(hdr.socket_handle, 0, respmsg);
return; return;
} }
@ -272,7 +272,7 @@ void PlayerMgr::AsyncLoginOnOk(const std::string& account_id,
hum->data_version1 = data_version1; hum->data_version1 = data_version1;
hum->Init(); hum->Init();
{ {
cs::MFUserDB user_db; ss::MFUserDB user_db;
user_db.ParseFromString(friend_data); user_db.ParseFromString(friend_data);
hum->Deserialize(user_db); hum->Deserialize(user_db);
} }

View File

@ -75,12 +75,25 @@ message CMLogin
optional string avatar_url = 5; // optional string avatar_url = 5; //
optional int32 sex = 6; // optional int32 sex = 6; //
} }
//
message SMLogin message SMLogin
{ {
optional int32 errcode = 1; // optional int32 errcode = 1; //
optional string errmsg = 2; // optional string errmsg = 2; //
} }
//()
message CMUpdateUserInfo
{
optional string nickname = 2; //
optional string avatar_url = 3; //
optional int32 sex = 4; // 1 2 0
optional int64 user_value1 = 50; //1
optional int64 user_value2 = 51; //2
optional int64 user_value3 = 52; //3
}
// //
message CMFriendList message CMFriendList
{ {