This commit is contained in:
aozhiwei 2020-09-17 15:53:30 +08:00
parent a72cf893c8
commit d4bece3b63
7 changed files with 56 additions and 19 deletions

View File

@ -8,6 +8,7 @@
#include "dbengine.h"
#include "app.h"
#include "guildmgr.h"
#include "typeconvert.h"
void Guild::Init()
{
@ -96,7 +97,9 @@ void Guild::Deserialize(const std::string& guild_data, const std::string& guild_
ss::MFGuildDB guilddb;
guilddb.ParseFromString(guild_data);
for (auto& member_pb : guilddb.members()) {
GuildMember* member = new GuildMember;
TypeConvert::Convert(member_pb.base_data(), *member);
member_hash_[member->account_id] = member;
}
}

View File

@ -22,24 +22,6 @@ namespace ss
class MFGuildLogDB;
}
struct GuildMember
{
std::string account_id;
std::string nickname;
std::string avatar_url;
int sex = 0;
int last_login_time = 0;
long long guild_id = 0;
int guild_job = 0;
long long user_value1 = 0;
long long user_value2 = 0;
long long user_value3 = 0;
int data_version1 = 0;
int online = 0;
};
namespace ss
{
class MFGuildDB;

View File

@ -54,6 +54,34 @@ void TypeConvert::Convert(const ss::MFBaseUserDataDB& base_data_pb, BaseUserData
base_data.base_data_version = base_data_pb.base_data_version();
}
void TypeConvert::Convert(const GuildMember& member, ss::MFBaseUserDataDB& base_data_pb)
{
base_data_pb.set_account_id(member.account_id);
base_data_pb.set_nickname(member.nickname);
base_data_pb.set_avatar_url(member.avatar_url);
base_data_pb.set_sex(member.sex);
base_data_pb.set_last_login_time(member.last_login_time);
base_data_pb.set_guild_job(member.guild_job);
base_data_pb.set_user_value1(member.user_value1);
base_data_pb.set_user_value2(member.user_value2);
base_data_pb.set_user_value3(member.user_value3);
base_data_pb.set_base_data_version(member.data_version1);
}
void TypeConvert::Convert(const ss::MFBaseUserDataDB& base_data_pb, GuildMember& member)
{
member.account_id = base_data_pb.account_id();
member.nickname = base_data_pb.nickname();
member.avatar_url = base_data_pb.avatar_url();
member.sex = base_data_pb.sex();
member.last_login_time = base_data_pb.last_login_time();
member.guild_job = base_data_pb.guild_job();
member.user_value1 = base_data_pb.user_value1();
member.user_value2 = base_data_pb.user_value2();
member.user_value3 = base_data_pb.user_value3();
member.data_version1 = base_data_pb.base_data_version();
}
void TypeConvert::Convert(const cs::MFBaseUserData& base_data_pb, BaseUserData& base_data)
{
base_data.account_id = base_data_pb.account_id();

View File

@ -21,6 +21,9 @@ class TypeConvert
static void Convert(const BaseUserData& base_data, ss::MFBaseUserDataDB& base_data_pb);
static void Convert(const ss::MFBaseUserDataDB& base_data_pb, BaseUserData& base_data);
static void Convert(const GuildMember& member, ss::MFBaseUserDataDB& base_data_pb);
static void Convert(const ss::MFBaseUserDataDB& base_data_pb, GuildMember& member);
static void Convert(const cs::MFBaseUserData& base_data_pb, BaseUserData& base_data);
static void Convert(const BaseUserData& base_data, cs::MFBaseUserData& base_data_pb);
static void Convert(const cs::MFUserTempCustomData& temp_custom_data_pb,

View File

@ -75,3 +75,20 @@ struct RoleData
int save_count = 0;
int last_save_time = 0;
};
struct GuildMember
{
std::string account_id;
std::string nickname;
std::string avatar_url;
int sex = 0;
int last_login_time = 0;
int guild_job = 0;
long long user_value1 = 0;
long long user_value2 = 0;
long long user_value3 = 0;
int data_version1 = 0;
int online = 0;
};

View File

@ -44,6 +44,8 @@ message MFBaseUserDataDB
optional int32 sex = 4; // 1 2 0
optional int32 last_login_time = 5; //
optional int64 guild_id = 6; //id
optional string guild_name = 7; //
optional int32 guild_job = 8; //
optional int64 user_value1 = 50; //1
optional int64 user_value2 = 51; //2

View File

@ -48,6 +48,8 @@ CREATE TABLE `user` (
`user_value2` bigint NOT NULL DEFAULT '0' COMMENT 'user_value2',
`user_value3` bigint NOT NULL DEFAULT '0' COMMENT 'user_value3',
`guild_id` bigint NOT NULL COMMENT '工会id',
`guild_name` tinyblob COMMENT '公会名字',
`guild_job` int(11) NOT NULL DEFAULT '0' COMMENT '公会职位',
`createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
`registertime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',