|
|
@ -508,6 +508,32 @@ namespace TaskManager.Controllers |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 导出New
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="input"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost] |
|
|
|
public async Task<FileStreamResult> ExportData(RequestInputBase input) |
|
|
|
{ |
|
|
|
var pagingParams = new PagingParams |
|
|
|
{ |
|
|
|
PageNumber = input.pageNumber, |
|
|
|
PageSize = input.pageSize, |
|
|
|
SortBy = input.sortBy, |
|
|
|
IsAscending = input.isAscending, |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
// 可以在这里构建表达式树过滤条件
|
|
|
|
//Expression<Func<T, bool>> filter = null;
|
|
|
|
|
|
|
|
var pagedResult = await _repository.GetDataPagedAsync(null, pagingParams, input.Condition); |
|
|
|
return await ExportFile(pagedResult.Data, Guid.NewGuid().ToString() + ".xlsx"); |
|
|
|
} |
|
|
|
|
|
|
|
protected async Task<FileStreamResult> ExportFile(ICollection<T> dtos, string fileName) |
|
|
|
{ |
|
|
|
var excelExporter = HttpContext.RequestServices.GetRequiredService<IExcelExporter>(); |
|
|
|