diff --git a/TaxBaik.Web/Components/Admin/Pages/ConsultingActivities.razor b/TaxBaik.Web/Components/Admin/Pages/ConsultingActivities.razor index 959495d..09be9c4 100644 --- a/TaxBaik.Web/Components/Admin/Pages/ConsultingActivities.razor +++ b/TaxBaik.Web/Components/Admin/Pages/ConsultingActivities.razor @@ -116,6 +116,9 @@ @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private List? activities; private List clients = []; private Dictionary clientMap = new(); @@ -128,8 +131,15 @@ { if (firstRender) { - await LoadData(); - StateHasChanged(); + if (AuthStateTask != null) + { + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + await LoadData(); + StateHasChanged(); + } + } } } diff --git a/TaxBaik.Web/Components/Admin/Pages/Contracts.razor b/TaxBaik.Web/Components/Admin/Pages/Contracts.razor index dce7afe..6187d4a 100644 --- a/TaxBaik.Web/Components/Admin/Pages/Contracts.razor +++ b/TaxBaik.Web/Components/Admin/Pages/Contracts.razor @@ -126,6 +126,9 @@ @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private List? contracts; private List clients = []; private Dictionary clientMap = new(); @@ -138,8 +141,15 @@ { if (firstRender) { - await LoadData(); - StateHasChanged(); + if (AuthStateTask != null) + { + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + await LoadData(); + StateHasChanged(); + } + } } } diff --git a/TaxBaik.Web/Components/Admin/Pages/Dashboard.razor b/TaxBaik.Web/Components/Admin/Pages/Dashboard.razor index df99146..993a391 100644 --- a/TaxBaik.Web/Components/Admin/Pages/Dashboard.razor +++ b/TaxBaik.Web/Components/Admin/Pages/Dashboard.razor @@ -158,6 +158,9 @@ @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private AdminDashboardSummary summary = new(0, 0, 0, 0, []); private List upcomingFilings = []; private string? errorMessage; @@ -167,25 +170,32 @@ { if (firstRender) { - try + if (AuthStateTask != null) { - // API 클라이언트 사용 (서비스 직접 호출 X) - var summaryTask = DashboardClient.GetSummaryAsync(); - var filingsTask = DashboardClient.GetUpcomingFilingsAsync(30); + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + try + { + // API 클라이언트 사용 (서비스 직접 호출 X) + var summaryTask = DashboardClient.GetSummaryAsync(); + var filingsTask = DashboardClient.GetUpcomingFilingsAsync(30); - await Task.WhenAll(summaryTask, filingsTask); - summary = await summaryTask; - upcomingFilings = (await filingsTask).ToList(); - } - catch (Exception ex) - { - errorMessage = "대시보드 데이터를 불러올 수 없습니다."; - Console.Error.WriteLine($"Dashboard error: {ex.Message}"); - } - finally - { - isLoading = false; - StateHasChanged(); + await Task.WhenAll(summaryTask, filingsTask); + summary = await summaryTask; + upcomingFilings = (await filingsTask).ToList(); + } + catch (Exception ex) + { + errorMessage = "대시보드 데이터를 불러올 수 없습니다."; + Console.Error.WriteLine($"Dashboard error: {ex.Message}"); + } + finally + { + isLoading = false; + StateHasChanged(); + } + } } } } diff --git a/TaxBaik.Web/Components/Admin/Pages/RevenueTrackings.razor b/TaxBaik.Web/Components/Admin/Pages/RevenueTrackings.razor index 3929008..abb772a 100644 --- a/TaxBaik.Web/Components/Admin/Pages/RevenueTrackings.razor +++ b/TaxBaik.Web/Components/Admin/Pages/RevenueTrackings.razor @@ -113,6 +113,9 @@ @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private List? revenues; private List clients = []; private Dictionary clientMap = new(); @@ -124,8 +127,15 @@ { if (firstRender) { - await LoadData(); - StateHasChanged(); + if (AuthStateTask != null) + { + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + await LoadData(); + StateHasChanged(); + } + } } } diff --git a/TaxBaik.Web/Components/Admin/Pages/TaxFilingSchedules.razor b/TaxBaik.Web/Components/Admin/Pages/TaxFilingSchedules.razor index 2e53edd..d1a3d93 100644 --- a/TaxBaik.Web/Components/Admin/Pages/TaxFilingSchedules.razor +++ b/TaxBaik.Web/Components/Admin/Pages/TaxFilingSchedules.razor @@ -141,19 +141,29 @@ @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private List? schedules; private List clients = []; private Dictionary clientMap = new(); private MudForm? form; private bool isDialogOpen; private TaxFilingScheduleForm scheduleForm = new(); - + protected override async Task OnAfterRenderAsync(bool firstRender) { if (firstRender) { - await LoadData(); - StateHasChanged(); + if (AuthStateTask != null) + { + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + await LoadData(); + StateHasChanged(); + } + } } } diff --git a/TaxBaik.Web/Components/Admin/Pages/TaxProfiles.razor b/TaxBaik.Web/Components/Admin/Pages/TaxProfiles.razor index ee76076..ee850a9 100644 --- a/TaxBaik.Web/Components/Admin/Pages/TaxProfiles.razor +++ b/TaxBaik.Web/Components/Admin/Pages/TaxProfiles.razor @@ -107,6 +107,9 @@ else @code { + [CascadingParameter] + private Task? AuthStateTask { get; set; } + private List? profiles; private List clients = []; private Dictionary clientMap = new(); @@ -120,8 +123,15 @@ else { if (firstRender) { - await LoadData(); - StateHasChanged(); + if (AuthStateTask != null) + { + var authState = await AuthStateTask; + if (authState.User.Identity?.IsAuthenticated == true) + { + await LoadData(); + StateHasChanged(); + } + } } }