package com.xcong.excoin.modules.contract.parameter.vo; import com.fasterxml.jackson.annotation.JsonFormat; 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 = "HoldOrderDetailVo", description = "获取持仓订单详情接口返回类") public class HoldOrderDetailVo { @ApiModelProperty("订单编号") private String orderNo; @ApiModelProperty("仓位类型 1-逐仓 2-全仓") private int positionType; @ApiModelProperty("交易类型 1-市价2-限价") private int tradeType; @ApiModelProperty("可平张数(仅全仓模式)") private int symbolCntSale; @ApiModelProperty("币种") private String symbol; @ApiModelProperty("张数") private int symbolCnt; @ApiModelProperty("规格") private BigDecimal symbolSku; @ApiModelProperty("开仓价") private BigDecimal openingPrice; @ApiModelProperty("开仓类型 1-开多 2-开空") private int openingType; @ApiModelProperty("开仓手续费") private BigDecimal openingFeeAmount; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @ApiModelProperty("开仓时间") private Date openingTime; @ApiModelProperty("保证金") private BigDecimal bondAmount; @ApiModelProperty("持仓费") private BigDecimal holdAmount; @ApiModelProperty("预估强平价") private BigDecimal forceClosingPrice; @ApiModelProperty("止损价") private BigDecimal stopLossPrice; @ApiModelProperty("止盈价") private BigDecimal stopProfitPrice; @ApiModelProperty("倍率杠杆") private int leverRatio; public String getOpeningPrice() { return openingPrice == null ? "" : openingPrice.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public String getOpeningFeeAmount() { return openingFeeAmount == null ? "" : openingFeeAmount.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public String getBondAmount() { return bondAmount == null ? "" : bondAmount.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public String getHoldAmount() { return holdAmount == null ? "" : holdAmount.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public String getForceClosingPrice() { return forceClosingPrice == null ? "" : forceClosingPrice.setScale(4, BigDecimal.ROUND_DOWN).toPlainString(); } public void setOpeningFeeAmount(BigDecimal openingFeeAmount, BigDecimal feeSpread) { this.openingFeeAmount = openingFeeAmount == null ? openingFeeAmount : openingFeeAmount.multiply(feeSpread).setScale(8, BigDecimal.ROUND_DOWN); } }