package com.ruoyi.wms.po;

import lombok.Data;

import javax.persistence.*;
import java.io.Serializable;

import io.swagger.annotations.ApiParam;

@Data
@Entity
@Table(name = "store_info")
public class StoreInfo implements Serializable {

    /**
     * id
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    @ApiParam(value = "id")
    private Integer id;

    /**
     * 库位编码
     */
    @Column(name = "store_code")
    @ApiParam(value = "库位编码")
    private String storeCode;

    /**
     * 库位类型：5-干湿库位 10-缓存库位 15-检验库位 20-抽检库位 25-成品缓存库位 30-成品出库库位 35-空车回库库位
     */
    @Column(name = "store_type")
    @ApiParam(value = "库位类型：5-干湿库位 10-缓存库位 15-检验库位 20-抽检库位 25-成品缓存库位 30-成品出库库位 35-空车回库库位 ")
    private Integer storeType;

    /**
     * 库位状态
     * 5-空闲：机器人任务回调后
     * 10-待占用：机器人任务发起后
     * 15-占用：机器人任务回调后
     * 20-待空闲：机器人任务发起后
     */
    @Column(name = "store_status")
    @ApiParam(value = "库位状态 5-空闲：机器人任务回调后10-待占用：机器人任务发起后15-占用：机器人任务回调后20-待空闲：机器人任务发起后")
    private Integer storeStatus;

    /**
     * 库位属于的工位编码
     */
    @Column(name = "station_code")
    @ApiParam(value = "库位属于的工位编码")
    private String stationCode;

    /**
     * 货架编码
     */
    @Column(name = "shelf_code")
    @ApiParam(value = "货架编码")
    private String shelfCode;

    /**
     * 创建人
     */
    @Column(name = "created_by")
    @ApiParam(value = "创建人")
    private String createdBy;

    /**
     * 创建时间
     */
    @Column(name = "created_dt")
    @ApiParam(value = "创建时间")
    private String createdDt;

    /**
     * 更新人
     */
    @Column(name = "updated_by")
    @ApiParam(value = "更新人")
    private String updatedBy;

    /**
     * 更新时间
     */
    @Column(name = "updated_dt")
    @ApiParam(value = "更新时间")
    private String updatedDt;

    @Transient
    @ApiParam("排序")
    private String[] orders;

    @Transient
    @ApiParam("状态集合")
    private Integer[] storeStatusArr;

    @Transient
    @ApiParam("类型集合")
    private Integer[] storeTypeArr;
}
