package com.liquidnet.service.adam.dto;

import com.liquidnet.commons.lang.constant.LnsRegex;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.*;

@ApiModel(value = "AdamAddressesParam", description = "添加/编辑收获地址入参")
@Data
public class AdamAddressesParam implements java.io.Serializable {
    private static final long serialVersionUID = -2626425843975309892L;
    @ApiModelProperty(position = 10, required = false, value = "收获地址ID，编辑时必传[64]")
    private String addressesId;
    @ApiModelProperty(position = 11, required = true, value = "姓名[50]", example = "Swagger")
    @Size(min = 1, max = 30)
    private String name;
    @ApiModelProperty(position = 12, required = true, value = "手机号[11]", example = "13111111111")
    @Pattern(regexp = "\\d{11}", message = "手机号格式有误")
    private String phone;
    @ApiModelProperty(position = 13, required = true, value = "省份[30]", example = "北京")
    @Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "省份必须为2～30位汉字")
    private String province;
    @ApiModelProperty(position = 14, required = true, value = "城市[30]", example = "北京城区")
    @NotNull()
    @Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "城市必须为2～30位汉字")
    private String city;
    @ApiModelProperty(position = 15, required = true, value = "区县[30]", example = "朝阳区")
    @Pattern(regexp = LnsRegex.Valid.CHINESE_PCD, message = "区县必须为2～30位汉字")
    private String county;
    @ApiModelProperty(position = 16, required = true, value = "详细地址[100]", example = "广渠路1号创1958园区")
    @Size(max = 100)
    private String address;
}
