syntax = "proto2";

package UnionResult;

import "RoomResult.proto";
import "UserResult.proto";
import "CommonResult.proto";

//option optimize_for = LITE_RUNTIME;

option java_package = "com.miaole.live.protocol.response";
option java_outer_classname = "UnionResult";

//创建公会成功返回的数据
message CreateUnionData {
  optional string unionId = 1;//公会id
  optional int32 rank = 2;//公会排名
}

//大厅获取公会列表
message UnionList {
  repeated UnionInfo list = 1;
}

message MyUnionData {
  repeated UnionInfo joins = 1;//已加入列表
  repeated UnionInfo applys = 2;//待审核列表
  optional int32 myUnionStatus = 3;//我的公会状态，1没有公会， 2公会创建审核中， 3有公会
  optional bool showCreateFlag = 4;//成功创建弹框显示标志
  optional MyUnionInfo myUnionInfo = 5; //成功创建弹框显示的公会信息
}

message MyUnionInfo {
  optional string unionId = 1; //公会id
  optional string userName = 2; //用户昵称
  optional int32 rank = 3;//公会排名
  optional int32 unionType = 4; //公会类型， 3视频公会， 4语音公会
}

//根据不同情况返回不同信息
message UnionInfo {
  optional string unionId = 1;//公会id
  optional string unionName = 2;//公会昵称
  optional string slogan = 3;//口号(列表显示,排行榜和游戏公会列表不显示)
  repeated string labels = 4;//标签(列表显示,排行榜和游戏公会列表不显示)
  optional int32 logoTime = 5;//修改logo的时间 0为没修改过
  optional int32 num = 6;//签到人数或会员人数
  optional bool canSign = 7;//今天是否可签到(我关注的公会里返回)
  optional string mesterId = 8;//会长ID
  optional int64 myEnterTime = 9;//我的入会时间
  optional int32 myJobId = 10;//我的职位
  optional int32 online = 11;//频道总在线人数
  optional string vistorChannelId = 12;//接待频道id
  optional string bindGameId = 13;//公会入住的的游戏
  optional int32 unionType = 14;//公会类型  2:游戏公会 3:娱乐公会
  repeated int32 rankType = 15;//上榜的工公类型
  optional int32 level = 16;//公会等级
  optional string logoUrl = 17 ; // 公会logo
  optional CommonResult.CuteInfo unionIdCuteInfo = 18;//公会id-靓号信息
  optional string country = 19; // 国家
  optional string countryI18n = 20; // 国家国际化
  optional string countryIcon = 21; // 国家图标emoji
  optional int32 familyType = 22;//家族类型 0:无家族 1:企业家族 2:个人家族
}

//公会主界面返回的组合信息
message UnionData {
  optional UnionDetail detail = 1;//公会详情
  optional ModulesResult modules = 2;//模块列表
  optional UnionMemberList members = 3;//以标签优先排序的成员列表
  optional SignData signData = 4;//签到信息
  repeated string games = 5;//游戏列表
  optional OpenGuestbookResult guestBook = 6;//留言本
  optional RoomResult.ChannelList channels = 7;//公会频道
  optional RoomResult.GroupList groups = 8;//公会群组
  optional UnionMemberList liveMembers = 9;// 直播中的成员列表
}

//公会详情(逻辑服获取)
message UnionDetail {
  optional string unionId = 1;//公会id
  optional string unionName = 2;//公会昵称
  optional string slogan = 3;//口号
  optional string desc = 4;//描述
  optional string position = 5;//坐标
  repeated string labels = 6;//标签
  optional int32 logoTime = 7;//修改logo的时间 0为没修改过
  optional int64 createTime = 8;//创建时间
  optional int32 rank = 9;//公会排名
  optional int32 members = 10;//公会成员数
  optional int32 mystatus = 11;//我的状态:<10为职位;11申请中;12可申请入驻
  optional bool needCheck = 12;// 进入是否审核
  optional string mesterId = 13;//会长ID
  repeated string titles = 14;// 头衔列表
  optional int64 myEnterTime = 15;//我的入会时间
  optional int32 signNum = 16;//连续签到次数
  optional string myNameCard = 17;//我的群片名
  optional int32 myJobId = 18;//我的群职位ID
  optional int32 coverTime = 19;//修改封面的时间 0为没修改过
  optional int32 onlineCount = 20;//在线人数
  optional int32 level = 21;//公会等级
  optional string vistorChannelId = 22;//接待频道id
  optional bool hasCarTask = 23;//是否有打卡座驾任务
  optional bool daySignIn = 24;//今天是否有打卡
  optional string familyId = 25;//娱乐公会隶属的家族ID
  optional string coverId = 26;//公会封面ID
  optional string vest = 27;//马甲
  optional bool  enteredIndex = 28;//是否已进入过公会主页(已加入公会后有效),true为已进入过，false为未进入过
  optional string useVest = 29;//使用中的马甲
  optional string useVestUnionId = 30;//使用中的马甲的公会ID
  optional string nickNameNoVest = 31;//无马甲的昵称
  optional string defaultGroupId = 32;//默认公会群ID
  optional string logoUrl = 33; // 公会logo
  optional string coverUrl = 34; // 公会封面url
  optional int32 unionType = 35; // 3视频公会 4 语音公会
  optional int32 unionRoomCount = 36; // 公会房间的数量，只统计已审核通过的
  optional CommonResult.CuteInfo unionIdCuteInfo = 37;//公会id-靓号信息
  optional string currentGroupId = 38; // 我当前所在的群聊
  optional bool isVirtualBarUnionWhiteList = 39;// 公会是否在开启酒吧白名单内
  optional int32 familyType = 40;//家族类型 0:无家族 1:企业家族 2:个人家族
}

//成员列表
message UnionMemberList {
  repeated UnionMemberInfo list = 1;
}

//
message UnionMemberInfo {
  optional string memberId = 1;// 成员
  optional string nameCard = 2;//群片名
  optional int32 vitality = 3;//活跃度
  optional int32 jobId = 4;// 职位id:EJobType
  optional int32 level = 5;//等级
  optional int32 contribute = 6;//贡献
  optional string tagName = 7;//标签名
  optional string headUrl = 8; // 头像url
  optional string country = 9; // 国家
  optional string countryI18n = 10; // 国家国际化
  optional string countryIcon = 11; // 国家图标emoji
}

//
message ModifyGroupMemberResult {
  repeated string failMemberId = 1;//返回设置失败的成员ID
}

//模块数据
message ModulesResult {
  repeated ModuleVo modules = 1;//模块数组
}

//模块VO
message ModuleVo {
  optional string moduleId = 1;//模块ID
  optional bool use = 2;//是否使用中
  optional int64 lastUpdateTime = 3;//模块最后更新
}

//打开留言板数据
message OpenGuestbookResult {
  repeated PopularTagsVo tags = 1;//标签列表
  repeated GuestbookVo list = 2;//留言列表
}

//留言板分页数据
message GuestbookPageResult {
  repeated GuestbookVo list = 1;//留言列表
}

//热门标签
message PopularTagsVo {
  optional string tagName = 1;//标签名
  optional int32 tagNum = 2;//标签数量
}

//留言内容
message GuestbookVo {
  optional string id = 1;// 留言ID
  optional string userId = 2;//用户ID
  optional string content = 3;//留言内容
  optional int32 like = 4;//点赞数量
  optional int64 sendTime = 5;//发表时间（毫秒）
  optional bool myLike = 6;//我是否已点赞
}

//点赞
message LikeResult {
  optional string id = 1;// 留言ID
  optional int32 like = 2;//点赞数量
}

//公会会员签到排行榜信息
message SignData {
  optional SignVo myData = 1;//我的数据
  repeated SignVo ranks = 2;//排行数据
  optional int32 coverTime = 3;//封面修改时间
}

//签到信息
message SignVo {
  optional bool canSign = 1;//今天是否可签到(sendmy的myData)
  optional string userId = 2;//玩家马甲
  optional string userName = 3;//玩家马甲(detail)
  optional int32 signDays = 4;//连接签到天数
  optional int32 signRank = 5;//签到排行榜(detail)
  optional int64 lastSignTime = 6;//最近签到时间(detail)
  optional int32 likes = 7;//被点赞数(detail)
  optional bool canLike = 8;//是否可点赞
  optional int32 canReSignDays = 9;//可补签天数(sendmy的myData)
}

message BabyInfoList {
  repeated string userIds = 1;//用户ID
  repeated string nickNames = 2;//用户昵称
  repeated int32 bigLogoTimes = 3;//修改logo的时间 0为没修改过
  repeated string bigLogoDatas = 4; // logo数据
  repeated bool isLive = 5; // 是否直播中
  repeated string liveRoom = 6; // 房间id
}

message UnionAlbumInfoList {
  repeated UnionAlbumInfo vos = 1;
}

message UnionAlbumInfo {
  optional string albumId = 1;//相册ID
  optional string albumName = 2;//相册名
  repeated string photos = 3;//相片ID数组
  optional string photoId = 4;//相册封面ID

}

message RandomUnoiinResult {
  repeated RandomUnoiinInfo list = 1;//
}

message RandomUnoiinInfo {
  optional string unionId = 1;//公会id
  optional string unionName = 2;//公会名
  optional string slogan = 3;//口号(列表显示,排行榜和游戏公会列表不显示)
  optional bool isApply = 4;//是否申请中
  optional int32 logoTime = 5;//修改logo的时间 0为没修改过
  optional string logoUrl = 6; // 公会logo
}
//公会等级
message UnionLevel {
  optional string unionId = 1; //公会id
  optional int32 level = 2; //公会等级
  optional int32 dValue = 3; //公会等级升级所差经验值
  optional int32 iconLevel = 4; //Icon等级
}

//公会日统计数据
message UnionDayStatistics {
  optional string unionId = 1; //公会id
  optional double intraDayExp = 2; //今日总经验
  optional int32 intraDayMemberSize = 3; //今日入会人数
  optional int32 intraYesterdayMemberSize = 4; //昨日日入会人数
  optional int32 signTotal = 5; //今日签到人数
  optional int32 yesterdaySignTotal = 6; //昨日签到人数
  optional int32 dayLoginGameTotal = 7; //今日登录游戏人数
  optional int32 yesterdayLoginGameTotal = 8; //昨日登录游戏人数
}

//关注页面数据结果
message AttentionResult{
  optional int32   type = 1;//1  消息类型
  repeated string  dataParame = 2;//参数
  optional int64   createTime = 3;//创建时间
}
//关注页面数据结果列表
message AttentionLstResult{
  repeated AttentionResult one = 1;//
}

//随机公会列表
message RandomUnionResult {
  repeated string unionIds = 1;
  repeated int32 logoTimes = 2;//修改logo的时间 0为没修改过
  repeated string logoUrl = 3; // 公会logo
}


//公会广场数据
message UnionCenterData {
  repeated UnionHotGameVo hotGames = 1;//热门游戏
  repeated UnionGameShop gameShops = 2;//游戏商店
  repeated UnionInformation informations = 3;//公会资讯
}

message UnionHotGameVo {
  optional string gameId = 1;//游戏ID
  optional string gameName = 2;//游戏名
  optional int32 unionNum = 3;//入驻的公会数量
}

message UnionGameShop {
  optional string gameId = 1;//游戏ID
  optional string gameName = 2;//游戏名
  optional int32 newAddGift = 3;//新增礼包
  optional int32 totalGift = 4;//总礼包
}

message UnionInformation {
  optional string bannerdata = 1;//资讯的模板id
  optional int32 displaystyle = 2;//展示风格：1.是横向排列，2.是竖向排列（两个一排的），3.有banner的资讯显示
  optional string gamedata = 3;//游戏数据
  optional string modelid = 5;//模版ID
  optional string modelname = 6;//模版名称
  optional int32 shows = 7;//设置设备不可见  0:IOS不可见, 1:Android不可见, 2:都可见, 默认为0
  optional string tittle = 8;//标题
}

// 公会升级奖励信息
message UpgradeUnionLevelInfo {
  optional string unionId = 1;// 公会id
  optional int32 unionLevel = 2;// 公会等级
  optional int32 ingots = 3;// 奖励元宝
  optional string carId = 4;// 奖励座驾
  optional int32 overDays = 5;// 奖励座驾有效天数
}

// 我的公会与推荐成员信息
message MyUnionMemberInfo {
  optional string unionId = 1;// 公会id
  optional string unionName = 2;// 公会名
  optional int32 logoTime = 3;// 修改logo的时间 0为没修改过
  repeated UserResult.UserBase members = 4;// 公会推荐用户
  optional int32 unionType = 5;// 公会类型  2:游戏公会 3:娱乐公会
  optional string logoUrl = 6; // 公会logo
  optional string slogan = 7; // 公会口号
  optional CommonResult.CuteInfo unionIdCuteInfo = 8;// 公会id-靓号信息
}

message AddUnionBrocast {
  optional string unionId = 1;// 公会id
  optional string unionName = 2;//公会名
  optional string defaultGroupId = 3;//默认群组ID
  optional UserResult.UserBase member = 4;//成员数据
}

// 申请入群响应
message ApplyGroupResp{
  optional int32 status = 1; //  0 需要审核 1 加群成功
}

// 群组会话详细信息
message GroupSessionInfo {
    optional string unionId = 1; // 群组对应的公会id
    optional string roomName = 2; // 群组对应房间名称
    repeated string headUrls = 3;// 群组头像-用户头象URL(4个)
    optional bool defaultGroup = 4; // 是否是默认群组
    optional string nameCard = 5; // 指定用户id在公会的名片
    optional string groupId = 6; // 群组id
    optional bool myMsgFlags = 7; //我的消息免打扰设置(是|否)
    optional string nameplate = 8;//兄弟团的铬牌
}

// 群组会话详细信息列表
message GroupSessionInfoList {
    repeated GroupSessionInfo list = 1;// 群组会话详细信息列表
}