From 7da161d707b597dd6b471c53995949f155dfa2d5 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期二, 11 二月 2025 12:59:16 +0800
Subject: [PATCH] #
---
rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java | 16 +++++++++++-----
rsf-admin/src/page/settings/SecuritySettings.jsx | 2 +-
rsf-server/src/main/java/com/vincent/rsf/server/common/config/ConfigProperties.java | 8 ++++++++
rsf-server/src/main/java/com/vincent/rsf/server/common/exception/GlobalExceptionHandler.java | 9 +++++++++
rsf-admin/src/page/tenant/TenantCreate.jsx | 7 ++++++-
rsf-server/src/main/java/com/vincent/rsf/server/system/controller/TenantController.java | 4 ++--
6 files changed, 37 insertions(+), 9 deletions(-)
diff --git a/rsf-admin/src/page/settings/SecuritySettings.jsx b/rsf-admin/src/page/settings/SecuritySettings.jsx
index 1a68e18..265e616 100644
--- a/rsf-admin/src/page/settings/SecuritySettings.jsx
+++ b/rsf-admin/src/page/settings/SecuritySettings.jsx
@@ -115,7 +115,7 @@
rules={{
required: translate('ra.validation.required'),
pattern: {
- value: /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{6,13}$/,
+ value: /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d\.]{6,13}$/,
message: translate('page.settings.resetPwd.tip.pwdInputLimit'),
},
validate: (value) => {
diff --git a/rsf-admin/src/page/tenant/TenantCreate.jsx b/rsf-admin/src/page/tenant/TenantCreate.jsx
index 942bf43..97234bd 100644
--- a/rsf-admin/src/page/tenant/TenantCreate.jsx
+++ b/rsf-admin/src/page/tenant/TenantCreate.jsx
@@ -2,6 +2,7 @@
import {
useTranslate,
useNotify,
+ useRefresh,
} from 'react-admin';
import {
Dialog,
@@ -31,6 +32,7 @@
const { open, setOpen } = props;
const translate = useTranslate();
const notify = useNotify();
+ const refresh = useRefresh();
const {
control,
handleSubmit,
@@ -85,10 +87,13 @@
const onSubmit = (data) => {
request.post('/tenant/init', data).then(res => {
const { code, msg, data } = res.data;
+ console.log(msg);
+
if (code === 200) {
notify(msg, { type: 'success', messageArgs: { _: msg } });
setOpen(false);
reset();
+ refresh();
} else {
notify(msg, { type: 'error', messageArgs: { _: msg } });
}
@@ -244,7 +249,7 @@
message: translate('ra.validation.required'),
},
pattern: {
- value: /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{6,13}$/,
+ value: /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d\.]{6,13}$/,
message: translate('page.settings.resetPwd.tip.pwdInputLimit'),
},
}}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/ConfigProperties.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/ConfigProperties.java
index 4a636f4..c045936 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/ConfigProperties.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/ConfigProperties.java
@@ -4,6 +4,10 @@
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
/**
* 绯荤粺閰嶇疆灞炴��
*
@@ -35,4 +39,8 @@
*/
private String superUsername;
+ public List<String> getSuperUserList() {
+ return Arrays.stream(superUsername.split(",")).collect(Collectors.toList());
+ }
+
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/exception/GlobalExceptionHandler.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/exception/GlobalExceptionHandler.java
index 66f60c4..8ea1e24 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/exception/GlobalExceptionHandler.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/exception/GlobalExceptionHandler.java
@@ -1,6 +1,7 @@
package com.vincent.rsf.server.common.exception;
import com.vincent.rsf.framework.common.R;
+import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.common.constant.Constants;
import com.vincent.rsf.server.common.utils.CommonUtil;
import org.slf4j.Logger;
@@ -47,6 +48,14 @@
}
@ResponseBody
+ @ExceptionHandler(CoolException.class)
+ public R coolExceptionHandler(CoolException e, HttpServletResponse response) {
+ CommonUtil.addCrossHeaders(response);
+ return R.error(e.getMessage());
+ }
+
+
+ @ResponseBody
@ExceptionHandler(Throwable.class)
public R exceptionHandler(Throwable e, HttpServletResponse response) {
logger.error(e.getMessage(), e);
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java
index f54dad3..9c9f64c 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/AuthController.java
@@ -16,8 +16,10 @@
import com.vincent.rsf.server.system.entity.User;
import com.vincent.rsf.server.system.entity.UserLogin;
import com.vincent.rsf.server.system.enums.StatusType;
-import com.vincent.rsf.server.system.service.*;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.vincent.rsf.server.system.service.RoleMenuService;
+import com.vincent.rsf.server.system.service.TenantService;
+import com.vincent.rsf.server.system.service.UserLoginService;
+import com.vincent.rsf.server.system.service.UserService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -46,8 +48,6 @@
private RoleMenuService roleMenuService;
@Resource
private TenantService tenantService;
- @Autowired
- private UserRoleService userRoleService;
@PostMapping("/login")
public R login(@RequestBody LoginParam param, HttpServletRequest request) {
@@ -85,8 +85,14 @@
@GetMapping("/auth/menu")
public R userMenu() {
List<Menu> menus = roleMenuService.listMenuByUserId(getLoginUserId(), Menu.TYPE_MENU);
-// return R.ok().add(Utils.toTreeData(menus, 0L, Menu::getParentId, Menu::getId, Menu::setChildren));
List<MenuVo> voList = menus.stream().map(this::convertToVo).collect(Collectors.toList());
+ // exclude tenant
+ if (!configProperties.getSuperUserList().contains(getLoginUser().getUsername())) {
+ voList = voList.stream().filter(vo ->
+ !vo.getName().equals("menu.tenant")
+ && !vo.getName().equals("menu.menu")
+ ).collect(Collectors.toList());
+ }
return R.ok().add(Utils.toTreeData(voList, 0L, MenuVo::getParentId, MenuVo::getId, MenuVo::setChildren));
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/TenantController.java b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/TenantController.java
index 458eb6d..f1676da 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/TenantController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/system/controller/TenantController.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.vincent.rsf.framework.common.BaseRes;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
import com.vincent.rsf.server.common.annotation.OperationLog;
@@ -67,8 +68,7 @@
@OperationLog("Init Tenant")
@PostMapping("/tenant/init")
public R init(@RequestBody TenantInitParam param) {
- tenantService.initTenant(param);
- return R.ok("Initialize Success");
+ return tenantService.initTenant(param) ? R.ok("Initialize Success") : R.parse(BaseRes.PARAM);
}
@PreAuthorize("hasAuthority('system:tenant:update')")
--
Gitblit v1.9.1