syntax = "proto2";

package NobleResult;

import "UserResult.proto";
//option optimize_for = LITE_RUNTIME;
import "MedalResult.proto";

option java_package = "com.miaole.live.protocol.response";
option java_outer_classname = "NobleResult";

//贵族数据
message NobleInfo {
	optional UserResult.UserBase userBase = 1;//用户
	optional int32 nobleId = 2;//当前可续费的贵族ID (主动买的)，神贵族特殊处理（200）
	optional int64 overTime = 3;//贵族过期时间 (主动买的)
	repeated int32 nobleList = 4;//已经买过的贵族列表
	optional bool auto = 5;//是否自动续费 (主动买的)
	optional int32 experienceNobleId = 6;//当前可续费的贵族ID (体验的)
	optional int64 experienceOverTime = 7;//贵族过期时间 (体验的)
	optional bool experienceAuto = 8;//是否自动续费 (体验的)
	optional int64 nobleVipOverTime = 9; //至臻贵族到期时间
	optional int32 godNobleStatus = 10;// 神贵族状态 -1-未参与，0-参与，2-成神（续约） 3-成神（无需续约）
	optional string godNobleOldOverTime = 11;//神贵族原过期时间(YYYY-mm-DD)
	optional string godNobleFrozenTime = 12;//神贵族冻结时间描述 如：（30天）
	optional int32 leftDay  = 13;//贵族剩余过期天 (主动买的) 如：30
}

//贵族数据广播
message NobleBroadcastResult {
	optional string userId = 1;//用户ID
	optional int32 nobleId = 2;//当前贵族 0 为没有贵族
	optional string msgId = 3;//消息ID,取Message表的Zh_cn消息内容,msgId为空时不用处理
	repeated string params = 4;//消息参数 ，填充到Message表的消息内容中 {0}xx{1}
	optional NobleUserInfo nobleInfo = 5;//用户贵族数据
	optional string roomId = 6;//用户所在房间ID
	 
}

//贵族用户列表
message NobleList {
	repeated NobleUserInfo nobleList = 1;//贵族列表数据
	optional int32 nobleSize = 2;//贵族人员数量
	optional int32 nobleSizeNew = 3;//贵族人员数量，排除开启斗篷人数
}

//贵族用户数据
message NobleUserInfo {
	optional UserResult.UserBase userBase = 1;//用户
	optional string medalId = 2;//当前贵族勋章
	optional bool isWarriorCloak = 3; //是否开启勇者斗篷
	repeated MedalResult.MedalInfo medals = 4; //勋章列表（以适应多勋章的情况）
}

//用户当前体验贵族信息和即将使用贵族卡名称
message CurrExpNobleInfo{
	optional string currExpNobleName = 1;//体验中贵族名称
	optional string expNobleCardName = 2;//体验卡名称
	optional bool callNextApi = 3;//是否调用下一个接口
}

// 用户成神通知，只需通知用户
message GodNobleNotifyBroadcast {
	optional string userId = 1;
}