Browse Source

update tenantmanagement blazor package

pull/5614/head
Ahmet 6 years ago
parent
commit
9a03e55630
  1. 7
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/AbpTenantManagementBlazorAutoMapperProfile.cs
  2. 6
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/AbpTenantManagementBlazorModule.cs
  3. 2
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/FodyWeavers.xml
  4. 23
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Menus/TenantManagementBlazorMenuContributor.cs
  5. 11
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Menus/TenantManagementBlazorMenus.cs
  6. 32
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/AbpIdentityWebMainMenuContributor.cs
  7. 9
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/TenantManagementMenuNames.cs
  8. 61
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor
  9. 29
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs
  10. 8
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/Tenants/Index.razor
  11. 38
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.csproj
  12. 3
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/_Imports.razor

7
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/AbpTenantManagementBlazorAutoMapperProfile.cs

@ -6,9 +6,8 @@ namespace Volo.Abp.TenantManagement.Blazor
{
public AbpTenantManagementBlazorAutoMapperProfile()
{
/* You can configure your AutoMapper mapping configuration here.
* Alternatively, you can split your mapping configurations
* into multiple profile classes for a better organization. */
CreateMap<TenantDto, TenantUpdateDto>()
.MapExtraProperties();
}
}
}
}

6
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/AbpTenantManagementBlazorModule.cs

@ -2,7 +2,7 @@
using Volo.Abp.AspNetCore.Components.WebAssembly.Theming.Routing;
using Volo.Abp.AutoMapper;
using Volo.Abp.Modularity;
using Volo.Abp.TenantManagement.Blazor.Menus;
using Volo.Abp.TenantManagement.Blazor.Navigation;
using Volo.Abp.UI.Navigation;
namespace Volo.Abp.TenantManagement.Blazor
@ -10,7 +10,7 @@ namespace Volo.Abp.TenantManagement.Blazor
[DependsOn(
typeof(AbpAutoMapperModule),
typeof(AbpTenantManagementHttpApiClientModule)
)]
)]
public class AbpTenantManagementBlazorModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)
@ -33,4 +33,4 @@ namespace Volo.Abp.TenantManagement.Blazor
});
}
}
}
}

2
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/FodyWeavers.xml

@ -1,3 +1,3 @@
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd">
<ConfigureAwait />
<ConfigureAwait ContinueOnCapturedContext="false" />
</Weavers>

23
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Menus/TenantManagementBlazorMenuContributor.cs

@ -1,23 +0,0 @@
using System.Threading.Tasks;
using Volo.Abp.UI.Navigation;
namespace Volo.Abp.TenantManagement.Blazor.Menus
{
public class TenantManagementBlazorMenuContributor : IMenuContributor
{
public async Task ConfigureMenuAsync(MenuConfigurationContext context)
{
if (context.Menu.Name == StandardMenus.Main)
{
await ConfigureMainMenu(context);
}
}
private Task ConfigureMainMenu(MenuConfigurationContext context)
{
//Add main menu items.
return Task.CompletedTask;
}
}
}

11
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Menus/TenantManagementBlazorMenus.cs

@ -1,11 +0,0 @@
namespace Volo.Abp.TenantManagement.Blazor.Menus
{
public class TenantManagementBlazorMenus
{
private const string Prefix = "MyProjectName";
//Add your menu items here...
//public const string Home = Prefix + ".MyNewMenuItem";
}
}

32
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/AbpIdentityWebMainMenuContributor.cs

@ -0,0 +1,32 @@
using System.Threading.Tasks;
using Volo.Abp.TenantManagement.Localization;
using Volo.Abp.UI.Navigation;
namespace Volo.Abp.TenantManagement.Blazor.Navigation
{
public class TenantManagementBlazorMenuContributor : IMenuContributor
{
public async Task ConfigureMenuAsync(MenuConfigurationContext context)
{
if (context.Menu.Name == StandardMenus.Main)
{
await ConfigureMainMenu(context);
}
}
private async Task ConfigureMainMenu(MenuConfigurationContext context)
{
var administrationMenu = context.Menu.GetAdministration();
var l = context.GetLocalizer<AbpTenantManagementResource>();
var tenantManagementMenuItem = new ApplicationMenuItem(TenantManagementMenuNames.GroupName, l["Menu:TenantManagement"], icon: "fa fa-users");
administrationMenu.AddItem(tenantManagementMenuItem);
if (await context.IsGrantedAsync(TenantManagementPermissions.Tenants.Default))
{
tenantManagementMenuItem.AddItem(new ApplicationMenuItem(TenantManagementMenuNames.Tenants, l["Tenants"], url: "TenantManagement/Tenants"));
}
}
}
}

9
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/TenantManagementMenuNames.cs

@ -0,0 +1,9 @@
namespace Volo.Abp.TenantManagement.Blazor.Navigation
{
public class TenantManagementMenuNames
{
public const string GroupName = "TenantManagement";
public const string Tenants = GroupName + ".Tenants";
}
}

61
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor

@ -0,0 +1,61 @@
@page "/tenant-management/tenants"
@attribute [Authorize(TenantManagementPermissions.Tenants.Default)]
@using Microsoft.AspNetCore.Authorization
@using Microsoft.Extensions.Localization
@using Volo.Abp.TenantManagement.Localization
@inherits TenantManagementBase
@inject IStringLocalizer<AbpTenantManagementResource> L
@* ************************* PAGE HEADER ************************* *@
<Row>
<Column ColumnSize="ColumnSize.Is6">
<h1>@L["Tenants"]</h1>
</Column>
<Column ColumnSize="ColumnSize.Is6">
@if (HasCreatePermission)
{
<Paragraph Alignment="TextAlignment.Right">
<Button Color="Color.Primary" Clicked="OpenCreateModalAsync">@L["NewTenant"]</Button>
</Paragraph>
}
</Column>
</Row>
@* ************************* DATA GRID ************************* *@
<DataGrid TItem="TenantDto"
Data="Entities"
ReadData="OnDataGridReadAsync"
TotalItems="TotalCount"
ShowPager="true"
PageSize="PageSize">
<DataGridColumns>
@if (ShouldShowEntityActions)
{
<DataGridColumn Width="150px" TItem="TenantDto" Field="@nameof(TenantDto.Name)" Sortable="false" Caption="@L["Actions"].Value">
<DisplayTemplate>
<Dropdown>
<DropdownToggle Color="Color.Primary">
@L["Actions"]
</DropdownToggle>
<DropdownMenu>
@if (HasUpdatePermission)
{
<DropdownItem Clicked="() => OpenEditModalAsync(context.As<TenantDto>().Id)">@L["Edit"]</DropdownItem>
}
@if (HasDeletePermission)
{
<DropdownDivider/>
<DropdownItem Clicked="() => DeleteEntityAsync(context.As<TenantDto>())">@L["Delete"]</DropdownItem>
}
</DropdownMenu>
</Dropdown>
</DisplayTemplate>
</DataGridColumn>
}
<DataGridColumn TItem="TenantDto" Field="@nameof(TenantDto.Name)" Caption="@L["TenantName"].Value">
<DisplayTemplate>
@(context.As<TenantDto>().Name)
</DisplayTemplate>
</DataGridColumn>
</DataGridColumns>
</DataGrid>

29
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/TenantManagement.razor.cs

@ -0,0 +1,29 @@
using System;
using System.Threading.Tasks;
using Volo.Abp.BlazoriseUI;
namespace Volo.Abp.TenantManagement.Blazor.Pages.TenantManagement
{
public abstract class TenantManagementBase
: AbpCrudPageBase<ITenantAppService, TenantDto, Guid, GetTenantsInput, TenantCreateDto, TenantUpdateDto>
{
protected bool ShouldShowEntityActions;
public TenantManagementBase()
{
ObjectMapperContext = typeof(AbpTenantManagementBlazorModule);
CreatePolicyName = TenantManagementPermissions.Tenants.Create;
UpdatePolicyName = TenantManagementPermissions.Tenants.Update;
DeletePolicyName = TenantManagementPermissions.Tenants.Delete;
}
protected override async Task SetPermissionsAsync()
{
await base.SetPermissionsAsync();
ShouldShowEntityActions = HasUpdatePermission ||
HasDeletePermission;
}
}
}

8
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Pages/TenantManagement/Tenants/Index.razor

@ -1,8 +0,0 @@
@page "/TenantManagement/Tenants"
@using Microsoft.Extensions.Localization
@using Volo.Abp.TenantManagement.Localization
@inject IStringLocalizer<AbpTenantManagementResource> L
@{
}
<h1>MyProjectName</h1>
<p>@L["SamplePageMessage"]</p>

38
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Volo.Abp.TenantManagement.Blazor.csproj

@ -1,20 +1,26 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk.Razor">
<Import Project="..\..\..\..\configureawait.props" />
<Import Project="..\..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<RazorLangVersion>3.0</RazorLangVersion>
<RootNamespace>Volo.Abp.TenantManagement.Blazor</RootNamespace>
</PropertyGroup>
<Import Project="..\..\..\..\configureawait.props" />
<Import Project="..\..\..\..\common.props" />
<ItemGroup>
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Components.WebAssembly.Theming\Volo.Abp.AspNetCore.Components.WebAssembly.Theming.csproj" />
</ItemGroup>
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<RazorLangVersion>3.0</RazorLangVersion>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Components.WebAssembly.Theming\Volo.Abp.AspNetCore.Components.WebAssembly.Theming.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.TenantManagement.HttpApi.Client\Volo.Abp.TenantManagement.HttpApi.Client.csproj" />
</ItemGroup>
<ItemGroup>
<Content Update="Pages\TenantManagement\TenantManagement.razor">
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
</Content>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.TenantManagement.HttpApi.Client\Volo.Abp.TenantManagement.HttpApi.Client.csproj" />
</ItemGroup>
</Project>

3
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/_Import.razor → modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/_Imports.razor

@ -1,5 +1,6 @@
@using Microsoft.AspNetCore.Components.Web
@using Volo.Abp.AspNetCore.Components.WebAssembly
@using Microsoft.AspNetCore.Components.Forms
@using Volo.Abp.BlazoriseUI
@using Blazorise
@using Blazorise.DataGrid
@using Blazorise.DataGrid
Loading…
Cancel
Save