/*
 * Author: wangjian
 * 生成entity
 */
package com.tofly.third.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;


/**
 * ${comments}
 *
 * @author tofly code generator
 * @date Wed Dec 03 00:00:00 CST 2025
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "API_USER", resultMap = "apiUserMap")
@KeySequence("API_USER")
@ApiModel
public class ApiUser extends Model<ApiUser> {
    private static final long serialVersionUID = 1L;

    /**
     * 企业机构码
     */
    @TableId(value = "ORGANIZATIONNO", type = IdType.INPUT)
    @ApiModelProperty(value = "企业机构码")
    private String organizationno;
    /**
     * 数据包是否启用编码（是否启用加解密、签名），（1：启用；0：禁用；其它：未设置），优先按用户设置，未设置按config的设置
     */
    @ApiModelProperty(value = "数据包是否启用编码（是否启用加解密、签名），（1：启用；0：禁用；其它：未设置），优先按用户设置，未设置按config的设置")
    private String datagramisencode;
    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private String id;
    /**
     * Api类型
     */
    @ApiModelProperty(value = "Api类型")
    private String apitype;
    /**
     * 客户描述（应用描述）
     */
    @ApiModelProperty(value = "客户描述（应用描述）")
    private String cusdescription;
    /**
     * 应用程序ID（分配给客户端的AppId）
     */
    @ApiModelProperty(value = "应用程序ID（分配给客户端的AppId）")
    private String appid;
    /**
     * 应用程序密钥（分配给客户端的密钥）
     */
    @ApiModelProperty(value = "应用程序密钥（分配给客户端的密钥）")
    private String appsecret;
    /**
     * 登录时间
     */
    @ApiModelProperty(value = "登录时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date logintime;
    /**
     * Token访问身份令牌
     */
    @ApiModelProperty(value = "Token访问身份令牌")
    private String accesstoken;
    /**
     * Token有效期（0表示永不过期）
     */
    @ApiModelProperty(value = "Token有效期（0表示永不过期）")
    private Long tokenindate;
    /**
     * Token过期时间
     */
    @ApiModelProperty(value = "Token过期时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date tokenexpirestime;
    /**
     * Token获取次数（按月）
     */
    @ApiModelProperty(value = "Token获取次数（按月）")
    private Long tokengettimes;
    /**
     * 最后请求时间
     */
    @ApiModelProperty(value = "最后请求时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastposttime;
    /**
     * 是否启用（1：启用；0：禁用）
     */
    @ApiModelProperty(value = "是否启用（1：启用；0：禁用）")
    private String isenable;

}
