package com.xcong.excoin.modules.contract.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.xcong.excoin.common.entity.BaseEntity; import com.xcong.excoin.common.utils.BigDecimalSerialize; import lombok.Data; import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * 合约订单历史表 * * @author wzy * @date 2020-05-27 **/ @Data @TableName("contract_order") public class ContractOrderEntity extends BaseEntity { /** * 交易类型 市价 */ public static final int TRADE_TYPE_MARK_PRICE = 1; /** * 交易类型 限价 */ public static final int TRADE_TYPE_LIMIT_PRICE = 2; /** * 订单状态 撤单 */ public static final int ORDER_STATUS_CANCEL = 2; /** * 订单状态 成交 */ public static final int ORDER_STATUS_SUCCESS = 1; /** * 订单类型 开多 */ public static final int ORDER_TYPE_OPEN_MORE = 1; /** * 订单类型 开空 */ public static final int ORDER_TYPE_OPEN_LESS = 2; /** * 订单类型 平多 */ public static final int ORDER_TYPE_CLOSE_MORE = 3; /** * 订单类型 平空 */ public static final int ORDER_TYPE_CLOSE_LESS = 4; /** * 会员Id */ private Long memberId; /** * 订单编号 */ private String orderNo; /** * 仓位类型 1-逐仓 2-全仓 */ private int positionType; /** * 交易类型 1-市价 2-限价 */ private int tradeType; /** * 订单类型 - 1开多,2开空,3平多,4平空 */ private int orderType; /** * 订单状态 - 1成交 2撤单 */ private int orderStatus = 1; /** * 委托开仓价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal entrustOpeningPrice; /** * 委托时间 */ private Date entrustTime; /** * 币种 */ private String symbol; /** * 手数 */ private int symbolCnt; /** * 币种规格 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal symbolSku; /** * 平仓价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal closingPrice; /** * 平仓手续费 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal closingFeeAmount; /** * 平仓时间 */ private Date closingTime; /** * 平仓类型 2平多3平空4爆仓平多5爆仓平空6止盈平多7止盈平空8止损平多9止损平空 */ private int closingType; /** * 杠杆倍率 */ private int leverRatio; /** * 止损价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal stopLossPrice; /** * 止盈价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal stopProfitPrice; /** * 盈亏金额 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal rewardAmount; /** * 盈亏比例 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal rewardRatio; /** * 开仓价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal openingPrice; /** * 开仓手续费 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal openingFeeAmount; private Date openingTime; /** * 预付款金额 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal prePaymentAmount; /** * 保证金 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal bondAmount; /** * 市场价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal markPrice; /** * 预估强平价 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal forceClosingPrice; /** * 1普通合约2跟单合约 */ private int contractType; /** * 持仓费 */ @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal holdAmount; private int operateNo; @TableField(exist = false) private String refererId; @TableField(exist = false) private String refererIds; @TableField(exist = false) private String phone; @TableField(exist = false) private String email; @TableField(exist = false) private String name; @TableField(exist = false) private String timeType; /** * 盈亏金额返利 */ @TableField(exist = false) @JsonSerialize(using = BigDecimalSerialize.class) private BigDecimal rewardAmountProfit; @TableField(exist = false) private List IDs; }