Commit 3d8a5b3e by 袁伟铭

优化代码

parent 44c69a25
......@@ -80,6 +80,7 @@ public class OnlineUserService {
.address(address)
.key(EncryptUtils.desEncrypt(token))
.loginTime(new Date())
.authority(jwtUserDto.getRoles())
.build();
} catch (Exception e) {
log.error(e.getMessage(), e);
......
......@@ -51,6 +51,11 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-validation -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!-- 远程调用cloud feign -->
<dependency>
<groupId>org.springframework.cloud</groupId>
......
package com.zq.common.config.security;
import com.zq.common.context.ContextUtils;
import com.zq.common.vo.OnlineUserDto;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.Set;
/**
* @author wilmiam
* @since 2024-09-19 16:21
*/
@Service(value = "u")
public class PermissionConfig {
public Boolean check(String... permissions) {
// 获取当前用户的所有权限
OnlineUserDto adminContext = ContextUtils.getAdminContext();
Set<String> contextAuthority = adminContext.getAuthority();
// 判断当前用户的所有权限是否包含接口上定义的权限
return contextAuthority.contains("admin") || Arrays.stream(permissions).anyMatch(contextAuthority::contains);
}
}
......@@ -22,6 +22,7 @@ import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
import java.util.Set;
/**
* 在线用户
......@@ -85,4 +86,6 @@ public class OnlineUserDto implements Serializable {
*/
private Date loginTime;
private Set<String> authority;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment