Browse Source

permission-management: Replace Mapperly with AutoMapper

pull/23532/head
EngincanV 6 months ago
parent
commit
43e53a5f77
  1. 2
      modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/AbpPermissionManagementBlazorModule.cs
  2. 1
      modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.csproj
  3. 18
      modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebAutoMapperProfile.cs
  4. 33
      modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebMappers.cs
  5. 10
      modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebModule.cs
  6. 2
      modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.csproj

2
modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/AbpPermissionManagementBlazorModule.cs

@ -1,6 +1,5 @@
using Localization.Resources.AbpUi;
using Volo.Abp.AspNetCore.Components.Web.Theming;
using Volo.Abp.AutoMapper;
using Volo.Abp.Localization;
using Volo.Abp.Modularity;
using Volo.Abp.PermissionManagement.Localization;
@ -9,7 +8,6 @@ namespace Volo.Abp.PermissionManagement.Blazor;
[DependsOn(
typeof(AbpAspNetCoreComponentsWebThemingModule),
typeof(AbpAutoMapperModule),
typeof(AbpPermissionManagementApplicationContractsModule)
)]
public class AbpPermissionManagementBlazorModule : AbpModule

1
modules/permission-management/src/Volo.Abp.PermissionManagement.Blazor/Volo.Abp.PermissionManagement.Blazor.csproj

@ -9,7 +9,6 @@
<ItemGroup>
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Components.Web.Theming\Volo.Abp.AspNetCore.Components.Web.Theming.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
</ItemGroup>
<ItemGroup>

18
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebAutoMapperProfile.cs

@ -1,18 +0,0 @@
using AutoMapper;
using Volo.Abp.AutoMapper;
using Volo.Abp.PermissionManagement.Web.Pages.AbpPermissionManagement;
namespace Volo.Abp.PermissionManagement.Web;
public class AbpPermissionManagementWebAutoMapperProfile : Profile
{
public AbpPermissionManagementWebAutoMapperProfile()
{
CreateMap<PermissionGroupDto, PermissionManagementModal.PermissionGroupViewModel>().Ignore(p => p.IsAllPermissionsGranted);
CreateMap<PermissionGrantInfoDto, PermissionManagementModal.PermissionGrantInfoViewModel>()
.ForMember(p => p.Depth, opts => opts.Ignore());
CreateMap<ProviderInfoDto, PermissionManagementModal.ProviderInfoViewModel>();
}
}

33
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebMappers.cs

@ -0,0 +1,33 @@
using Riok.Mapperly.Abstractions;
using Volo.Abp.Mapperly;
using static Volo.Abp.PermissionManagement.Web.Pages.AbpPermissionManagement.PermissionManagementModal;
namespace Volo.Abp.PermissionManagement.Web;
[Mapper]
public partial class PermissionGroupDtoToPermissionGroupViewModelMapper : MapperBase<PermissionGroupDto, PermissionGroupViewModel>
{
[MapperIgnoreTarget(nameof(PermissionGroupViewModel.IsAllPermissionsGranted))]
public override partial PermissionGroupViewModel Map(PermissionGroupDto source);
[MapperIgnoreTarget(nameof(PermissionGroupViewModel.IsAllPermissionsGranted))]
public override partial void Map(PermissionGroupDto source, PermissionGroupViewModel destination);
}
[Mapper]
public partial class PermissionGrantInfoDtoToPermissionGrantInfoViewModelMapper : MapperBase<PermissionGrantInfoDto, PermissionGrantInfoViewModel>
{
[MapperIgnoreTarget(nameof(PermissionGrantInfoViewModel.Depth))]
public override partial PermissionGrantInfoViewModel Map(PermissionGrantInfoDto source);
[MapperIgnoreTarget(nameof(PermissionGrantInfoViewModel.Depth))]
public override partial void Map(PermissionGrantInfoDto source, PermissionGrantInfoViewModel destination);
}
[Mapper]
public partial class ProviderInfoDtoToProviderInfoViewModelMapper : MapperBase<ProviderInfoDto, ProviderInfoViewModel>
{
public override partial ProviderInfoViewModel Map(ProviderInfoDto source);
public override partial void Map(ProviderInfoDto source, ProviderInfoViewModel destination);
}

10
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/AbpPermissionManagementWebModule.cs

@ -1,8 +1,8 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.AspNetCore.Mvc.Localization;
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap;
using Volo.Abp.AutoMapper;
using Volo.Abp.Http.ProxyScripting.Generators.JQuery;
using Volo.Abp.Mapperly;
using Volo.Abp.Modularity;
using Volo.Abp.PermissionManagement.Localization;
using Volo.Abp.VirtualFileSystem;
@ -11,7 +11,7 @@ namespace Volo.Abp.PermissionManagement.Web;
[DependsOn(typeof(AbpPermissionManagementApplicationContractsModule))]
[DependsOn(typeof(AbpAspNetCoreMvcUiBootstrapModule))]
[DependsOn(typeof(AbpAutoMapperModule))]
[DependsOn(typeof(AbpMapperlyModule))]
public class AbpPermissionManagementWebModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)
@ -34,11 +34,7 @@ public class AbpPermissionManagementWebModule : AbpModule
options.FileSets.AddEmbedded<AbpPermissionManagementWebModule>();
});
context.Services.AddAutoMapperObjectMapper<AbpPermissionManagementWebModule>();
Configure<AbpAutoMapperOptions>(options =>
{
options.AddProfile<AbpPermissionManagementWebAutoMapperProfile>(validate: true);
});
context.Services.AddMapperlyObjectMapper<AbpPermissionManagementWebModule>();
Configure<DynamicJavaScriptProxyOptions>(options =>
{

2
modules/permission-management/src/Volo.Abp.PermissionManagement.Web/Volo.Abp.PermissionManagement.Web.csproj

@ -31,7 +31,7 @@
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.PermissionManagement.Application.Contracts\Volo.Abp.PermissionManagement.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj" />
<ProjectReference Include="..\..\..\..\framework\src\Volo.Abp.Mapperly\Volo.Abp.Mapperly.csproj" />
</ItemGroup>
<ItemGroup>

Loading…
Cancel
Save