From d5205810ad94313cf9bae09f05c3434fd23604fe Mon Sep 17 00:00:00 2001 From: gdlcf88 Date: Thu, 15 Apr 2021 19:47:45 +0800 Subject: [PATCH] Fix CheckProductUniqueNameAsync --- common.props | 2 +- .../EShop/Products/Products/IProductRepository.cs | 4 ++++ .../EasyAbp/EShop/Products/Products/ProductManager.cs | 10 +--------- .../EShop/Products/Products/ProductRepository.cs | 2 +- 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/common.props b/common.props index dd6cfe15..9a0ce302 100644 --- a/common.props +++ b/common.props @@ -1,7 +1,7 @@ latest - 2.1.4 + 2.1.5 $(NoWarn);CS1591 true EasyAbp Team diff --git a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/IProductRepository.cs b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/IProductRepository.cs index be8f27db..004211ce 100644 --- a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/IProductRepository.cs +++ b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/IProductRepository.cs @@ -1,5 +1,7 @@ using System; using System.Linq; +using System.Threading; +using System.Threading.Tasks; using Volo.Abp.Domain.Repositories; namespace EasyAbp.EShop.Products.Products @@ -9,5 +11,7 @@ namespace EasyAbp.EShop.Products.Products IQueryable GetQueryable(Guid categoryId); IQueryable WithDetails(Guid categoryId); + + Task CheckUniqueNameAsync(Product entity, CancellationToken cancellationToken = new CancellationToken()); } } \ No newline at end of file diff --git a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductManager.cs b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductManager.cs index 62b10b21..9f7ff67e 100644 --- a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductManager.cs +++ b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductManager.cs @@ -145,15 +145,7 @@ namespace EasyAbp.EShop.Products.Products protected virtual async Task CheckProductUniqueNameAsync(Product product) { - if (product.UniqueName.IsNullOrEmpty()) - { - return; - } - - if (await _productRepository.FindAsync(x => x.UniqueName == product.UniqueName && x.Id != product.Id) != null) - { - throw new DuplicatedProductUniqueNameException(product.UniqueName); - } + await _productRepository.CheckUniqueNameAsync(product); } protected virtual async Task CheckProductDetailAvailableAsync(Guid currentProductId, Guid desiredProductDetailId) diff --git a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.EntityFrameworkCore/EasyAbp/EShop/Products/Products/ProductRepository.cs b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.EntityFrameworkCore/EasyAbp/EShop/Products/Products/ProductRepository.cs index 4b796cf9..2fd38876 100644 --- a/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.EntityFrameworkCore/EasyAbp/EShop/Products/Products/ProductRepository.cs +++ b/modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.EntityFrameworkCore/EasyAbp/EShop/Products/Products/ProductRepository.cs @@ -29,7 +29,7 @@ namespace EasyAbp.EShop.Products.Products return await base.InsertAsync(entity, autoSave, cancellationToken); } - protected virtual async Task CheckUniqueNameAsync(Product entity, CancellationToken cancellationToken = new CancellationToken()) + public virtual async Task CheckUniqueNameAsync(Product entity, CancellationToken cancellationToken = new CancellationToken()) { if (entity.UniqueName.IsNullOrEmpty()) {