RuoYi-Vue-Multi-Tenant
github:https://github.com/leslie1015/RuoYi-Vue-Multi-Tenant
gitee: https://gitee.com/leslie8195/ruo-yi-vue-multi-tenant
已在若依項(xiàng)目擴(kuò)展中推薦
介紹
基于RuoYi-Vue擴(kuò)展的多租戶框架(SpringBoot,Spring Security,JWT,Vue & Element 的前后端分離權(quán)限管理系統(tǒng))
環(huán)境準(zhǔn)備
1.clone項(xiàng)目到本地
2.找到項(xiàng)目目錄下腳本文件 /ruo-yi-vue-multi-tenant/ruoyi/multi_tenant.sql,導(dǎo)入到mysql
3.修改配置(未列出的配置請(qǐng)根據(jù)實(shí)際情況自行按需調(diào)整)
# datasource
spring.datasource.druid.master.url=jdbc:mysql://127.0.0.1:3306/mt?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
spring.datasource.druid.master.username=root
spring.datasource.druid.master.password=123456
# redis
spring.redis.host=127.0.0.1
spring.redis.port=6379
#spring.redis.password=
如果使用阿里云OSS存儲(chǔ),可以修改以下配置,否則忽略或刪除(刪除時(shí)檢查啟動(dòng)是否有影響)
# aliyun oss
aliyun.oss.endpoint = http://oss-cn-shanghai.aliyuncs.com
aliyun.oss.accessKeyId = xxxxxxxxxx
aliyun.oss.accessKeySecret = xxxxxxxxxx
aliyun.oss.defaultBucketName = xxxxxxxxxx
aliyun.oss.endpointContent = oss-cn-shanghai.aliyuncs.com
4.前端代碼導(dǎo)入后,npm install / cnpm install 安裝依賴,修改vue.config.js中devServer.proxy.target為后端地址
devServer: {
host: '0.0.0.0',
port: port,
proxy: {
[process.env.VUE_APP_BASE_API]: {
target: `http://127.0.0.1:8080`,
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
}
}
}
5.npm run dev啟動(dòng)前端
構(gòu)建測(cè)試環(huán)境: npm run build:stage
構(gòu)建生產(chǎn)環(huán)境:npm run build:prod
功能說(shuō)明
-- 超級(jí)管理員,擁有系統(tǒng)最高權(quán)限
select * from sys_user where super_admin_flag = 1
-- 租戶管理員
select * from sys_user where admin_flag = 1
-- 是否超級(jí)管理員菜單(0否1是),如創(chuàng)建菜單后,菜單欄不顯示,注意檢查此字段是否對(duì)應(yīng)正確
select * from sys_menu where super_flag = 1
multi_tenant.sql腳本中初始化了超級(jí)管理員的賬號(hào)密碼
1.使用admin/admin123登錄系統(tǒng)
2.打開(kāi) 租戶管理-權(quán)限模板-新增,添加一個(gè)權(quán)限模板,指定模板擁有的菜單權(quán)限

3.打開(kāi) 租戶管理-租戶列表-新增,新增一個(gè)租戶,選擇剛才的權(quán)限模板

4.登出系統(tǒng),使用剛才創(chuàng)建的租戶賬號(hào)重新登錄系統(tǒng),默認(rèn)賬號(hào)是上圖中填寫(xiě)的手機(jī)號(hào) 13866688888,默認(rèn)密碼是123456.
# 默認(rèn)的租戶密碼
sys.default.pwd=123456.
# 菜單下租戶數(shù)據(jù)隔離,comId可以在上下文登陸用戶信息中取到
select * from order where com_id = #{comId}
登錄后進(jìn)入租戶首頁(yè)

租戶管理員可以創(chuàng)建角色,并且給角色分配該租戶已有的權(quán)限,然后創(chuàng)建租戶下的用戶,并分配對(duì)應(yīng)角色
其它
1.業(yè)務(wù)代碼生成改為默認(rèn)生成到business目錄,與系統(tǒng)相關(guān)功能區(qū)分開(kāi)
2.暫未支持崗位與部門,僅通過(guò)角色來(lái)控制權(quán)限
3.代碼中有一些業(yè)務(wù)名詞沒(méi)有完全改過(guò)來(lái),比如超管首頁(yè)、租戶/公司、首頁(yè)的工單信息、icon等,時(shí)間原因,后續(xù)會(huì)逐步調(diào)整,當(dāng)前如有需要請(qǐng)自行修改