fix: 账号管理
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m18s

This commit is contained in:
sexygoat
2026-04-28 15:32:33 +08:00
parent 317afd2d23
commit c80ff80bf0

View File

@@ -5,7 +5,7 @@
import { ref, reactive, computed, onMounted } from 'vue'
import { useRouter, useRoute } from 'vue-router'
import { useI18n } from 'vue-i18n'
import { ElNotification } from 'element-plus'
import { ElNotification, ElMessage } from 'element-plus'
import type { FormInstance, FormRules } from 'element-plus'
import { useUserStore } from '@/store/modules/user'
import { HOME_PAGE, RoutesAlias } from '@/router/routesAlias'
@@ -110,7 +110,7 @@ export function useLogin() {
// 检查用户类型 - 禁止企业账号登录
if (response.data.user && response.data.user.user_type === 4) {
console.log('企业账号无法登录后台管理系统')
ElMessage.error('企业账号无法登录后台管理系统,请使用平台/代理账号登录')
return
}
@@ -122,7 +122,7 @@ export function useLogin() {
userStore.setUserInfo(response.data.user)
userStore.setLoginStatus(true)
} else {
console.log(t('login.error.getUserInfoFailed'))
ElMessage.error(t('login.error.getUserInfoFailed'))
return
}
@@ -137,6 +137,19 @@ export function useLogin() {
userStore.setButtons(response.data.buttons)
}
// 检查权限和菜单是否为空
const hasPermissions = response.data.permissions && response.data.permissions.length > 0
const hasMenus = response.data.menus && response.data.menus.length > 0
if (!hasPermissions || !hasMenus) {
ElMessage.warning({
message: '当前账号暂无任何权限,请联系管理员分配角色和权限',
duration: 4000,
showClose: true
})
// 虽然没有权限,但仍然允许登录,让用户看到空白页面而不是停留在登录页
}
// 保存记住密码
saveCredentials(formData.username, formData.password, formData.rememberPassword)