package com.sckw.manage.model.vo.req;

import com.sckw.core.utils.RegularUtils;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Pattern;
import jakarta.validation.constraints.Size;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * @author czh
 * @desc 新增入参
 * @date 2023/7/12
 */
@Data
public class AddressAddReqVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 6226758060220116207L;

    /**
     * 区域code
     */
    private Integer cityCode;

    /**
     * 区域名
     */
    @NotBlank(message = "区域名不能为空")
    @Size(max = 50, message = "区域名超长")
    private String cityName;

    /**
     * 联系人
     */
    @Pattern(regexp = RegularUtils.NAME, message = "联系人格式不正确")
    @NotBlank(message = "联系人不能为空")
    private String contacts;

    /**
     * 详细地址
     */
    private String detailAddress;

    /**
     * 电子围栏
     */
    private String fence;

    /**
     * 纬度
     */
    private String lat;

    /**
     * 经度
     */
    private String lng;

    /**
     * 地址名称
     */
    private String name;

    /**
     * 联系人电话
     */
    @Pattern(regexp = RegularUtils.PHONE_REG, message = "手机号格式不正确")
    @NotBlank(message = "手机号不能为空")
    private String phone;

    /**
     * 备注
     */
    @Size(max = 200, message = "备注超长")
    private String remark;

    /**
     * 地址类型
     */
    private Integer type;

}
