From e10507931192c63190ee3f171a20f330445edeca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 31 Aug 2017 16:45:20 +0300 Subject: [PATCH] Change crud add service base. --- .../Services/AsyncCrudAppService.cs | 44 +++---------------- .../Application/Services/CrudAppService.cs | 44 +++---------------- .../Services/CrudAppServiceBase.cs | 1 - .../Services/IAsyncCrudAppService.cs | 34 +++----------- .../Application/Services/ICrudAppService.cs | 34 +++----------- .../AspNetCore/Mvc/PersonAppService_Tests.cs | 4 +- 6 files changed, 30 insertions(+), 131 deletions(-) diff --git a/src/Volo.Abp/Volo/Abp/Application/Services/AsyncCrudAppService.cs b/src/Volo.Abp/Volo/Abp/Application/Services/AsyncCrudAppService.cs index a38ef5b5ba..6e4e8419d0 100644 --- a/src/Volo.Abp/Volo/Abp/Application/Services/AsyncCrudAppService.cs +++ b/src/Volo.Abp/Volo/Abp/Application/Services/AsyncCrudAppService.cs @@ -59,40 +59,10 @@ namespace Volo.Abp.Application.Services } public abstract class AsyncCrudAppService - : AsyncCrudAppService> - where TEntity : class, IEntity - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - { - protected AsyncCrudAppService(IQueryableRepository repository) - : base(repository) - { - - } - } - - public abstract class AsyncCrudAppService - : AsyncCrudAppService> - where TEntity : class, IEntity - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - { - protected AsyncCrudAppService(IQueryableRepository repository) - : base(repository) - { - - } - } - - public abstract class AsyncCrudAppService : CrudAppServiceBase, - IAsyncCrudAppService + IAsyncCrudAppService where TEntity : class, IEntity where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - where TDeleteInput : IEntityDto { public IAsyncQueryableExecuter AsyncQueryableExecuter { get; set; } @@ -102,11 +72,11 @@ namespace Volo.Abp.Application.Services AsyncQueryableExecuter = DefaultAsyncQueryableExecuter.Instance; } - public virtual async Task Get(TGetInput input) + public virtual async Task Get(TPrimaryKey id) { CheckGetPermission(); - var entity = await GetEntityByIdAsync(input.Id); + var entity = await GetEntityByIdAsync(id); return MapToEntityDto(entity); } @@ -141,11 +111,11 @@ namespace Volo.Abp.Application.Services return MapToEntityDto(entity); } - public virtual async Task Update(TUpdateInput input) + public virtual async Task Update(TPrimaryKey id, TUpdateInput input) { CheckUpdatePermission(); - var entity = await GetEntityByIdAsync(input.Id); + var entity = await GetEntityByIdAsync(id); MapToEntity(input, entity); await CurrentUnitOfWork.SaveChangesAsync(); @@ -153,11 +123,11 @@ namespace Volo.Abp.Application.Services return MapToEntityDto(entity); } - public virtual Task Delete(TDeleteInput input) + public virtual Task Delete(TPrimaryKey id) { CheckDeletePermission(); - return Repository.DeleteAsync(input.Id); + return Repository.DeleteAsync(id); } protected virtual Task GetEntityByIdAsync(TPrimaryKey id) diff --git a/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppService.cs b/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppService.cs index 65e0d36ccc..127d0acd62 100644 --- a/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppService.cs +++ b/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppService.cs @@ -56,40 +56,10 @@ namespace Volo.Abp.Application.Services } public abstract class CrudAppService - : CrudAppService> - where TEntity : class, IEntity - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - { - protected CrudAppService(IQueryableRepository repository) - : base(repository) - { - - } - } - - public abstract class CrudAppService - : CrudAppService> - where TEntity : class, IEntity - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - { - protected CrudAppService(IQueryableRepository repository) - : base(repository) - { - - } - } - - public abstract class CrudAppService : CrudAppServiceBase, - ICrudAppService + ICrudAppService where TEntity : class, IEntity where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - where TDeleteInput : IEntityDto { protected CrudAppService(IQueryableRepository repository) : base(repository) @@ -97,11 +67,11 @@ namespace Volo.Abp.Application.Services } - public virtual TEntityDto Get(TGetInput input) + public virtual TEntityDto Get(TPrimaryKey id) { CheckGetPermission(); - var entity = GetEntityById(input.Id); + var entity = GetEntityById(id); return MapToEntityDto(entity); } @@ -136,11 +106,11 @@ namespace Volo.Abp.Application.Services return MapToEntityDto(entity); } - public virtual TEntityDto Update(TUpdateInput input) + public virtual TEntityDto Update(TPrimaryKey id, TUpdateInput input) { CheckUpdatePermission(); - var entity = GetEntityById(input.Id); + var entity = GetEntityById(id); MapToEntity(input, entity); CurrentUnitOfWork.SaveChanges(); @@ -148,11 +118,11 @@ namespace Volo.Abp.Application.Services return MapToEntityDto(entity); } - public virtual void Delete(TDeleteInput input) + public virtual void Delete(TPrimaryKey id) { CheckDeletePermission(); - Repository.Delete(input.Id); + Repository.Delete(id); } protected virtual TEntity GetEntityById(TPrimaryKey id) diff --git a/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppServiceBase.cs b/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppServiceBase.cs index e36c6a9628..555b2d46b3 100644 --- a/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppServiceBase.cs +++ b/src/Volo.Abp/Volo/Abp/Application/Services/CrudAppServiceBase.cs @@ -15,7 +15,6 @@ namespace Volo.Abp.Application.Services public abstract class CrudAppServiceBase : ApplicationService where TEntity : class, IEntity where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto { protected IQueryableRepository Repository { get; } diff --git a/src/Volo.Abp/Volo/Abp/Application/Services/IAsyncCrudAppService.cs b/src/Volo.Abp/Volo/Abp/Application/Services/IAsyncCrudAppService.cs index 1fad8eb211..6fe5b19b28 100644 --- a/src/Volo.Abp/Volo/Abp/Application/Services/IAsyncCrudAppService.cs +++ b/src/Volo.Abp/Volo/Abp/Application/Services/IAsyncCrudAppService.cs @@ -11,21 +11,21 @@ namespace Volo.Abp.Application.Services } - public interface IAsyncCrudAppService + public interface IAsyncCrudAppService : IAsyncCrudAppService where TEntityDto : IEntityDto { } - public interface IAsyncCrudAppService + public interface IAsyncCrudAppService : IAsyncCrudAppService where TEntityDto : IEntityDto { } - public interface IAsyncCrudAppService + public interface IAsyncCrudAppService : IAsyncCrudAppService where TEntityDto : IEntityDto where TCreateInput : IEntityDto @@ -33,38 +33,18 @@ namespace Volo.Abp.Application.Services } - public interface IAsyncCrudAppService - : IAsyncCrudAppService> - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - { - - } - - public interface IAsyncCrudAppService - : IAsyncCrudAppService> - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - { - - } - - public interface IAsyncCrudAppService + public interface IAsyncCrudAppService : IApplicationService where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - where TDeleteInput : IEntityDto { - Task Get(TGetInput input); + Task Get(TPrimaryKey id); Task> GetAll(TGetAllInput input); Task Create(TCreateInput input); - Task Update(TUpdateInput input); + Task Update(TPrimaryKey id, TUpdateInput input); - Task Delete(TDeleteInput input); + Task Delete(TPrimaryKey id); } } diff --git a/src/Volo.Abp/Volo/Abp/Application/Services/ICrudAppService.cs b/src/Volo.Abp/Volo/Abp/Application/Services/ICrudAppService.cs index 8839392fcf..24a74e6cdd 100644 --- a/src/Volo.Abp/Volo/Abp/Application/Services/ICrudAppService.cs +++ b/src/Volo.Abp/Volo/Abp/Application/Services/ICrudAppService.cs @@ -10,21 +10,21 @@ namespace Volo.Abp.Application.Services } - public interface ICrudAppService + public interface ICrudAppService : ICrudAppService where TEntityDto : IEntityDto { } - public interface ICrudAppService + public interface ICrudAppService : ICrudAppService where TEntityDto : IEntityDto { } - public interface ICrudAppService + public interface ICrudAppService : ICrudAppService where TEntityDto : IEntityDto where TCreateInput : IEntityDto @@ -32,38 +32,18 @@ namespace Volo.Abp.Application.Services } - public interface ICrudAppService - : ICrudAppService> - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - { - - } - - public interface ICrudAppService - : ICrudAppService> - where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - { - - } - - public interface ICrudAppService + public interface ICrudAppService : IApplicationService where TEntityDto : IEntityDto - where TUpdateInput : IEntityDto - where TGetInput : IEntityDto - where TDeleteInput : IEntityDto { - TEntityDto Get(TGetInput input); + TEntityDto Get(TPrimaryKey id); PagedResultDto GetAll(TGetAllInput input); TEntityDto Create(TCreateInput input); - TEntityDto Update(TUpdateInput input); + TEntityDto Update(TPrimaryKey id, TUpdateInput input); - void Delete(TDeleteInput input); + void Delete(TPrimaryKey id); } } diff --git a/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/PersonAppService_Tests.cs b/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/PersonAppService_Tests.cs index c31e98e192..4d5bcacd66 100644 --- a/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/PersonAppService_Tests.cs +++ b/test/Volo.Abp.AspNetCore.Mvc.Tests/Volo/Abp/AspNetCore/Mvc/PersonAppService_Tests.cs @@ -101,9 +101,9 @@ namespace Volo.Abp.AspNetCore.Mvc //Act - //Ideally should be [PUT] /api/app/person + //Ideally should be [PUT] /api/app/person/{id} var response = await Client.PutAsync( - "/api/services/app/person/Update/{id}", + "/api/services/app/person/Update?id=" + updateDto.Id, new StringContent(putData, Encoding.UTF8, "application/json") );