package com.ruoyi.mall.domain.dto;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * app地址管理对象 MallAppAddressDTO
 *
 * @author ruoyi
 * @date 2024-06-29
 */
@Getter
@Setter
@ToString
public class MallAppAddressDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    public interface addMallAppAddressDTO{}
    public interface updateMallAppAddressDTO{}
    public interface deleteMallAppAddressDTO{}

    /** 地址主键ID */
    @NotNull(message = "请输入地址主键ID",groups = {updateMallAppAddressDTO.class, deleteMallAppAddressDTO.class})
    private Long addressId;

    /** 系统用户ID（创建人ID） */
    @NotNull(message = "请先登录",groups = {addMallAppAddressDTO.class, deleteMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private Long sysUserId;

    /** 地址类型：0-寄件人地址，1-收件人地址 */
    @NotBlank(message = "请输入地址类型",groups = {addMallAppAddressDTO.class})
    private String addressType;

    /** 联系人 */
    @NotBlank(message = "请输入联系人",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private String name;

    /** 手机号 */
    @NotBlank(message = "请输入手机号",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private String phone;

    /** 省ID */
    @NotNull(message = "请选择省",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private Long provinceId;

    /** 市ID */
    @NotNull(message = "请选择市",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private Long cityId;

    /** 区ID */
    @NotNull(message = "请选择区",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private Long areaId;

    /** 详细地址 */
    @NotBlank(message = "请输入详细地址",groups = {addMallAppAddressDTO.class, updateMallAppAddressDTO.class})
    private String address;
}
