package com.yiqi.app.domain.dto;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yiqi.common.annotation.Excel;
import com.yiqi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 客户地址对象 app_user_address
 *
 * @author ruoyi
 * @date 2023-10-04
 */
@Data
public class AppUserAddressDTO {
    private static final long serialVersionUID=1L;

    /** ID */
    @ApiModelProperty("ID")
    private Long id;

    /** 省 */
    @ApiModelProperty("省")
    @NotEmpty(message = "省份不能为空")
    private String province;

    /** 城市 */
    @ApiModelProperty("城市")
    @NotEmpty(message = "城市不能为空")
    private String city;

    /** 区域 */
    @ApiModelProperty("区域")
    @NotEmpty(message = "区域不能为空")
    private String area;

    /** 地址 */
    @ApiModelProperty("地址")
    @NotEmpty(message = "地址不能为空")
    private String address;

    /** 门牌号 */
    @ApiModelProperty("门牌号")
    @NotEmpty(message = "门牌号不能为空")
    private String addressDetail;

    /** 经度 */
    @ApiModelProperty("经度")
    @NotNull(message = "经度不能为空")
    private BigDecimal longitude;

    /** 纬度 */
    @ApiModelProperty("纬度")
    @NotNull(message = "纬度不能为空")
    private BigDecimal latitude;

    /** 联系人姓名 */
    @ApiModelProperty("联系人姓名")
    @NotEmpty(message = "联系人不能为空")
    private String contactName;

    /** 联系人手机号 */
    @ApiModelProperty("联系人手机号")
    @NotEmpty(message = "手机号不能为空")
    private String contactPhone;

    /** 是否默认地址（N：否，Y：是） */
    @ApiModelProperty("是否默认地址（N：否，Y：是）")
    @NotEmpty(message = "是否默认不能为空")
    @Pattern(regexp = "\\bN\\b|\\bY\\b",message = "是否默认地址必须为N或Y")
    private String isDefault;

}
