package com.tmerclub.cloud.warehouse.model.vo;

import com.tmerclub.cloud.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 仓库视图对象
 *
 * @author :  frank
 * @create :  2025-04-14
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class WarehouseVO extends BaseVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @Schema(description = "主键ID")
    private Long warehouseId;
    /**
     * 店铺ID
     */
    private Long shopId;
    /**
     * 仓库名称
     */
    @Schema(description = "仓库名称")
    private String warehouseName;
    /**
     * 状态：0-禁用，1-启用
     */
    @Schema(description = "状态：0-禁用，1-启用")
    private Integer warehouseStatus;
    /**
     * 负责人姓名
     */
    @Schema(description = "负责人姓名")
    private String principalName;
    /**
     * 负责人电话
     */
    @Schema(description = "负责人电话")
    private String principalPhone;
    /**
     * 省ID
     */
    @Schema(description = "省ID")
    private Long provinceId;
    /**
     * 省
     */
    @Schema(description = "省")
    private String province;
    /**
     * 城市ID
     */
    @Schema(description = "城市ID")
    private Long cityId;
    /**
     * 城市
     */
    @Schema(description = "城市")
    private String city;
    /**
     * 区ID
     */
    @Schema(description = "区ID")
    private Long areaId;
    /**
     * 区
     */
    @Schema(description = "区")
    private String area;
    /**
     * 邮编
     */
    @Schema(description = "邮编")
    private String postCode;
    /**
     * 地址
     */
    @Schema(description = "地址")
    private String addr;
    /**
     * 经度
     */
    @Schema(description = "经度")
    private BigDecimal lng;
    /**
     * 纬度
     */
    @Schema(description = "纬度")
    private BigDecimal lat;
}