package com.xcong.excoin.modules.contract.parameter.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.xcong.excoin.common.enumerates.SymbolsPlacesEnum; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.Date; /** * @author wzy * @date 2020-06-01 **/ @Data @ApiModel(value = "HoldOrderListVo", description = "获取当前持仓列表接口返回数据类") public class HoldOrderListVo { @ApiModelProperty(value = "订单ID", example = "1") private Long id; @ApiModelProperty(value = "开仓均价", example = "9000.00") private BigDecimal openingPrice; @ApiModelProperty(value = "止损") private BigDecimal stopLossPrice; @ApiModelProperty(value = "止盈") private BigDecimal stopProfitPrice; @ApiModelProperty(value = "保证金") private BigDecimal bondAmount; @ApiModelProperty(value = "强平价") private BigDecimal forceClosingPrice; @ApiModelProperty(value = "杠杆倍率") private int leverRatio; @ApiModelProperty(value = "订单类型 1-开多 2-开空") private int openingType; @ApiModelProperty(value = "币种") private String symbol; @ApiModelProperty(value = "张数") private int symbolCnt; @ApiModelProperty(value = "可平张数") private int symbolCntSale; @ApiModelProperty(value = "回报率") private BigDecimal returnRate; @ApiModelProperty(value = "盈亏") private BigDecimal profitOrLoss; @ApiModelProperty(value = "可增加的最大保证金") private BigDecimal canAddMaxBond; @ApiModelProperty(value = "可减少最大保证金") private BigDecimal canReduceMaxBond; @ApiModelProperty(value = "开仓时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date createTime; @ApiModelProperty(value = "交易类型 1-市价 2-限价") private Integer tradeType; @ApiModelProperty(value = "仓位类型 1-逐仓 2-全仓") private Integer positionType; public String getOpeningPrice() { return openingPrice.setScale(SymbolsPlacesEnum.getValueByName(this.symbol), BigDecimal.ROUND_DOWN).toPlainString(); } public String getBondAmount() { return bondAmount.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public String getForceClosingPrice() { return forceClosingPrice.setScale(SymbolsPlacesEnum.getValueByName(this.symbol), BigDecimal.ROUND_DOWN).toPlainString(); } public String getProfitOrLoss() { return profitOrLoss.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public BigDecimal getCanAddMaxBond() { return canAddMaxBond.setScale(4, BigDecimal.ROUND_DOWN); } public BigDecimal getCanReduceMaxBond() { return canReduceMaxBond.setScale(4, BigDecimal.ROUND_DOWN); } }