diff --git a/aspnet-core/services/apigateway/LINGYUN.ApiGateway.Host/event-bus-cap.db b/aspnet-core/services/apigateway/LINGYUN.ApiGateway.Host/event-bus-cap.db index dc066d37f..56ad120b1 100644 Binary files a/aspnet-core/services/apigateway/LINGYUN.ApiGateway.Host/event-bus-cap.db and b/aspnet-core/services/apigateway/LINGYUN.ApiGateway.Host/event-bus-cap.db differ diff --git a/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/AppPlatformHttpApiHostModule.cs b/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/AppPlatformHttpApiHostModule.cs index f4a0d45ff..658dddbef 100644 --- a/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/AppPlatformHttpApiHostModule.cs +++ b/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/AppPlatformHttpApiHostModule.cs @@ -46,7 +46,7 @@ using Volo.Abp.SettingManagement.EntityFrameworkCore; using Volo.Abp.TenantManagement.EntityFrameworkCore; using Volo.Abp.Threading; using Volo.Abp.VirtualFileSystem; -using Volo.Abp.Http.Client.IdentityModel; +using Volo.Abp.Http.Client.IdentityModel.Web; namespace LINGYUN.Platform { @@ -57,7 +57,7 @@ namespace LINGYUN.Platform typeof(PlatformHttpApiModule), typeof(PlatformEntityFrameworkCoreModule), typeof(AbpIdentityHttpApiClientModule), - typeof(AbpHttpClientIdentityModelModule), + typeof(AbpHttpClientIdentityModelWebModule), typeof(AbpAspNetCoreMultiTenancyModule), typeof(AbpFeatureManagementEntityFrameworkCoreModule), typeof(AbpAuditLoggingEntityFrameworkCoreModule), diff --git a/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/LINGYUN.Platform.HttpApi.Host.csproj b/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/LINGYUN.Platform.HttpApi.Host.csproj index 936db6c7f..b67f3cc3e 100644 --- a/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/LINGYUN.Platform.HttpApi.Host.csproj +++ b/aspnet-core/services/platform/LINGYUN.Platform.HttpApi.Host/LINGYUN.Platform.HttpApi.Host.csproj @@ -41,7 +41,7 @@ - + diff --git a/vueJs/src/api/menu.ts b/vueJs/src/api/menu.ts index dd29a114a..3ef8ecb01 100644 --- a/vueJs/src/api/menu.ts +++ b/vueJs/src/api/menu.ts @@ -29,8 +29,13 @@ export default class MenuService { return ApiService.Get>(_url, serviceUrl) } - public static getRoleMenuList(payload: GetRoleMenu) { - const _url = sourceUrl + '/by-role?' + urlStringify(payload) + public static getRoleMenuList(role: string, platformType: PlatformType) { + const _url = sourceUrl + `/by-role/${role}/${platformType}` + return ApiService.Get>(_url, serviceUrl) + } + + public static getUserMenuList(userId: string, platformType: PlatformType) { + const _url = sourceUrl + `/by-user/${userId}/${platformType}` return ApiService.Get>(_url, serviceUrl) } @@ -52,6 +57,11 @@ export default class MenuService { const _url = sourceUrl + '/by-role' return ApiService.Put(_url, payload,serviceUrl) } + + public static setUserMenu(payload: UserMenu) { + const _url = sourceUrl + '/by-user' + return ApiService.Put(_url, payload,serviceUrl) + } } export class MenuCreateOrUpdate { @@ -84,11 +94,6 @@ export class GetAllMenu implements ISortedResultRequest { platformType?: PlatformType } -export class GetRoleMenu { - role!: string - platformType!: PlatformType -} - export class GetMenuByPaged extends PagedAndSortedResultRequestDto { filter = '' reverse = false @@ -111,3 +116,8 @@ export class RoleMenu { roleName!: string menuIds = new Array() } + +export class UserMenu { + userId!: string + menuIds = new Array() +} diff --git a/vueJs/src/layout/components/TagsView/index.vue b/vueJs/src/layout/components/TagsView/index.vue index 8786ffd43..f57557c5b 100644 --- a/vueJs/src/layout/components/TagsView/index.vue +++ b/vueJs/src/layout/components/TagsView/index.vue @@ -18,7 +18,7 @@ @click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''" @contextmenu.prevent.native="openMenu(tag, $event)" > - {{ $t('route.' + tag.meta.title) }} + {{ routeTitle(tag) }} { + if (route.meta.displayName) { + return route.meta.displayName + } + return this.$t('route.' + route.meta.title) + } + } + @Watch('$route') private onRouteChange() { this.addTags() diff --git a/vueJs/src/views/admin/roles/components/ManageRoleMenuDialog.vue b/vueJs/src/views/admin/roles/components/ManageRoleMenuDialog.vue index 8845ae388..dacff57a5 100644 --- a/vueJs/src/views/admin/roles/components/ManageRoleMenuDialog.vue +++ b/vueJs/src/views/admin/roles/components/ManageRoleMenuDialog.vue @@ -2,6 +2,7 @@ import { Component, Vue, Prop, Watch } from 'vue-property-decorator' -import MenuService, { Menu, GetAllMenu, GetRoleMenu, RoleMenu } from '@/api/menu' +import MenuService, { Menu, GetAllMenu, RoleMenu } from '@/api/menu' import { generateTree } from '@/utils' -import { PlatformTypes } from '@/api/layout' +import { PlatformType, PlatformTypes } from '@/api/layout' import { Tree } from 'element-ui' @Component({ @@ -90,7 +91,6 @@ export default class ManageRoleMenuDialog extends Vue { private menus = new Array() private roleMenuIds = new Array() private getMenuQuery = new GetAllMenu() - private getRoleMenuQuery = new GetRoleMenu() private platformTypes = PlatformTypes private confirmButtonBusy = false private menuProps = { @@ -110,9 +110,9 @@ export default class ManageRoleMenuDialog extends Vue { this.handleGetRoleMenus() } - private onPlatformTypeChanged(value: any) { - this.getRoleMenuQuery.platformType = value + private onPlatformTypeChanged() { this.handleGetMenus() + this.handleGetRoleMenus() } private handleGetMenus() { @@ -125,9 +125,8 @@ export default class ManageRoleMenuDialog extends Vue { private handleGetRoleMenus() { if (this.showDialog && this.roleName) { - this.getRoleMenuQuery.role = this.roleName MenuService - .getRoleMenuList(this.getRoleMenuQuery) + .getRoleMenuList(this.roleName, this.getMenuQuery.platformType || PlatformType.None) .then(res => { this.roleMenuIds = res.items.map(item => item.id) }) diff --git a/vueJs/src/views/admin/users/components/ManageUserMenuDialog.vue b/vueJs/src/views/admin/users/components/ManageUserMenuDialog.vue new file mode 100644 index 000000000..d49a7aec4 --- /dev/null +++ b/vueJs/src/views/admin/users/components/ManageUserMenuDialog.vue @@ -0,0 +1,172 @@ + + + + + diff --git a/vueJs/src/views/admin/users/index.vue b/vueJs/src/views/admin/users/index.vue index dfa768fb7..263ab8610 100644 --- a/vueJs/src/views/admin/users/index.vue +++ b/vueJs/src/views/admin/users/index.vue @@ -116,10 +116,19 @@