line-gestao-api/Controllers/TemplatesController.cs

34 lines
1.1 KiB
C#

using line_gestao_api.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
namespace line_gestao_api.Controllers
{
[ApiController]
[Route("api/templates")]
[Authorize(Roles = "admin,gestor")]
public class TemplatesController : ControllerBase
{
private readonly GeralSpreadsheetTemplateService _geralSpreadsheetTemplateService;
public TemplatesController(GeralSpreadsheetTemplateService geralSpreadsheetTemplateService)
{
_geralSpreadsheetTemplateService = geralSpreadsheetTemplateService;
}
[HttpGet("planilha-geral")]
public IActionResult DownloadPlanilhaGeral()
{
Response.Headers["Cache-Control"] = "no-store, no-cache, must-revalidate";
Response.Headers["Pragma"] = "no-cache";
Response.Headers["Expires"] = "0";
var bytes = _geralSpreadsheetTemplateService.BuildPlanilhaGeralTemplate();
return File(
bytes,
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"MODELO_GERAL_LINEGESTAO.xlsx");
}
}
}