syntax = "proto3";

package matchmaking.v1;

import "google/api/annotations.proto";

option go_package = "matchmaking-system/api/matchmaking/v1;v1";

service ShareInr {
  // GetBotStockInrTrade 印度股列表查询
  rpc GetBotStockInrTrade(GetInrBotStockTradeRequest)returns(GetBotStockInrTradeReply){
    option (google.api.http) = {
      post:"/order_shareinr/share_list",
      body:"*",
    };
  }
  // ShareInrPlaceOrder 印度股下单
  rpc ShareInrPlaceOrder(ShareInrOrderRequest)returns(InrOrderReply) {
    option (google.api.http) = {
      post: "/order_shareinr/share_place_order",
      body: "*",
    };
  }
  // ShareInrUpdateOrder 印度股设置止盈止损
  rpc ShareInrUpdateOrder(UpdateInrOrderRequest)returns(InrOrderReply){
    option (google.api.http) = {
      post:"/order_shareinr/share_update_order",
      body:"*",
    };
  }
  // ShareInrPosition 印度股平仓
  rpc ShareInrPosition(CancelInrOrderRequest)returns(InrOrderReply){
    option (google.api.http) = {
      post:"/order_shareinr/share_position",
      body:"*",
    };
  }
  // ShareInrAllPosition 印度股一键平仓
  rpc ShareInrAllPosition(AllInrOrderRequest)returns(AllInrOrderReply){
    option (google.api.http) = {
      post:"/order_shareinr/share_all_position",
      body:"*",
    };
  }
  // ShareInrCancel 印度股撤单
  rpc ShareInrCancel(CancelInrOrderRequest)returns(InrOrderReply){
    option (google.api.http) = {
      post:"/order_shareinr/share_cancel",
      body:"*",
    };
  }
}

message CancelInrOrderRequest{
  string orderId =1;// 订单ID
}

message UpdateInrOrderRequest{
  string orderId =1;// 订单Id
  int64 stopType =2;// 止盈止损
  string stopLossPrice =3;// 止损
  string stopWinPrice =4;// 止盈
}

message ShareInrOrderRequest{
  string stockId =1;// 股票Code
  int64 tradeType =2;// 交易类型:1买入,2卖出
  int64 dealType =3;// 委托方式:1限价,2市价
  string limitPrice =4;// 限价
  string marketPrice =5;// 市价
  string marketMoney =6;// 订单金额
  string orderNumber =7;// 订单数量
  string serviceCost =8;// 手续费
  int64  stopType =9;// 止损止盈设置:1无设置,2止损止盈
  string stopLossPrice =10;// 止损
  string stopWinPrice =11;// 止损
  string pryNum =12;// 杠杆
}

message GetInrBotStockTradeRequest{
  int64 status =1;// 状态码
  int64 pageSize =2; // 每页显示条数
  int64 pageCount =3;// 开始的位置
}

message GetBotStockInrTradeReply{
  int64 code =1;// 状态码
  BotStockInrTradeData data =2;// 返回结果
  string message =3;// 返回消息提示
}

message BotStockInrTradeData{
  int64 pageSize =1; // 每页显示条数
  int64 pageCount =2;// 开始的位置
  repeated BotStockInrTrade data =3;// 返回结果
  int64 totalCount =4;// 总数据
}

message BotStockInrTrade{
  string orderId =1;// 订单ID
  string stockId =2;// 股票代码
  int64 tradeType =3;// 交易类型
  int64 dealType =4;// 交易方式
  string limitPrice =5;// 限价
  string marketPrice =6;// 市价
  string dealPrice =7;// 开仓价
  string closingPrice =8;// 平仓价
  string orderNumber =9;// 订单数量
  int64  stopType =10;// 止盈止损
  string stopLossPrice =11;// 止损
  string stopWinPrice =12;// 止盈
  string serviceCost =13;// 开仓手续费
  string marketMoney =14;// 订单金额
  string orderMoney =15;// 订单总金额
  int64 status =16;// 订单状态
  string createTime =17;// 订单创建时间
  string updateTime =18;// 订单更新时间
  string openTime =19;// 订单开仓时间
  string closingTime =20;// 订单平仓时间
  string closingCost =21;// 平仓手续费
  string faceValue =22;// 面值
  string pryNum =23;// 杠杆
  string keepDecimal =24;// 保留小数位
  string stockName =25;// 股票名称
}

message InrOrderReply{
  int64 code =1;// 状态码
  InrOrderResult data =2;// 返回结果
  string message =3;// 返回消息提示
}

message InrOrderResult {
  string orderId =1;// 订单Id
}

message AllInrOrderRequest{

}

message AllInrOrderReply{
  int64 code =1;// 状态码
  string data =2;// 返回结果
  string message =3;// 返回消息提示
}