/*
* 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-22 16:18:45  <br>
 * @author:  maven-cctp-plugin  <br>
 * @since:  1.0 <br>
 */
@ApiModel(description = "")
public class CdDeviceToken extends Partition implements POJO
{
  public static final String KEY_id = "id";
  public static final String KEY_token = "token";
  public static final String KEY_usageType = "usageType";
  public static final String KEY_deviceType = "deviceType";
  public static final String KEY_startTime = "startTime";
  public static final String KEY_expiredTime = "expiredTime";
  public static final String KEY_userBy = "userBy";
  public static final String KEY_userId = "userId";

  /**
   * 主键id(设备id)<br>
   */
  @ApiModelProperty("主键id(设备id)")
  @Size(max = 128, message="主键id(设备id)-id: 数据长度不能 > 32" )
  private String id;
  /**
   * 令牌<br>
   */
  @ApiModelProperty("令牌")
  @Size(max = 500, message="令牌-token: 数据长度不能 > 500" )
  private String token;
  /**
   * 使用类型(1-远程 2-调试 3-计划)<br>
   */
  @ApiModelProperty("使用类型(1-远程 2-调试 3-计划)")
  @Size(max = 1, message="使用类型(1-远程 2-调试 3-计划)-usageType: 数据长度不能 > 1" )
  private String usageType;
  /**
   * 设备类型(1-移动 2-PC)<br>
   */
  @ApiModelProperty("设备类型(1-移动 2-PC)")
  @Size(max = 1, message="设备类型(1-移动 2-PC)-deviceType: 数据长度不能 > 1" )
  private String deviceType;
  /**
   * 开始时间<br>
   */
  @ApiModelProperty("开始时间")
  private Date startTime;
  /**
   * 最大到期时间<br>
   */
  @ApiModelProperty("最大到期时间")
  private Date expiredTime;

  @ApiModelProperty("使用人id")
  private String userId;

  @ApiModelProperty("使用人类型")
  private String userBy;

  public String getUserId() {
    return userId;
  }

  public void setUserId(String userId) {
    this.userId = userId;
  }

  public String getUserBy() {
    return userBy;
  }

  public void setUserBy(String userBy) {
    this.userBy = userBy;
  }

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

  /**
   * 主键id(设备id)<br>
   *
   * @param id 主键id(设备id)
   */
  public void setId(String id)
  {
      this.id = id;
    }
  /**
   * 令牌<br>
   */
  public String getToken()
  {
      return token;
    }

  /**
   * 令牌<br>
   *
   * @param token 令牌
   */
  public void setToken(String token)
  {
      this.token = token;
    }
  /**
   * 使用类型(1-远程 2-调试 3-计划)<br>
   */
  public String getUsageType()
  {
      return usageType;
    }

  /**
   * 使用类型(1-远程 2-调试 3-计划)<br>
   *
   * @param usageType 使用类型(1-远程 2-调试 3-计划)
   */
  public void setUsageType(String usageType)
  {
      this.usageType = usageType;
    }
  /**
   * 设备类型(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;
    }
  /**
   * 开始时间<br>
   */
  public Date getStartTime()
  {
      if(startTime != null)
    {
      return (Date)startTime.clone();
    }
    return null;
    }

  /**
   * 开始时间<br>
   *
   * @param startTime 开始时间
   */
  public void setStartTime(Date startTime)
  {
      if(startTime != null)
    {
      this.startTime = (Date)startTime.clone();
    }
    }
  /**
   * 最大到期时间<br>
   */
  public Date getExpiredTime()
  {
      if(expiredTime != null)
    {
      return (Date)expiredTime.clone();
    }
    return null;
    }

  /**
   * 最大到期时间<br>
   *
   * @param expiredTime 最大到期时间
   */
  public void setExpiredTime(Date expiredTime)
  {
      if(expiredTime != null)
    {
      this.expiredTime = (Date)expiredTime.clone();
    }
    }

  public CdDeviceToken()
  {
  }

}
