26 lines
No EOL
762 B
C#
26 lines
No EOL
762 B
C#
using Microsoft.AspNetCore.Mvc;
|
|
using SurveyLib.Tools.Tools;
|
|
|
|
namespace SurveyBackend.Controllers;
|
|
|
|
[ApiController]
|
|
[Route("api/export")]
|
|
public class ExportController
|
|
{
|
|
private readonly TableExporter _tableExporter;
|
|
|
|
public ExportController(TableExporter tableExporter)
|
|
{
|
|
_tableExporter = tableExporter;
|
|
}
|
|
|
|
[HttpGet("excel/{surveyId:int}")]
|
|
public async Task<IActionResult> ExportSurveyById(int surveyId)
|
|
{
|
|
var fileBytes = await _tableExporter.ExportDataBySurveyIdAsync(surveyId);
|
|
return new FileContentResult(fileBytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
|
|
{
|
|
FileDownloadName = $"survey_{surveyId}_{DateTime.UtcNow:yyyyMMdd_HHmmss}.xlsx"
|
|
};
|
|
}
|
|
} |