From f66f2509360618160a6be55dc6888ad210494ec9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E6=B7=B3?= <454313500@qq.com>
Date: Tue, 2 Jan 2024 18:32:38 +0800
Subject: [PATCH] =?UTF-8?q?feat:=E5=87=86=E5=A4=87=E6=B7=BB=E5=8A=A0excel?=
=?UTF-8?q?=E6=93=8D=E4=BD=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Yi.Framework.Ddd.Application.csproj | 3 ++
.../YiCrudAppService.cs | 34 ++++++++++++++++++-
.../YiFrameworkDddApplicationModule.cs | 11 ++++--
3 files changed, 45 insertions(+), 3 deletions(-)
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;
+ }
}
}