diff --git a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/Yi.Framework.Ddd.Application.csproj b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/Yi.Framework.Ddd.Application.csproj index 4ea79313..3915da9e 100644 --- a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/Yi.Framework.Ddd.Application.csproj +++ b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/Yi.Framework.Ddd.Application.csproj @@ -2,6 +2,9 @@ + + + diff --git a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiCrudAppService.cs b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiCrudAppService.cs index 946d7984..4a7f56dc 100644 --- a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiCrudAppService.cs +++ b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiCrudAppService.cs @@ -3,11 +3,14 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using MiniExcelLibs; using Volo.Abp; using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Services; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Repositories; +using Volo.Abp.Validation; namespace Yi.Framework.Ddd.Application { @@ -86,7 +89,7 @@ namespace Yi.Framework.Ddd.Application /// /// [RemoteService(isEnabled: true)] - public async Task DeleteAsync(IEnumerable id) + public virtual async Task DeleteAsync(IEnumerable id) { await Repository.DeleteManyAsync(id); } @@ -95,5 +98,34 @@ namespace Yi.Framework.Ddd.Application { return base.DeleteAsync(id); } + + + + + public virtual async Task GetExportExcelAsync(TGetListInput input) + { + if (input is IPagedResultRequest paged) + { + paged.SkipCount = 0; + paged.MaxResultCount = LimitedResultRequestDto.MaxMaxResultCount; + } + + var output = await this.GetListAsync(input); + var dirPath = $"/wwwroot/temp"; + var filePath = $"{dirPath}/{Guid.NewGuid()}.xlsx"; + if (!Directory.Exists(dirPath)) + { + Directory.CreateDirectory(dirPath); + } + + MiniExcel.SaveAs(filePath, output.Items); + return new FileStreamResult(File.OpenRead(filePath), "application/vnd.ms-excel"); + } + + public virtual async Task PostImportExcelAsync() + { + + + } } } diff --git a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiFrameworkDddApplicationModule.cs b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiFrameworkDddApplicationModule.cs index 46b83722..e2781601 100644 --- a/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiFrameworkDddApplicationModule.cs +++ b/Yi.Abp.Net8/framework/Yi.Framework.Ddd.Application/YiFrameworkDddApplicationModule.cs @@ -1,4 +1,6 @@ -using Volo.Abp.Application; +using Volo.Abp; +using Volo.Abp.Application; +using Volo.Abp.Application.Dtos; using Volo.Abp.Modularity; using Yi.Framework.Ddd.Application.Contracts; @@ -8,6 +10,11 @@ namespace Yi.Framework.Ddd.Application typeof(YiFrameworkDddApplicationContractsModule))] public class YiFrameworkDddApplicationModule : AbpModule { - + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + //分页限制 + LimitedResultRequestDto.DefaultMaxResultCount = 10; + LimitedResultRequestDto.MaxMaxResultCount = 10000; + } } }