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

62 lines
2.6 KiB
C#

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Strata.SqlTools.EntityFramework.Pagination;
using Strata.Stratasphere.Biz.Mappings.PresentOnAdmission;
using System.Collections.Generic;
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 PresentOnAdmissionMappingDetailsController : ControllerBase
{
private readonly IPresentOnAdmissionMappingDetailService _presentOnAdmissionMappingDetailService;
public PresentOnAdmissionMappingDetailsController(IPresentOnAdmissionMappingDetailService presentOnAdmissionMappingDetailService)
{
_presentOnAdmissionMappingDetailService = presentOnAdmissionMappingDetailService;
}
[HttpPost()]
public async Task<PagedData<PresentOnAdmissionMappingDetail>> GetAll(PresentOnAdmissionMappingDetailLoadOptions loadOptions, CancellationToken cancellationToken)
{
return await _presentOnAdmissionMappingDetailService.GetPresentOnAdmissionMappingDetailsAsync(loadOptions.PagingOptions, loadOptions.FilterOptions, cancellationToken);
}
[HttpPost("[action]")]
[ProducesResponseType(StatusCodes.Status202Accepted)]
public async Task<IActionResult> Export(PresentOnAdmissionMappingDetailExportOptions exportOptions, CancellationToken cancellationToken)
{
await _presentOnAdmissionMappingDetailService.ExportAsync(exportOptions.ExportAll, exportOptions.FilterOptions, User?.Identity?.Name ?? "", cancellationToken);
return new AcceptedResult();
}
[HttpGet("[action]")]
public async Task<IEnumerable<string>> GetExports(CancellationToken cancellationToken)
{
return await _presentOnAdmissionMappingDetailService.GetExports(User?.Identity?.Name ?? "", cancellationToken);
}
[HttpPost("[action]")]
public async Task<bool> Import(IFormFile file, CancellationToken cancellationToken)
{
return await _presentOnAdmissionMappingDetailService.ImportAsync(file, User?.Identity?.Name ?? "", cancellationToken);
}
}
public class PresentOnAdmissionMappingDetailLoadOptions
{
public PagingOptions PagingOptions { get; set; }
public PresentOnAdmissionMappingFilters FilterOptions { get; set; }
}
public class PresentOnAdmissionMappingDetailExportOptions
{
public bool ExportAll { get; set; }
public PresentOnAdmissionMappingFilters FilterOptions { get; set; }
}
}