This commit is contained in:
2022-03-23 20:16:30 +00:00
parent 2c065e990e
commit ce8bdcd67e
2 changed files with 8 additions and 6 deletions

View File

@@ -18,7 +18,7 @@
<ItemGroup>
<PackageReference Include="Bogus" Version="34.0.1" />
<PackageReference Include="BouncyCastle.NetCore" Version="1.8.10" />
<PackageReference Include="ChoETL.JSON.NETStandard" Version="1.2.1.42" />
<PackageReference Include="CsvHelper" Version="27.2.1" />
<PackageReference Include="Enums.NET" Version="4.0.0" />
<PackageReference Include="jose-jwt" Version="3.2.0" />
<PackageReference Include="MailKit" Version="3.1.1" />

View File

@@ -13,8 +13,9 @@ using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.IO;
using System.IO.Compression;
using ChoETL;
using CsvHelper;
using System;
using System.Globalization;
namespace AyaNova.Api.Controllers
{
@@ -100,10 +101,11 @@ namespace AyaNova.Api.Controllers
switch (format)
{
case "csv":
using (var w = new ChoCSVWriter(outputSourceFullPath).WithFirstLineHeader())
using (StreamWriter file = System.IO.File.CreateText(outputSourceFullPath))
using (var csv = new CsvHelper.CsvWriter(file, CultureInfo.InvariantCulture))
{
var dat = await ((IExportAbleObject)biz).GetExportData(selectedRequest, Guid.Empty);//todo: jobify
w.Write(ToDynamicList(dat));
var dat = await ((IExportAbleObject)biz).GetExportData(selectedRequest, Guid.Empty);
csv.WriteRecords(dat);
}
break;
case "json":
@@ -129,7 +131,7 @@ namespace AyaNova.Api.Controllers
catch (ReportRenderTimeOutException)
{
log.LogInformation($"RenderExport timeout data list key: {selectedRequest.DataListKey}, record count:{selectedRequest.SelectedRowIds.LongLength}, user:{UserNameFromContext.Name(HttpContext.Items)} ");
return BadRequest(new ApiErrorResponse(ApiErrorCode.INVALID_OPERATION, null, "timeout - select fewer records"));
return BadRequest(new ApiErrorResponse(ApiErrorCode.INVALID_OPERATION, null, "timeout - select fewer records"));
}
}