package com.common.entity;

import java.time.OffsetDateTime;

/**
 * 联动设备表实体类（防火墙设备信息）
 * 对应表: device_interlocking
 */
public class DeviceInterlocking {
    private Long id;
    private String deviceName;                // 联动安全设备名称（防火墙）
    private String vendor;                    // 厂商
    private String deptId;                    // 所属组织机构（部门ID）
    private Integer banLimit;                // 封禁上限
    private String ip;                        // IP地址
    private String apiUrl;                    // API地址
    private String tenantId;
    private Long createDept;
    private Long createBy;
    private OffsetDateTime createTime;
    private Long updateBy;
    private OffsetDateTime updateTime;
    private String remark;
    private String authUsername;              // 用户名
    private String authPassword;              // 密码

    // Getter and Setter
    public Long getId() { return id; }
    public void setId(Long id) { this.id = id; }

    public String getDeviceName() { return deviceName; }
    public void setDeviceName(String deviceName) { this.deviceName = deviceName; }

    public String getVendor() { return vendor; }
    public void setVendor(String vendor) { this.vendor = vendor; }

    public String getDeptId() { return deptId; }
    public void setDeptId(String deptId) { this.deptId = deptId; }

    public Integer getBanLimit() { return banLimit; }
    public void setBanLimit(Integer banLimit) { this.banLimit = banLimit; }

    public String getIp() { return ip; }
    public void setIp(String ip) { this.ip = ip; }

    public String getApiUrl() { return apiUrl; }
    public void setApiUrl(String apiUrl) { this.apiUrl = apiUrl; }

    public String getTenantId() { return tenantId; }
    public void setTenantId(String tenantId) { this.tenantId = tenantId; }

    public Long getCreateDept() { return createDept; }
    public void setCreateDept(Long createDept) { this.createDept = createDept; }

    public Long getCreateBy() { return createBy; }
    public void setCreateBy(Long createBy) { this.createBy = createBy; }

    public OffsetDateTime getCreateTime() { return createTime; }
    public void setCreateTime(OffsetDateTime createTime) { this.createTime = createTime; }

    public Long getUpdateBy() { return updateBy; }
    public void setUpdateBy(Long updateBy) { this.updateBy = updateBy; }

    public OffsetDateTime getUpdateTime() { return updateTime; }
    public void setUpdateTime(OffsetDateTime updateTime) { this.updateTime = updateTime; }

    public String getRemark() { return remark; }
    public void setRemark(String remark) { this.remark = remark; }

    public String getAuthUsername() { return authUsername; }
    public void setAuthUsername(String authUsername) { this.authUsername = authUsername; }

    public String getAuthPassword() { return authPassword; }
    public void setAuthPassword(String authPassword) { this.authPassword = authPassword; }

    @Override
    public String toString() {
        return "DeviceInterlocking{" +
                "id=" + id +
                ", deviceName='" + deviceName + '\'' +
                ", vendor='" + vendor + '\'' +
                ", ip='" + ip + '\'' +
                '}';
    }
}
