package com.copy.trade.entity.vo;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@Data
@ApiModel("平仓记录")
public class ClosePositionVo {

	private Long id;

	@ApiModelProperty("用户ID")
	private Long customerId;

	@ApiModelProperty("学生会员ID")
	private Long customerMemberId;

	@ApiModelProperty("交易员会员ID")
	private Long traderMemberId;

	@ApiModelProperty("学生昵称")
	private String customerName;

	@ApiModelProperty("老师昵称")
	private String traderName;

	@ApiModelProperty("仓位ID")
	private Long positionId;

	@ApiModelProperty("委托价格")
	private BigDecimal entrustPrice;

	@ApiModelProperty("平仓张数")
	private BigDecimal quantity;

	@ApiModelProperty("委托时间")
	private Long entrustTime;

	@ApiModelProperty("状态(0委托中 1已撤单 2委托失败 3已成交)")
	private Integer status;

	@ApiModelProperty("平仓类型(0平仓 1市价全平 2一键平仓 3反向开仓 4止盈止损 5爆仓 6管理员平仓 7跟单账户止盈 8跟单账号止损  9跟单仓位止盈 10跟单仓位止损 11跟单用户平仓")
	private Integer closeType;

	@ApiModelProperty("委托类型(1限价 0市价)")
	private Integer type;

	@ApiModelProperty("平仓委托单号")
	private String closePositionNo;

	@ApiModelProperty("合约委托单号")
	private String contractOrderEntrustId;

	@ApiModelProperty("跟随平仓委托单号")
	private String copyContractOrderEntrustId;

	@ApiModelProperty("交易手续费")
	private BigDecimal transactionFee;

	@ApiModelProperty("成交价格")
	private BigDecimal transactionPrice;

	@ApiModelProperty("成交金额")
	private BigDecimal transactionAmount;

	@ApiModelProperty("成交时间")
	private Long transactionTime;

	@ApiModelProperty("平仓委托失败原因")
	private String error;

	@ApiModelProperty("创建时间")
	private Date createdTime;

	@ApiModelProperty("更新时间")
	private Date updatedTime;

}
