package com.zd.chemical.domain;

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

/**
 * 化学品设备管理对象 hxp_smart_terminal
 *
 * @author liubo
 * @date 2022-06-16
 */
@ApiModel(" 化学品设备管理")
public class HxpSmartTerminal extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @ApiModelProperty(value = "${comment}")
    private Long id;
    /**
     * 智能终端编号
     */
    @Excel(name = "智能终端编号")
    @Length(message = "智能终端编号长度不能超过30")
    @ApiModelProperty(value = "智能终端编号")
    private String terminalNum;
    /**
     * 实验室id
     */
    @Excel(name = "实验室id")
    @ApiModelProperty(value = "实验室id")
    private Long subId;
    /**
     * 设备IP地址
     */
    @Excel(name = "设备IP地址")
    @ApiModelProperty(value = "设备IP地址")
    private String ipAddress;
    /**
     * 终端状态(1是在线，0是离线)
     */
    @Excel(name = "终端状态(1是在线，0是离线)")
    @ApiModelProperty(value = "终端状态(1是在线，0是离线)")
    private Integer terminalStatus;
    /**
     * 设备类型（1是智能终端，2是智能门禁，3是RFID,4是智能报警）
     */
    @Excel(name = "设备类型", readConverterExp = "1=是智能终端，2是智能门禁，3是RFID,4是智能报警")
    @ApiModelProperty(value = "设备类型")
    private Integer terminalType;

    @ApiModelProperty(value = "状态（1 开启，0 关闭）")
    private Integer status;

    /** 报警器响铃时长（单位秒） */
    @ApiModelProperty(value = "报警器响铃时长")
    private Integer ringTime;
    /** 处理时长（单位分钟） */
    @ApiModelProperty(value = "处理时长")
    private Integer dealTime;

    @ApiModelProperty(value = "继电器编号")
    private String relayNum;

    @ApiModelProperty(value = "路数")
    private Integer routeNum;

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

    public Long getId() {
        return id;
    }

    public void setTerminalNum(String terminalNum) {
        this.terminalNum = terminalNum;
    }

    public String getTerminalNum() {
        return terminalNum;
    }

    public void setSubId(Long subId) {
        this.subId = subId;
    }

    public Long getSubId() {
        return subId;
    }

    public void setTerminalStatus(Integer terminalStatus) {
        this.terminalStatus = terminalStatus;
    }

    public Integer getTerminalStatus() {
        return terminalStatus;
    }

    public void setTerminalType(Integer terminalType) {
        this.terminalType = terminalType;
    }

    public Integer getTerminalType() {
        return terminalType;
    }

    public String getIpAddress() {
        return ipAddress;
    }

    public void setIpAddress(String ipAddress) {
        this.ipAddress = ipAddress;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getRingTime() {
        return ringTime;
    }

    public void setRingTime(Integer ringTime) {
        this.ringTime = ringTime;
    }

    public Integer getDealTime() {
        return dealTime;
    }

    public void setDealTime(Integer dealTime) {
        this.dealTime = dealTime;
    }

    public String getRelayNum() {
        return relayNum;
    }

    public void setRelayNum(String relayNum) {
        this.relayNum = relayNum;
    }

    public Integer getRouteNum() {
        return routeNum;
    }

    public void setRouteNum(Integer routeNum) {
        this.routeNum = routeNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("terminalNum", getTerminalNum())
                .append("subId", getSubId())
                .append("ipAddress", getIpAddress())
                .append("terminalStatus", getTerminalStatus())
                .append("terminalType", getTerminalType())
                .append("userId", getUserId())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .append("remark", getRemark())
                .toString();
    }
}
