| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package com.xuekairui.user.dto;
- import com.fasterxml.jackson.databind.annotation.JsonSerialize;
- import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
- import lombok.Data;
- import lombok.Builder;
- import lombok.NoArgsConstructor;
- import lombok.AllArgsConstructor;
- /**
- * 登录响应
- */
- @Data
- @Builder
- @NoArgsConstructor
- @AllArgsConstructor
- public class LoginResponse {
- /** 用户ID(String 序列化,避免前端 JS 大数精度丢失) */
- @JsonSerialize(using = ToStringSerializer.class)
- private Long userId;
- /** 访问令牌 */
- private String accessToken;
- /** 刷新令牌 */
- private String refreshToken;
- /** 令牌过期时间(秒) */
- private Long expiresIn;
- /** 用户信息 */
- private UserInfoResponse userInfo;
- /** 是否需要绑定手机号 */
- private Boolean needBindPhone;
- /** 临时令牌(用于绑定手机号) */
- private String tempToken;
- /** 是否为新用户(首次注册) */
- private Boolean newUser;
- /** 用户角色:USER/ADMIN/SUPER_ADMIN */
- private String role;
- /** 是否踢出了旧设备会话(是否有旧会话被强制终止) */
- private Boolean kickedPreviousSession;
- /** 被踢出的旧设备信息(如 "Windows Chrome / 192.168.1.1") */
- private String kickedDeviceInfo;
- }
|