package com.trade.service.trade.salesorder.vo;

import java.math.BigDecimal;
import java.time.LocalDate;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

@Data
public class SalesOrderVO {

    @ApiModelProperty(name = "id", value = "主键id")
    private Long id;
    @ApiModelProperty(name = "customerUserId", value = "用户id")
    private Long customerUserId;
    @ApiModelProperty(name = "orderNo", value = "订单编号")
    private String orderNo;
    @ApiModelProperty(name = "importerId", value = "进口商id")
    private Long importerId;
    @ApiModelProperty(name = "importerName", value = "进口商名称")
    private String importerName;
    @ApiModelProperty(name = "saleContractId", value = "销售合同id")
    private Long saleContractId;
    @ApiModelProperty(name = "salesContractName", value = "销售合同名称")
    private String salesContractName;
    @ApiModelProperty(name = "salesContractNo", value = "销售合同编号")
    private String salesContractNo;
    @ApiModelProperty(name = "fromPort", value = "启运港")
    private String fromPort;
    @ApiModelProperty(name = "destPort", value = "目的港")
    private String destPort;
    @ApiModelProperty(name = "agencyEnterpriseName", value = "代理企业名称")
    private String agencyEnterpriseName;
    @ApiModelProperty(name = "paymentWay", value = "付款方式")
    private String paymentWay;
    @ApiModelProperty(name = "paymentCurrency", value = "付款方币种")
    private String paymentCurrency;
    @ApiModelProperty(name = "settlementCycle", value = "结算周期单位天")
    private Integer settlementCycle;
    @ApiModelProperty(name = "amount", value = "订单金额")
    private BigDecimal amount;
    @ApiModelProperty(name = "status", value = "状态")
    private Integer status;
    @ApiModelProperty(name = "gmtCreate", value = "创建时间")
    private String gmtCreate;
    @ApiModelProperty(name = "gmtModified", value = "更新时间")
    private String gmtModified;
    @ApiModelProperty(name = "customerIdentifierNo", value = "用户id标识")
    private String customerIdentifierNo;
    @ApiModelProperty(name = "enterpriseName", value = "企业名称")
    private String enterpriseName;
    @ApiModelProperty(name = "createBy", value = "创建者")
    private String createBy;
    @ApiModelProperty(name = "updateBy", value = "更新者")
    private String updateBy;
    @ApiModelProperty(name = "pendingReceivedAmount", value = "待收货款金额")
    private BigDecimal pendingReceivedAmount;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(name = "expectedPaymentDueDate", value = "预计货款日期")
    private LocalDate expectedPaymentDueDate;
    @ApiModelProperty(name = "selectGoodAmount", value = "选择商品金额/非列表显示金额")
    private BigDecimal selectGoodAmount;
    @ApiModelProperty(name = "selectType", value = "选择类型1订单列表2订单详情")
    private Integer selectType;
}
