syntax="proto3";
package protos;

message User{
    uint64 guid = 1;        // guid
    string account = 2;     // 
    string nickname = 3;
    string token = 4;       // 登录 token
    string phone = 5;
    int32 icon = 6;
    string alipay = 7;
	string password = 8 ; 
	string name = 9;		// name(alipay)
    string wepay = 10;
    string bankCard = 11;
    string channel = 12;    // 渠道
	string birthday = 13; 	// 生日
	string email 	= 14;	// 邮箱
    uint64 agent = 16;      // 推广人
    int64 createdAt = 17;   // 注册时间
    int64 lastAccess = 18;  // 最后访问时间
    int32 status = 20;      // 状态 0/nil 正常，1 封禁
    string ip = 21;
	string area = 22;
	int64 bets = 23;		// 总下注
    int32 vip = 26;         // vip 等级
    int64 balance = 27;     // 余额
	int64 bank = 28;        // 保险箱余额
	int64 freezed = 29;     // 冻结金额
	int64 recharged = 31;	// 总充值
	int64 withdrawed = 32;	// 总提现
	string qq = 33;			// qq 号
	string wechat = 34;		// 微信号
	string bankPass = 35;	// 保险箱密码
	string regameinfo = 36;	// 断线重连链接
	int64 bindPhoneBonus = 40;	// 绑定手机已领取奖金
}

message Icon {
	string name = 1;		// 名称或 url
	int32 size  = 2;		// 尺寸
}

//// 游戏配置
message GameItemEntry{
	int64 id = 1;				// 游戏或二级分类ID,
	string name = 2;			// 名称
	int32 enabled= 3;			// 是否启用
	int32 order = 4;			// 顺序
	string addr = 5;			// 地址	//未使用
	repeated Icon icons = 6;	// 图标 [大图标，normal，highlight, 热门图标, 最近小图标，]
	int32 orientation = 7;		// isGame = 1 时，表示游戏屏幕方向 0: landscape 1: portrait
	int32 isGame = 10;			// 是否是游戏，不是游戏则需要请求次级菜单
	int64 parentId = 11;		// 父级ID // 0 表示无父级ID
	int32 status = 12;			// 游戏状态 0 离线； 1 维护(变灰)； 2 在线 -- 逐步取代 enabled 字段
	int64 maxLimit = 13;		// 游戏限额
	int64 minLimit = 14;		// 游戏限额
	int64 unit	= 17;			// 最小下注
	repeated string gameParam  = 18; //游戏参数 例如:大类 0;子类 8001 是幸运龙
	int64 gameMaker = 19;       // 接入游戏厂商 例如:JDB夺宝电子
	int32 playerNum = 20;		// isGame = 1 有效，表示当前玩家数量
	int32 maxPlayerNum = 21;	// isGame = 1 有效
}

//message CatalogItemEntry{
//    int64 id = 1;				// 游戏或二级分类ID,
//	string name = 2;			// 名称
//	int32 enabled= 3;			// 是否启用
//	int32 order = 4;			// 顺序
//	string icon = 6;			// 大图标地址
//	int32 iconSize = 7;			// 大图标尺寸
//	string thumbnail = 8; 		// 小图标地址
//	int32 thumbnailSize = 9; 	// 小图标尺寸
//	int32 isGame = 10;			// 是否是游戏，不是游戏则需要请求次级菜单
//	int64 parentId = 11;		// 父级ID // 0 表示无父级ID
//	int64 maxLimit = 13;		// 游戏限额
//	int64 minLimit = 14;		// 游戏限额
//	int64 unit	= 17;			// 最小下注
//}

// 充值按钮配置
message RechargeButton {
	string name					= 1;
	map<string, string> info 	= 2;
	repeated int64 value 		= 3;
}

// 私信
message Mail {
	int32 id 		= 1;
	string title 	= 2;
	string content 	= 3;
	int64 time 		= 4;		//
}

// 活动
message Activity {
	int32 id			= 1;
	string banner		= 2;		// 活動主圖
	string details		= 3;		// 詳情圖片
	string title		= 4;		// 活動標題
	int64 start			= 5;		// 發布日期， [起止日期] 必須標註在圖片裡
	int32 type			= 6;		// 类别 1 棋牌， 2 捕鱼， 3 电子， 4 视讯， 5 体育
}

// 公告
message Notice {
	int32 id			= 1;
	string title		= 2;		// 公告标题
	string content		= 3;		// 公告内容
	int64 time			= 4;		// 结束时间
	int64 endat 		= 5;		// 结束时间
}

message Marquee {
	int32 id 			= 1;
	string content 		= 2;
	int32 times			= 3;		// 次数
	int64 start 		= 4;
	int64 end 			= 5;
	int32 enabled 		= 6;		// 现在就停止
}

message ReconnectInfo {
    int32 gameId		     = 1;
    repeated string gameParam = 2;
	int32 viewType = 3;
}

//
message VipConfItem {
	int32 level		= 1;
	int64 lowest	= 2;    	// 充值到达金额
	int64 bonus		= 3;    	// 达到奖励
	int64 weekly	= 4;    	// 周奖励
	int64 monthly 	= 5;    	// 月奖励
	int32 speedup	= 6;    	// 是否存款加速
	int32 service	= 7;    	// 是否专属客服
	int64 alms_amount 		= 8;		// 破产补助单次金额
	int32 alms_times_daily  = 9;		// 破产补助单日次数
}

//
message DimInt64 {
	repeated int64 val = 1;		// int64 多维数组的第一维
}

message ValueTimes {
	int64 val		= 1;
	int32 times		= 2;
}

message CheckinItem {
	int64 bonus 	= 1;		// 奖励金额
	int32 got 		= 2;		// 是否已领取, 0 未领取但不能领取，1，已领取， 2 可领取
	int64 ts 		= 3;		// 领取时间
	int32 days 		= 5;		// 天数
}

message GameTask {
	int32 taskId 			 = 1; //任务唯一标志
	int32 gameId		     = 2; //php配置的gameId
	repeated string gameParam = 3; //游戏参数:游戏大类ID,子类ID
	string name 			 = 4; //任务名称
	int32 target 			 = 5; //目标局数
	int32 finished			 = 6; //已完成的局数
	int32 received			 = 7; //待领取的次数
	int64 reward			 = 8; //奖励金币数
	int32 state				 = 9; //领取状态 1:任务已完成 待领取; 2:任务未完成 立即前往
	int64 limit				 = 10;//玩家进入游戏	金币限制
}