/*
* Copyright (c) 京北方信息技术股份有限公司 Corporation 2022 . All rights reserved.
*
*/
package net.northking.cctp.device.db.entity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.Size;

import net.northking.cctp.common.db.POJO;
import net.northking.cctp.common.db.Partition;

import java.util.Date;


/**
 * 设备状态信息表
 *
 * <p>文件内容由代码生成器产生，请不要手动修改！  <br>
 * createdate:  2022-09-21 14:45:06  <br>
 * @author:  maven-cctp-plugin  <br>
 * @since:  1.0 <br>
 */
@ApiModel(description = "设备状态信息表")
public class CdDeviceStatus extends Partition implements POJO
{
  public static final String KEY_id = "id";
  public static final String KEY_deviceType = "deviceType";
  public static final String KEY_usageStatus = "usageStatus";
  public static final String KEY_deviceStatus = "deviceStatus";
  public static final String KEY_lastHeartbeatTime = "lastHeartbeatTime";

  /**
   * 主键id(设备id)<br>
   */
  @ApiModelProperty("主键id(设备id)")
  @Size(max = 128, message="主键id(设备id)-id: 数据长度不能 > 32" )
  private String id;
  /**
   * 设备类型(1-移动 2-PC)<br>
   */
  @ApiModelProperty("设备类型(1-移动 2-PC)")
  @Size(max = 1, message="设备类型(1-移动 2-PC)-deviceType: 数据长度不能 > 1" )
  private String deviceType;
  /**
   * 使用状态(1-空闲 2-使用中)<br>
   */
  @ApiModelProperty("使用状态(1-空闲 2-使用中 3-不可用)")
  @Size(max = 1, message="使用状态(1-空闲 2-使用中)-usageStatus: 数据长度不能 > 1" )
  private String usageStatus;
  /**
   * 设备状态(1-在线 2-离线 3-移除)<br>
   */
  @ApiModelProperty("设备状态(1-在线 2-离线 3-移除)")
  @Size(max = 1, message="设备状态(1-在线 2-离线 3-移除)-deviceStatus: 数据长度不能 > 1" )
  private String deviceStatus;
  /**
   * 最近心跳时间<br>
   */
  @ApiModelProperty("最近心跳时间")
  private Date lastHeartbeatTime;

  /**
   * 主键id(设备id)<br>
   */
  public String getId()
  {
      return id;
    }

  /**
   * 主键id(设备id)<br>
   *
   * @param id 主键id(设备id)
   */
  public void setId(String id)
  {
      this.id = id;
    }
  /**
   * 设备类型(1-移动 2-PC)<br>
   */
  public String getDeviceType()
  {
      return deviceType;
    }

  /**
   * 设备类型(1-移动 2-PC)<br>
   *
   * @param deviceType 设备类型(1-移动 2-PC)
   */
  public void setDeviceType(String deviceType)
  {
      this.deviceType = deviceType;
    }
  /**
   * 使用状态(1-空闲 2-使用中)<br>
   */
  public String getUsageStatus()
  {
      return usageStatus;
    }

  /**
   * 使用状态(1-空闲 2-使用中)<br>
   *
   * @param usageStatus 使用状态(1-空闲 2-使用中)
   */
  public void setUsageStatus(String usageStatus)
  {
      this.usageStatus = usageStatus;
    }
  /**
   * 设备状态(1-在线 2-离线 3-移除)<br>
   */
  public String getDeviceStatus()
  {
      return deviceStatus;
    }

  /**
   * 设备状态(1-在线 2-离线 3-移除)<br>
   *
   * @param deviceStatus 设备状态(1-在线 2-离线 3-移除)
   */
  public void setDeviceStatus(String deviceStatus)
  {
      this.deviceStatus = deviceStatus;
    }
  /**
   * 最近心跳时间<br>
   */
  public Date getLastHeartbeatTime()
  {
      if(lastHeartbeatTime != null)
    {
      return (Date)lastHeartbeatTime.clone();
    }
    return null;
    }

  /**
   * 最近心跳时间<br>
   *
   * @param lastHeartbeatTime 最近心跳时间
   */
  public void setLastHeartbeatTime(Date lastHeartbeatTime)
  {
      if(lastHeartbeatTime != null)
    {
      this.lastHeartbeatTime = (Date)lastHeartbeatTime.clone();
    }
    }

  public CdDeviceStatus()
  {
  }

}
