Commit 754206f1 authored by heduo's avatar heduo

feat(hd):切换角色

parent 3cde9213
...@@ -17,6 +17,13 @@ ...@@ -17,6 +17,13 @@
<!-- :text="t('layout.header.tooltipLock')"--> <!-- :text="t('layout.header.tooltipLock')"-->
<!-- icon="ion:lock-closed-outline"--> <!-- icon="ion:lock-closed-outline"-->
<!-- />--> <!-- />-->
<MenuItem
v-for="item in roleList"
:key="item.roleNum"
:text="t(item.roleName)"
icon="ant-design:user-outlined"
/>
<Menu.Divider />
<MenuItem <MenuItem
key="logout" key="logout"
:text="t('layout.header.dropdownItemLoginOut')" :text="t('layout.header.dropdownItemLoginOut')"
...@@ -31,9 +38,9 @@ ...@@ -31,9 +38,9 @@
// components // components
import { Dropdown, Menu } from 'ant-design-vue'; import { Dropdown, Menu } from 'ant-design-vue';
import { defineComponent, computed } from 'vue'; import { defineComponent, computed, ref } from 'vue';
import { DOC_URL } from '/@/settings/siteSetting'; // import { DOC_URL } from '/@/settings/siteSetting';
import { useUserStore } from '/@/store/modules/user'; import { useUserStore } from '/@/store/modules/user';
import { useHeaderSetting } from '/@/hooks/setting/useHeaderSetting'; import { useHeaderSetting } from '/@/hooks/setting/useHeaderSetting';
...@@ -43,9 +50,11 @@ ...@@ -43,9 +50,11 @@
import headerImg from '/@/assets/images/header.jpg'; import headerImg from '/@/assets/images/header.jpg';
import { propTypes } from '/@/utils/propTypes'; import { propTypes } from '/@/utils/propTypes';
import { openWindow } from '/@/utils'; // import { openWindow } from '/@/utils';
import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent'; import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent';
import { RoleEnum } from '/@/enums/roleEnum';
import { usePermission } from '/@/hooks/web/usePermission';
type MenuEvent = 'logout' | 'doc' | 'lock'; type MenuEvent = 'logout' | 'doc' | 'lock';
...@@ -72,12 +81,15 @@ ...@@ -72,12 +81,15 @@
const { userName: realName = '', avatar, desc } = userStore.getUserInfo || {}; const { userName: realName = '', avatar, desc } = userStore.getUserInfo || {};
return { realName, avatar: avatar || headerImg, desc }; return { realName, avatar: avatar || headerImg, desc };
}); });
const { changeRole } = usePermission();
const roleList = ref([]);
roleList.value = userStore.getUserInfo.roleList;
// const [register, { openModal }] = useModal();
const [register] = useModal();
const [register, { openModal }] = useModal(); // function handleLock() {
// openModal(true);
function handleLock() { // }
openModal(true);
}
// login out // login out
function handleLoginOut() { function handleLoginOut() {
...@@ -85,21 +97,26 @@ ...@@ -85,21 +97,26 @@
} }
// open doc // open doc
function openDoc() { // function openDoc() {
openWindow(DOC_URL); // openWindow(DOC_URL);
} // }
function handleMenuClick(e: { key: MenuEvent }) { function handleMenuClick(e: { key: MenuEvent }) {
switch (e.key) { // switch (e.key) {
case 'logout': // case 'logout':
// handleLoginOut();
// break;
// case 'doc':
// openDoc();
// break;
// case 'lock':
// handleLock();
// break;
// }
if (e.key === 'logout') {
handleLoginOut(); handleLoginOut();
break; } else {
case 'doc': changeRole(RoleEnum[e.key]);
openDoc();
break;
case 'lock':
handleLock();
break;
} }
} }
...@@ -111,6 +128,8 @@ ...@@ -111,6 +128,8 @@
getShowDoc, getShowDoc,
register, register,
getUseLockPage, getUseLockPage,
changeRole,
roleList,
}; };
}, },
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment