package cn.lihu.jh.module.system.dal.dataobject.oauth2; 
 | 
  
 | 
import cn.lihu.jh.framework.common.enums.UserTypeEnum; 
 | 
import cn.lihu.jh.framework.tenant.core.db.TenantBaseDO; 
 | 
import com.baomidou.mybatisplus.annotation.KeySequence; 
 | 
import com.baomidou.mybatisplus.annotation.TableField; 
 | 
import com.baomidou.mybatisplus.annotation.TableId; 
 | 
import com.baomidou.mybatisplus.annotation.TableName; 
 | 
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; 
 | 
import lombok.Data; 
 | 
import lombok.EqualsAndHashCode; 
 | 
  
 | 
import java.time.LocalDateTime; 
 | 
import java.util.List; 
 | 
import java.util.Map; 
 | 
  
 | 
/** 
 | 
 * OAuth2 访问令牌 DO 
 | 
 * 
 | 
 * 如下字段,暂时未使用,暂时不支持: 
 | 
 * user_name、authentication(用户信息) 
 | 
 * 
 | 
 * @author 芋道源码 
 | 
 */ 
 | 
@TableName(value = "system_oauth2_access_token", autoResultMap = true) 
 | 
@KeySequence("system_oauth2_access_token_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 
 | 
@Data 
 | 
@EqualsAndHashCode(callSuper = true) 
 | 
public class OAuth2AccessTokenDO extends TenantBaseDO { 
 | 
  
 | 
    /** 
 | 
     * 编号,数据库递增 
 | 
     */ 
 | 
    @TableId 
 | 
    private Long id; 
 | 
    /** 
 | 
     * 访问令牌 
 | 
     */ 
 | 
    private String accessToken; 
 | 
    /** 
 | 
     * 刷新令牌 
 | 
     */ 
 | 
    private String refreshToken; 
 | 
    /** 
 | 
     * 用户编号 
 | 
     */ 
 | 
    private Long userId; 
 | 
    /** 
 | 
     * 用户类型 
 | 
     * 
 | 
     * 枚举 {@link UserTypeEnum} 
 | 
     */ 
 | 
    private Integer userType; 
 | 
    /** 
 | 
     * 用户信息 
 | 
     */ 
 | 
    @TableField(typeHandler = JacksonTypeHandler.class) 
 | 
    private Map<String, String> userInfo; 
 | 
    /** 
 | 
     * 客户端编号 
 | 
     * 
 | 
     * 关联 {@link OAuth2ClientDO#getId()} 
 | 
     */ 
 | 
    private String clientId; 
 | 
    /** 
 | 
     * 授权范围 
 | 
     */ 
 | 
    @TableField(typeHandler = JacksonTypeHandler.class) 
 | 
    private List<String> scopes; 
 | 
    /** 
 | 
     * 过期时间 
 | 
     */ 
 | 
    private LocalDateTime expiresTime; 
 | 
  
 | 
} 
 |