From 4871c0bf6fd74a233cec5de3f2de9d849e0fff15 Mon Sep 17 00:00:00 2001 From: Yuchen Ji Date: Mon, 20 Jun 2022 02:10:34 +0800 Subject: [PATCH] Update to use server data instead of mock data --- MudAdmin/Pages/User.razor | 22 ++++++++++------------ MudAdmin/Pages/Users.razor | 10 +++++----- MudAdmin/Program.cs | 5 ++++- MudAdmin/Utils/MockDataRepo.cs | 2 +- MudAdmin/wwwroot/appsettings.json | 10 ++++++++++ 5 files changed, 30 insertions(+), 19 deletions(-) create mode 100644 MudAdmin/wwwroot/appsettings.json diff --git a/MudAdmin/Pages/User.razor b/MudAdmin/Pages/User.razor index ec62111..6c32fa4 100644 --- a/MudAdmin/Pages/User.razor +++ b/MudAdmin/Pages/User.razor @@ -2,6 +2,7 @@ @using SharedProject.models @using MudAdmin.Utils @using SharedProject.enums +@inject HttpClient Client User @@ -143,9 +144,9 @@ else private UserDetail? userDetail; - private List songPlayDataList = null!; + private List songPlayDataList = new(); - private bool isSavingOptions = false; + private bool isSavingOptions; private static readonly ScoreGradeMap[] GRADES = { @@ -159,18 +160,15 @@ else new(990000, "S++"), }; - protected override void OnInitialized() + protected override async Task OnInitializedAsync() { - var details = MockDataRepo.GetMockDataRepo().UserDetails; - userDetail = details.First(detail => detail.CardId == CardId); - if (userDetail != null) - { - feverTranceShow = userDetail.PlayOption.FeverTrance; - fastSlowIndicator = userDetail.PlayOption.FastSlowIndicator; - } - songPlayDataList = MockDataRepo.GetMockDataRepo().SongPlayDataList; + await base.OnInitializedAsync(); + userDetail = await Client.GetFromJsonAsync($"api/UserDetail/{CardId}") ?? new(); + songPlayDataList = userDetail.SongPlayDataList ?? new List(); + feverTranceShow = userDetail.PlayOption.FeverTrance; + fastSlowIndicator = userDetail.PlayOption.FastSlowIndicator; } - + private void OnShowDetailsClick(SongPlayData data) { data.ShowDetails = !data.ShowDetails; diff --git a/MudAdmin/Pages/Users.razor b/MudAdmin/Pages/Users.razor index 94490be..08d7257 100644 --- a/MudAdmin/Pages/Users.razor +++ b/MudAdmin/Pages/Users.razor @@ -1,8 +1,7 @@ @page "/users" @using models = SharedProject.models -@using GenFu -@using MudAdmin.Utils @inject NavigationManager NavigationManager +@inject HttpClient Client Users @@ -30,11 +29,12 @@ @code { private List users = new(); + - protected override void OnInitialized() + protected override async Task OnInitializedAsync() { - base.OnInitialized(); - users = MockDataRepo.GetMockDataRepo().Users; + await base.OnInitializedAsync(); + users = await Client.GetFromJsonAsync>("api/Users") ?? new List(); } private void OnClick(models.User user) diff --git a/MudAdmin/Program.cs b/MudAdmin/Program.cs index fef3f2b..441cf5a 100644 --- a/MudAdmin/Program.cs +++ b/MudAdmin/Program.cs @@ -7,7 +7,10 @@ var builder = WebAssemblyHostBuilder.CreateDefault(args); builder.RootComponents.Add("#app"); builder.RootComponents.Add("head::after"); -builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); +builder.Services.AddScoped(sp => new HttpClient +{ + BaseAddress = new Uri(builder.Configuration.GetValue("BaseUrl")) +}); builder.Services.AddMudServices(); await builder.Build().RunAsync(); \ No newline at end of file diff --git a/MudAdmin/Utils/MockDataRepo.cs b/MudAdmin/Utils/MockDataRepo.cs index a51d694..4e852a6 100644 --- a/MudAdmin/Utils/MockDataRepo.cs +++ b/MudAdmin/Utils/MockDataRepo.cs @@ -48,7 +48,7 @@ public class MockDataRepo subDataList.Add(subData); } - songPlayData.SongPlaySubDataList = subDataList; + songPlayData.SongPlaySubDataList = subDataList.ToArray(); } } diff --git a/MudAdmin/wwwroot/appsettings.json b/MudAdmin/wwwroot/appsettings.json new file mode 100644 index 0000000..6efa1dc --- /dev/null +++ b/MudAdmin/wwwroot/appsettings.json @@ -0,0 +1,10 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Debug", + "System": "Information", + "Microsoft": "Information" + } + }, + "BaseUrl": "http://127.0.0.1" +} \ No newline at end of file