@page "/dashboarddetail/{Group}"
@page "/dashboarddetail"
@using Domain.Entities
@inject IJSRuntime js;
@inject IToastService toastService
@inject HttpClient _httpClient
@inject TicketsService ticketService
@inject NavigationManager Navigation
@inject AuthenticationStateProvider authenticationStateProvider
@code {
[Parameter]
public string? Group { get; set; } = string.Empty;
private IEnumerable? detailResult;
List columnas = new List
{
"#",
"Titulo",
"Prioridad",
"Estado",
"Creador",
"Fecha",
"Asignado",
"Categoria",
"Departamento",
"Impacto",
"Urgencia"
};
List> datos = new List>();
protected override async Task OnInitializedAsync()
{
if (!string.IsNullOrEmpty(Group))
{
detailResult = await ticketService.GetDashboardDetail(Group, "ASC");
if (detailResult is not null)
{
datos = ObtenerDatos(detailResult);
}
}
}
private async Task XSLXExportar()
{
string endpoint = "/api/Ticket/ExportDashboardDetail";
var response = await _httpClient.PostAsJsonAsync(endpoint, new { Param1 = Group, Param2 = "ASC" });
response.EnsureSuccessStatusCode();
var fileBytes = await response.Content.ReadAsByteArrayAsync();
var currentDate = DateTime.Now.ToString("ddMMyyyyhhmmss");
var filename = $"Tickets_{Group}_{currentDate}.xlsx";
await js.InvokeAsync