
club.zhcs.auth.AuthUser Maven / Gradle / Ivy
package club.zhcs.auth;
import java.util.List;
import org.nutz.lang.util.NutMap;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder.Default;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* @author Kerbores(kerbores @ gmail.com)
*/
@Data
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
public class AuthUser {
@Schema(description = "用户名", required = true)
String userName;
@Schema(description = "密码", required = true)
String password;
@Schema(description = "jwt Token", required = true)
String token;
@Schema(description = "jwt refreshToken", required = true)
String refreshToken;
@Schema(description = "角色列表", required = true)
List roles;
@Schema(description = "权限列表", required = true)
List permissions;
@Default
@Schema(description = "扩展信息", required = true)
NutMap extInfo = NutMap.NEW();
/**
* 添加扩展信息
*
* @param key
* key
* @param value
* value
* @return 用户信息
*/
public AuthUser addExt(String key, Object value) {
getExtInfo().setv(key, value);
return this;
}
public AuthUser token() {
return token(24 * 60 * 60 * 1000L, 60 * 60 * 1000 * 24 * 365L);
}
public AuthUser token(long accessTokenExpire, long refreshTokenExpire) {
setToken(JwtUtil.sign(userName, password, accessTokenExpire));
setRefreshToken(JwtUtil.sign(userName, password, refreshTokenExpire));
return this;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy