package cn.iocoder.yudao.module.order.vo.orderConsignee;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import javax.validation.constraints.*;

/**
* 订单收货人信息 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class OrderConsigneeBaseVO {

    @ApiModelProperty(value = "下单用户id")
    private Long relationId;

    @ApiModelProperty(value = "订单id")
    private Long orderId;

    @ApiModelProperty(value = "收货人姓名")
    private String name;

    @ApiModelProperty(value = "收货人姓名(英文)")
    private String nameEn;

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

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "公司")
    private String company;

    @ApiModelProperty(value = "公司(英文)")
    private String companyEn;

    @ApiModelProperty(value = "收获方式：1 自提 2 送货上门 ")
    private Integer harvestMethod;

    @ApiModelProperty(value = "地址", required = true)
    @NotNull(message = "地址不能为空")
    private String address;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "送货时间", required = true)
    @NotNull(message = "送货时间不能为空")
    private String deliveryDate;

    @ApiModelProperty(value = "国家简称")
    private String countryAbbreviation;

    @ApiModelProperty(value = "国家区号", required = true)
    @NotNull(message = "国家区号不能为空")
    private String countryCode;

    @ApiModelProperty(value = "客户id", required = true)
    @NotNull(message = "客户id不能为空")
    private Long customerId;

    @ApiModelProperty(value = "客户编号")
    private String customerNumber;

    @ApiModelProperty(value = "客户联系人id", required = true)
    @NotNull(message = "客户联系人id不能为空")
    private Long customerContactsId;

}
