package com.fzm.mall.server.front.asset.model.vo.order;

import com.fzm.mall.server.front.asset.model.vo.order.OrderDetailVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * @author tdz
 * @date 2021/02/22 11:26
 */
@Data
@ApiModel("订单信息")
public class OrderVO {
    @ApiModelProperty("买家编号")
    private String uid;
    @ApiModelProperty("卖家编号")
    private String merchantId;
    @ApiModelProperty("商户名称")
    private String enterpriseName;
    @ApiModelProperty("订单编号")
    private String oid;
    @ApiModelProperty(value = "支付单号")
    private String payId;
    @ApiModelProperty("订单详细编号")
    private List<OrderDetailVO> orders;

    @ApiModelProperty("订单邮费")
    private BigDecimal postFee;
    @ApiModelProperty("抵扣积分币种")
    private String bpCoin;
    @ApiModelProperty("抵扣积分数量")
    private String bpNumber;
    @ApiModelProperty("抵扣积分价值")
    private String bpAmount;
    @ApiModelProperty("优惠券")
    private String coupon;
    @ApiModelProperty("优惠券金额")
    private BigDecimal couponAmount;
    @ApiModelProperty("促销优惠金额")
    private BigDecimal promotionAmount;
    @ApiModelProperty("订单总价")
    private BigDecimal total;

    @ApiModelProperty("是否接受数字货币：1->接受，2->不接受")
    private Integer acceptDigital;

    @ApiModelProperty("应付金额")
    private BigDecimal amount;

    @ApiModelProperty("订单状态，1->交易成功，2->交易关闭，3->定金已付，4->待退款，5->已退款，6->支付中，7->待支付")
    private Integer orderState;
    @ApiModelProperty("订单是否已删除，0->未删除，1->已删除")
    private Integer isDelete;
    @ApiModelProperty(value = "是否直接提货，0->否，1->是")
    private Integer delivery;
    @ApiModelProperty("订单创建时间")
    private Long createTime;
    @ApiModelProperty("支付或取消时间")
    private Long updateTime;
    @ApiModelProperty(value = "收货人名称")
    private String uname;

    @ApiModelProperty(value = "收人手机号")
    private String phone;

    @ApiModelProperty(value = "提货地址")
    private String address;
    @ApiModelProperty("退款索引")
    private String returnIndex;
    @ApiModelProperty("退款理由")
    private String returnReason;
    @ApiModelProperty("退款时间")
    private Long returnTime;
    @ApiModelProperty("退款完成或撤销时间")
    private Long returnUpdateTime;
    @ApiModelProperty("退款审核备注")
    private String vnote;
    @ApiModelProperty("支付时间")
    private Long payTime;
    @ApiModelProperty("支付类型")
    private Integer payType;
    @ApiModelProperty(value = "1.普通 2.预售 3.拍卖")
    private Integer orderType;

}
