From 45ac0f23e12ac2a45c6affe9e39d0897e4fad618 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期四, 16 二月 2023 17:06:10 +0800 Subject: [PATCH] !286 合并 多租户功能 * add 新增 ruoyi-common-tenant 多租户模块 全框架适配多租户改动 * update 优化 隐藏页面主键 * remove 移除 缓存列表功能(多租户缓存功能繁杂多样 没有办法在页面管理) * update 重构 全局缓存KEY 与 常用缓存KEY做区分 * update 重构 OssFactory 加载方式 改为每次比对配置做实例更新 * update 优化 SaTokenDao 改为 Bean 注入 便于扩展 * update 重构 项目初始化数据改为懒加载 不提供热加载 * update 重构 验证码开关使用配置文件(经调查少有动态开启需求) * update 优化 启用 sqlserver 高版本语法 简化sql脚本语法 * update 优化 DataPermissionHelper 增加 开启/关闭 忽略数据权限功能 * update 优化 连接池增加 keepaliveTime 探活参数 * update 优化 调整连接池最长生命周期 防止出现警告 * update 优化 代码生成页面模板 校验不必要的表单数据 * add 新增 StringUtils splitTo 与 splitList 方法 优化业务代码 --- ruoyi-ui/src/views/login.vue | 31 +++++++++++++++++++++++++++++-- 1 files changed, 29 insertions(+), 2 deletions(-) diff --git a/ruoyi-ui/src/views/login.vue b/ruoyi-ui/src/views/login.vue index ed8d971..2a47e85 100644 --- a/ruoyi-ui/src/views/login.vue +++ b/ruoyi-ui/src/views/login.vue @@ -2,6 +2,17 @@ <div class="login"> <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form"> <h3 class="title">RuoYi-Vue-Plus鍚庡彴绠$悊绯荤粺</h3> + <el-form-item prop="tenantId"> + <el-select v-model="loginForm.tenantId" filterable placeholder="璇烽�夋嫨/杈撳叆鍏徃鍚嶇О" style="width: 100%"> + <el-option + v-for="item in tenantList" + :key="item.tenantId" + :label="item.companyName" + :value="item.tenantId"> + </el-option> + <svg-icon slot="prefix" icon-class="company" class="el-input__icon input-icon" /> + </el-select> + </el-form-item> <el-form-item prop="username"> <el-input v-model="loginForm.username" @@ -62,7 +73,7 @@ </template> <script> -import { getCodeImg } from "@/api/login"; +import { getCodeImg, tenantList } from "@/api/login"; import Cookies from "js-cookie"; import { encrypt, decrypt } from '@/utils/jsencrypt' @@ -72,6 +83,7 @@ return { codeUrl: "", loginForm: { + tenantId: "000000", username: "admin", password: "admin123", rememberMe: false, @@ -79,6 +91,9 @@ uuid: "" }, loginRules: { + tenantId: [ + { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勭鎴风紪鍙�" } + ], username: [ { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" } ], @@ -92,7 +107,9 @@ captchaEnabled: true, // 娉ㄥ唽寮�鍏� register: false, - redirect: undefined + redirect: undefined, + // 绉熸埛鍒楄〃 + tenantList:[] }; }, watch: { @@ -105,6 +122,7 @@ }, created() { this.getCode(); + this.getTenantList(); this.getCookie(); }, methods: { @@ -117,11 +135,18 @@ } }); }, + getTenantList() { + tenantList().then(res => { + this.tenantList = res.data; + }); + }, getCookie() { + const tenantId = Cookies.get("tenantId"); const username = Cookies.get("username"); const password = Cookies.get("password"); const rememberMe = Cookies.get('rememberMe') this.loginForm = { + tenantId: tenantId === undefined ? this.loginForm.tenantId : tenantId, username: username === undefined ? this.loginForm.username : username, password: password === undefined ? this.loginForm.password : decrypt(password), rememberMe: rememberMe === undefined ? false : Boolean(rememberMe) @@ -132,10 +157,12 @@ if (valid) { this.loading = true; if (this.loginForm.rememberMe) { + Cookies.set("tenantId", this.loginForm.tenantId, { expires: 30 }); Cookies.set("username", this.loginForm.username, { expires: 30 }); Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 }); Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 }); } else { + Cookies.remove("tenantId"); Cookies.remove("username"); Cookies.remove("password"); Cookies.remove('rememberMe'); -- Gitblit v1.9.3