diff --git a/Yi.Abp.Net8/src/Yi.Abp.Web/yi-abp-dev.db b/Yi.Abp.Net8/src/Yi.Abp.Web/yi-abp-dev.db index 8d01d76f..d7e03383 100644 Binary files a/Yi.Abp.Net8/src/Yi.Abp.Web/yi-abp-dev.db and b/Yi.Abp.Net8/src/Yi.Abp.Web/yi-abp-dev.db differ diff --git a/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test.db b/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test.db new file mode 100644 index 00000000..e69de29b diff --git a/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test2.db b/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test2.db index deac314a..869d6dfb 100644 Binary files a/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test2.db and b/Yi.Abp.Net8/src/Yi.Abp.Web/yi-test2.db differ diff --git a/Yi.RuoYi.Vue3/src/store/modules/user.js b/Yi.RuoYi.Vue3/src/store/modules/user.js index 621e3224..10cad31e 100644 --- a/Yi.RuoYi.Vue3/src/store/modules/user.js +++ b/Yi.RuoYi.Vue3/src/store/modules/user.js @@ -1,5 +1,5 @@ import { login, logout, getInfo } from '@/api/login' -import { getToken, setToken, removeToken } from '@/utils/auth' +import { getToken, setToken, removeToken,getTenantId,setTenantId,removeTenantId } from '@/utils/auth' import defAva from '@/assets/images/profile.jpg' const useUserStore = defineStore( @@ -10,21 +10,28 @@ const useUserStore = defineStore( name: '', avatar: '', roles: [], - permissions: [] + permissions: [], + tenantId:getTenantId() }), actions: { // 登录 - login(userInfo) { + login(userInfo,tenantId) { const username = userInfo.username.trim() const password = userInfo.password const code = userInfo.code const uuid = userInfo.uuid + + //登录之前先设置租户id,用户登录接口的请求设置 + setTenantId(tenantId); + this.tenantId=tenantId; return new Promise((resolve, reject) => { login(username, password, code, uuid).then(res => { setToken(res.data.token); this.token = res.data.token; resolve(); }).catch(error => { + removeTenantId(); + this.tenantId=null; reject(error) }) }) @@ -68,6 +75,7 @@ const useUserStore = defineStore( this.roles = [] this.permissions = [] removeToken() + removeTenantId() resolve() }).catch(error => { reject(error) diff --git a/Yi.RuoYi.Vue3/src/utils/auth.js b/Yi.RuoYi.Vue3/src/utils/auth.js index 08a43d6e..ca2c6e4f 100644 --- a/Yi.RuoYi.Vue3/src/utils/auth.js +++ b/Yi.RuoYi.Vue3/src/utils/auth.js @@ -1,7 +1,7 @@ import Cookies from 'js-cookie' const TokenKey = 'Admin-Token' - +const TenantIdKey='Tenant-Id' export function getToken() { return Cookies.get(TokenKey) } @@ -13,3 +13,14 @@ export function setToken(token) { export function removeToken() { return Cookies.remove(TokenKey) } +export function getTenantId() { + return Cookies.get(TenantIdKey) +} + +export function setTenantId(tenantId) { + return Cookies.set(TenantIdKey, tenantId) +} + +export function removeTenantId() { + return Cookies.remove(TenantIdKey) +} diff --git a/Yi.RuoYi.Vue3/src/utils/request.js b/Yi.RuoYi.Vue3/src/utils/request.js index 2dbf706c..7d755f7b 100644 --- a/Yi.RuoYi.Vue3/src/utils/request.js +++ b/Yi.RuoYi.Vue3/src/utils/request.js @@ -1,6 +1,6 @@ import axios from 'axios' import { ElNotification, ElMessageBox, ElMessage, ElLoading } from 'element-plus' -import { getToken } from '@/utils/auth' +import { getToken,getTenantId } from '@/utils/auth' import errorCode from '@/utils/errorCode' import { tansParams, blobValidate } from '@/utils/ruoyi' import cache from '@/plugins/cache' @@ -67,7 +67,12 @@ service.interceptors.request.use(config => { if (getToken() && !isToken) { config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改 } - + console.log(getTenantId(),"uuu"); +if(getTenantId()!==undefined&&getTenantId()!==null&&getTenantId()!=='null') +{ + console.log('爆炸'); + config.headers['__tenant'] = getTenantId() +} // get请求映射params参数 if (config.method === 'get' && config.params) { diff --git a/Yi.RuoYi.Vue3/src/views/login.vue b/Yi.RuoYi.Vue3/src/views/login.vue index af637836..e9c8433e 100644 --- a/Yi.RuoYi.Vue3/src/views/login.vue +++ b/Yi.RuoYi.Vue3/src/views/login.vue @@ -43,7 +43,7 @@ 当前租户: @@ -95,13 +95,13 @@ const userStore = useUserStore() const router = useRouter(); const { proxy } = getCurrentInstance(); -const tenantSelectedId=ref('defalut'); +const tenantSelected=ref('defalut'); const loginForm = ref({ username: "", password: "", rememberMe: false, code: "", - uuid: "" + uuid: "", }); const loginRules = { @@ -137,7 +137,10 @@ function handleLogin() { Cookies.remove("rememberMe"); } // 调用action的登录方法 - userStore.login(loginForm.value).then(() => { + const currentTenantId=tenantList.value.filter(x=>x.name==tenantSelected.value)[0]?.id??null; + + console.log(currentTenantId,'currentTenantId') + userStore.login(loginForm.value,currentTenantId).then(() => { router.push({ path: redirect.value || "/" }); }).catch(() => { loading.value = false;