syntax = "proto2";

package PremiumPrankResult;

//option optimize_for = LITE_RUNTIME;

option java_package = "com.miaole.live.protocol.response";
option java_outer_classname = "PremiumPrankResult";

message PremiumPrankContentTempInfo {
  repeated string contentList = 1; // 内容列表
}

message ListRoomPremiumPrankUserInfo {
  repeated ListPremiumPrankUserInfo userInfoList = 1;
}

message ListPremiumPrankUserInfo {
  repeated PremiumPrankUserInfo premiumPrankList = 1;
  optional string userId = 2; // 用户
  optional string userName = 3; // 用户昵称
  optional string headUrl = 4; // 头像
  optional int32 position = 5; // 麦位
}

message PremiumPrankUserInfo {
  optional string contentId = 1; // 内容ID
  optional string content = 2; // 内容
  optional int32 price = 3; // 价格
  optional bool canConsume = 4; // 包裹是否足够消费
  optional bool canEdit = 5; // 是否可以编辑修改
  optional int32 minPrice = 6 ; // 区间小价格
  optional int32 maxPrice = 7; // 区间大价格
  optional int32 officialPrice = 8; // 官方价格
}

message ListPremiumPackageInfo {
  repeated PremiumPackageInfo packageList = 1;
}

message PremiumPackageInfo {
  optional string giftId = 1; // 礼物ID
  optional string giftName = 2; // 名称
  optional string icon = 3; // 缩略图
  optional int64 overTime = 4; // 过期时间
  optional int32 num = 5; // 数量
  optional int32 price = 6; // 价格
  optional int64 remainTime = 7; // 剩余时间
}

message ListOneClickInvestment {
  repeated PremiumPackageInfo list = 1; //
}

message OneClickInvestmentInfo {
  optional string giftId = 1; // 礼物ID
  optional int32 num = 2; // 数量
}

message PremiumGiftPackageList {
  repeated PremiumGiftPackage actList = 1; // 活动列表
  repeated PremiumPackageInfo giftList = 2; // 礼物信息列表
}

message PremiumGiftPackage {
  optional string actId = 1; // 活动ID
  optional string actIcon = 2; // 活动icon
  optional string actName = 3;  // 活动名称
  optional string actDesc = 4; // 描述
  optional string skipUrl = 5; // 跳转地址
}

// 精品整蛊舞蹈推流开启广播
message PremiumPrankDanceBroadcast {
  optional string streamId = 1;//单流ID
  optional string mainStreamId = 2;//主流ID
  optional string mixStreamId = 3;//主流ID（混流）
  optional string singleStreamId = 4;//次流ID（动态封面不混流）
  optional int64 overTime = 5; // 关流过期时间戳
  optional string pushUrl = 6; // 单流地址
}

// 精品整蛊控件广播
message PremiumPrankControlBroadcast {
  optional string anchorId = 1; // 主播ID
  optional string anchorName = 2; // 主播名称
  optional string headUrl = 3; // 主播头像
  optional int32 queueNum = 4; // 队列人数
  optional int32 prankStatus = 5; // 当前状态 (0-准备中 1-表演中)
  optional string orderId = 6; // 订单ID
  optional string content = 7; // 整蛊内容
  optional bool unqualified = 8; // 当前内容是否是不合格整蛊单
  optional string showStartTime = 9; // 不合格首次表演时间
  optional string userName = 10; // 下单用户名称
  optional int32 skipTab = 11; // 1-正常队列 2-不合格节目单
}

// 不合格节目单广播
message UnqualifiedPrankBroadcast {
}

message PremiumPrankControlResult {
  repeated PremiumPrankControlInfo list = 1;
}

message PremiumPrankControlInfo {
  optional string userId = 1; // 用户Id
  optional string userName = 2; // 用户名称
  optional string userHeadUrl = 3; // 用户头像
  optional string anchorId = 4; // 主播ID
  optional string anchorName = 5; // 主播名称
  optional string anchorHeadUrl = 6; // 主播头像
  optional string content = 7; // 整蛊内容
  optional int32 prankStatus = 8; // 当前状态 (0-准备中 1-表演中)
  optional string orderId = 9; // 订单ID
  optional string firstShowStartTime = 10; // 首次表演时间
  optional string roomId = 11; // 房间ID
  optional string roomName = 12; // 房间名称
  optional string videoUrl = 13; // 视频回放
}

// 评价广播
message PremiumPrankEvaluateBroadcast {
  optional string orderId = 1; // 订单ID
  optional string anchorName = 2; // 主播昵称
  optional string content = 3; // 整蛊内容
  optional string anchorHeadUrl = 4; //主播头像
  optional int32 type = 5; // 类型（1-语音 2-视频）
}

message PremiumPrankRecordResult {
  repeated PremiumPrankRecord list = 1;
}

message PremiumPrankRecord {
  optional string userId = 1; // 用户ID
  optional string userName = 2; // 用户名称
  optional string headUrl = 3; // 头像
  optional string content = 4; // 整蛊内容
  optional int64 createTime = 5; // 下单时间
  optional int32 price = 6; // 价格
  optional int32 status = 7; // 状态（0-准备中 1-表演中 2-已完成 3-已评价）
  optional int32 score = 8; // 评价分值
  optional string orderId = 9; // 订单ID
  optional string anchorId = 10; // 主播ID
  optional string anchorName = 11; // 主播名称
  optional string anchorHeadUrl = 12; // 主播头像
  optional string roomId = 13; // 房间ID
  optional string roomName = 14; // 房间标题
}

message PremiumEvaluateRecordResult {
  repeated PremiumEvaluateRecord list = 1;
}

message PremiumEvaluateRecord {
  optional int64 createTime = 1; // 评分时间
  optional string userName = 2; // 用户名称
  optional int32 evaluateScore = 3; // 评价分值
  optional string orderId = 4; // 订单ID
  optional string userId = 5; // 用户ID
  optional string anchorId = 6; // 主播ID
  optional string anchorName = 7; // 主播名称
}

message ShowTimeResult {
  repeated int32 timeValue = 1; // 时长选择（单位：s）
}


// 不合格表演单房间广播
message UnqualifiedShowRoomBroadcast {
  repeated string roomId = 1; // 房间ID
  repeated string roomName = 2; // 房间名称
  optional int32 prankCount = 3; // 本房间正常下单整蛊数
  optional int32 unqualifiedPrankCount = 4; // 不合格整蛊数量
}


message PrankDatabaseListResult {
  repeated PrankDatabase list = 1;
}

message PrankDatabase {
  optional int32 minPrice = 1; // 最低价格区间
  optional int32 maxPrice = 2; // 最高价格区间
  repeated PrankDatabaseDetail list = 3; // 详细整蛊内容列表
}

message PrankDatabaseDetail {
  optional string content = 1; // 内容
  optional int32 officialPrice = 2; // 官方价格
  optional bool isNew = 3; // 是否是新内容
  optional string contentId = 4; // ID
}