package com.zd.chemical.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.zd.common.core.annotation.Excel;
import com.zd.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.hibernate.validator.constraints.Length;

import java.util.ArrayList;
import java.util.Date;
import java.util.LinkedHashMap;
import java.util.List;

/**
 * 化学品机柜管理信息对象 hxp_cabinet
 *
 * @author liubo
 * @date 2022-06-16
 */
@ApiModel("化学品机柜管理信息")
public class HxpCabinetVo {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @ApiModelProperty(value = "${comment}")
    private Long id;

    @Excel(name = "机柜编号")
    @ApiModelProperty(value = "机柜编号")
    private String cabinetNum;

    @Excel(name = "机柜名称")
    @ApiModelProperty(value = "机柜名称")
    private String cabinetName;

    @Excel(name = "学院")
    @ApiModelProperty(value = "学院")
    private String deptName;

    @Excel(name = "机柜位置")
    @ApiModelProperty(value = "机柜位置")
    private String posi;

    @Excel(name = "机柜状态", readConverterExp = "1=是启用，0是停用")
    @ApiModelProperty(value = "机柜状态")
    private Integer cabinetStatus;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

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

    @ApiModelProperty(value = "负责人")
    private String safeUserName;

    @ApiModelProperty(value = "智能锁配置 1是有，0是无")
    private Integer smartLock;

    @ApiModelProperty(value = "柜锁列表")
    private List <LinkedHashMap<String,String>> cabinetLockList = new ArrayList<>();

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getCabinetNum() {
        return cabinetNum;
    }

    public void setCabinetNum(String cabinetNum) {
        this.cabinetNum = cabinetNum;
    }

    public String getCabinetName() {
        return cabinetName;
    }

    public void setCabinetName(String cabinetName) {
        this.cabinetName = cabinetName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getPosi() {
        return posi;
    }

    public void setPosi(String posi) {
        this.posi = posi;
    }

    public Integer getCabinetStatus() {
        return cabinetStatus;
    }

    public void setCabinetStatus(Integer cabinetStatus) {
        this.cabinetStatus = cabinetStatus;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public String getSafeUserName() {
        return safeUserName;
    }

    public void setSafeUserName(String safeUserName) {
        this.safeUserName = safeUserName;
    }

    public Integer getSmartLock() {
        return smartLock;
    }

    public void setSmartLock(Integer smartLock) {
        this.smartLock = smartLock;
    }

    public List <LinkedHashMap <String, String>> getCabinetLockList() {
        return cabinetLockList;
    }

    public void setCabinetLockList(List <LinkedHashMap <String, String>> cabinetLockList) {
        this.cabinetLockList = cabinetLockList;
    }
}
