From cfe049492f81d2c650a2b17348593edbc5054498 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期三, 18 三月 2026 07:52:44 +0800
Subject: [PATCH] #3.5
---
rsf-server/src/main/java/com/vincent/rsf/server/system/controller/BaseController.java | 40 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 39 insertions(+), 1 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/BaseController.java b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/BaseController.java
index bcb9262..abd9cef 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/BaseController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/BaseController.java
@@ -5,16 +5,18 @@
import com.vincent.rsf.server.common.domain.BaseParam;
import com.vincent.rsf.server.system.entity.User;
import org.springframework.security.core.Authentication;
+import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.context.SecurityContextHolder;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
/**
* Created by vincent on 1/30/2024
*/
-public class BaseController {
+public class BaseController {
public User getLoginUser() {
try {
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
@@ -40,7 +42,42 @@
return loginUser == null ? null : loginUser.getTenantId();
}
+ public boolean hasAuthority(String authority) {
+ if (authority == null || authority.trim().isEmpty()) {
+ return false;
+ }
+ try {
+ Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
+ if (authentication == null || authentication.getAuthorities() == null) {
+ return false;
+ }
+ for (GrantedAuthority grantedAuthority : authentication.getAuthorities()) {
+ if (grantedAuthority != null && authority.equals(grantedAuthority.getAuthority())) {
+ return true;
+ }
+ }
+ } catch (Exception e) {
+ System.out.println(e.getMessage());
+ }
+ return false;
+ }
+
public <T extends BaseParam> T buildParam(Map<String, Object> map, Class<T> clz) {
+ if (!Objects.isNull(map.get("meta"))) {
+ Map<String, Object> meta = (Map<String, Object>) map.get("meta");
+ meta.keySet().forEach(key -> {
+ map.put(key, meta.get(key));
+ });
+ map.remove("meta");
+ }
+ // 绉婚櫎绛涢�夋潯浠堕噷闈㈢殑 $
+ for (String key : map.keySet()) {
+ Object value = map.get(key);
+ if (key.equals("orderBy")) {
+ String newValue = value.toString().replace("$", "");
+ map.replace("orderBy", value, newValue);
+ }
+ }
T t = null;
try {
t = clz.getDeclaredConstructor().newInstance();
@@ -69,3 +106,4 @@
}
}
+
--
Gitblit v1.9.1