package com.muchinfo.mtp3pojos.vo.query.deliveryorder;

import com.muchinfo.mtp3pojos.entity.Wrfactortypeitem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "SettlementDealDetailResult对象", description = "交收成交查询详情响应")
public class SettlementDealDetailResult {

    private String wrfactortypeid;

    @ApiModelProperty(value = "交收单号")
    private String deliveryid;

    @ApiModelProperty(value = "交易日")
    private String histradedate;

    private String tradedate;

    @ApiModelProperty(value = "方向")
    private Integer buyorsell;

    @ApiModelProperty(value = "买方(账号)")
    private String accountname;

    private Long accountid;

    @ApiModelProperty(value = "卖方(账号)")
    private String matchaccountname;

    private Long matchaccountid;

    private String iszhongjiang;

    @ApiModelProperty(value = "交收总金额")
    private BigDecimal deliverytotalamount;

    @ApiModelProperty(value = "交收单价")
    private BigDecimal deliveryprice;

    @ApiModelProperty(value = "交收服务费")
    private BigDecimal deliverycharge;

    @ApiModelProperty(value = "升贴水总额")
    private BigDecimal deliverypricemove;

    @ApiModelProperty(value = "剩余总金额")
    private BigDecimal remaintotalamount;

    @ApiModelProperty(value = "状态")
    private Integer deliverystatus;

    @ApiModelProperty(value = "成交时间")
    private Date deliverytime;

    @ApiModelProperty(value = "服务费收取方式")
    private Integer feealgorithm;

    @ApiModelProperty(value = "会员服务费设置值")
    private BigDecimal memberchargevalue;

    @ApiModelProperty(value = "平台服务费设置值")
    private BigDecimal exchchargevalue;

    @ApiModelProperty(value = "买申报委托单号")
    private String selldeliveryapplyorderid;

    @ApiModelProperty(value = "申报单号")
    private String deliveryorderid;

    @ApiModelProperty(value = "卖申报委托单号")
    private String buydeliveryapplyorderid;

    @ApiModelProperty(value = "卖方交收收取方式")
    private Integer marginalgorithm;

    @ApiModelProperty(value = "卖方交收保证金值")
    private BigDecimal marginvalue;

    @ApiModelProperty(value = "卖方冻结保证金")
    private BigDecimal freezemargin;

    @ApiModelProperty(value = "提货方式")
    private Integer takemode;

    @ApiModelProperty(value = "提货地址")
    private String receiveraddress;

    @ApiModelProperty(value = "现货商品")
    private String wrstandardcode;

    private String wrstandardname;

    @ApiModelProperty(value = "申报数量")
    private Integer deliveryqty;

    private String deliverygoodsunitname;

    @ApiModelProperty(value = "交收数量")
    private Integer deliveryrtradeqty;

    @ApiModelProperty(value = "交易合约")
    private String xgoodsname;

    @ApiModelProperty(value = "合约价格")
    private BigDecimal xdeliveryprice;

    @ApiModelProperty(value = "订单手数")
    private Integer xdeliverycloseqty;

    @ApiModelProperty(value = "价格方式")
    private Integer ppricemode;

    @ApiModelProperty(value = "辅助合约一")
    private String pgoodsname;

    private BigDecimal pdeliveryprice;

    @ApiModelProperty(value = "订单手数")
    private Integer pdeliverycloseqty;

    @ApiModelProperty(value = "价格方式")
    private Integer p2pricemode;

    @ApiModelProperty(value = "辅助合约二")
    private String p2goodsname;

    private BigDecimal p2deliveryprice;

    @ApiModelProperty(value = "订单手数")
    private Integer p2deliverycloseqty;

    private List<Wrfactortypeitem> wrFactorTypeItemList;

    private String warehousename;
}
