This commit is contained in:
Taric Xin
2022-02-11 17:40:34 +08:00
parent ce0dc4c68a
commit 72d289d728
2 changed files with 25 additions and 20 deletions

View File

@ -22,7 +22,7 @@ import {
UrlTree
} from '@angular/router';
import { ACLCanType, ACLGuard, ACLGuardType, ACLService } from '@delon/acl';
import { MenuService } from '@delon/theme';
import { MenuService, SettingsService } from '@delon/theme';
import { BaseService, EAUserService } from '@shared';
import { Observable, of } from 'rxjs';
import { delay, map, switchMap, tap } from 'rxjs/operators';
@ -34,6 +34,7 @@ export class AuthGuard extends ACLGuard {
public srv1: ACLService,
private baseService: BaseService,
private menuService: MenuService,
private settings: SettingsService,
router: Router,
private inject: Injector
) {
@ -61,25 +62,29 @@ export class AuthGuard extends ACLGuard {
if (!router) {
return type === 1 ? super.canActivate(route, state) : super.canActivateChild(route, state);
}
return this.baseService.request('/api/mdc/cuc/enterpriseProject/getUserDefaultEnterpriseProject').pipe(
switchMap(res => {
if (res.enterpriseIdentity) {
// 超级管理员赋值全量权限
this.srv1.setFull(true);
return of(true);
} else {
// 如果不是超级管理员 获取权限
return this.baseService.request('/api/mdc/cuc/functionButton/getUserFunctionButton', { link: router });
}
}),
switchMap(res => {
if (res?.abilities) {
this.srv1.setAbility(res.abilities || []);
this.menuService.resume();
}
return type === 1 ? super.canActivate(route, state) : super.canActivateChild(route, state);
return this.baseService
.request('/api/mdc/cuc/userAuthority/isUserAdmin', {
appUserId: this.settings.user.appUserId
})
);
.pipe(
switchMap(res => {
if (res) {
// 超级管理员赋值全量权限
this.srv1.setFull(true);
return of(true);
} else {
// 如果不是超级管理员 获取权限
return this.baseService.request('/api/mdc/cuc/functionButton/getUserFunctionButton', { link: router });
}
}),
switchMap(res => {
if (res?.abilities) {
this.srv1.setAbility(res.abilities || []);
this.menuService.resume();
}
return type === 1 ? super.canActivate(route, state) : super.canActivateChild(route, state);
})
);
}
/**

View File

@ -304,7 +304,7 @@ export class UserCenterComponentsDriverComponent implements OnInit {
fixed:'right',
buttons: [
{
text: '查看',
text: '查看<br/>',
click: item => {
this.router.navigate(['./detail', item.appUserId], { relativeTo: this.ar });
// this.router.navigate(['./view', item.id], { relativeTo: this.ar, queryParams: { tenantId: item.tenantId } });