fix: Blazor Server Prerendering 시점의 401 에러 방지를 위해 CRM 화면 API 로드 수명 주기를 OnAfterRenderAsync로 일괄 개선
TaxBaik CI/CD / build-and-deploy (push) Successful in 53s

This commit is contained in:
2026-06-29 15:27:03 +09:00
parent da1226994f
commit fc339ca9e7
6 changed files with 53 additions and 26 deletions
@@ -124,9 +124,13 @@
private ConsultingActivity? editingActivity;
private ConsultingActivityForm activityForm = new();
protected override async Task OnInitializedAsync()
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await LoadData();
if (firstRender)
{
await LoadData();
StateHasChanged();
}
}
private async Task LoadData()
@@ -134,9 +134,13 @@
private bool isDialogOpen;
private ContractForm contractForm = new();
protected override async Task OnInitializedAsync()
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await LoadData();
if (firstRender)
{
await LoadData();
StateHasChanged();
}
}
private async Task LoadData()
@@ -163,26 +163,30 @@
private string? errorMessage;
private bool isLoading = true;
protected override async Task OnInitializedAsync()
protected override async Task OnAfterRenderAsync(bool firstRender)
{
try
if (firstRender)
{
// API 클라이언트 사용 (서비스 직접 호출 X)
var summaryTask = DashboardClient.GetSummaryAsync();
var filingsTask = DashboardClient.GetUpcomingFilingsAsync(30);
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;
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();
}
}
}
@@ -120,9 +120,13 @@
private bool isDialogOpen;
private RevenueForm revenueForm = new();
protected override async Task OnInitializedAsync()
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await LoadData();
if (firstRender)
{
await LoadData();
StateHasChanged();
}
}
private async Task LoadData()
@@ -148,7 +148,14 @@
private bool isDialogOpen;
private TaxFilingScheduleForm scheduleForm = new();
protected override async Task OnInitializedAsync() => await LoadData();
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
await LoadData();
StateHasChanged();
}
}
private async Task LoadData()
{
@@ -116,9 +116,13 @@ else
private TaxProfile? editingProfile;
private TaxProfileForm profileForm = new();
protected override async Task OnInitializedAsync()
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await LoadData();
if (firstRender)
{
await LoadData();
StateHasChanged();
}
}
private async Task LoadData()