@page "/system/language/list" @inject ILogger Logger 语言管理 多语言 多语言列表
@if (context.Enabled) { } else { } 语言资源 编辑 删除
@foreach (var item in LanguageCultures) { }
@code { [SupplyParameterFromQuery] int? Page { get; set; } [SupplyParameterFromQuery(Name = "size")] int? PageSize { get; set; } [SupplyParameterFromForm] LanguageSearch search { get; set; } = new(); [SupplyParameterFromForm] LanguageModel model { get; set; } = new(); Form editform = null!; Dictionary LanguageCultures = LanguageCulture.Descriptions.ToDictionary(); PagingList PagingList = new(); bool loading { get; set; } = true; bool drawerVisible; protected override void OnInitialized() { base.OnInitialized(); } protected override void OnParametersSet() { _ = LoadList(); base.OnParametersSet(); } private async Task LoadList() { loading = true; var url = "/api/language/search"; var apiResult = await HttpService.GetPagingList(url, search, Page.GetValueOrDefault(1), PageSize.GetValueOrDefault(20)); if (apiResult.Success) { if (apiResult.Data != null) { PagingList = apiResult.Data; } } loading = false; StateHasChanged(); } private void OnSearch(int page) { var queryString = search.BuildQueryString(); if (string.IsNullOrEmpty(queryString)) { if (page > 1) { Navigation.NavigateTo($"/system/language/list?page={page}"); } else { Navigation.NavigateTo($"/system/language/list"); } } else { if (page > 1) { Navigation.NavigateTo($"/system/language/list?page={page}&{queryString}"); } else { Navigation.NavigateTo($"/system/language/list?{queryString}"); } } } void OnCreateClick() { model = new() { Culture = LanguageCulture.zhHans }; drawerVisible = true; } void OnEditClick(Language admin) { this.model = admin.Adapt(); drawerVisible = true; } async Task HandleDeleteConfirmAsync(MouseEventArgs e, long id) { var url = $"/api/language/delete/{id}"; var apiResult = await HttpService.Post>(url, new()); if (apiResult.Success) { _ = LoadList(); await ModalService.InfoAsync(new ConfirmOptions() { Title = "操作提示", Content = "删除数据成功" }); } else { await ModalService.ErrorAsync(new ConfirmOptions() { Title = "操作提示", Content = $"数据删除失败.{apiResult.Message}" }); } } async Task OnFormFinish() { if (editform.Validate()) { var url = $"api/language/save"; var result = await HttpService.Post>(url, model); if (result.Success) { if (result.Data) { CloseDrawer(); _ = LoadList(); await ModalService.InfoAsync(new ConfirmOptions() { Title = "提示", Content = "数据提交成功!" }); } else { await ModalService.ErrorAsync(new ConfirmOptions() { Title = "服务异常", Content = result.Message }); } } else { await ModalService.ErrorAsync(new ConfirmOptions() { Title = "服务异常", Content = result.Message }); } } } private void OnPageChanged(int args) { OnSearch(args); } void CloseDrawer() { drawerVisible = false; editform.Reset(); } }