1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /* JVxeTable 行编辑 权限 */
- import { usePermissionStoreWithOut } from '/@/store/modules/permission';
- const permissionStore = usePermissionStoreWithOut();
- /**
- * JVxe 专用,获取权限
- * @param prefix
- */
- export function getJVxeAuths(prefix) {
- prefix = getPrefix(prefix);
- let { authList, allAuthList } = permissionStore;
- let authsMap = new Map<string, typeof allAuthList[0]>();
- if (!prefix || prefix.length == 0) {
- return authsMap;
- }
- // 将所有vxe用到的权限取出来
- for (let auth of allAuthList) {
- if (auth.status == '1' && (auth.action || '').startsWith(prefix)) {
- authsMap.set(auth.action, { ...auth, isAuth: false });
- }
- }
- // 设置是否已授权
- for (let auth of authList) {
- let getAuth = authsMap.get(auth.action);
- if (getAuth != null) {
- getAuth.isAuth = true;
- }
- }
- //update-begin-author:taoyan date:2022-6-1 for: VUEN-1162 子表按钮没控制
- let onlineButtonAuths = permissionStore.getOnlineSubTableAuth(prefix);
- if (onlineButtonAuths && onlineButtonAuths.length > 0) {
- for (let auth of onlineButtonAuths) {
- authsMap.set(prefix + 'btn:' + auth, { action: auth, type: 1, status: 1, isAuth: false });
- }
- }
- //update-end-author:taoyan date:2022-6-1 for: VUEN-1162 子表按钮没控制
- return authsMap;
- }
- /**
- * 获取前缀
- * @param prefix
- */
- export function getPrefix(prefix: string) {
- if (prefix && !prefix.endsWith(':')) {
- return prefix + ':';
- }
- return prefix;
- }
|