using EnvelopeGenerator.Application.Envelopes.Queries; using MediatR; using Microsoft.AspNetCore.Mvc; namespace EnvelopeGenerator.ServiceHost.Controllers; [Route("api/[controller]")] [ApiController] public class DocResultController(IMediator mediator) : ControllerBase { [HttpGet] public async Task GetAsync([FromQuery] ReadSingleEnvelopeDocResultQuery query, [FromQuery] bool download = false, CancellationToken cancel = default) { var bytes = await mediator.Send(query, cancel); if (download) return File(bytes, "application/pdf", $"envelope_{query.Envelope.Uuid}.pdf"); return File(bytes, "application/pdf"); } }