Kaynağa Gözat

fix 修复禁用租户后路由获取失败的问题

Yue 10 ay önce
ebeveyn
işleme
7217bec33a

+ 4 - 5
SERVER/VberAdminPlusV3/vber-admin/src/main/java/com/vber/web/controller/AuthController.java

@@ -18,7 +18,6 @@ import com.vber.common.satoken.utils.LoginHelper;
 import com.vber.common.social.config.properties.SocialLoginConfigProperties;
 import com.vber.common.social.config.properties.SocialProperties;
 import com.vber.common.social.utils.SocialUtils;
-import com.vber.common.sse.dto.SseMessageDto;
 import com.vber.common.sse.utils.SseMessageUtils;
 import com.vber.common.tenant.helper.TenantHelper;
 import com.vber.system.domain.bo.SysTenantBo;
@@ -108,10 +107,10 @@ public class AuthController {
 
         Long userId = LoginHelper.getUserId();
         scheduledExecutorService.schedule(() -> {
-            SseMessageDto dto = new SseMessageDto();
-            dto.setMessage("欢迎登录" + vbConfig.getName());
-            dto.setUserIds(List.of(userId));
-            SseMessageUtils.publishMessage(dto);
+//            SseMessageDto dto = new SseMessageDto();
+//            dto.setMessage("欢迎登录" + vbConfig.getName());
+//            dto.setUserIds(List.of(userId));
+            SseMessageUtils.sendMessage(userId, "欢迎登录" + vbConfig.getName());
         }, 3, TimeUnit.SECONDS);
         return R.ok(loginVo);
     }

+ 3 - 3
SERVER/VberAdminPlusV3/vber-admin/src/main/resources/application-dev.yml

@@ -237,15 +237,15 @@ justauth:
       redirect-uri: ${justauth.address}/social-callback?source=alipay_wallet
       alipay-public-key: MIIB**************DAQAB
     wechat_open:
-      client-id: 10**********6
+      client-id: wxf250c06ac577c38b
       client-secret: 1f7d08**********5b7**********29e
       redirect-uri: ${justauth.address}/social-callback?source=wechat_open
     wechat_mp:
-      client-id: 10**********6
+      client-id: wxf250c06ac577c38b
       client-secret: 1f7d08**********5b7**********29e
       redirect-uri: ${justauth.address}/social-callback?source=wechat_mp
     wechat_enterprise:
-      client-id: 10**********6
+      client-id: wxf250c06ac577c38b
       client-secret: 1f7d08**********5b7**********29e
       redirect-uri: ${justauth.address}/social-callback?source=wechat_enterprise
       agent-id: 1000002

+ 2 - 2
SERVER/VberAdminPlusV3/vber-admin/src/main/resources/application.yml

@@ -13,7 +13,7 @@ vb-msg:
   notice-router-path: /system/notice
 # 验证码配置
 captcha:
-  enable: true
+  enable: false
   # 页面 <参数设置> 可开启关闭 验证码校验
   # 验证码类型 math 数组计算 char 字符验证
   type: MATH
@@ -129,7 +129,7 @@ security:
 # 多租户配置
 tenant:
   # 是否开启
-  enable: true
+  enable: false
   # 排除表
   excludes:
     - sys_menu

+ 2 - 0
SERVER/VberAdminPlusV3/vber-common/vber-common-tenant/src/main/java/com/vber/common/tenant/properties/TenantProperties.java

@@ -2,6 +2,7 @@ package com.vber.common.tenant.properties;
 
 import lombok.Data;
 import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
 
 import java.util.List;
 
@@ -11,6 +12,7 @@ import java.util.List;
  * @author Iwb
  */
 @Data
+@Component
 @ConfigurationProperties(prefix = "tenant")
 public class TenantProperties {
 

+ 4 - 1
SERVER/VberAdminPlusV3/vber-modules/vber-system/src/main/java/com/vber/system/controller/system/SysMenuController.java

@@ -12,6 +12,7 @@ import com.vber.common.log.annotation.Log;
 import com.vber.common.log.enums.BusinessType;
 import com.vber.common.satoken.utils.LoginHelper;
 import com.vber.common.tenant.helper.TenantHelper;
+import com.vber.common.tenant.properties.TenantProperties;
 import com.vber.common.web.core.BaseController;
 import com.vber.system.domain.SysMenu;
 import com.vber.system.domain.bo.SysMenuBo;
@@ -37,6 +38,8 @@ import java.util.List;
 public class SysMenuController extends BaseController {
 
     private final ISysMenuService menuService;
+    private final TenantProperties tenantProperties;
+
 
     /**
      * 获取路由信息
@@ -47,7 +50,7 @@ public class SysMenuController extends BaseController {
     public R<List<RouterVo>> getRouters() {
         List<SysMenu> menus;
         System.out.println(LoginHelper.getTenantId() + " --获取路由--> " + TenantHelper.getTenantId());
-        if (LoginHelper.getTenantId().equals(TenantHelper.getTenantId())) {
+        if (!tenantProperties.getEnable() || LoginHelper.getTenantId().equals(TenantHelper.getTenantId())) {
             menus = menuService.selectMenuTreeByUserId(LoginHelper.getUserId());
         } else {
             menus = menuService.selectMenuTreeByTenantId(TenantHelper.getTenantId());

+ 3 - 1
UI/VAP_V3.VUE/.env

@@ -5,4 +5,6 @@ VITE_APP_FULL_NAME = "VAP后台管理系统"
 # 页面标题
 VITE_APP_TITLE = VAP后台管理系统
 # 是否在打包时开启压缩,支持 gzip 和 brotli
-VITE_BUILD_COMPRESS = gzip
+VITE_BUILD_COMPRESS = gzip
+
+VITE_APP_DOMAIN ="http://localhost:6071"

+ 3 - 2
UI/VAP_V3.VUE/src/api/_login.ts

@@ -3,6 +3,7 @@ import type { LoginData } from "@@/types/Account"
 
 // pc端固定客户端授权id
 const clientId = import.meta.env.VITE_APP_CLIENT_ID
+const domain = import.meta.env.VITE_APP_DOMAIN
 
 class loginApi {
 	getAppConfig = () => {
@@ -38,9 +39,9 @@ class loginApi {
 	/**
 	 *  绑定账号
 	 */
-	authBinding = (source: string) => {
+	authBinding = (source: string,tenantId:string =  "") => {
 		return Rs.get({
-			url: "/auth/binding/" + source,
+			url: `/auth/binding/${source}?domain=${domain}&tenantId=${tenantId}`,
 			isToken: false
 		})
 	}

+ 1 - 1
UI/VAP_V3.VUE/src/stores/_tenant.ts

@@ -62,7 +62,7 @@ export const useTenantStore = defineStore("tenant", () => {
 	}
 
 	function canChangeTenant() {
-		return (
+		return enable() && (
 			!isNewPage.value &&
 			(appStore.authStore.user.roles.includes("super_admin") ||
 				appStore.authStore.user.permissions.includes("system:tenant"))

+ 2 - 2
UI/VAP_V3.VUE/src/views/account/profile/_thirdParty.vue

@@ -50,12 +50,12 @@ onMounted(init)
 <template>
 	<div class="d-flex justify-content-center align-items-center h-100 flex-wrap">
 		<vb-tooltip v-if="isAuth('wechat')" effect="dark" content="解绑 微信 账号" placement="bottom">
-			<div class="third-app" @click="unBindAuth('wechat')">
+			<div class="third-app" @click="unBindAuth('wechat_open')">
 				<IconSimpleIconsWechat style="color: #04be02" />
 			</div>
 		</vb-tooltip>
 		<vb-tooltip v-else content="使用 微信 账号授权登录" placement="bottom">
-			<div class="third-app" @click="bindAuth('wechat')">
+			<div class="third-app" @click="bindAuth('wechat_open')">
 				<IconSimpleIconsWechat />
 			</div>
 		</vb-tooltip>