Browse Source

Add `FlashSaleInventoryController`

pull/184/head
Jadyn 4 years ago
parent
commit
a64dd7ea07
  1. 16
      EShop.sln
  2. 2
      modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductInventoryProviderResolver.cs
  3. 4
      plugins/FlashSales/src/EasyAbp.EShop.Plugins.FlashSales.Application/EasyAbp/EShop/Products/Products/FlashSaleInventoryManager.cs
  4. 4
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts/EasyAbp/EShop/Products/Products/IFlashSaleInventoryAppService.cs
  5. 14
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.Application/EasyAbp/EShop/Products/Products/FlashSaleInventoryAppService.cs
  6. 16
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi.csproj
  7. 19
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp/EShop/Products/Plugins/FlashSales/EShopProductsPluginsFlashSalesHttpApiModule.cs
  8. 30
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp/EShop/Products/Products/FlashSaleInventoryController.cs
  9. 3
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/FodyWeavers.xml
  10. 30
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/FodyWeavers.xsd
  11. 23
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient.csproj
  12. 24
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/EasyAbp/EShop/Products/Plugins/FlashSales/EShopProductsPluginsFlashSalesHttpApiClientModule.cs
  13. 3
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/FodyWeavers.xml
  14. 30
      plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/FodyWeavers.xsd
  15. 3
      samples/EShopSample/aspnet-core/src/EShopSample.Application.Contracts/EShopSample.Application.Contracts.csproj
  16. 2
      samples/EShopSample/aspnet-core/src/EShopSample.Application.Contracts/EShopSampleApplicationContractsModule.cs
  17. 1
      samples/EShopSample/aspnet-core/src/EShopSample.HttpApi.Client/EShopSample.HttpApi.Client.csproj
  18. 2
      samples/EShopSample/aspnet-core/src/EShopSample.HttpApi.Client/EShopSampleHttpApiClientModule.cs
  19. 1
      samples/EShopSample/aspnet-core/src/EShopSample.HttpApi/EShopSample.HttpApi.csproj
  20. 2
      samples/EShopSample/aspnet-core/src/EShopSample.HttpApi/EShopSampleHttpApiModule.cs

16
EShop.sln

@ -417,7 +417,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyAbp.EShop.Products.Plug
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyAbp.EShop.Products.Plugins.FlashSales.Abstractions", "plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.Abstractions\EasyAbp.EShop.Products.Plugins.FlashSales.Abstractions.csproj", "{C1EB9DC0-F572-41DF-9716-893B154BBB13}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts", "plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts.csproj", "{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts", "plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts.csproj", "{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi", "plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi.csproj", "{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient", "plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient.csproj", "{98786FEE-155D-42D6-B932-D85E24114CFD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -1089,6 +1093,14 @@ Global
{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9}.Release|Any CPU.Build.0 = Release|Any CPU
{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7}.Release|Any CPU.Build.0 = Release|Any CPU
{98786FEE-155D-42D6-B932-D85E24114CFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{98786FEE-155D-42D6-B932-D85E24114CFD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{98786FEE-155D-42D6-B932-D85E24114CFD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{98786FEE-155D-42D6-B932-D85E24114CFD}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -1298,6 +1310,8 @@ Global
{6AD2F468-D86C-4F9A-B280-3BCC15661C47} = {F29C5BCD-E6C0-4556-A631-CACA41B1050B}
{C1EB9DC0-F572-41DF-9716-893B154BBB13} = {F29C5BCD-E6C0-4556-A631-CACA41B1050B}
{F08D9409-4D01-4639-A7B8-A70B7ED8E0F9} = {F29C5BCD-E6C0-4556-A631-CACA41B1050B}
{B137BF4B-8C0A-4CE2-AF22-BD9BD29C86B7} = {F29C5BCD-E6C0-4556-A631-CACA41B1050B}
{98786FEE-155D-42D6-B932-D85E24114CFD} = {F29C5BCD-E6C0-4556-A631-CACA41B1050B}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F}

2
modules/EasyAbp.EShop.Products/src/EasyAbp.EShop.Products.Domain/EasyAbp/EShop/Products/Products/ProductInventoryProviderResolver.cs

@ -48,7 +48,7 @@ public class ProductInventoryProviderResolver : IProductInventoryProviderResolve
return Task.FromResult(GetProviderByName(options.Value.DefaultInventoryProviderName));
}
public virtual Task<IProductInventoryProvider> GetAsync([NotNull] string providerName)
public virtual Task<IProductInventoryProvider> GetAsync([CanBeNull] string providerName)
{
return Task.FromResult(GetProviderByName(providerName));
}

4
plugins/FlashSales/src/EasyAbp.EShop.Plugins.FlashSales.Application/EasyAbp/EShop/Products/Products/FlashSaleInventoryManager.cs

@ -20,14 +20,14 @@ public class FlashSaleInventoryManager : IFlashSaleInventoryManager, ITransientD
public virtual async Task<bool> TryReduceInventoryAsync(Guid? tenantId, string providerName, Guid storeId, Guid productId,
Guid productSkuId, int quantity, bool increaseSold)
{
return await FlashSaleInventoryReducerAppService.TryReduceInventoryAsync(
return await FlashSaleInventoryReducerAppService.TryReduceAsync(
new ReduceInventoryInput(tenantId, providerName, storeId, productId, productSkuId, quantity, increaseSold));
}
public virtual async Task<bool> TryIncreaseInventoryAsync(Guid? tenantId, string providerName, Guid storeId, Guid productId,
Guid productSkuId, int quantity, bool decreaseSold)
{
return await FlashSaleInventoryReducerAppService.TryIncreaseInventoryAsync
return await FlashSaleInventoryReducerAppService.TryIncreaseAsync
(new IncreaseInventoryInput(tenantId, providerName, storeId, productId, productSkuId, quantity, decreaseSold));
}
}

4
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts/EasyAbp/EShop/Products/Products/IFlashSaleInventoryAppService.cs

@ -7,7 +7,7 @@ namespace EasyAbp.EShop.Products.Products;
public interface IFlashSaleInventoryAppService : IApplicationService
{
Task<bool> TryReduceInventoryAsync(ReduceInventoryInput input);
Task<bool> TryReduceAsync(ReduceInventoryInput input);
Task<bool> TryIncreaseInventoryAsync(IncreaseInventoryInput input);
Task<bool> TryIncreaseAsync(IncreaseInventoryInput input);
}

14
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.Application/EasyAbp/EShop/Products/Products/FlashSaleInventoryAppService.cs

@ -6,18 +6,18 @@ namespace EasyAbp.EShop.Products.Products;
public class FlashSaleInventoryAppService : ProductsAppService, IFlashSaleInventoryAppService
{
protected ILocalFlashSaleInventoryManager LocalFlashSaleInventoryReducer { get; }
protected ILocalFlashSaleInventoryManager LocalFlashSaleInventoryManager { get; }
public FlashSaleInventoryAppService(ILocalFlashSaleInventoryManager localFlashSaleInventoryReducer)
public FlashSaleInventoryAppService(ILocalFlashSaleInventoryManager localFlashSaleInventoryManager)
{
LocalFlashSaleInventoryReducer = localFlashSaleInventoryReducer;
LocalFlashSaleInventoryManager = localFlashSaleInventoryManager;
}
public virtual async Task<bool> TryReduceInventoryAsync(ReduceInventoryInput input)
public virtual async Task<bool> TryReduceAsync(ReduceInventoryInput input)
{
await CheckPolicyAsync(ProductsPluginsFlashSalesPermissions.FlashSaleInventory.Reduce);
return await LocalFlashSaleInventoryReducer.TryReduceInventoryAsync(
return await LocalFlashSaleInventoryManager.TryReduceInventoryAsync(
input.TenantId,
input.ProviderName,
input.StoreId,
@ -28,11 +28,11 @@ public class FlashSaleInventoryAppService : ProductsAppService, IFlashSaleInvent
);
}
public virtual async Task<bool> TryIncreaseInventoryAsync(IncreaseInventoryInput input)
public virtual async Task<bool> TryIncreaseAsync(IncreaseInventoryInput input)
{
await CheckPolicyAsync(ProductsPluginsFlashSalesPermissions.FlashSaleInventory.Increase);
return await LocalFlashSaleInventoryReducer.TryIncreaseInventoryAsync(
return await LocalFlashSaleInventoryManager.TryIncreaseInventoryAsync(
input.TenantId,
input.ProviderName,
input.StoreId,

16
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi.csproj

@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="$(AbpVersion)" />
<ProjectReference Include="..\..\..\..\modules\EasyAbp.EShop.Products\src\EasyAbp.EShop.Products.HttpApi\EasyAbp.EShop.Products.HttpApi.csproj" />
<ProjectReference Include="..\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts.csproj" />
</ItemGroup>
</Project>

19
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp/EShop/Products/Plugins/FlashSales/EShopProductsPluginsFlashSalesHttpApiModule.cs

@ -0,0 +1,19 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Modularity;
namespace EasyAbp.EShop.Products.Plugins.FlashSales;
[DependsOn(
typeof(EShopProductsHttpApiModule),
typeof(EShopProductsPluginsFlashSalesApplicationContractsModule)
)]
public class EShopProductsPluginsFlashSalesHttpApiModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)
{
PreConfigure<IMvcBuilder>(mvcBuilder =>
{
mvcBuilder.AddApplicationPartIfNotExists(typeof(EShopProductsPluginsFlashSalesHttpApiModule).Assembly);
});
}
}

30
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/EasyAbp/EShop/Products/Products/FlashSaleInventoryController.cs

@ -0,0 +1,30 @@
using System.Threading.Tasks;
using EasyAbp.EShop.Products.Products.Dtos;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp;
namespace EasyAbp.EShop.Products.Products;
[RemoteService(Name = EShopProductsRemoteServiceConsts.RemoteServiceName)]
[Route("/api/e-shop/products/plugins/flash-sale-inventory")]
public class FlashSaleInventoryController : ProductsController, IFlashSaleInventoryAppService
{
protected IFlashSaleInventoryAppService AppService { get; }
public FlashSaleInventoryController(IFlashSaleInventoryAppService appService)
{
AppService = appService;
}
[HttpPost("try-increase")]
public virtual Task<bool> TryIncreaseAsync(IncreaseInventoryInput input)
{
return AppService.TryIncreaseAsync(input);
}
[HttpPost("try-reduce")]
public virtual Task<bool> TryReduceAsync(ReduceInventoryInput input)
{
return AppService.TryReduceAsync(input);
}
}

3
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/FodyWeavers.xml

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

30
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi/FodyWeavers.xsd

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

23
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient.csproj

@ -0,0 +1,23 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\..\common.props" />
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
<RootNamespace />
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Volo.Abp.Http.Client" Version="$(AbpVersion)" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="**\*generate-proxy.json" />
<Content Remove="**\*generate-proxy.json" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts.csproj" />
</ItemGroup>
</Project>

24
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/EasyAbp/EShop/Products/Plugins/FlashSales/EShopProductsPluginsFlashSalesHttpApiClientModule.cs

@ -0,0 +1,24 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Modularity;
using Volo.Abp.VirtualFileSystem;
namespace EasyAbp.EShop.Products.Plugins.FlashSales;
[DependsOn(
typeof(EShopProductsPluginsFlashSalesApplicationContractsModule)
)]
public class EShopProductsPluginsFlashSalesHttpApiClientModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)
{
context.Services.AddHttpClientProxies(
typeof(EShopProductsApplicationContractsModule).Assembly,
EShopProductsRemoteServiceConsts.RemoteServiceName
);
Configure<AbpVirtualFileSystemOptions>(options =>
{
options.FileSets.AddEmbedded<EShopProductsApplicationContractsModule>();
});
}
}

3
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/FodyWeavers.xml

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

30
plugins/FlashSales/src/EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient/FodyWeavers.xsd

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. -->
<xs:element name="Weavers">
<xs:complexType>
<xs:all>
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" />
</xs:complexType>
</xs:element>
</xs:all>
<xs:attribute name="VerifyAssembly" type="xs:boolean">
<xs:annotation>
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VerifyIgnoreCodes" type="xs:string">
<xs:annotation>
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="GenerateXsd" type="xs:boolean">
<xs:annotation>
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:schema>

3
samples/EShopSample/aspnet-core/src/EShopSample.Application.Contracts/EShopSample.Application.Contracts.csproj

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" />
@ -12,6 +12,7 @@
<ProjectReference Include="..\..\..\..\..\plugins\Baskets\src\EasyAbp.EShop.Plugins.Baskets.Application.Contracts\EasyAbp.EShop.Plugins.Baskets.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\Coupons\src\EasyAbp.EShop.Plugins.Coupons.Application.Contracts\EasyAbp.EShop.Plugins.Coupons.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Plugins.FlashSales.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts\EasyAbp.EShop.Products.Plugins.FlashSales.Application.Contracts.csproj" />
<ProjectReference Include="..\EShopSample.Domain.Shared\EShopSample.Domain.Shared.csproj" />
</ItemGroup>

2
samples/EShopSample/aspnet-core/src/EShopSample.Application.Contracts/EShopSampleApplicationContractsModule.cs

@ -2,6 +2,7 @@
using EasyAbp.EShop.Plugins.Baskets;
using EasyAbp.EShop.Plugins.Coupons;
using EasyAbp.EShop.Plugins.FlashSales;
using EasyAbp.EShop.Products.Plugins.FlashSales;
using EasyAbp.PaymentService;
using EasyAbp.PaymentService.Prepayment;
using EasyAbp.PaymentService.WeChatPay;
@ -27,6 +28,7 @@ namespace EShopSample
typeof(EShopPluginsBasketsApplicationContractsModule),
typeof(EShopPluginsCouponsApplicationContractsModule),
typeof(EShopPluginsFlashSalesApplicationContractsModule),
typeof(EShopProductsPluginsFlashSalesApplicationContractsModule),
typeof(PaymentServiceApplicationContractsModule),
typeof(PaymentServiceWeChatPayApplicationContractsModule),
typeof(PaymentServicePrepaymentApplicationContractsModule)

1
samples/EShopSample/aspnet-core/src/EShopSample.HttpApi.Client/EShopSample.HttpApi.Client.csproj

@ -12,6 +12,7 @@
<ProjectReference Include="..\..\..\..\..\plugins\Baskets\src\EasyAbp.EShop.Plugins.Baskets.HttpApi.Client\EasyAbp.EShop.Plugins.Baskets.HttpApi.Client.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\Coupons\src\EasyAbp.EShop.Plugins.Coupons.HttpApi.Client\EasyAbp.EShop.Plugins.Coupons.HttpApi.Client.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Plugins.FlashSales.HttpApi.Client\EasyAbp.EShop.Plugins.FlashSales.HttpApi.Client.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApiClient.csproj" />
<ProjectReference Include="..\EShopSample.Application.Contracts\EShopSample.Application.Contracts.csproj" />
</ItemGroup>

2
samples/EShopSample/aspnet-core/src/EShopSample.HttpApi.Client/EShopSampleHttpApiClientModule.cs

@ -2,6 +2,7 @@
using EasyAbp.EShop.Plugins.Baskets;
using EasyAbp.EShop.Plugins.Coupons;
using EasyAbp.EShop.Plugins.FlashSales;
using EasyAbp.EShop.Products.Plugins.FlashSales;
using EasyAbp.PaymentService;
using EasyAbp.PaymentService.Prepayment;
using EasyAbp.PaymentService.WeChatPay;
@ -27,6 +28,7 @@ namespace EShopSample
typeof(EShopPluginsBasketsHttpApiClientModule),
typeof(EShopPluginsCouponsHttpApiClientModule),
typeof(EShopPluginsFlashSalesHttpApiClientModule),
typeof(EShopProductsPluginsFlashSalesHttpApiClientModule),
typeof(PaymentServiceHttpApiClientModule),
typeof(PaymentServiceWeChatPayHttpApiClientModule),
typeof(PaymentServicePrepaymentHttpApiClientModule)

1
samples/EShopSample/aspnet-core/src/EShopSample.HttpApi/EShopSample.HttpApi.csproj

@ -12,6 +12,7 @@
<ProjectReference Include="..\..\..\..\..\plugins\Baskets\src\EasyAbp.EShop.Plugins.Baskets.HttpApi\EasyAbp.EShop.Plugins.Baskets.HttpApi.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\Coupons\src\EasyAbp.EShop.Plugins.Coupons.HttpApi\EasyAbp.EShop.Plugins.Coupons.HttpApi.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Plugins.FlashSales.HttpApi\EasyAbp.EShop.Plugins.FlashSales.HttpApi.csproj" />
<ProjectReference Include="..\..\..\..\..\plugins\FlashSales\src\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi\EasyAbp.EShop.Products.Plugins.FlashSales.HttpApi.csproj" />
<ProjectReference Include="..\EShopSample.Application.Contracts\EShopSample.Application.Contracts.csproj" />
</ItemGroup>

2
samples/EShopSample/aspnet-core/src/EShopSample.HttpApi/EShopSampleHttpApiModule.cs

@ -2,6 +2,7 @@
using EasyAbp.EShop.Plugins.Baskets;
using EasyAbp.EShop.Plugins.Coupons;
using EasyAbp.EShop.Plugins.FlashSales;
using EasyAbp.EShop.Products.Plugins.FlashSales;
using EasyAbp.PaymentService;
using EasyAbp.PaymentService.Prepayment;
using EasyAbp.PaymentService.WeChatPay;
@ -25,6 +26,7 @@ namespace EShopSample
typeof(EShopPluginsBasketsHttpApiModule),
typeof(EShopPluginsCouponsHttpApiModule),
typeof(EShopPluginsFlashSalesHttpApiModule),
typeof(EShopProductsPluginsFlashSalesHttpApiModule),
typeof(PaymentServiceHttpApiModule),
typeof(PaymentServiceWeChatPayHttpApiModule),
typeof(PaymentServicePrepaymentHttpApiModule)

Loading…
Cancel
Save