revert: rollback Fluent UI and Blazor homepage to last successful state (3be3794)

This commit is contained in:
2026-06-30 20:29:42 +09:00
parent 488b8d11b7
commit 54c179b1eb
69 changed files with 3996 additions and 2904 deletions
@@ -3,37 +3,39 @@
@using TaxBaik.Web.Components.Admin.Forms
@inject IApiClient ApiClient
@inject NavigationManager Navigation
@inject IJSRuntime JS
@inject ISnackbar Snackbar
@inject IDialogService DialogService
<PageTitle>고객사 수정</PageTitle>
<section class="admin-page-hero">
<div>
<div class="admin-eyebrow">Settings</div>
<h1 class="admin-page-title">고객사 수정</h1>
<p class="admin-page-subtitle">고객사 정보를 수정합니다.</p>
<MudText Typo="Typo.caption" Class="admin-eyebrow">Settings</MudText>
<MudText Typo="Typo.h4" Class="admin-page-title">고객사 수정</MudText>
<MudText Typo="Typo.body2" Class="admin-page-subtitle">고객사 정보를 수정합니다.</MudText>
</div>
<button type="button" class="site-button secondary" @onclick="GoBack">취소</button>
<MudButton Variant="Variant.Outlined" StartIcon="@Icons.Material.Filled.Close" @onclick="GoBack">취소</MudButton>
</section>
@if (isLoading)
{
<div class="admin-surface mt-4">
<Skeleton Count="4" CssClass="taxbaik-skeleton-grid" />
</div>
<MudProgressLinear Color="Color.Primary" Indeterminate="true" Class="mt-4" />
}
else if (formModel == null)
{
<div class="admin-surface mt-4">고객사를 찾을 수 없습니다.</div>
<MudAlert Severity="Severity.Error" Class="mt-4">고객사를 찾을 수 없습니다.</MudAlert>
}
else
{
<div class="admin-surface mt-4">
<MudPaper Class="pa-4 mt-4" Elevation="1">
<CompanyForm ButtonText="수정" InitialData="formModel" OnSubmit="HandleUpdate" OnCancel="GoBack" />
<div class="mt-4">
<button type="button" class="site-button secondary danger" @onclick="DeleteCompany">고객사 삭제</button>
</div>
</div>
<MudDivider Class="my-4" />
<MudButton Variant="Variant.Outlined" Color="Color.Error" @onclick="DeleteCompany" Class="mt-2">
고객사 삭제
</MudButton>
</MudPaper>
}
@code {
@@ -65,7 +67,7 @@ else
}
catch (Exception ex)
{
await JS.InvokeVoidAsync("alert", $"고객사 로드 실패: {ex.Message}");
Snackbar.Add($"고객사 로드 실패: {ex.Message}", Severity.Error);
}
finally
{
@@ -93,29 +95,34 @@ else
isActive = model.IsActive
});
await JS.InvokeVoidAsync("alert", "고객사가 수정되었습니다.");
Snackbar.Add("고객사가 수정되었습니다.", Severity.Success);
Navigation.NavigateTo("/taxbaik/admin/companies");
}
catch (Exception ex)
{
await JS.InvokeVoidAsync("alert", $"수정 실패: {ex.Message}");
Snackbar.Add($"수정 실패: {ex.Message}", Severity.Error);
}
}
private async Task DeleteCompany()
{
if (!await JS.InvokeAsync<bool>("confirm", "정말 삭제하시겠습니까? 이 작업은 취소할 수 없습니다."))
var result = await DialogService.ShowMessageBox(
"고객사 삭제",
"정말 삭제하시겠습니까? 이 작업은 취소할 수 없습니다.",
"삭제", "취소");
if (result != true)
return;
try
{
await ApiClient.DeleteAsync($"company/{Id}");
await JS.InvokeVoidAsync("alert", "고객사가 삭제되었습니다.");
Snackbar.Add("고객사가 삭제되었습니다.", Severity.Success);
Navigation.NavigateTo("/taxbaik/admin/companies");
}
catch (Exception ex)
{
await JS.InvokeVoidAsync("alert", $"삭제 실패: {ex.Message}");
Snackbar.Add($"삭제 실패: {ex.Message}", Severity.Error);
}
}
}