package com.xingxi.api.data.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.xingxi.business.Order.domain.Order;
import lombok.Getter;
import lombok.Setter;

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

@Getter
@Setter
@JsonIgnoreProperties("params")
public class OrderDTO {

    // 订单ID
    private Long orderId;

    // 订单号
    private String orderNo;

    // 订单时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date orderTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date payTime;

    // 订单状态
    private String orderStatus;

    // 订单总额
    private BigDecimal orderAmount;

    // 支付金额
    private BigDecimal payAmount;

    // 商品数量
    private Integer prodQuantity;

    // 购方用户ID
    private Long buyerId;

    // 销方用户ID
    private Long sellerId;

    // 取消时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date cancelTime;

    // 完成时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date finishTime;

    // 收件人省名称
    private String recProv;

    // 收件人市名称
    private String recCity;

    // 收件人区名称
    private String recDistrict;

    // 收件人地址
    private String recAddress;

    // 收件人姓名
    private String recName;

    // 收件人联系方式
    private String recMobile;

    private String remark;

    // 删除标志（0代表存在 2代表删除）
    private String delFlag;

    /**
     * 创建者
     */
    private String createUser;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 更新者
     */
    private String updateUser;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    private List<OrderDetailDTO> orderDetailDTOS;


}
