houzhongjian
2024-10-16 7da8f196dee8e3c526c009a4bc7f5983ece6bb97
提交 | 用户 | 时间
e7c126 1 package com.iailab.module.system.dal.dataobject.oauth2;
H 2
3 import com.iailab.framework.common.enums.UserTypeEnum;
4 import com.iailab.framework.mybatis.core.dataobject.BaseDO;
5 import com.baomidou.mybatisplus.annotation.KeySequence;
6 import com.baomidou.mybatisplus.annotation.TableField;
7 import com.baomidou.mybatisplus.annotation.TableName;
8 import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
9 import lombok.Data;
10 import lombok.EqualsAndHashCode;
11 import lombok.experimental.Accessors;
12
13 import java.time.LocalDateTime;
14 import java.util.List;
15
16 /**
17  * OAuth2 刷新令牌
18  *
19  * @author iailab
20  */
21 @TableName(value = "system_oauth2_refresh_token", autoResultMap = true)
22 // 由于 Oracle 的 SEQ 的名字长度有限制,所以就先用 system_oauth2_access_token_seq 吧,反正也没啥问题
23 @KeySequence("system_oauth2_access_token_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
24 @Data
25 @EqualsAndHashCode(callSuper = true)
26 @Accessors(chain = true)
27 public class OAuth2RefreshTokenDO extends BaseDO {
28
29     /**
30      * 编号,数据库字典
31      */
32     private Long id;
33     /**
34      * 刷新令牌
35      */
36     private String refreshToken;
37     /**
38      * 用户编号
39      */
40     private Long userId;
41     /**
42      * 用户类型
43      *
44      * 枚举 {@link UserTypeEnum}
45      */
46     private Integer userType;
47     /**
48      * 客户端编号
49      *
50      * 关联 {@link OAuth2ClientDO#getId()}
51      */
52     private String clientId;
53     /**
54      * 授权范围
55      */
56     @TableField(typeHandler = JacksonTypeHandler.class)
57     private List<String> scopes;
58     /**
59      * 过期时间
60      */
61     private LocalDateTime expiresTime;
62
63 }