Files
strataspheredatamanagement/src/Strata.Stratasphere.Api/Controllers/DischargeStatusMappingDetailsController.cs
T
2026-06-23 11:26:55 -05:00

56 lines
2.3 KiB
C#

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Strata.SqlTools.EntityFramework.Pagination;
using Strata.Stratasphere.Biz.Mappings.DischargeStatus;
using System.Threading;
using System.Threading.Tasks;
namespace Strata.Stratasphere.Api.Controllers
{
[ApiController]
[ApiVersion("1.0")]
[Route("api/v{api-version:apiVersion}/[controller]")]
public class DischargeStatusMappingDetailsController : ControllerBase
{
private readonly IDischargeStatusMappingDetailService _dischargeStatusMappingDetailService;
public DischargeStatusMappingDetailsController(IDischargeStatusMappingDetailService dischargeStatusMappingDetailService)
{
_dischargeStatusMappingDetailService = dischargeStatusMappingDetailService;
}
[HttpPost()]
public async Task<PagedData<DischargeStatusMappingDetail>> GetAll(DischargeStatusMappingDetailLoadOptions loadOptions, CancellationToken cancellationToken)
{
return
await _dischargeStatusMappingDetailService.GetDischargeStatusMappingDetailsAsync(loadOptions.PagingOptions, loadOptions.FilterOptions, cancellationToken);
}
[HttpPost("[action]")]
[ProducesResponseType(StatusCodes.Status202Accepted)]
public async Task<IActionResult> Export(DischargeStatusMappingDetailExportOptions exportOptions, CancellationToken cancellationToken)
{
await _dischargeStatusMappingDetailService.ExportAsync(exportOptions.ExportAll, exportOptions.FilterOptions, User?.Identity?.Name ?? "", cancellationToken);
return new AcceptedResult();
}
[HttpPost("[action]")]
public async Task<bool> Import(IFormFile file, CancellationToken cancellationToken)
{
return await _dischargeStatusMappingDetailService.ImportAsync(file, User?.Identity?.Name ?? "", cancellationToken);
}
}
public class DischargeStatusMappingDetailLoadOptions
{
public PagingOptions PagingOptions { get; set; }
public DischargeStatusMappingFilters FilterOptions { get; set; }
}
public class DischargeStatusMappingDetailExportOptions
{
public bool ExportAll { get; set; }
public DischargeStatusMappingFilters FilterOptions { get; set; }
}
}