syntax = "proto2";

package RechargeCmd;

//option optimize_for = LITE_RUNTIME;

option java_package = "com.miaole.live.protocol.request";
option java_outer_classname = "RechargeCmd";


//兑换钻石
message exchangeDiamond {
	optional int32 diamond = 1;//钻石
	optional string	rechargeId = 2;//充值ID
}

//获得充值数据 RechargeResult.RechargeData
message getRechargeData {
	optional int32 os = 1;//系统类型 1:安卓 2:IOS
	optional int32 type = 2;//充值类型: 1:社交 2:直播
	optional bool oepe = 3;//是否为企业包
	optional string appId = 4;//appId
}

//买vip
message buyVIP{
    optional int32 vip=1;//1 普通贵族  2 高级贵族   3 至尊vip
}

//购买钻石
message buyDiamon{
    optional int32 diamond = 1;//钻石
}

//获取贵族等级===RechargeResult.VipLevResult
message getVipLev{

}
//获取抽奖物品====RechargeResult DrawItemResult
message getDrawItem{
    optional  int32  type=1;//1 体力  2 蓝  3 紫 4  橙
}
//用钻石购买体力 
message buyStamina{

}
//获取所拥有的抽奖道具======HaveItem
message getHaveItem{

}

//开始抽奖====PitchItem
message beginDraw{
   optional  int32  type=1;//1 体力  2蓝  3紫    4橙
   optional  int32  num=2;//次数
}
//用道具买体力
message userItemBuyStamina{
   optional  int32  itemid=1;
}

//获取体力道具====StaminaItemResult
message getStaminaItem{

}

//钻石消费明细
message getPetDiamonDetail{
}

//兑换贵族
message exchangeNobel{
}

//购买vip
message buyPlatVIP{
  optional string rechargeId = 1;//新版本 统一改成根据充值ID
}

//获取vip基本信息 返回结果:PlatVIPInfoResult
message getPlatVIPInfo{/**NO_AUTH**/

}

//购买新vip
message buyNewPlatVIP{
  optional string rechargeId = 1;//新版本 统一改成根据充值ID
  optional string vipOrderId = 2;//vip订单ID
}

//获得VIP付费数据 返回 RechargeResult.VipRechargeDataResult
message getVipRechargeData {
  optional int32 os = 1;//系统类型 1:安卓 2:IOS
  optional int32 type = 2;//充值类型: 1:社交 2:直播
  optional bool oepe = 3;//是否为企业包
  optional string appId = 4;//appId
}


//创建宠物订单  返回结果:CommonResult.StringResult
message createPetOrder{
   optional string out_parame=1;//透传参数
}

//创建宠物微信订单  返回结果:RechargeResult.createWXOrderResult
message createWXOrder{
   optional string dataId=1;//类型id_数据表id
}

message withdrawWX{
   optional int32 amount=1;//分
   optional string desc=2;//描述
   optional int32  type=3;//1 钱包提现  2宠物家族提现
}

//创建宠物微信订单  返回结果:RechargeResult.MidasPayResult
message midasPay{
   optional string dataId=1;//类型id_数据表id
}

//取消支付
message cancelMidasPay{
   optional int32 type=1;//1 成功   2 失败
   optional string orderId=2;//类型id_数据表id
}

//购买平台VIP
message buyPFVIP {
	optional string id = 1;//充值ID
}

//判断是否可购买VIP
message canBuyPlatVIP {
  optional string	rechargeId = 1;//充值ID
  optional bool autoRenewal = 2;//是否自动续费
  optional int32 os = 3;//系统类型 1:安卓/PC 2:IOS
  optional bool oepe = 4;//是否为企业包
}

//取消VIP自动续费
message cancelPlatVIPAutoRenewal {
  optional int32 vipType = 1;//要取消的VIP类型
}

//设置VIP自动续费
message setPlatVIPAutoRenewal {
  optional int32 vipType = 1;//要开启的VIP类型
}

//创建VIP订单 返回订单号 CommonResult.StringResult
message createVIPOrder {
  optional int32 os = 1;//系统类型 1:安卓 2:IOS
  optional int32 type = 2;//充值类型: 1:社交 2:直播
  optional bool oepe = 3;//是否为企业包
  optional string appId = 4;//appId
  optional string rechargeId = 5;//充值ID
  optional bool autoRenewal = 6;//是否自动续费
}

// 获取充值列表
// 返回结果:RechargeResult.RechargeList
message getRechargeList {
  optional int32 os = 1;//系统类型 1:安卓 2:IOS
  optional int32 type = 2;//充值类型: 1:社交 2:直播
  optional bool oepe = 3;//是否为企业包
  optional string appId = 4;//appId
  required string countryCode = 5;//当前所在的国家代码
  optional int32 payChannelType = 6;//当前选择的支付渠道类型
  optional string payType = 7;//当前选择的支付方式
}

// 获取充值列表
// 新逻辑兼容HaiPay根据国家和支付方式获取充值列表
// 返回结果:RechargeResult.RechargeList
message getRechargeListByCountryAndPayType {
  optional int32 os = 1;//系统类型 1:安卓 2:IOS
  optional int32 type = 2;//充值类型: 1:社交 2:直播
  optional bool oepe = 3;//是否为企业包
  optional string appId = 4;//appId
  required string countryCode = 5;//当前所在的国家代码
  optional int32 payChannelType = 6;//当前选择的支付渠道类型
  optional string payType = 7;//当前选择的支付方式
  optional string inBankCode = 8;//当前选择的支付方式
}

//币商充值 返回结果:RechargeResult.CoinShopRechargeResult
message getCoinShopRecharge {
    optional string selectCountry = 1;//选择国家 "ALL" "OTHER" "RECOMMEND" 或 国家ID 不传默认为ALL OTHER为其它 RECOMMEND为推荐
}

// 币商售卖页-搜索发放对象 返回结果:RechargeResult.CoinSellerTargetResult
message searchCoinSellerTarget {
    optional string keyword = 1;//用户ID或靓号
}

// 币商售卖页-提交发放 返回结果:RechargeResult.CoinSellerGrantResult
message submitCoinSellerGrant {
    optional string targetUserId = 1;//目标用户ID，兼容靓号
    optional int32 currencyType = 2;//前端货币类型 1-钻石(后端V币) 2-金币(后端钻石)
    optional int64 amount = 3;//前端展示数值
}

// 币商售卖页-查询当前登录币商余额 返回结果:RechargeResult.CoinSellerBalanceResult
message getCoinSellerBalance {
}

// 币商售卖页-余额明细列表 返回结果:RechargeResult.CoinSellerBalanceRecordListResult
message listCoinSellerBalanceRecord {
    optional int32 pageNum = 1;//页码，从1开始
    optional int32 pageSize = 2;//页大小
    optional int32 recordType = 3;//0-全部 1-币商充值 2-用户充值
}

// 一级币商-查询二级币商列表 返回结果:RechargeResult.SubCoinSellerListResult
message listSubCoinSeller {
    optional string keyword = 1;//二级币商用户ID或靓号
    optional int32 pageNum = 2;//页码，从1开始
    optional int32 pageSize = 3;//页大小
}

// 一级币商-搜索待添加的二级币商用户 返回结果:RechargeResult.SearchSubCoinSellerUserResult
message searchSubCoinSellerUser {
    optional string keyword = 1;//用户ID或靓号
}

// 一级币商-确认添加二级币商 返回结果:RechargeResult.AddSubCoinSellerResult
message addSubCoinSeller {
    optional string targetUserId = 1;//目标用户ID，兼容靓号
}

// 一级币商-获取二级币商管理信息 返回结果:RechargeResult.SubCoinSellerManageInfoResult
message getSubCoinSellerManageInfo {
    optional string subCooperatorUserId = 1;//二级币商用户ID，兼容靓号
}

// 一级币商-更新二级币商状态 返回结果:RechargeResult.EmptyCoinSellerResult
message updateSubCoinSellerStatus {
    optional string subCooperatorUserId = 1;//二级币商用户ID，兼容靓号
    optional int32 status = 2;//1-正常 2-封停
}

// 一级币商-删除二级币商关系 返回结果:RechargeResult.EmptyCoinSellerResult
message removeSubCoinSeller {
    optional string subCooperatorUserId = 1;//二级币商用户ID，兼容靓号
}

// 一级币商-给二级币商增加币商金币 返回结果:RechargeResult.GrantSubCoinSellerBalanceResult
message grantSubCoinSellerBalance {
    optional string subCooperatorUserId = 1;//二级币商用户ID，兼容靓号
    optional int64 amount = 2;//金币数量，前端展示口径，必须整百
}
