package com.sckw.order.model.vo.res;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @desc: 订单列表响应参数
 * @author: yzc
 * @date: 2023-07-12 17:45
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class OrderListRes implements Serializable {

    @Serial
    private static final long serialVersionUID = 5081872933057018664L;
    /**
     * 订单id
     */
    private Long id;
    /**
     * 订单状态
     */
    private String status;
    /**
     * 订单编号
     */
    @JsonProperty("tOrderNo")
    private String tOrderNo;
    /**
     * 采购单位
     */
    private String purchaseUnit;
    /**
     * 销售单位
     */
    private String saleUnit;
    /**
     * 交付类型（签发交付、签收交付）
     */
    private String deliveryType;
    /**
     * 提货方式（采方自提、供应配送）
     */
    private String pickupType;
    /**
     * 托运状态
     */
    private String consignmentStatus;
    /**
     * 下单方式（自主下单/代客下单）
     */
    private String source;
    /**
     * 交易方式(预付款、货到付款）
     */
    private String trading;
    /**
     * 合同id
     */
    private Long contractId;
    /**
     * 合同编号
     */
    private String contractNo;
    /**
     * 合同编号
     */
    private String contractName;
    /**
     * 签约方式（线上签约、线下签约）
     */
    private String signingWay;
    /**
     * 商品id
     */
    private Long goodsId;
    /**
     * 商品名称
     */
    private String goodsName;
    /**
     * 单位（吨、方、箱、件）
     */
    private String unit;
    /**
     * 订单成交单价
     */
    private BigDecimal unitPrice;
    /**
     * 订单金额
     */
    private BigDecimal price;
    /**
     * 订单总量
     */
    private BigDecimal orderAmount;
    /**
     * 订单总量
     */
    private BigDecimal amount;
    /**
     * 已委托量
     */
    private BigDecimal entrustAmount;
    /**
     * 实际交付量
     */
    private BigDecimal actualAmount;
    /**
     * 归属项目
     */
    private String beLongingProject;
    /**
     * 装货地点
     */
    private String loadingPlace;
    /**
     * 卸货地点
     */
    private String unloadingPlace;
    /**
     * 计划开始时间
     */
    private String startTime;
    /**
     * 计划结束时间
     */
    private String endTime;
    /**
     * 备注
     */
    private String remark;
    /**
     * 创建人
     */
    private String creatByName;
    /**
     * 创建时间
     */
    private String createTime;
}
