package com.unis.crk.basic.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;

import java.util.ArrayList;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.List;

import com.unis.crk.business.qcrk.entity.DataCrkywJyxxFlt001;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 库点仓房信息
 * </p>
 *
 * @author TangSong
 * @since 2021-11-25
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="BasicStorehouse对象", description="库点仓房信息")
public class BasicStorehouse implements Serializable {

private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "ID")
    @TableId(value = "storehouse_id", type = IdType.AUTO)
    private String storehouseId;

    @ApiModelProperty(value = "与一体化系统对接使用的主键")
    private String uuid;

    @ApiModelProperty(value = "所属库点ID")
    private String depotId;

    @ApiModelProperty(value = "所属库点名称")
    private String depotName;

    @ApiModelProperty(value = "部门ID")
    private String orgId;

    @ApiModelProperty(value = "部门名称")
    private String orgName;

    @ApiModelProperty(value = "仓房编号")
    private String storehouseCode;

    @ApiModelProperty(value = "仓房名称")
    private String storehouseName;

    @ApiModelProperty(value = "仓房类型编号（立筒仓等）")
    private String storehouseType;

    @ApiModelProperty(value = "仓房类型明细")
    private String storehouseTypeMx;

    @ApiModelProperty(value = "建筑类型")
    private String architectureType;

    @ApiModelProperty(value = "仓房图")
    private String storeImg;

    @ApiModelProperty(value = "仓房结构_地面")
    private String ground;

    @ApiModelProperty(value = "仓房结构_墙体")
    private String wall;

    @ApiModelProperty(value = "仓房结构_房顶")
    private String roof;

    @ApiModelProperty(value = "仓房结构_房架")
    private String house;

    @ApiModelProperty(value = "设计容量（数字，单位吨）")
    private BigDecimal designCapacity;

    @ApiModelProperty(value = "保管方式")
    private String keepingWay;

    @ApiModelProperty(value = "装粮高度")
    private BigDecimal grainHeigth;

    @ApiModelProperty(value = "仓外_长（米）")
    private BigDecimal storeOutsideLength;

    @ApiModelProperty(value = "仓外_宽（米）")
    private BigDecimal storeOutsideWidth;

    @ApiModelProperty(value = "仓外_檐高（米）")
    private BigDecimal storeOutsideHeigth;

    @ApiModelProperty(value = "仓外_顶高(米)")
    private BigDecimal storeOutsideTopHeigth;

    @ApiModelProperty(value = "筒仓外径(米)")
    private BigDecimal outsideSiloDiameter;

    @ApiModelProperty(value = "外墙面积(平方米)")
    private BigDecimal outerWallArea;

    @ApiModelProperty(value = "扣除体积")
    private BigDecimal deductVolume;

    @ApiModelProperty(value = "仓内长度（米）")
    private BigDecimal length;

    @ApiModelProperty(value = "仓内宽度（米）")
    private BigDecimal width;

    @ApiModelProperty(value = "仓内檐高（米）")
    private BigDecimal heigth;

    @ApiModelProperty(value = "仓内装粮线高")
    private BigDecimal grainLineHeigth;

    @ApiModelProperty(value = "筒仓内径")
    private BigDecimal siloDiameter;

    @ApiModelProperty(value = "仓内体积")
    private BigDecimal binVolume;

    @ApiModelProperty(value = "粮堆体积")
    private BigDecimal grainPileVolume;

    @ApiModelProperty(value = "仓门数量")
    private Integer houseDoorNum;

    @ApiModelProperty(value = "仓门位置")
    private String houseDootPosition;

    @ApiModelProperty(value = "仓门宽度（米）")
    private BigDecimal houseDoorWidth;

    @ApiModelProperty(value = "仓门高度（米）")
    private BigDecimal houseDoorHeigth;

    @ApiModelProperty(value = "通风方式")
    @TableField("draftType")
    private String draftType;

    @ApiModelProperty(value = "隔热方式_仓顶")
    @TableField("heatInsulationStep_roof")
    private String heatinsulationstepRoof;

    @ApiModelProperty(value = "隔热方式_仓窗")
    @TableField("heatInsulationStep_window")
    private String heatinsulationstepWindow;

    @ApiModelProperty(value = "隔热保温措施")
    private String grbwcs;

    @ApiModelProperty(value = "能否散装储存(1:能,0:否,9:其他或不确定)")
    private Integer nfszcc;

    @ApiModelProperty(value = "有无防鼠防雀防虫装置及设施(1:能,0:否,9:其他或不确定)")
    private Integer ywfsfqfczz;

    @ApiModelProperty(value = "有无防火防爆防盗设施(1:能,0:否,9:其他或不确定)")
    private Integer ywfhfbfdss;

    @ApiModelProperty(value = "有无粮情检测设施(1:能,0:否,9:其他或不确定)")
    private Integer ywlqjcss;

    @ApiModelProperty(value = "有无机械通风设施(1:能,0:否,9:其他或不确定)")
    private Integer ywjxtfss;

    @ApiModelProperty(value = "能否环流熏蒸杀虫(1:能,0:否,9:其他或不确定)")
    private Integer nfhlxzsc;

    @ApiModelProperty(value = "能否富氮低氧气调储粮(1:能,0:否,9:其他或不确定)")
    private Integer nffddyqtcl;

    @ApiModelProperty(value = "能否仓外测虫(1:能,0:否,9:其他或不确定)")
    private Integer nfcwcc;

    @ApiModelProperty(value = "建成日期")
    private Date completionDate;

    @ApiModelProperty(value = "启用日期")
    @TableField("useDate")
    private Date useDate;

    @ApiModelProperty(value = "仓房状态")
    private String storehouseState;

    @ApiModelProperty(value = "储粮方式")
    private String storeWay;

    @ApiModelProperty(value = "仓房使用状态 ")
    @TableField("currentType")
    private String currentType;

    @ApiModelProperty(value = "责任保管员")
    @TableField("dutyStoreman")
    private String dutyStoreman;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "创建人")
    @TableField("createName")
    private String createName;

    @ApiModelProperty(value = "创建日期")
    @TableField("createDate")
    private Date createDate;

    @ApiModelProperty(value = "更新人")
    @TableField("updateName")
    private String updateName;

    @ApiModelProperty(value = "更新日期")
    @TableField("updateDate")
    private Date updateDate;


    @ApiModelProperty(value = "粮食作业状态")
    private String workingStatus;

    @ApiModelProperty(value = "删除状态(1.正常，2.删除)")
    private Integer delFlag;

    @ApiModelProperty(value = "库类型，0.主粮库，1.代储点粮库")
    private String libraryType;

    private Date updatetime;

    private Integer datatype;

    @ApiModelProperty(value = "货位编码")
    @TableField(exist = false)
    private String hwbm;

    @ApiModelProperty(value = "存储类型")
    private String cclx;

    @ApiModelProperty(value = "实际仓容(t)")
    @TableField("actual_capacity")
    private BigDecimal actualCapacity;

    @ApiModelProperty(value = "附属设施是否完好")
    @TableField(exist = false)
    private Integer fssssfwh;

    @ApiModelProperty(value = "油罐类型")
    @TableField("currentType")
    private String tankType;

    @ApiModelProperty(value = "有无加热装置")
    @TableField(exist = false)
    private Integer ywjrzz;

    @ApiModelProperty(value = "直径(m)")
    @TableField(exist = false)
    private BigDecimal diameter;

    @ApiModelProperty(value = "高度(m)")
    @TableField(exist = false)
    private BigDecimal height;

    @ApiModelProperty(value = "检定方式")
    @TableField(exist = false)
    private String verificationMethod;

    @ApiModelProperty(value = "焊接方式")
    @TableField(exist = false)
    private String weldingMethod;

    @ApiModelProperty(value = "油罐状态")
    @TableField(exist = false)
    private String tankStatus;

    @ApiModelProperty(value = "底面积(㎡)")
    @TableField(exist = false)
    private BigDecimal bottomArea;

    @ApiModelProperty(value = "设计储油高度(m)")
    @TableField(exist = false)
    private BigDecimal designedStorageHeight;

    @ApiModelProperty(value = "出油口高度(m)")
    @TableField(exist = false)
    private BigDecimal outOilHeight;

    @ApiModelProperty(value = "类型")
    @TableField(exist = false)
    private String type;

    @ApiModelProperty(value = "货位子表")
    @TableField(exist = false)
    private List<BasicWarehouse> basicWarehouseList = new ArrayList<>();
}
