package com.shkj.wms.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.shkj.common.annotation.Excel;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.Date;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 货位资料对象 base_location
 *
 * @author lch
 * @date 2022-04-23
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("base_location")
public class BaseLocation implements Serializable {

private static final long serialVersionUID=1L;


    /**
     * 自增id
     */
    @TableId(value = "id", type = IdType.AUTO)
    @Excel(name = "自增id", width = 15 )
    private Long id;


    /**
     * 货位ID
     */
    @Excel(name = "货位ID", width = 20)
    private String locationCode;


    /**
     * 货位名称
     */
    @Excel(name = "货位名称", width = 20)
    private String locationName;


    /**
     * 库区ID
     */
    @Excel(name = "库区ID", width = 20)
    private Long areaId;

    /**
     * 货位状态 废弃
     */
    @Excel(name = "货位状态", width = 20)
    private String locationStatus;

    /**
     * 逻辑区域键值
     */
    private Long logicId;


    /**
     * 货位类型
     */
    @Excel(name = "货位类型", width = 20)
    private String type;


    /**
     * 巷道
     */
    @Excel(name = "巷道", width = 20)
    private String tunnel;


    /**
     * 排
     */
    @Excel(name = "排", width = 20)
    private String locationRow;


    /**
     * 层
     */
    @Excel(name = "层", width = 20)
    private String layer;


    /**
     * 列
     */
    @Excel(name = "列", width = 20)
    private String locationColumn;


    /**
     * 是否活动
     */
    @Excel(name = "是否活动", width = 20)
    private String isuse;


    /**
     * 长
     */
    @Excel(name = "长", width = 20)
    private BigDecimal length;


    /**
     * 宽
     */
    @Excel(name = "宽", width = 20)
    private BigDecimal width;


    /**
     * 高
     */
    @Excel(name = "高", width = 20)
    private BigDecimal height;


    /**
     * 体积
     */
    @Excel(name = "体积", width = 20)
    private BigDecimal volume;


    /**
     * 重量
     */
    @Excel(name = "重量", width = 20)
    private BigDecimal weight;


    /**
     * 存放件数
     */
    @Excel(name = "存放件数", width = 20)
    private Long capacity;


    /**
     * 品种数
     */
    @Excel(name = "品种数", width = 20)
    private Long skunum;


    /**
     * 货位组
     */
    @Excel(name = "货位组", width = 20)
    private String locationGroup;


    /**
     * 逻辑区域
     */
    @Excel(name = "逻辑区域", width = 20)
    private String logicArea;


    /**
     * ABC分类
     */
    @Excel(name = "ABC分类", width = 20)
    private String abcClassify;


    /**
     * 楼层
     */
    @Excel(name = "楼层", width = 20)
    private String floor;


    /**
     * 库房条件
     */
    @Excel(name = "库房条件", width = 20)
    private String storageConditions;


    /**
     * 拣货路径
     */
    @Excel(name = "拣货路径", width = 20)
    private String route;


    /**
     * 存储分类(0:整散分开；1：整散合一
     */
    @Excel(name = "存储分类(0:整散分开；1：整散合一", width = 20)
    private String storageClassify;


    /**
     * 扩展字段1
     */
    @Excel(name = "扩展字段1", width = 20)
    private String extend1;


    /**
     * 扩展字段2
     */
    @Excel(name = "扩展字段2", width = 20)
    private String extend2;


    /**
     * 扩展字段3
     */
    @Excel(name = "扩展字段3", width = 20)
    private String extend3;


    /**
     * 扩展字段4
     */
    @Excel(name = "扩展字段4", width = 20)
    private String extend4;


    /**
     * 扩展字段5
     */
    @Excel(name = "扩展字段5", width = 20)
    private String extend5;


    /**
     * 备注
     */
    @Excel(name = "备注", width = 20)
    private String remark;


    /**
     * 仓ID
     */
    @Excel(name = "仓ID", width = 20)
    private Long branchId;


    /**
     * 删除状态
     */
    @Excel(name = "删除状态", width = 20)
    private String isDel;

    /**
     * 是否双深位
     */
    @Excel(name = "是否双深位", width = 20)
    private  String isDeep;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+7")
    private Date createTime;


    /**
     * 创建人
     */
    @TableField(fill = FieldFill.INSERT)
    @Excel(name = "创建人", width = 20)
    private String createBy;


    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+7")
    private Date updateTime;


    /**
     * 修改人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @Excel(name = "修改人", width = 20)
    private String updateBy;



}
