From 799880f17b7e8589272ef007d6a9243cef4c2e8b Mon Sep 17 00:00:00 2001 From: shuangbaojun <190663855@qq.com> Date: Tue, 16 Nov 2021 21:52:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=99=BB=E5=BD=95=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=92=8C=E5=90=8E=E5=8F=B0=E9=A6=96=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aspnet-core/CompanyName.ProjectName.sln | 18 +- ...Name.ProjectName.Blazor.WebAssembly.csproj | 4 - .../App.razor | 11 + .../Class1.cs | 8 - ...ctName.Blazor.Layout.AntDesignTheme.csproj | 31 +- .../Component1.razor | 3 + .../Component1.razor.css | 6 + .../GlobalHeader/RightContent.razor | 52 ++ .../GlobalHeader/RightContent.razor.cs | 116 +++ .../ExampleJsInterop.cs | 39 + .../Layouts/BasicLayout.razor | 53 ++ .../Layouts/UserLayout.razor | 49 ++ .../Layouts/UserLayout.razor.less | 71 ++ .../Models/ActivitiesType.cs | 18 + .../Models/ActivityGroup.cs | 14 + .../Models/ActivityProject.cs | 14 + .../Models/ActivityUser.cs | 14 + .../Models/ChartData.cs | 22 + .../Models/ChartDataItem.cs | 14 + .../Models/CurrentUser.cs | 40 + .../Models/ListItemDataType.cs | 46 + .../Models/LoginParamsType.cs | 19 + .../Models/NoticeItem.cs | 16 + .../Models/NoticeType.cs | 20 + .../Models/OfflineChartDataItem.cs | 15 + .../Models/OfflineDataItem.cs | 14 + .../Models/RadarDataItem.cs | 9 + .../Models/SearchDataItem.cs | 11 + .../Pages/Users/Login/Login.razor | 59 ++ .../Pages/Users/Login/Login.razor.cs | 36 + .../Pages/Users/Login/Login.razor.less | 62 ++ .../Pages/Welcome.razor | 9 + .../Program.cs | 33 + .../Services/AccountService.cs | 24 + .../Services/ChartService.cs | 46 + .../Services/IAccountService.cs | 11 + .../Services/IChartService.cs | 13 + .../Services/IProjectService.cs | 17 + .../Services/IUserService.cs | 14 + .../Services/ProjectService.cs | 42 + .../Services/UserService.cs | 26 + .../Styles/global.less | 58 ++ .../Utils/LongToDateTimeConverter.cs | 28 + .../_Imports.razor | 10 + .../wwwroot/appsettings.json | 18 + .../wwwroot/assets/403.svg | 508 +++++++++++ .../wwwroot/assets/logo.svg | 1 + .../wwwroot/css/site.css | 1 + .../wwwroot/data/activities.json | 100 +++ .../wwwroot/data/advanced.json | 64 ++ .../wwwroot/data/basic.json | 78 ++ .../wwwroot/data/current_user.json | 50 ++ .../wwwroot/data/fake_chart_data.json | 799 ++++++++++++++++++ .../wwwroot/data/fake_list.json | 762 +++++++++++++++++ .../wwwroot/data/menu.json | 170 ++++ .../wwwroot/data/notice.json | 62 ++ .../wwwroot/data/notices.json | 97 +++ .../wwwroot/index.html | 209 +++++ .../wwwroot/pro_icon.svg | 5 + 59 files changed, 4134 insertions(+), 25 deletions(-) create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/App.razor delete mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Class1.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor.css create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/ExampleJsInterop.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/BasicLayout.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor.less create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivitiesType.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityGroup.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityProject.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityUser.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartData.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartDataItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/CurrentUser.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ListItemDataType.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/LoginParamsType.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeType.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineChartDataItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineDataItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/RadarDataItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/SearchDataItem.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.less create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Welcome.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Program.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/AccountService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ChartService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IAccountService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IChartService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IProjectService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IUserService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ProjectService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/UserService.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Styles/global.less create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Utils/LongToDateTimeConverter.cs create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/_Imports.razor create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/appsettings.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/403.svg create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/logo.svg create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/css/site.css create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/activities.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/advanced.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/basic.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/current_user.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_chart_data.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_list.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/menu.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notice.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notices.json create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/index.html create mode 100644 aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/pro_icon.svg diff --git a/aspnet-core/CompanyName.ProjectName.sln b/aspnet-core/CompanyName.ProjectName.sln index 8c9bf9d0..079380d4 100644 --- a/aspnet-core/CompanyName.ProjectName.sln +++ b/aspnet-core/CompanyName.ProjectName.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.31410.414 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.31624.102 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Domain", "services\src\CompanyName.ProjectName.Domain\CompanyName.ProjectName.Domain.csproj", "{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}" EndProject @@ -137,12 +137,12 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Ext EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.CAP", "frameworks\CAP\src\CompanyName.ProjectName.CAP\CompanyName.ProjectName.CAP.csproj", "{3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Blazor.Layout.AntDesignTheme", "services\src\CompanyName.ProjectName.Blazor.Layout.AntDesignTheme\CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj", "{3E63EC99-F592-42E9-B360-258146BA9C79}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Blazor.Server", "services\host\CompanyName.ProjectName.Blazor.Server\CompanyName.ProjectName.Blazor.Server.csproj", "{10BB7892-639F-4169-9A26-0CCCAE3AE254}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Blazor.WebAssembly", "services\host\CompanyName.ProjectName.Blazor.WebAssembly\CompanyName.ProjectName.Blazor.WebAssembly.csproj", "{CFDC2921-A191-406D-A6D6-6AA4898D9948}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CompanyName.ProjectName.Blazor.Layout.AntDesignTheme", "services\src\CompanyName.ProjectName.Blazor.Layout.AntDesignTheme\CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj", "{64B34A2A-F225-441D-AFD3-FC1C47216A1C}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -325,10 +325,6 @@ Global {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Debug|Any CPU.Build.0 = Debug|Any CPU {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.ActiveCfg = Release|Any CPU {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.Build.0 = Release|Any CPU - {3E63EC99-F592-42E9-B360-258146BA9C79}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3E63EC99-F592-42E9-B360-258146BA9C79}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3E63EC99-F592-42E9-B360-258146BA9C79}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3E63EC99-F592-42E9-B360-258146BA9C79}.Release|Any CPU.Build.0 = Release|Any CPU {10BB7892-639F-4169-9A26-0CCCAE3AE254}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {10BB7892-639F-4169-9A26-0CCCAE3AE254}.Debug|Any CPU.Build.0 = Debug|Any CPU {10BB7892-639F-4169-9A26-0CCCAE3AE254}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -337,6 +333,10 @@ Global {CFDC2921-A191-406D-A6D6-6AA4898D9948}.Debug|Any CPU.Build.0 = Debug|Any CPU {CFDC2921-A191-406D-A6D6-6AA4898D9948}.Release|Any CPU.ActiveCfg = Release|Any CPU {CFDC2921-A191-406D-A6D6-6AA4898D9948}.Release|Any CPU.Build.0 = Release|Any CPU + {64B34A2A-F225-441D-AFD3-FC1C47216A1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {64B34A2A-F225-441D-AFD3-FC1C47216A1C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {64B34A2A-F225-441D-AFD3-FC1C47216A1C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {64B34A2A-F225-441D-AFD3-FC1C47216A1C}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -400,9 +400,9 @@ Global {FC30B17B-F671-4E55-90C6-9F37E40B483D} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7} = {C4AC9352-C9F5-4096-8D73-13638232CFB9} {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7} = {11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6} - {3E63EC99-F592-42E9-B360-258146BA9C79} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} {10BB7892-639F-4169-9A26-0CCCAE3AE254} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} {CFDC2921-A191-406D-A6D6-6AA4898D9948} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} + {64B34A2A-F225-441D-AFD3-FC1C47216A1C} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F} diff --git a/aspnet-core/services/host/CompanyName.ProjectName.Blazor.WebAssembly/CompanyName.ProjectName.Blazor.WebAssembly.csproj b/aspnet-core/services/host/CompanyName.ProjectName.Blazor.WebAssembly/CompanyName.ProjectName.Blazor.WebAssembly.csproj index 601fcec1..909e7df5 100644 --- a/aspnet-core/services/host/CompanyName.ProjectName.Blazor.WebAssembly/CompanyName.ProjectName.Blazor.WebAssembly.csproj +++ b/aspnet-core/services/host/CompanyName.ProjectName.Blazor.WebAssembly/CompanyName.ProjectName.Blazor.WebAssembly.csproj @@ -10,8 +10,4 @@ - - - - diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/App.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/App.razor new file mode 100644 index 00000000..126af6ff --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/App.razor @@ -0,0 +1,11 @@ + + + + + + +

Sorry, there's nothing at this address.

+
+
+
+ \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Class1.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Class1.cs deleted file mode 100644 index 3c74623a..00000000 --- a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Class1.cs +++ /dev/null @@ -1,8 +0,0 @@ -using System; - -namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme -{ - public class Class1 - { - } -} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj index cbfa5815..392a6a1a 100644 --- a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.csproj @@ -1,7 +1,30 @@ - + - - net5.0 - + + net5.0 + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor new file mode 100644 index 00000000..3139b38e --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor @@ -0,0 +1,3 @@ +
+ This Blazor component is defined in the CompanyName.ProjectName.Blazor.Layout.AntDesignTheme package. +
diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor.css b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor.css new file mode 100644 index 00000000..c6afca40 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Component1.razor.css @@ -0,0 +1,6 @@ +.my-component { + border: 2px dashed red; + padding: 1em; + margin: 1em 0; + background-image: url('background.png'); +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor new file mode 100644 index 00000000..5f947153 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor @@ -0,0 +1,52 @@ +@namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Components.GlobalHeader +@inherits AntDomComponentBase + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor.cs new file mode 100644 index 00000000..8c384685 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Components/GlobalHeader/RightContent.razor.cs @@ -0,0 +1,116 @@ +using AntDesign; +using AntDesign.ProLayout; +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services; +using Microsoft.AspNetCore.Components; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Components.GlobalHeader +{ + public partial class RightContent + { + private CurrentUser _currentUser = new CurrentUser(); + private NoticeIconData[] _notifications = { }; + private NoticeIconData[] _messages = { }; + private NoticeIconData[] _events = { }; + private int _count = 0; + + private List> DefaultOptions { get; set; } = new List> + { + new AutoCompleteDataItem + { + Label = "umi ui", + Value = "umi ui" + }, + new AutoCompleteDataItem + { + Label = "Pro Table", + Value = "Pro Table" + }, + new AutoCompleteDataItem + { + Label = "Pro Layout", + Value = "Pro Layout" + } + }; + + public AvatarMenuItem[] AvatarMenuItems { get; set; } = new AvatarMenuItem[] + { + new() { Key = "center", IconType = "user", Option = "个人中心"}, + new() { Key = "setting", IconType = "setting", Option = "个人设置"}, + new() { IsDivider = true }, + new() { Key = "logout", IconType = "logout", Option = "退出登录"} + }; + + [Inject] protected NavigationManager NavigationManager { get; set; } + + [Inject] protected IUserService UserService { get; set; } + [Inject] protected IProjectService ProjectService { get; set; } + [Inject] protected MessageService MessageService { get; set; } + + protected override async Task OnInitializedAsync() + { + await base.OnInitializedAsync(); + SetClassMap(); + _currentUser = await UserService.GetCurrentUserAsync(); + var notices = await ProjectService.GetNoticesAsync(); + _notifications = notices.Where(x => x.Type == "notification").Cast().ToArray(); + _messages = notices.Where(x => x.Type == "message").Cast().ToArray(); + _events = notices.Where(x => x.Type == "event").Cast().ToArray(); + _count = notices.Length; + } + + protected void SetClassMap() + { + ClassMapper + .Clear() + .Add("right"); + } + + public void HandleSelectUser(MenuItem item) + { + switch (item.Key) + { + case "center": + NavigationManager.NavigateTo("/account/center"); + break; + case "setting": + NavigationManager.NavigateTo("/account/settings"); + break; + case "logout": + NavigationManager.NavigateTo("/user/login"); + break; + } + } + + public void HandleSelectLang(MenuItem item) + { + } + + public async Task HandleClear(string key) + { + switch (key) + { + case "notification": + _notifications = new NoticeIconData[] { }; + break; + case "message": + _messages = new NoticeIconData[] { }; + break; + case "event": + _events = new NoticeIconData[] { }; + break; + } + await MessageService.Success($"清空了{key}"); + } + + public async Task HandleViewMore(string key) + { + await MessageService.Info("Click on view more"); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/ExampleJsInterop.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/ExampleJsInterop.cs new file mode 100644 index 00000000..04dd3cdc --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/ExampleJsInterop.cs @@ -0,0 +1,39 @@ +using Microsoft.JSInterop; +using System; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme +{ + // This class provides an example of how JavaScript functionality can be wrapped + // in a .NET class for easy consumption. The associated JavaScript module is + // loaded on demand when first needed. + // + // This class can be registered as scoped DI service and then injected into Blazor + // components for use. + + public class ExampleJsInterop : IAsyncDisposable + { + private readonly Lazy> moduleTask; + + public ExampleJsInterop(IJSRuntime jsRuntime) + { + moduleTask = new(() => jsRuntime.InvokeAsync( + "import", "./_content/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/exampleJsInterop.js").AsTask()); + } + + public async ValueTask Prompt(string message) + { + var module = await moduleTask.Value; + return await module.InvokeAsync("showPrompt", message); + } + + public async ValueTask DisposeAsync() + { + if (moduleTask.IsValueCreated) + { + var module = await moduleTask.Value; + await module.DisposeAsync(); + } + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/BasicLayout.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/BasicLayout.razor new file mode 100644 index 00000000..7e5fe3d7 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/BasicLayout.razor @@ -0,0 +1,53 @@ +@namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme +@inherits LayoutComponentBase + + + + + + + @Body + + + + + + + +@code +{private MenuDataItem[] _menuData = { }; + + [Inject] public HttpClient HttpClient { get; set; } + + protected override async Task OnInitializedAsync() + { + await base.OnInitializedAsync(); + _menuData = await HttpClient.GetFromJsonAsync("data/menu.json"); + } + + public LinkItem[] Links { get; set; } = + { + new LinkItem + { + Key = "Ant Design Blazor", + Title = "Ant Design Blazor", + Href = "https://antblazor.com", + BlankTarget = true, + }, + new LinkItem + { + Key = "github", + Title = (RenderFragment)(@), + Href = "https://github.com/ant-design-blazor/ant-design-pro-blazor", + BlankTarget = true, + }, + new LinkItem + { + Key = "Blazor", + Title = "Blazor", + Href = "https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor?WT.mc_id=DT-MVP-5003987", + BlankTarget = true, + } + }; +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor new file mode 100644 index 00000000..69002a20 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor @@ -0,0 +1,49 @@ +@namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme +@using OneOf +@inherits LayoutComponentBase + +
+
+ +
+
+
+ +
Ant Design Blazor
+
+ @Body +
+ +
+ +@code +{public LinkItem[] Links { get; set; } = + { + new LinkItem + { + Key = "Ant Design Blazor", + Title = "Ant Design Blazor", + Href = "https://antblazor.com", + BlankTarget = true, + }, + new LinkItem + { + Key = "github", + Title = (RenderFragment)(@), + Href = "https://github.com/ant-design-blazor/ant-design-pro-blazor", + BlankTarget = true, + }, + new LinkItem + { + Key = "Blazor", + Title = "Blazor", + Href = "https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor?WT.mc_id=DT-MVP-5003987", + BlankTarget = true, + } + }; +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor.less b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor.less new file mode 100644 index 00000000..dd01cb70 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Layouts/UserLayout.razor.less @@ -0,0 +1,71 @@ +@import '~antd/es/style/themes/default.less'; + +.container__b__0 { + display: flex; + flex-direction: column; + height: 100vh; + overflow: auto; + background: @layout-body-background; + + .lang { + width: 100%; + height: 40px; + line-height: 44px; + text-align: right; + :global(.ant-dropdown-trigger) { + margin-right: 24px; + } + } + + .content { + flex: 1; + padding: 32px 0; + } + + .top { + text-align: center; + } + + .header { + height: 44px; + line-height: 44px; + a { + text-decoration: none; + } + } + + .logo { + height: 44px; + margin-right: 16px; + vertical-align: top; + } + + .title { + position: relative; + top: 2px; + color: @heading-color; + font-weight: 600; + font-size: 33px; + font-family: Avenir, 'Helvetica Neue', Arial, Helvetica, sans-serif; + } + + .desc { + margin-top: 12px; + margin-bottom: 40px; + color: @text-color-secondary; + font-size: @font-size-base; + } +} + +@media (min-width: @screen-md-min) { + .container__b__0 { + background-image: url('https://gw.alipayobjects.com/zos/rmsportal/TVYTbAXWheQpRcWDaDMu.svg'); + background-repeat: no-repeat; + background-position: center 110px; + background-size: 100%; + + .content { + padding: 32px 0 24px; + } + } +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivitiesType.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivitiesType.cs new file mode 100644 index 00000000..a6031002 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivitiesType.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ActivitiesType + { + public string Id { get; set; } + public DateTime UpdatedAt { get; set; } + public ActivityUser User { get; set; } + public ActivityGroup Group { get; set; } + public ActivityProject Project { get; set; } + public string Template { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityGroup.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityGroup.cs new file mode 100644 index 00000000..6eab3a44 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityGroup.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ActivityGroup + { + public string Name { get; set; } + public string Link { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityProject.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityProject.cs new file mode 100644 index 00000000..3928251c --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityProject.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ActivityProject + { + public string Name { get; set; } + public string Link { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityUser.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityUser.cs new file mode 100644 index 00000000..33ad389e --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ActivityUser.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ActivityUser + { + public string Name { get; set; } + public string Avatar { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartData.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartData.cs new file mode 100644 index 00000000..73e99632 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartData.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ChartData + { + public ChartDataItem[] VisitData { get; set; } + public ChartDataItem[] VisitData2 { get; set; } + public ChartDataItem[] SalesData { get; set; } + public SearchDataItem[] SearchData { get; set; } + public OfflineDataItem[] OfflineData { get; set; } + public OfflineChartDataItem[] OfflineChartData { get; set; } + public ChartDataItem[] SalesTypeData { get; set; } + public ChartDataItem[] SalesTypeDataOnline { get; set; } + public ChartDataItem[] SalesTypeDataOffline { get; set; } + public RadarDataItem[] RadarData { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartDataItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartDataItem.cs new file mode 100644 index 00000000..e48eb231 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ChartDataItem.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class ChartDataItem + { + public string X { get; set; } + public int Y { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/CurrentUser.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/CurrentUser.cs new file mode 100644 index 00000000..da420c56 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/CurrentUser.cs @@ -0,0 +1,40 @@ +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class TagType + { + public string Key { get; set; } + public string Label { get; set; } + } + + public class GeographicType + { + public TagType Province { get; set; } + public TagType City { get; set; } + } + + public class CurrentUser + { + public string Name { get; set; } + public string Avatar { get; set; } + public string Userid { get; set; } + public NoticeType[] Notice { get; set; } = { }; + public string Email { get; set; } + public string Signature { get; set; } + public string Title { get; set; } + public string Group { get; set; } + public TagType[] Tags { get; set; } = { }; + public int NotifyCount { get; set; } + public int UnreadCount { get; set; } + public string Country { get; set; } + public GeographicType Geographic { get; set; } + public string Address { get; set; } + public string Phone { get; set; } + } + + public class UserLiteItem + { + public string Avater { get; set; } + public string Title { get; set; } + public string Description { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ListItemDataType.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ListItemDataType.cs new file mode 100644 index 00000000..790ee917 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/ListItemDataType.cs @@ -0,0 +1,46 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Utils; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Text.Json.Serialization; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class Member + { + public string Avatar { get; set; } + public string Name { get; set; } + public string Id { get; set; } + } + + public class ListItemDataType + { + public string Id { get; set; } + public string Owner { get; set; } + public string Title { get; set; } + public string Avatar { get; set; } + public string Cover { get; set; } + public string Status { get; set; } + public int Percent { get; set; } + public string Logo { get; set; } + public string Href { get; set; } + public string Body { get; set; } + public string SubDescription { get; set; } + public string Description { get; set; } + public int ActiveUser { get; set; } + public int NewUser { get; set; } + public int Star { get; set; } + public int Like { get; set; } + public int Message { get; set; } + public string Content { get; set; } + public Member[] Members { get; set; } + + [JsonConverter(typeof(LongToDateTimeConverter))] + public DateTime UpdatedAt { get; set; } + + [JsonConverter(typeof(LongToDateTimeConverter))] + public DateTime CreatedAt { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/LoginParamsType.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/LoginParamsType.cs new file mode 100644 index 00000000..e7278e3e --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/LoginParamsType.cs @@ -0,0 +1,19 @@ +using System.ComponentModel.DataAnnotations; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class LoginParamsType + { + [Required] public string UserName { get; set; } + + [Required] public string Password { get; set; } + + public string Mobile { get; set; } + + public string Captcha { get; set; } + + public string LoginType { get; set; } + + public bool AutoLogin { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeItem.cs new file mode 100644 index 00000000..00b7a28b --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeItem.cs @@ -0,0 +1,16 @@ +using AntDesign.ProLayout; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class NoticeItem : NoticeIconData + { + public string Id { get; set; } + public string Type { get; set; } + public string Status { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeType.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeType.cs new file mode 100644 index 00000000..e86afe67 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/NoticeType.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class NoticeType + { + public string Id { get; set; } + public string Title { get; set; } + public string Logo { get; set; } + public string Description { get; set; } + public string UpdatedAt { get; set; } + public string Member { get; set; } + public string Href { get; set; } + public string MemberLink { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineChartDataItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineChartDataItem.cs new file mode 100644 index 00000000..41c03841 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineChartDataItem.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class OfflineChartDataItem + { + public long X { get; set; } + public int Y1 { get; set; } + public int Y2 { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineDataItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineDataItem.cs new file mode 100644 index 00000000..f1e19ef2 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/OfflineDataItem.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class OfflineDataItem + { + public string Name { get; set; } + public float Cvr { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/RadarDataItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/RadarDataItem.cs new file mode 100644 index 00000000..ea6e901e --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/RadarDataItem.cs @@ -0,0 +1,9 @@ +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class RadarDataItem + { + public string Name { get; set; } + public string Label { get; set; } + public int Value { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/SearchDataItem.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/SearchDataItem.cs new file mode 100644 index 00000000..3bb81b06 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Models/SearchDataItem.cs @@ -0,0 +1,11 @@ +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models +{ + public class SearchDataItem + { + public int Index { get; set; } + public string Keywod { get; set; } + public int Count { get; set; } + public int Range { get; set; } + public int Status { get; set; } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor new file mode 100644 index 00000000..87b6b163 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor @@ -0,0 +1,59 @@ +@namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Pages.Users.Login +@layout UserLayout +@page "/user/login" + +
+ +
\ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.cs new file mode 100644 index 00000000..4f44aba6 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.cs @@ -0,0 +1,36 @@ +using AntDesign; +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services; +using Microsoft.AspNetCore.Components; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Pages.Users.Login +{ + public partial class Login + { + private readonly LoginParamsType _model = new LoginParamsType(); + + [Inject] public NavigationManager NavigationManager { get; set; } + + [Inject] public IAccountService AccountService { get; set; } + + [Inject] public MessageService Message { get; set; } + + public void HandleSubmit() + { + if (_model.UserName == "admin" && _model.Password == "ant.design") + { + NavigationManager.NavigateTo("/"); + return; + } + + if (_model.UserName == "user" && _model.Password == "ant.design") NavigationManager.NavigateTo("/"); + } + + public async Task GetCaptcha() + { + var captcha = await AccountService.GetCaptchaAsync(_model.Mobile); + await Message.Success($"Verification code validated successfully! The verification code is: {captcha}"); + } + } +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.less b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.less new file mode 100644 index 00000000..79beb068 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Users/Login/Login.razor.less @@ -0,0 +1,62 @@ +@import '~antd/es/style/themes/default.less'; + +/*此处为了解决样式冲突, 在pro样式的基础上包了一层main, 原始样式从.login开始*/ +.main__b__0 { + width: 368px; + margin: 0 auto; + @media screen and (max-width: @screen-sm) { + width: 95%; + } + + .login { + :global { + .ant-tabs .ant-tabs-bar { + margin-bottom: 24px; + text-align: center; + border-bottom: 0; + } + } + + .getCaptcha { + display: block; + width: 100%; + } + + .icon { + color: @primary-color; + } + + .other { + margin-top: 24px; + line-height: 22px; + text-align: left; + + .icon { + margin-left: 16px; + color: @text-color-secondary; + font-size: 24px; + vertical-align: middle; + cursor: pointer; + transition: color 0.3s; + + &:hover { + color: @primary-color; + } + } + + .register { + float: right; + } + } + + .prefixIcon { + color: @disabled-color; + font-size: @font-size-base; + } + + .submit { + width: 100%; + margin-top: 24px; + } + } +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Welcome.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Welcome.razor new file mode 100644 index 00000000..fb7ba885 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Pages/Welcome.razor @@ -0,0 +1,9 @@ +@page "/dashboard" + + + + + TODO + + + \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Program.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Program.cs new file mode 100644 index 00000000..9629de77 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Program.cs @@ -0,0 +1,33 @@ +using AntDesign.ProLayout; +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services; +using Microsoft.AspNetCore.Components.WebAssembly.Hosting; +using Microsoft.Extensions.DependencyInjection; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme +{ + public class Program + { + public static async Task Main(string[] args) + { + var builder = WebAssemblyHostBuilder.CreateDefault(args); + builder.RootComponents.Add("#app"); + + builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) }); + builder.Services.AddAntDesign(); + builder.Services.Configure(builder.Configuration.GetSection("ProSettings")); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + builder.Services.AddScoped(); + //builder.Services.AddScoped(); + + await builder.Build().RunAsync(); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/AccountService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/AccountService.cs new file mode 100644 index 00000000..30a8d592 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/AccountService.cs @@ -0,0 +1,24 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + + public class AccountService : IAccountService + { + private readonly Random _random = new Random(); + + public Task LoginAsync(LoginParamsType model) + { + // todo: login logic + return Task.CompletedTask; + } + + public Task GetCaptchaAsync(string modile) + { + var captcha = _random.Next(0, 9999).ToString().PadLeft(4, '0'); + return Task.FromResult(captcha); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ChartService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ChartService.cs new file mode 100644 index 00000000..703f2622 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ChartService.cs @@ -0,0 +1,46 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Json; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public class ChartService : IChartService + { + private readonly HttpClient _httpClient; + + public ChartService(HttpClient httpClient) + { + _httpClient = httpClient; + } + + public async Task GetVisitDataAsync() + { + return (await GetChartDataAsync()).VisitData; + } + + public async Task GetVisitData2Async() + { + return (await GetChartDataAsync()).VisitData2; + } + + public async Task GetSalesDataAsync() + { + return (await GetChartDataAsync()).SalesData; + } + + public async Task GetRadarDataAsync() + { + return (await GetChartDataAsync()).RadarData; + } + + private async Task GetChartDataAsync() + { + return await _httpClient.GetFromJsonAsync("data/fake_chart_data.json"); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IAccountService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IAccountService.cs new file mode 100644 index 00000000..d8420455 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IAccountService.cs @@ -0,0 +1,11 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public interface IAccountService + { + Task LoginAsync(LoginParamsType model); + Task GetCaptchaAsync(string modile); + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IChartService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IChartService.cs new file mode 100644 index 00000000..e044def5 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IChartService.cs @@ -0,0 +1,13 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public interface IChartService + { + Task GetVisitDataAsync(); + Task GetVisitData2Async(); + Task GetSalesDataAsync(); + Task GetRadarDataAsync(); + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IProjectService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IProjectService.cs new file mode 100644 index 00000000..a69ed844 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IProjectService.cs @@ -0,0 +1,17 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public interface IProjectService + { + Task GetProjectNoticeAsync(); + Task GetActivitiesAsync(); + Task GetFakeListAsync(int count = 0); + Task GetNoticesAsync(); + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IUserService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IUserService.cs new file mode 100644 index 00000000..e6bcd0b9 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/IUserService.cs @@ -0,0 +1,14 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public interface IUserService + { + Task GetCurrentUserAsync(); + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ProjectService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ProjectService.cs new file mode 100644 index 00000000..dd09f6ed --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/ProjectService.cs @@ -0,0 +1,42 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Json; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public class ProjectService : IProjectService + { + private readonly HttpClient _httpClient; + + public ProjectService(HttpClient httpClient) + { + _httpClient = httpClient; + } + + public async Task GetProjectNoticeAsync() + { + return await _httpClient.GetFromJsonAsync("data/notice.json"); + } + + public async Task GetNoticesAsync() + { + return await _httpClient.GetFromJsonAsync("data/notices.json"); + } + + public async Task GetActivitiesAsync() + { + return await _httpClient.GetFromJsonAsync("data/activities.json"); + } + + public async Task GetFakeListAsync(int count = 0) + { + var data = await _httpClient.GetFromJsonAsync("data/fake_list.json"); + return count > 0 ? data.Take(count).ToArray() : data; + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/UserService.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/UserService.cs new file mode 100644 index 00000000..4966ef25 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Services/UserService.cs @@ -0,0 +1,26 @@ +using CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Json; +using System.Text; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Services +{ + public class UserService : IUserService + { + private readonly HttpClient _httpClient; + + public UserService(HttpClient httpClient) + { + _httpClient = httpClient; + } + + public async Task GetCurrentUserAsync() + { + return await _httpClient.GetFromJsonAsync("data/current_user.json"); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Styles/global.less b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Styles/global.less new file mode 100644 index 00000000..01149179 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Styles/global.less @@ -0,0 +1,58 @@ +@import '~antd/es/style/themes/default.less'; + +html, +body, +#root, +#app, +app { + height: 100%; +} + +.colorWeak { + filter: invert(80%); +} + +.ant-layout { + min-height: 100vh; +} + +canvas { + display: block; +} + +body { + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +ul, +ol { + list-style: none; +} + +@media (max-width: @screen-xs) { + .ant-table { + width: 100%; + overflow-x: auto; + + &-thead > tr, + &-tbody > tr { + > th, + > td { + white-space: pre; + + > span { + display: block; + } + } + } + } +} + +// 兼容IE11 +@media screen and(-ms-high-contrast: active), (-ms-high-contrast: none) { + body .ant-design-pro > .ant-layout { + min-height: 100vh; + } +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Utils/LongToDateTimeConverter.cs b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Utils/LongToDateTimeConverter.cs new file mode 100644 index 00000000..7865f9e1 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/Utils/LongToDateTimeConverter.cs @@ -0,0 +1,28 @@ +using System; +using System.Buffers.Text; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.Threading.Tasks; + +namespace CompanyName.ProjectName.Blazor.Layout.AntDesignTheme.Utils +{ + public class LongToDateTimeConverter : JsonConverter + { + public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) + { + if (Utf8Parser.TryParse(reader.ValueSpan, out long value, out _)) + return DateTime.UnixEpoch.AddMilliseconds(value); + + throw new FormatException(); + } + + public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options) + { + writer.WriteStringValue( + JsonEncodedText.Encode(((long)(value - DateTime.UnixEpoch).TotalMilliseconds).ToString())); + } + } +} diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/_Imports.razor b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/_Imports.razor new file mode 100644 index 00000000..bef16b42 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/_Imports.razor @@ -0,0 +1,10 @@ +@using AntDesign +@using AntDesign.Charts +@using AntDesign.ProLayout +@using System.Net.Http +@using System.Net.Http.Json +@using Microsoft.AspNetCore.Components.Forms +@using Microsoft.AspNetCore.Components.Routing +@using Microsoft.AspNetCore.Components.Web +@using Microsoft.AspNetCore.Components.WebAssembly.Http +@using Microsoft.JSInterop \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/appsettings.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/appsettings.json new file mode 100644 index 00000000..e1b2d037 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/appsettings.json @@ -0,0 +1,18 @@ +{ + "ProSettings": { + "NavTheme": "dark", + "Layout": "side", + "ContentWidth": "Fluid", + "FixedHeader": false, + "FixSiderbar": true, + "Title": "Ant Design Pro", + "PrimaryColor": "daybreak", + "ColorWeak": false, + "SplitMenus": false, + "HeaderRender": true, + "FooterRender": true, + "MenuRender": true, + "MenuHeaderRender": true, + "HeaderHeight": 48 + } +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/403.svg b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/403.svg new file mode 100644 index 00000000..610f136f --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/403.svg @@ -0,0 +1,508 @@ + + + + Group 9 + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/logo.svg b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/logo.svg new file mode 100644 index 00000000..239bf69f --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/assets/logo.svg @@ -0,0 +1 @@ +Group 28 Copy 5Created with Sketch. \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/css/site.css b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/css/site.css new file mode 100644 index 00000000..2a77de63 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/css/site.css @@ -0,0 +1 @@ +.container__b__0{display:flex;flex-direction:column;height:100vh;overflow:auto;background:#f0f2f5}.container__b__0 .lang{width:100%;height:40px;line-height:44px;text-align:right}.container__b__0 .lang :global(.ant-dropdown-trigger){margin-right:24px}.container__b__0 .content{flex:1;padding:32px 0}.container__b__0 .top{text-align:center}.container__b__0 .header{height:44px;line-height:44px}.container__b__0 .header a{text-decoration:none}.container__b__0 .logo{height:44px;margin-right:16px;vertical-align:top}.container__b__0 .title{position:relative;top:2px;color:rgba(0,0,0,.85);font-weight:600;font-size:33px;font-family:Avenir,'Helvetica Neue',Arial,Helvetica,sans-serif}.container__b__0 .desc{margin-top:12px;margin-bottom:40px;color:rgba(0,0,0,.45);font-size:14px}@media (min-width:768px){.container__b__0{background-image:url(https://gw.alipayobjects.com/zos/rmsportal/TVYTbAXWheQpRcWDaDMu.svg);background-repeat:no-repeat;background-position:center 110px;background-size:100%}.container__b__0 .content{padding:32px 0 24px}}#app,#root,app,body,html{height:100%}.colorWeak{filter:invert(80%)}.ant-layout{min-height:100vh}canvas{display:block}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ol,ul{list-style:none}@media (max-width:480px){.ant-table{width:100%;overflow-x:auto}.ant-table-tbody>tr>td,.ant-table-tbody>tr>th,.ant-table-thead>tr>td,.ant-table-thead>tr>th{white-space:pre}.ant-table-tbody>tr>td>span,.ant-table-tbody>tr>th>span,.ant-table-thead>tr>td>span,.ant-table-thead>tr>th>span{display:block}}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){body .ant-design-pro>.ant-layout{min-height:100vh}}.avatarHolder{margin-bottom:24px;text-align:center}.avatarHolder>img{width:104px;height:104px;margin-bottom:20px}.avatarHolder .name{margin-bottom:4px;color:rgba(0,0,0,.85);font-weight:500;font-size:20px;line-height:28px}.detail p{position:relative;margin-bottom:8px;padding-left:26px}.detail p:last-child{margin-bottom:0}.detail i{position:absolute;top:4px;left:0;width:14px;height:14px}.tagsTitle,.teamTitle{margin-bottom:12px;color:rgba(0,0,0,.85);font-weight:500}.tags .ant-tag{margin-bottom:8px}.team .ant-avatar{margin-right:12px}.team a{display:block;margin-bottom:24px;overflow:hidden;color:rgba(0,0,0,.85);white-space:nowrap;text-overflow:ellipsis;word-break:break-all;transition:color .3s}.team a:hover{color:#1890ff}.tabsCard .ant-card-head{padding:0 16px}.main__b__2{display:flex;width:100%;height:100%;padding-top:16px;padding-bottom:16px;overflow:auto;background-color:#fff}.main__b__2 .leftMenu{width:224px;border-right:1px solid #f0f0f0}.main__b__2 .leftMenu :global .ant-menu-inline{border:none}.main__b__2 .leftMenu :global .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{font-weight:700}.main__b__2 .right__b__0{flex:1;padding-top:8px;padding-right:40px;padding-bottom:8px;padding-left:40px}.main__b__2 .right__b__0 .title{margin-bottom:12px;color:rgba(0,0,0,.85);font-weight:500;font-size:20px;line-height:28px}.main__b__2 .ant-list-split .ant-list-item:last-child{border-bottom:1px solid #f0f0f0}.main__b__2 .ant-list-item{padding-top:14px;padding-bottom:14px}.ant-list-item-meta .taobao{display:block;color:#ff4000;font-size:48px;line-height:48px;border-radius:2px}.ant-list-item-meta .dingding{margin:2px;padding:6px;color:#fff;font-size:32px;line-height:32px;background-color:#2eabff;border-radius:2px}.ant-list-item-meta .alipay{color:#2eabff;font-size:48px;line-height:48px;border-radius:2px}font.strong{color:#52c41a}font.medium{color:#faad14}font.weak{color:#ff4d4f}@media screen and (max-width:768px){.main__b__2{flex-direction:column}.main__b__2 .leftMenu{width:100%;border:none}.main__b__2 .right__b__0{padding:40px}}.iconGroup span.anticon{margin-left:16px;color:rgba(0,0,0,.45);cursor:pointer;transition:color .32s}.iconGroup span.anticon:hover{color:rgba(0,0,0,.85)}.rankingList{margin:25px 0 0;padding:0;list-style:none}.rankingList li{display:flex;align-items:center;margin-top:16px;zoom:1}.rankingList li::after,.rankingList li::before{display:table;content:' '}.rankingList li::after{clear:both;height:0;font-size:0;visibility:hidden}.rankingList li span{color:rgba(0,0,0,.85);font-size:14px;line-height:22px}.rankingList li .rankingItemNumber{display:inline-block;width:20px;height:20px;margin-top:1.5px;margin-right:16px;font-weight:600;font-size:12px;line-height:20px;text-align:center;background-color:#fafafa;border-radius:20px}.rankingList li .rankingItemNumber.active{color:#fff;background-color:#314659}.rankingList li .rankingItemTitle{flex:1;margin-right:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.salesExtra{display:inline-block;margin-right:24px}.salesExtra a{margin-left:24px;color:rgba(0,0,0,.85)}.salesExtra a:hover{color:#1890ff}.salesExtra a.currentDate{color:#1890ff}.salesCard .salesBar{padding:0 0 32px 32px}.salesCard .salesRank{padding:0 32px 32px 72px}.salesCard :global .ant-tabs-bar,.salesCard :global .ant-tabs-nav-wrap{padding-left:16px}.salesCard :global .ant-tabs-bar .ant-tabs-nav .ant-tabs-tab,.salesCard :global .ant-tabs-nav-wrap .ant-tabs-nav .ant-tabs-tab{padding-top:16px;padding-bottom:14px;line-height:24px}.salesCard :global .ant-tabs-extra-content{padding-right:24px;line-height:55px}.salesCard :global .ant-card-head{position:relative}.salesCard :global .ant-card-head-title{align-items:normal}.salesCardExtra{height:inherit}.salesTypeRadio{position:absolute;right:54px;bottom:12px}.offlineCard :global .ant-tabs-ink-bar{bottom:auto}.offlineCard :global .ant-tabs-bar{border-bottom:none}.offlineCard :global .ant-tabs-nav-container-scrolling{padding-right:40px;padding-left:40px}.offlineCard :global .ant-tabs-tab-prev-icon::before{position:relative;left:6px}.offlineCard :global .ant-tabs-tab-next-icon::before{position:relative;right:6px}.offlineCard :global .ant-tabs-tab-active h4{color:#1890ff}.trendText{margin-left:8px;color:rgba(0,0,0,.85)}@media screen and (max-width:992px){.salesExtra{display:none}.rankingList li span:first-child{margin-right:8px}}@media screen and (max-width:768px){.rankingTitle{margin-top:16px}.salesCard .salesBar{padding:16px}}@media screen and (max-width:576px){.salesExtraWrap{display:none}.salesCard :global .ant-tabs-content{padding-top:30px}}.mapChart{height:452px;padding-top:24px}.mapChart img{display:inline-block;max-width:100%;max-height:437px}.pieCard :global(.pie-stat){font-size:24px!important}@media screen and (max-width:992px){.mapChart{height:auto}}.activitiesList{padding:0 24px 8px 24px}.activitiesList .username{color:rgba(0,0,0,.85)}.activitiesList .event{font-weight:400}.pageHeaderContent__b__0{display:flex}.pageHeaderContent__b__0 .avatar{flex:0 1 72px}.pageHeaderContent__b__0 .avatar>span{display:block;width:72px;height:72px;border-radius:72px}.pageHeaderContent__b__0 .content{position:relative;top:4px;flex:1 1 auto;margin-left:24px;color:rgba(0,0,0,.45);line-height:22px}.pageHeaderContent__b__0 .content .contentTitle{margin-bottom:12px;color:rgba(0,0,0,.85);font-weight:500;font-size:20px;line-height:28px}.extraContent{zoom:1;float:right;white-space:nowrap}.extraContent::after,.extraContent::before{display:table;content:' '}.extraContent::after{clear:both;height:0;font-size:0;visibility:hidden}.extraContent .statItem{position:relative;display:inline-block;padding:0 32px}.extraContent .statItem>p:first-child{margin-bottom:4px;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.extraContent .statItem>p{margin:0;color:rgba(0,0,0,.85);font-size:30px;line-height:38px}.extraContent .statItem>p>span{color:rgba(0,0,0,.45);font-size:20px}.extraContent .statItem::after{position:absolute;top:8px;right:0;width:1px;height:40px;background-color:#f0f0f0;content:''}.extraContent .statItem:last-child{padding-right:0}.extraContent .statItem:last-child::after{display:none}.members a{display:block;height:24px;margin:12px 0;color:rgba(0,0,0,.85);transition:all .3s;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.members a .member{margin-left:12px;font-size:14px;line-height:24px;vertical-align:top}.members a:hover{color:#1890ff}.projectList .ant-card-meta-description{height:44px;overflow:hidden;color:rgba(0,0,0,.45);line-height:22px}.projectList .cardTitle{font-size:0}.projectList .cardTitle a{display:inline-block;height:24px;margin-left:12px;color:rgba(0,0,0,.85);font-size:14px;line-height:24px;vertical-align:top}.projectList .cardTitle a:hover{color:#1890ff}.projectList .projectGrid{width:33.33%}.projectList .projectItemContent{display:flex;height:20px;margin-top:8px;font-size:12px;line-height:20px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.projectList .projectItemContent a{display:inline-block;flex:1 1 0;color:rgba(0,0,0,.45);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.projectList .projectItemContent a:hover{color:#1890ff}.projectList .projectItemContent .datetime{flex:0 0 auto;float:right;color:rgba(0,0,0,.25)}.datetime{color:rgba(0,0,0,.25)}@media screen and (max-width:1200px) and (min-width:992px){.activeCard{margin-bottom:24px}.members{margin-bottom:0}.extraContent{margin-left:-44px}.extraContent .statItem{padding:0 16px}}@media screen and (max-width:992px){.activeCard{margin-bottom:24px}.members{margin-bottom:0}.extraContent{float:none;margin-right:0}.extraContent .statItem{padding:0 16px;text-align:left}.extraContent .statItem::after{display:none}}@media screen and (max-width:768px){.extraContent{margin-left:-16px}.projectList .projectGrid{width:50%}}@media screen and (max-width:576px){.pageHeaderContent{display:block}.pageHeaderContent .content{margin-left:0}.extraContent .statItem{float:none}}@media screen and (max-width:480px){.projectList .projectGrid{width:100%}}.card{margin-bottom:24px}.card :global .ant-legacy-form-item .ant-legacy-form-item-control-wrapper{width:100%}.errorIcon{margin-right:24px;color:#ff4d4f;cursor:pointer}.errorIcon span.anticon{margin-right:4px}.errorPopover :global .ant-popover-inner-content{min-width:256px;max-height:290px;padding:0;overflow:auto}.errorListItem{padding:8px 16px;list-style:none;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:all .3s}.errorListItem:hover{background:#e6f7ff}.errorListItem:last-child{border:0}.errorListItem .errorIcon{float:left;margin-top:4px;margin-right:12px;padding-bottom:22px;color:#ff4d4f}.errorListItem .errorField{margin-top:2px;color:rgba(0,0,0,.45);font-size:12px}.editable td{padding-top:13px!important;padding-bottom:12.5px!important}.card{margin-bottom:24px}.card :global .ant-legacy-form-item .ant-legacy-form-item-control-wrapper{width:100%}.errorIcon{margin-right:24px;color:#ff4d4f;cursor:pointer}.errorIcon span.anticon{margin-right:4px}.errorPopover :global .ant-popover-inner-content{min-width:256px;max-height:290px;padding:0;overflow:auto}.errorListItem{padding:8px 16px;list-style:none;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:all .3s}.errorListItem:hover{background:#e6f7ff}.errorListItem:last-child{border:0}.errorListItem .errorIcon{float:left;margin-top:4px;margin-right:12px;padding-bottom:22px;color:#ff4d4f}.errorListItem .errorField{margin-top:2px;color:rgba(0,0,0,.45);font-size:12px}.editable td{padding-top:13px!important;padding-bottom:12.5px!important}.card{margin-bottom:24px}.heading{margin:0 0 16px 0;font-size:14px;line-height:22px}.steps.ant-steps{max-width:750px;margin:16px auto}.errorIcon{margin-right:24px;color:#ff4d4f;cursor:pointer}.errorIcon span.anticon{margin-right:4px}.errorPopover :global .ant-popover-inner-content{min-width:256px;max-height:290px;padding:0;overflow:auto}.errorListItem{padding:8px 16px;list-style:none;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:all .3s}.errorListItem:hover{background:#e6f7ff}.errorListItem:last-child{border:0}.errorListItem .errorIcon{float:left;margin-top:4px;margin-right:12px;padding-bottom:22px;color:#ff4d4f}.errorListItem .errorField{margin-top:2px;color:rgba(0,0,0,.45);font-size:12px}.editable td{padding-top:13px!important;padding-bottom:12.5px!important}.advancedForm+div{padding-bottom:64px}.advancedForm :global .ant-form .ant-row:last-child .ant-form-item{margin-bottom:24px}.advancedForm :global .ant-table td{transition:none!important}.optional{color:rgba(0,0,0,.45);font-style:normal}.standardList .ant-card-head{border-bottom:none}.standardList .ant-card-head-title{padding:24px 0;line-height:32px}.standardList .ant-card-extra{padding:24px 0}.standardList .ant-list-pagination{margin-top:24px;text-align:right}.standardList .ant-avatar-lg{width:48px;height:48px;line-height:48px}.standardList .headerInfo{position:relative;text-align:center}.standardList .headerInfo>span{display:inline-block;margin-bottom:4px;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.standardList .headerInfo>p{margin:0;color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.standardList .headerInfo>em{position:absolute;top:0;right:0;width:1px;height:56px;background-color:#f0f0f0}.standardList .listContent{font-size:0}.standardList .listContent .listContentItem{display:inline-block;margin-left:40px;color:rgba(0,0,0,.45);font-size:14px;vertical-align:middle}.standardList .listContent .listContentItem>span{line-height:20px}.standardList .listContent .listContentItem>p{margin-top:4px;margin-bottom:0;line-height:22px}.standardList .extraContentSearch{width:272px;margin-left:16px}@media screen and (max-width:480px){.standardList .ant-list-item-content{display:block;flex:none;width:100%}.standardList .ant-list-item-action{margin-left:0}.standardList .listContent{margin-left:0}.standardList .listContent>div{margin-left:0}.standardList .listCard .ant-card-head-title{overflow:visible}}@media screen and (max-width:576px){.standardList .extraContentSearch{width:100%;margin-left:0}.standardList .headerInfo{margin-bottom:16px}.standardList .headerInfo>em{display:none}}@media screen and (max-width:768px){.standardList .listContent>div{display:block}.standardList .listContent>div:last-child{top:0;width:100%}.listCard .ant-radio-group{display:block;margin-bottom:8px}}@media screen and (max-width:992px) and (min-width:768px){.standardList .listContent>div{display:block}.standardList .listContent>div:last-child{top:0;width:100%}}@media screen and (max-width:1200px){.standardList .listContent>div{margin-left:24px}.standardList .listContent>div:last-child{top:0}}@media screen and (max-width:1400px){.standardList .listContent{text-align:right}.standardList .listContent>div:last-child{top:0}}.standardListForm .ant-form-item{margin-bottom:12px}.standardListForm .ant-form-item:last-child{margin-bottom:32px;padding-top:4px}.formResult{width:100%}.formResult [class^=title]{margin-bottom:8px}.cardList .card .ant-card-meta-title{margin-bottom:12px}.cardList .card .ant-card-meta-title>a{display:inline-block;max-width:100%;color:rgba(0,0,0,.85)}.cardList .card .ant-card-body:hover .ant-card-meta-title>a{color:#1890ff}.cardList .item{height:64px}.cardList .ant-list .ant-list-item-content-single{max-width:100%}.extraImg{width:155px;margin-top:-20px;text-align:center}.extraImg img{width:100%}.newButton{width:100%;height:201px;color:rgba(0,0,0,.45);background-color:#fff;border-color:#d9d9d9}.cardAvatar{width:48px;height:48px;border-radius:48px}.cardDescription{position:relative;max-height:4.5em;margin-right:-1em;padding-right:1em;overflow:hidden;line-height:1.5em;text-align:justify}.cardDescription::before{position:absolute;right:14px;bottom:0;padding:0 1px;background:#fff;content:'...'}.cardDescription::after{position:absolute;right:14px;width:1em;height:1em;margin-top:.2em;background:#fff;content:''}.pageHeaderContent__b__1{position:relative}.contentLink{margin-top:16px}.contentLink a{margin-right:32px}.contentLink a img{width:24px}.contentLink img{margin-right:8px;vertical-align:middle}@media screen and (max-width:992px){.contentLink a{margin-right:16px}}@media screen and (max-width:768px){.extraImg{display:none}}@media screen and (max-width:576px){.pageHeaderContent__b__1{padding-bottom:30px}.contentLink{position:absolute;bottom:-4px;left:0;width:1000px}.contentLink a{margin-right:16px}.contentLink img{margin-right:4px}}.main__b__3 .ant-descriptions-row>td{padding-bottom:8px}.main__b__3 .ant-page-header-heading-extra{flex-direction:column}.headerList{margin-bottom:4px}.headerList .ant-descriptions-row>td{padding-bottom:8px}.headerList .stepDescription{position:relative;left:38px;padding-top:8px;font-size:14px;text-align:left}.headerList .stepDescription>div{margin-top:8px;margin-bottom:4px}.pageHeader .ant-page-header-heading-extra>*+*{margin-left:8px}.pageHeader .moreInfo{display:flex;justify-content:space-between;width:200px}@media screen and (max-width:576px){.stepDescription{left:8px}.pageHeader .ant-pro-page-header-wrap-row{flex-direction:column}}.title{margin-bottom:16px;color:rgba(0,0,0,.85);font-weight:500;font-size:16px}.error_icon{color:#ff4d4f}.title__b__0{margin-bottom:16px;color:rgba(0,0,0,.85);font-weight:500;font-size:16px}.title__b__1{position:relative;color:rgba(0,0,0,.85);font-size:12px;text-align:center}.head-title{margin-bottom:20px;color:rgba(0,0,0,.85);font-weight:500px;font-size:16px}.main__b__0{width:368px;margin:0 auto}@media screen and (max-width:576px){.main__b__0{width:95%}}.main__b__0 .login :global .ant-tabs .ant-tabs-bar{margin-bottom:24px;text-align:center;border-bottom:0}.main__b__0 .login .getCaptcha{display:block;width:100%}.main__b__0 .login .icon{color:#1890ff}.main__b__0 .login .other{margin-top:24px;line-height:22px;text-align:left}.main__b__0 .login .other .icon{margin-left:16px;color:rgba(0,0,0,.45);font-size:24px;vertical-align:middle;cursor:pointer;transition:color .3s}.main__b__0 .login .other .icon:hover{color:#1890ff}.main__b__0 .login .other .register{float:right}.main__b__0 .login .prefixIcon{color:rgba(0,0,0,.25);font-size:14px}.main__b__0 .login .submit{width:100%;margin-top:24px}.main__b__1{width:368px;margin:0 auto}.main__b__1 h3{margin-bottom:20px;font-size:16px}.main__b__1 .password{margin-bottom:24px}.main__b__1 .password :global .ant-form-item-explain{display:none}.main__b__1 .getCaptcha{display:block;width:100%}.main__b__1 .submit{width:50%}.main__b__1 .login{float:right;line-height:40px}.error,.success,.warning{transition:color .3s}.success{color:#52c41a}.warning{color:#faad14}.error{color:#ff4d4f}.progress-pass>.progress :global .ant-progress-bg{background-color:#faad14}.registerResult{width:800px;min-height:400px;margin:auto;padding:80px;background:0 0}.registerResult :global .anticon{font-size:64px}.registerResult .title{margin-top:32px;font-size:20px;line-height:28px}.registerResult .actions{margin-top:40px}.registerResult .actions a+a{margin-left:8px}.baseView{display:flex;padding-top:12px}.baseView :global .ant-legacy-form-item .ant-legacy-form-item-control-wrapper{width:100%}.baseView .left{min-width:224px;max-width:448px}.baseView .right__b__1{flex:1;padding-left:104px}.baseView .right__b__1 .avatar_title{height:22px;margin-bottom:8px;color:rgba(0,0,0,.85);font-size:14px;line-height:22px}.baseView .right__b__1 .avatar{width:144px;height:144px;margin-bottom:12px;overflow:hidden}.baseView .right__b__1 .avatar img{width:100%}.baseView .right__b__1 .button_view{width:144px;text-align:center}@media screen and (max-width:1200px){.baseView{flex-direction:column-reverse}.baseView .right__b__1{display:flex;flex-direction:column;align-items:center;max-width:448px;padding:20px}.baseView .right__b__1 .avatar_title{display:none}}.row .item{width:50%;max-width:220px}.row .item:first-child{width:calc(50% - 8px);margin-right:8px}@media screen and (max-width:576px){.item:first-child{margin:0;margin-bottom:8px}}.area_code{width:30%;max-width:128px;margin-right:8px}.phone_number{width:calc(70% - 8px);max-width:312px}.filterCardList .ant-card-meta-content{margin-top:0}.filterCardList .ant-card-meta-avatar{font-size:0}.filterCardList .ant-list .ant-list-item-content-single{max-width:100%}.filterCardList .cardInfo{margin-top:16px;margin-left:40px;zoom:1}.filterCardList .cardInfo::after,.filterCardList .cardInfo::before{display:table;content:' '}.filterCardList .cardInfo::after{clear:both;height:0;font-size:0;visibility:hidden}.filterCardList .cardInfo>div{position:relative;float:left;width:50%;text-align:left}.filterCardList .cardInfo>div p{margin:0;font-size:24px;line-height:32px}.filterCardList .cardInfo>div p:first-child{margin-bottom:4px;color:rgba(0,0,0,.45);font-size:12px;line-height:20px}a.listItemMetaTitle{color:rgba(0,0,0,.85)}.listItemExtra{width:272px;height:1px}.selfTrigger{margin-left:12px}@media screen and (max-width:480px){.selfTrigger{display:block;margin-left:0}}@media screen and (max-width:768px){.selfTrigger{display:block;margin-left:0}}@media screen and (max-width:992px){.listItemExtra{width:0;height:1px}}.filterCardList{margin-bottom:-24px}.filterCardList :global .ant-card-meta-content{margin-top:0}.filterCardList :global .ant-card-meta-avatar{font-size:0}.filterCardList :global .ant-list .ant-list-item-content-single{max-width:100%}.filterCardList .cardInfo{margin-top:16px;margin-left:40px;zoom:1}.filterCardList .cardInfo::after,.filterCardList .cardInfo::before{display:table;content:' '}.filterCardList .cardInfo::after{clear:both;height:0;font-size:0;visibility:hidden}.filterCardList .cardInfo>div{position:relative;float:left;width:50%;text-align:left}.filterCardList .cardInfo>div p{margin:0;font-size:24px;line-height:32px}.filterCardList .cardInfo>div p:first-child{margin-bottom:4px;color:rgba(0,0,0,.45);font-size:12px;line-height:20px}.listContent .description{max-width:720px;line-height:22px}.listContent .extra{margin-top:16px;color:rgba(0,0,0,.45);line-height:22px}.listContent .extra>:global(.ant-avatar){position:relative;top:1px;width:20px;height:20px;margin-right:8px;vertical-align:top}.listContent .extra>em{margin-left:16px;color:rgba(0,0,0,.25);font-style:normal}@media screen and (max-width:480px){.listContent .extra>em{display:block;margin-top:8px;margin-left:0}}.articleList :global .ant-list-item:first-child{padding-top:0}a.listItemMetaTitle{color:rgba(0,0,0,.85)}.avatarList{display:inline-block}.avatarList ul{display:inline-block;margin-left:8px;font-size:0}.avatarItem{display:inline-block;width:32px;height:32px;margin-left:-8px;font-size:14px}.avatarItem :global .ant-avatar{border:1px solid #d9d9d9}.avatarItemLarge{width:40px;height:40px}.avatarItemSmall{width:24px;height:24px}.avatarItemMini{width:20px;height:20px}.avatarItemMini :global .ant-avatar{width:20px;height:20px;line-height:20px}.avatarItemMini :global .ant-avatar .ant-avatar-string{font-size:12px;line-height:18px}.coverCardList .card .ant-card-meta-title{margin-bottom:4px}.coverCardList .card .ant-card-meta-title>a{display:inline-block;max-width:100%;color:rgba(0,0,0,.85)}.coverCardList .card .ant-card-meta-description{height:44px;overflow:hidden;line-height:22px}.coverCardList .card:hover .ant-card-meta-title>a{color:#1890ff}.coverCardList .cardItemContent{display:flex;height:20px;margin-top:16px;margin-bottom:-4px;line-height:20px}.coverCardList .cardItemContent>span{flex:1;color:rgba(0,0,0,.45);font-size:12px}.coverCardList .cardItemContent .avatarList{flex:0 1 auto}.coverCardList .cardList{margin-top:24px}.coverCardList .ant-list .ant-list-item-content-single{max-width:100%}.miniChart{position:relative;width:100%}.miniChart .chartContent{position:absolute;bottom:-28px;width:100%}.miniChart .chartContent>div{margin:0 -5px;overflow:hidden}.miniChart .chartLoading{position:absolute;top:16px;left:50%;margin-left:-7px}.numberInfo .suffix{margin-left:4px;color:rgba(0,0,0,.85);font-size:16px;font-style:normal}.numberInfo .numberInfoTitle{margin-bottom:16px;color:rgba(0,0,0,.85);font-size:16px;transition:all .3s}.numberInfo .numberInfoSubTitle{height:22px;overflow:hidden;color:rgba(0,0,0,.45);font-size:14px;line-height:22px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.numberInfo .numberInfoValue{margin-top:4px;overflow:hidden;font-size:0;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.numberInfo .numberInfoValue>span{display:inline-block;height:32px;margin-right:32px;color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.numberInfo .numberInfoValue .subTotal{margin-right:0;color:rgba(0,0,0,.45);font-size:16px;vertical-align:top}.numberInfo .numberInfoValue .subTotal .anticon{margin-left:4px;font-size:12px;transform:scale(.82)}.numberInfo .numberInfoValue .subTotal :global .anticon-caret-up{color:#f5222d}.numberInfo .numberInfoValue .subTotal :global .anticon-caret-down{color:#52c41a}.numberInfolight .numberInfoValue>span{color:rgba(0,0,0,.85)}.trendItem{display:inline-block;font-size:14px;line-height:22px}.trendItem .down,.trendItem .up{position:relative;top:1px;margin-left:4px}.trendItem .down span,.trendItem .up span{font-size:12px;transform:scale(.83)}.trendItem .up{color:#f5222d}.trendItem .down{top:-1px;color:#52c41a}.trendItem.trendItemGrey .down,.trendItem.trendItemGrey .up{color:rgba(0,0,0,.85)}.trendItem.reverseColor .up{color:#52c41a}.trendItem.reverseColor .down{color:#f5222d}.activeChart{position:relative}.activeChartGrid p{position:absolute;top:80px}.activeChartGrid p:last-child{top:115px}.activeChartLegend{position:relative;height:20px;margin-top:8px;font-size:0;line-height:20px}.activeChartLegend span{display:inline-block;width:33.33%;font-size:12px;text-align:center}.activeChartLegend span:first-child{text-align:left}.activeChartLegend span:last-child{text-align:right}.dashedLine{position:relative;top:-70px;left:-3px;height:1px}.dashedLine .line{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(to right,transparent 50%,#e9e9e9 50%);background-size:6px}.dashedLine:last-child{top:-36px}.linkGroup{padding:20px 0 8px 24px;font-size:0}.linkGroup>a{display:inline-block;width:25%;margin-bottom:13px;color:rgba(0,0,0,.85);font-size:14px}.linkGroup>a:hover{color:#1890ff}.radar .legend{margin-top:16px}.radar .legend .legendItem{position:relative;color:rgba(0,0,0,.45);line-height:22px;text-align:center;cursor:pointer}.radar .legend .legendItem p{margin:0}.radar .legend .legendItem h6{margin-top:4px;margin-bottom:0;padding-left:16px;color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.radar .legend .legendItem::after{position:absolute;top:8px;right:0;width:1px;height:40px;background-color:#f0f0f0;content:''}.radar .legend>:last-child .legendItem::after{display:none}.radar .legend .dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:6px}.stepForm{max-width:500px;margin:40px auto 0}.stepFormText{margin-bottom:24px}.stepFormText :global .ant-form-item-control,.stepFormText :global .ant-form-item-label{line-height:22px}.result{max-width:560px;margin:0 auto;padding:24px 0 8px}.desc{padding:0 56px;color:rgba(0,0,0,.45)}.desc h3{margin:0 0 12px 0;color:rgba(0,0,0,.45);font-size:16px;line-height:32px}.desc h4{margin:0 0 4px 0;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.desc p{margin-top:0;margin-bottom:12px;line-height:22px}@media screen and (max-width:768px){.desc{padding:0}}.information{line-height:22px}.information :global .ant-row:not(:last-child){margin-bottom:24px}.information .label{padding-right:8px;color:rgba(0,0,0,.85);text-align:right}@media screen and (max-width:576px){.information .label{text-align:left}}.money{font-weight:500;font-size:20px;font-family:'Helvetica Neue',sans-serif;line-height:14px}.uppercase{font-size:12px}.stepForm{max-width:500px;margin:40px auto 0}.stepFormText{margin-bottom:24px}.stepFormText :global .ant-form-item-control,.stepFormText :global .ant-form-item-label{line-height:22px}.result{max-width:560px;margin:0 auto;padding:24px 0 8px}.desc{padding:0 56px;color:rgba(0,0,0,.45)}.desc h3{margin:0 0 12px 0;color:rgba(0,0,0,.45);font-size:16px;line-height:32px}.desc h4{margin:0 0 4px 0;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.desc p{margin-top:0;margin-bottom:12px;line-height:22px}@media screen and (max-width:768px){.desc{padding:0}}.information{line-height:22px}.information :global .ant-row:not(:last-child){margin-bottom:24px}.information .label{padding-right:8px;color:rgba(0,0,0,.85);text-align:right}@media screen and (max-width:576px){.information .label{text-align:left}}.money{font-weight:500;font-size:20px;font-family:'Helvetica Neue',sans-serif;line-height:14px}.uppercase{font-size:12px}.stepForm{max-width:500px;margin:40px auto 0}.stepFormText{margin-bottom:24px}.stepFormText :global .ant-form-item-control,.stepFormText :global .ant-form-item-label{line-height:22px}.result{max-width:560px;margin:0 auto;padding:24px 0 8px}.desc{padding:0 56px;color:rgba(0,0,0,.45)}.desc h3{margin:0 0 12px 0;color:rgba(0,0,0,.45);font-size:16px;line-height:32px}.desc h4{margin:0 0 4px 0;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.desc p{margin-top:0;margin-bottom:12px;line-height:22px}@media screen and (max-width:768px){.desc{padding:0}}.information{line-height:22px}.information :global .ant-row:not(:last-child){margin-bottom:24px}.information .label{padding-right:8px;color:rgba(0,0,0,.85);text-align:right}@media screen and (max-width:576px){.information .label{text-align:left}}.uppercase{font-size:12px}.chartCard{position:relative}.chartCard .chartTop{position:relative;width:100%;overflow:hidden}.chartCard .chartTopMargin{margin-bottom:12px}.chartCard .chartTopHasMargin{margin-bottom:20px}.chartCard .metaWrap{float:left}.chartCard .avatar{position:relative;top:4px;float:left;margin-right:20px}.chartCard .avatar img{border-radius:100%}.chartCard .meta{height:22px;color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.chartCard .action{position:absolute;top:4px;right:0;line-height:1;cursor:pointer}.chartCard .total{height:38px;margin-top:4px;margin-bottom:0;overflow:hidden;color:rgba(0,0,0,.85);font-size:30px;line-height:38px;white-space:nowrap;text-overflow:ellipsis;word-break:break-all}.chartCard .content{position:relative;width:100%;margin-bottom:12px}.chartCard .contentFixed{position:absolute;bottom:0;left:0;width:100%}.chartCard .footer{margin-top:8px;padding-top:9px;border-top:1px solid #f0f0f0}.chartCard .footer>*{position:relative}.chartCard .footerMargin{margin-top:20px}.field{margin:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.field .label,.field .number{font-size:14px;line-height:22px}.field .number{margin-left:8px;color:rgba(0,0,0,.85)}.miniProgress{position:relative;width:100%;padding:5px 0}.miniProgress .progressWrap{position:relative;background-color:#f5f5f5}.miniProgress .progress{width:0;height:100%;background-color:#1890ff;border-radius:1px 0 0 1px;transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.miniProgress .target{position:absolute;top:0;bottom:0;z-index:9;width:20px}.miniProgress .target span{position:absolute;top:0;left:0;width:2px;height:4px;border-radius:100px}.miniProgress .target span:last-child{top:auto;bottom:0}.pie{position:relative}.pie .chart{position:relative}.pie.hasLegend .chart{width:calc(100% - 240px)}.pie .legend{position:absolute;top:50%;right:0;min-width:200px;margin:0 20px;padding:0;list-style:none;transform:translateY(-50%)}.pie .legend li{height:22px;margin-bottom:16px;line-height:22px;cursor:pointer}.pie .legend li:last-child{margin-bottom:0}.pie .dot{position:relative;top:-1px;display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:8px}.pie .line{display:inline-block;width:1px;height:16px;margin-right:8px;background-color:#f0f0f0}.pie .legendTitle{color:rgba(0,0,0,.85)}.pie .percent{color:rgba(0,0,0,.45)}.pie .value{position:absolute;right:0}.pie .title{margin-bottom:8px}.pie .total{position:absolute;top:50%;left:50%;max-height:62px;text-align:center;transform:translate(-50%,-50%)}.pie .total>h4{height:22px;margin-bottom:8px;color:rgba(0,0,0,.45);font-weight:400;font-size:14px;line-height:22px}.pie .total>p{display:block;height:32px;color:rgba(0,0,0,.85);font-size:1.2em;line-height:32px;white-space:nowrap}.legendBlock.hasLegend .chart{width:100%;margin:0 0 32px 0}.legendBlock .legend{position:relative;transform:none}.tagCloud{overflow:hidden}.tagCloud canvas{transform-origin:0 0}.timelineChart{background:#fff}.waterWave{position:relative;display:inline-block;transform-origin:left}.waterWave .text{position:absolute;top:32px;left:0;width:100%;text-align:center}.waterWave .text span{color:rgba(0,0,0,.45);font-size:14px;line-height:22px}.waterWave .text h4{color:rgba(0,0,0,.85);font-size:24px;line-height:32px}.waterWave .waterWaveCanvasWrapper{transform:scale(.5);transform-origin:0 0}.standardFormRow{display:flex;width:100%;margin-bottom:16px;padding-bottom:16px;border-bottom:1px dashed #f0f0f0}.standardFormRow .ant-form-item,.standardFormRow .ant-legacy-form-item{margin-right:24px}.standardFormRow .ant-form-item-label label,.standardFormRow .ant-legacy-form-item-label label{margin-right:0;color:rgba(0,0,0,.85)}.standardFormRow .ant-form-item-control,.standardFormRow .ant-form-item-label,.standardFormRow .ant-legacy-form-item-control,.standardFormRow .ant-legacy-form-item-label{padding:0;line-height:32px}.standardFormRow .label{flex:0 0 auto;margin-right:24px;color:rgba(0,0,0,.85);font-size:14px;text-align:right}.standardFormRow .label>span{display:inline-block;height:32px;line-height:32px}.standardFormRow .label>span::after{content:':'}.standardFormRow .content{flex:1 1 0}.standardFormRow .content :global .ant-form-item:last-child,.standardFormRow .content :global .ant-legacy-form-item:last-child{display:block;margin-right:0}.standardFormRowLast{margin-bottom:0;padding-bottom:0;border:none}.standardFormRowBlock :global .ant-form-item,.standardFormRowBlock :global .ant-legacy-form-item,.standardFormRowBlock :global div.ant-form-item-control-wrapper,.standardFormRowBlock :global div.ant-legacy-form-item-control-wrapper{display:block}.standardFormRowGrid .ant-form-item,.standardFormRowGrid .ant-legacy-form-item,.standardFormRowGrid div.ant-form-item-control-wrapper,.standardFormRowGrid div.ant-legacy-form-item-control-wrapper{display:block}.standardFormRowGrid .ant-form-item-label,.standardFormRowGrid .ant-legacy-form-item-label{float:left}.tagSelect{position:relative;max-height:32px;margin-left:-8px;overflow:hidden;line-height:32px;transition:all .3s;user-select:none}.tagSelect .ant-tag{margin-right:24px;padding:0 8px;font-size:14px}.tagSelect.expanded{max-height:200px;transition:all .3s}.tagSelect .trigger{position:absolute;top:0;right:0}.tagSelect .trigger span.anticon{font-size:12px}.tagSelect.hasExpandTag{padding-right:50px} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/activities.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/activities.json new file mode 100644 index 00000000..e8282eba --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/activities.json @@ -0,0 +1,100 @@ +[ + { + "id": "trend-1", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Qu Lili", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png" + }, + "group": { + "name": "Highly Compelling Design Team", + "link": "http://github.com/" + }, + "project": { + "name": "June Version", + "link": "http://github.com/" + }, + "template": "created a new project in @{group} @{project}" + }, + { + "id": "trend-2", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Fu Xiaoxiao", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/cnrhVkzwxjPwAaCfPbdc.png" + }, + "group": { + "name": "Highly Compelling Design Team", + "link": "http://github.com/" + }, + "project": { + "name": "June Version", + "link": "http://github.com/" + }, + "template": "created a new project in @{group} @{project}" + }, + { + "id": "trend-3", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Lin Dongdong", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/gaOngJwsRYRaVAuXXcmB.png" + }, + "group": { + "name": "Second Girls Group", + "link": "http://github.com/" + }, + "project": { + "name": "June Version", + "link": "http://github.com/" + }, + "template": "created a new project in @{group} @{project}" + }, + { + "id": "trend-4", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Zhou Xingxing", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/WhxKECPNujWoWEFNdnJE.png" + }, + "project": { + "name": "Daily iteration in May", + "link": "http://github.com/" + }, + "template": "updated @{project} to the published state" + }, + { + "id": "trend-5", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Zhu", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ubnKSIfAJTxIgXOKlciN.png" + }, + "project": { + "name": "Engineering Efficiency", + "link": "http://github.com/" + }, + "comment": { + "name": "Leave a message", + "link": "http://github.com/" + }, + "template": "posted a @{comment} on @{project}" + }, + { + "id": "trend-6", + "updatedAt": "2020-08-26T10:21:19.719Z", + "user": { + "name": "Le Brother", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/jZUIxmJycoymBprLOUbT.png" + }, + "group": { + "name": "Programmers Daily", + "link": "http://github.com/" + }, + "project": { + "name": "Brand Iteration", + "link": "http://github.com/" + }, + "template": "created a new project in @{group} @{project}" + } +] \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/advanced.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/advanced.json new file mode 100644 index 00000000..382a9184 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/advanced.json @@ -0,0 +1,64 @@ +{ + "advancedOperation1": [ + { + "key": "op1", + "type": "Ordering relationship takes effect", + "name": "Qu Lili", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "-" + }, + { + "key": "op2", + "type": "Financial Review", + "name": "Fu Xiaoxiao", + "status": "reject", + "updatedAt": "2017-10-03 19:23:12", + "memo": "Not passing the reason" + }, + { + "key": "op3", + "type": "Departmental preliminary review", + "name": "Zhou Maomao", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "-" + }, + { + "key": "op4", + "type": "Submit Order", + "name": "Lin Dongdong", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "很棒" + }, + { + "key": "op5", + "type": "Create Order", + "name": "Sweaty", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "-" + } + ], + "advancedOperation2": [ + { + "key": "op1", + "type": "Order relationship takes effect", + "name": "Qu Lili", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "-" + } + ], + "advancedOperation3": [ + { + "key": "op1", + "type": "Create Order", + "name": "Sweat tooth", + "status": "agree", + "updatedAt": "2017-10-03 19:23:12", + "memo": "-" + } + ] +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/basic.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/basic.json new file mode 100644 index 00000000..7d2aa3b7 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/basic.json @@ -0,0 +1,78 @@ +{ + "basicGoods": [ + { + "id": "1234561", + "name": "Mineral Water 550ml", + "barcode": "12421432143214321", + "price": "2.00", + "num": "1", + "amount": "2.00" + }, + { + "id": "1234562", + "name": "Herbal tea 300ml", + "barcode": "12421432143214322", + "price": "3.00", + "num": "2", + "amount": "6.00" + }, + { + "id": "1234563", + "name": "Delicious potato chips", + "barcode": "12421432143214323", + "price": "7.00", + "num": "4", + "amount": "28.00" + }, + { + "id": "1234564", + "name": "Specially delicious egg rolls", + "barcode": "12421432143214324", + "price": "8.50", + "num": "3", + "amount": "25.50" + } + ], + "basicProgress": [ + { + "key": "1", + "time": "2017-10-01 14:10", + "rate": "Contact Clients", + "status": "Processing", + "operator": "Pickup Assistant ID1234", + "cost": "5mins" + }, + { + "key": "2", + "time": "2017-10-01 14:05", + "rate": "Pickup Guy Departs", + "status": "Success", + "operator": "Pickup Assistant ID1234", + "cost": "1h" + }, + { + "key": "3", + "time": "2017-10-01 13:05", + "rate": "Pick-up person takes orders", + "status": "Success", + "operator": "Pickup Assistant ID1234", + "cost": "5mins" + }, + { + "key": "4", + "time": "2017-10-01 13:00", + "rate": "Apply For Approval", + "status": "Success", + "operator": "system", + "cost": "1h" + }, + { + "key": "5", + "time": "2017-10-01 12:00", + "rate": "Initiated a Return Request", + "status": "Success", + "operator": "user", + "cost": "5mins" + } + ] +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/current_user.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/current_user.json new file mode 100644 index 00000000..6a0949d6 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/current_user.json @@ -0,0 +1,50 @@ +{ + "name": "Serati Ma", + "avatar": "https://gw.alipayobjects.com/zos/antfincdn/XAosXuNZyF/BiazfanxmamNRoxxVxka.png", + "userid": "00000001", + "email": "antdesign@alipay.com", + "signature": "Be tolerant to diversity, tolerance is a virtue", + "title": "Interaction Expert", + "group": "Ant Financial Services-XX Business Group-XX Platform Department-XX Technology Department-UED", + "tags": [ + { + "key": "0", + "label": "Very thoughtful" + }, + { + "key": "1", + "label": "Focus on Design" + }, + { + "key": "2", + "label": "Spicy ~" + }, + { + "key": "3", + "label": "Long legs" + }, + { + "key": "4", + "label": "Chuan Meizi" + }, + { + "key": "5", + "label": "Have inclusive of all rivers" + } + ], + "notifyCount": 12, + "unreadCount": 11, + "country": "China", + "geographic": { + "province": { + "label": "Zhejiang Province", + "key": "330000" + }, + "city": { + "label": "Hangzhou City", + "key": "330100" + } + }, + "address": "77 Gongzhuan Road, Xihu District", + "phone": "0752-268888888" +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_chart_data.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_chart_data.json new file mode 100644 index 00000000..5c3214d7 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_chart_data.json @@ -0,0 +1,799 @@ +{ + "visitData": [ + { + "x": "2020-08-25", + "y": 7 + }, + { + "x": "2020-08-26", + "y": 5 + }, + { + "x": "2020-08-27", + "y": 4 + }, + { + "x": "2020-08-28", + "y": 2 + }, + { + "x": "2020-08-29", + "y": 4 + }, + { + "x": "2020-08-30", + "y": 7 + }, + { + "x": "2020-08-31", + "y": 5 + }, + { + "x": "2020-09-01", + "y": 6 + }, + { + "x": "2020-09-02", + "y": 5 + }, + { + "x": "2020-09-03", + "y": 9 + }, + { + "x": "2020-09-04", + "y": 6 + }, + { + "x": "2020-09-05", + "y": 3 + }, + { + "x": "2020-09-06", + "y": 1 + }, + { + "x": "2020-09-07", + "y": 5 + }, + { + "x": "2020-09-08", + "y": 3 + }, + { + "x": "2020-09-09", + "y": 6 + }, + { + "x": "2020-09-10", + "y": 5 + } + ], + "visitData2": [ + { + "x": "2020-08-25", + "y": 1 + }, + { + "x": "2020-08-26", + "y": 6 + }, + { + "x": "2020-08-27", + "y": 4 + }, + { + "x": "2020-08-28", + "y": 8 + }, + { + "x": "2020-08-29", + "y": 3 + }, + { + "x": "2020-08-30", + "y": 7 + }, + { + "x": "2020-08-31", + "y": 2 + } + ], + "salesData": [ + { + "x": "January", + "y": 1003 + }, + { + "x": "February", + "y": 878 + }, + { + "x": "March", + "y": 408 + }, + { + "x": "April", + "y": 426 + }, + { + "x": "May", + "y": 357 + }, + { + "x": "June", + "y": 1056 + }, + { + "x": "July", + "y": 369 + }, + { + "x": "August", + "y": 284 + }, + { + "x": "September", + "y": 1173 + }, + { + "x": "October", + "y": 639 + }, + { + "x": "November", + "y": 1117 + }, + { + "x": "December", + "y": 512 + } + ], + "searchData": [ + { + "index": 1, + "keyword": "Search Keyword-0", + "count": 190, + "range": 64, + "status": 1 + }, + { + "index": 2, + "keyword": "Search Keyword-1", + "count": 347, + "range": 19, + "status": 0 + }, + { + "index": 3, + "keyword": "Search Keyword-2", + "count": 314, + "range": 35, + "status": 1 + }, + { + "index": 4, + "keyword": "Search Keyword-3", + "count": 81, + "range": 59, + "status": 1 + }, + { + "index": 5, + "keyword": "Search Keyword-4", + "count": 235, + "range": 16, + "status": 1 + }, + { + "index": 6, + "keyword": "Search Keyword-5", + "count": 834, + "range": 46, + "status": 0 + }, + { + "index": 7, + "keyword": "Search Keyword-6", + "count": 806, + "range": 45, + "status": 1 + }, + { + "index": 8, + "keyword": "Search Keywords-7", + "count": 116, + "range": 96, + "status": 1 + }, + { + "index": 9, + "keyword": "Search Keyword-8", + "count": 355, + "range": 44, + "status": 1 + }, + { + "index": 10, + "keyword": "Search keyword-9", + "count": 903, + "range": 91, + "status": 0 + }, + { + "index": 11, + "keyword": "Search Keyword-10", + "count": 411, + "range": 64, + "status": 0 + }, + { + "index": 12, + "keyword": "Search Keyword-11", + "count": 266, + "range": 15, + "status": 1 + }, + { + "index": 13, + "keyword": "Search Keywords-12", + "count": 163, + "range": 59, + "status": 1 + }, + { + "index": 14, + "keyword": "Search Keyword-13", + "count": 815, + "range": 30, + "status": 1 + }, + { + "index": 15, + "keyword": "Search keyword-14", + "count": 130, + "range": 35, + "status": 1 + }, + { + "index": 16, + "keyword": "Search Keyword-15", + "count": 342, + "range": 8, + "status": 1 + }, + { + "index": 17, + "keyword": "Search Keyword-16", + "count": 970, + "range": 90, + "status": 1 + }, + { + "index": 18, + "keyword": "Search Keyword-17", + "count": 613, + "range": 24, + "status": 0 + }, + { + "index": 19, + "keyword": "Search Keyword-18", + "count": 807, + "range": 23, + "status": 1 + }, + { + "index": 20, + "keyword": "Search Keyword-19", + "count": 480, + "range": 21, + "status": 1 + }, + { + "index": 21, + "keyword": "Search Keyword-20", + "count": 57, + "range": 82, + "status": 0 + }, + { + "index": 22, + "keyword": "Search Keyword-21", + "count": 513, + "range": 89, + "status": 0 + }, + { + "index": 23, + "keyword": "Search Keyword-22", + "count": 733, + "range": 62, + "status": 1 + }, + { + "index": 24, + "keyword": "Search Keyword-23", + "count": 887, + "range": 82, + "status": 1 + }, + { + "index": 25, + "keyword": "Search Keyword-24", + "count": 668, + "range": 9, + "status": 0 + }, + { + "index": 26, + "keyword": "Search Keyword-25", + "count": 398, + "range": 99, + "status": 1 + }, + { + "index": 27, + "keyword": "Search Keyword-26", + "count": 73, + "range": 48, + "status": 1 + }, + { + "index": 28, + "keyword": "Search Keyword-27", + "count": 63, + "range": 53, + "status": 1 + }, + { + "index": 29, + "keyword": "Search Keywords-28", + "count": 23, + "range": 32, + "status": 1 + }, + { + "index": 30, + "keyword": "Search Keywords-29", + "count": 650, + "range": 48, + "status": 0 + }, + { + "index": 31, + "keyword": "Search Keyword-30", + "count": 752, + "range": 13, + "status": 1 + }, + { + "index": 32, + "keyword": "Search Keyword-31", + "count": 571, + "range": 0, + "status": 0 + }, + { + "index": 33, + "keyword": "Search Keyword-32", + "count": 778, + "range": 33, + "status": 1 + }, + { + "index": 34, + "keyword": "Search Keyword-33", + "count": 537, + "range": 1, + "status": 1 + }, + { + "index": 35, + "keyword": "Search keyword -34", + "count": 467, + "range": 17, + "status": 0 + }, + { + "index": 36, + "keyword": "Search keyword -35", + "count": 106, + "range": 72, + "status": 0 + }, + { + "index": 37, + "keyword": "Search keyword -36", + "count": 984, + "range": 67, + "status": 0 + }, + { + "index": 38, + "keyword": "Search key word -37", + "count": 850, + "range": 7, + "status": 1 + }, + { + "index": 39, + "keyword": "Search Keyword-38", + "count": 475, + "range": 46, + "status": 1 + }, + { + "index": 40, + "keyword": "Search Keyword-39", + "count": 943, + "range": 38, + "status": 0 + }, + { + "index": 41, + "keyword": "Search Keyword-40", + "count": 915, + "range": 37, + "status": 1 + }, + { + "index": 42, + "keyword": "Search Keyword-41", + "count": 852, + "range": 67, + "status": 0 + }, + { + "index": 43, + "keyword": "Search Keyword-42", + "count": 21, + "range": 29, + "status": 1 + }, + { + "index": 44, + "keyword": "Search Keyword-43", + "count": 224, + "range": 25, + "status": 0 + }, + { + "index": 45, + "keyword": "Search Keyword-44", + "count": 904, + "range": 23, + "status": 0 + }, + { + "index": 46, + "keyword": "Search Keyword-45", + "count": 240, + "range": 39, + "status": 0 + }, + { + "index": 47, + "keyword": "Search Keyword-46", + "count": 735, + "range": 33, + "status": 0 + }, + { + "index": 48, + "keyword": "Search Keyword-47", + "count": 612, + "range": 15, + "status": 1 + }, + { + "index": 49, + "keyword": "Search Keyword-48", + "count": 877, + "range": 62, + "status": 1 + }, + { + "index": 50, + "keyword": "Search Keyword-49", + "count": 146, + "range": 48, + "status": 1 + } + ], + "offlineData": [ + { + "name": "Stores 0", + "cvr": 0.8 + }, + { + "name": "Stores 1", + "cvr": 0.7 + }, + { + "name": "Stores 2", + "cvr": 0.4 + }, + { + "name": "Stores 3", + "cvr": 0.3 + }, + { + "name": "Stores 4", + "cvr": 0.1 + }, + { + "name": "Stores 5", + "cvr": 0.1 + }, + { + "name": "Stores 6", + "cvr": 0.6 + }, + { + "name": "Stores 7", + "cvr": 0.9 + }, + { + "name": "Stores 8", + "cvr": 0.3 + }, + { + "name": "Stores 9", + "cvr": 0.9 + } + ], + "offlineChartData": [ + { + "x": 1598358002462, + "y1": 63, + "y2": 21 + }, + { + "x": 1598359802462, + "y1": 50, + "y2": 73 + }, + { + "x": 1598361602462, + "y1": 35, + "y2": 99 + }, + { + "x": 1598363402462, + "y1": 105, + "y2": 105 + }, + { + "x": 1598365202462, + "y1": 86, + "y2": 22 + }, + { + "x": 1598367002462, + "y1": 90, + "y2": 47 + }, + { + "x": 1598368802462, + "y1": 41, + "y2": 44 + }, + { + "x": 1598370602462, + "y1": 71, + "y2": 16 + }, + { + "x": 1598372402462, + "y1": 63, + "y2": 72 + }, + { + "x": 1598374202462, + "y1": 95, + "y2": 35 + }, + { + "x": 1598376002462, + "y1": 14, + "y2": 54 + }, + { + "x": 1598377802462, + "y1": 48, + "y2": 65 + }, + { + "x": 1598379602462, + "y1": 84, + "y2": 28 + }, + { + "x": 1598381402462, + "y1": 41, + "y2": 74 + }, + { + "x": 1598383202462, + "y1": 37, + "y2": 38 + }, + { + "x": 1598385002462, + "y1": 106, + "y2": 94 + }, + { + "x": 1598386802462, + "y1": 70, + "y2": 53 + }, + { + "x": 1598388602462, + "y1": 48, + "y2": 89 + }, + { + "x": 1598390402462, + "y1": 60, + "y2": 12 + }, + { + "x": 1598392202462, + "y1": 48, + "y2": 52 + } + ], + "salesTypeData": [ + { + "x": "Household Appliance", + "y": 4544 + }, + { + "x": "Food and Drink", + "y": 3321 + }, + { + "x": "Personal Health", + "y": 3113 + }, + { + "x": "Clothing bags", + "y": 2341 + }, + { + "x": "Maternal and Child Products", + "y": 1231 + }, + { + "x": "other", + "y": 1231 + } + ], + "salesTypeDataOnline": [ + { + "x": "Household Appliances", + "y": 244 + }, + { + "x": "Eating wine", + "y": 321 + }, + { + "x": "Note Health", + "y": 311 + }, + { + "x": "Clothing Bags", + "y": 41 + }, + { + "x": "Mother and Baby Products", + "y": 121 + }, + { + "x": "other", + "y": 111 + } + ], + "salesTypeDataOffline": [ + { + "x": "Household Appliances", + "y": 99 + }, + { + "x": "Food and Drink", + "y": 188 + }, + { + "x": "Personal Health", + "y": 344 + }, + { + "x": "Clothing Bags", + "y": 255 + }, + { + "x": "other", + "y": 65 + } + ], + "radarData": [ + { + "name": "personal", + "label": "Quote", + "value": 10 + }, + { + "name": "personal", + "label": "Word of mouth", + "value": 8 + }, + { + "name": "personal", + "label": "Yield", + "value": 4 + }, + { + "name": "personal", + "label": "contribution", + "value": 5 + }, + { + "name": "personal", + "label": "heat", + "value": 7 + }, + { + "name": "team", + "label": "Quote", + "value": 3 + }, + { + "name": "team", + "label": "Word of mouth", + "value": 9 + }, + { + "name": "team", + "label": "Yield", + "value": 6 + }, + { + "name": "team", + "label": "contribution", + "value": 3 + }, + { + "name": "team", + "label": "heat", + "value": 1 + }, + { + "name": "department", + "label": "Quote", + "value": 4 + }, + { + "name": "department", + "label": "Word of mouth", + "value": 1 + }, + { + "name": "department", + "label": "Yield", + "value": 6 + }, + { + "name": "department", + "label": "contribution", + "value": 5 + }, + { + "name": "department", + "label": "heat", + "value": 7 + } + ] +} \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_list.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_list.json new file mode 100644 index 00000000..c7c44b40 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/fake_list.json @@ -0,0 +1,762 @@ +[ + { + "id": "fake-list-0", + "owner": "Fu Xiaoxiao", + "title": "Alipay", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/uMfMFlvUuceEyPpotzlq.png", + "status": "active", + "percent": 61, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "href": "https://ant.design", + "updatedAt": 1599562134333, + "createdAt": 1599562134333, + "subDescription": "It's an inner thing, which they can't reach and can't reach", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 194692, + "newUser": 1107, + "star": 168, + "like": 166, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-1", + "owner": "Qu Lili", + "title": "Angular", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iZBVOIhGJiAnhplqjvZW.png", + "status": "exception", + "percent": 67, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "href": "https://ant.design", + "updatedAt": 1599554934333, + "createdAt": 1599554934333, + "subDescription": "Hope is a good thing, maybe the best, good things will not die out", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 187530, + "newUser": 1662, + "star": 184, + "like": 134, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-2", + "owner": "Lin Dongdong", + "title": "Ant Design", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iXjVmWVHbCJAyqvDxdtx.png", + "status": "normal", + "percent": 88, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "href": "https://ant.design", + "updatedAt": 1599547734333, + "createdAt": 1599547734333, + "subDescription": "Life is like a box of chocolates, the results are often unexpected", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 150552, + "newUser": 1281, + "star": 114, + "like": 124, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-3", + "owner": "Zhou Xingxing", + "title": "Ant Design Pro", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png", + "status": "active", + "percent": 59, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "href": "https://ant.design", + "updatedAt": 1599540534333, + "createdAt": 1599540534333, + "subDescription": "There are so many pubs in the town, but she just walked into my pub", + "description": "In the development process of middle and Taiwan products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 180730, + "newUser": 1941, + "star": 109, + "like": 120, + "message": 13, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-4", + "owner": "Wu Jiahao", + "title": "Bootstrap", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png", + "status": "exception", + "percent": 83, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png", + "href": "https://ant.design", + "updatedAt": 1599533334333, + "createdAt": 1599533334333, + "subDescription": "At that time I only thought about what I wanted, never wanted what I had", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 159357, + "newUser": 1067, + "star": 139, + "like": 179, + "message": 14, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-5", + "owner": "Zhu Fang You", + "title": "React", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iXjVmWVHbCJAyqvDxdtx.png", + "status": "normal", + "percent": 92, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png", + "href": "https://ant.design", + "updatedAt": 1599526134333, + "createdAt": 1599526134333, + "subDescription": "It's an inner thing, which they can't reach and can't reach", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 126480, + "newUser": 1467, + "star": 151, + "like": 171, + "message": 11, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-6", + "owner": "Fish Sauce", + "title": "Vue", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iZBVOIhGJiAnhplqjvZW.png", + "status": "active", + "percent": 62, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png", + "href": "https://ant.design", + "updatedAt": 1599518934333, + "createdAt": 1599518934333, + "subDescription": "Hope is a good thing, maybe the best, good things will not die out", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 132662, + "newUser": 1788, + "star": 114, + "like": 115, + "message": 14, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-7", + "owner": "Le Brother", + "title": "Webpack", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/uMfMFlvUuceEyPpotzlq.png", + "status": "exception", + "percent": 98, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png", + "href": "https://ant.design", + "updatedAt": 1599511734333, + "createdAt": 1599511734333, + "subDescription": "Life is like a box of chocolates, the results are often unexpected", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 190515, + "newUser": 1329, + "star": 105, + "like": 192, + "message": 11, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-8", + "owner": "Tan Xiaoyi", + "title": "Alipay", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/uMfMFlvUuceEyPpotzlq.png", + "status": "normal", + "percent": 73, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "href": "https://ant.design", + "updatedAt": 1599504534333, + "createdAt": 1599504534333, + "subDescription": "There are so many pubs in the town, but she just walked into my pub", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 146120, + "newUser": 1375, + "star": 144, + "like": 114, + "message": 14, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-9", + "owner": "Zhong Ni", + "title": "Angular", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iZBVOIhGJiAnhplqjvZW.png", + "status": "active", + "percent": 86, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "href": "https://ant.design", + "updatedAt": 1599497334333, + "createdAt": 1599497334333, + "subDescription": "At that time I only thought about what I wanted, never wanted what I had", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 150379, + "newUser": 1405, + "star": 174, + "like": 123, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-10", + "owner": "Fu Xiaoxiao", + "title": "Ant Design", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iXjVmWVHbCJAyqvDxdtx.png", + "status": "exception", + "percent": 99, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "href": "https://ant.design", + "updatedAt": 1599490134333, + "createdAt": 1599490134333, + "subDescription": "It's an inner thing, which they can't reach and can't reach", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 192197, + "newUser": 1748, + "star": 200, + "like": 141, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-11", + "owner": "Qu Lili", + "title": "Ant Design Pro", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png", + "status": "normal", + "percent": 55, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "href": "https://ant.design", + "updatedAt": 1599482934333, + "createdAt": 1599482934333, + "subDescription": "Hope is a good thing, maybe the best, good things will not die out", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 125408, + "newUser": 1937, + "star": 158, + "like": 183, + "message": 17, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-12", + "owner": "Lin Dongdong", + "title": "Bootstrap", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png", + "status": "active", + "percent": 62, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png", + "href": "https://ant.design", + "updatedAt": 1599475734333, + "createdAt": 1599475734333, + "subDescription": "Life is like a box of chocolates, the results are often unexpected", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 150702, + "newUser": 1303, + "star": 143, + "like": 101, + "message": 20, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-13", + "owner": "Zhou Xingxing", + "title": "React", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iXjVmWVHbCJAyqvDxdtx.png", + "status": "exception", + "percent": 87, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png", + "href": "https://ant.design", + "updatedAt": 1599468534333, + "createdAt": 1599468534333, + "subDescription": "There are so many pubs in the town, but she just walked into my pub", + "description": "In the development process of middle and Taiwan products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 106681, + "newUser": 1051, + "star": 124, + "like": 194, + "message": 17, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-14", + "owner": "Wu Jiahao", + "title": "Vue", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iZBVOIhGJiAnhplqjvZW.png", + "status": "normal", + "percent": 74, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png", + "href": "https://ant.design", + "updatedAt": 1599461334333, + "createdAt": 1599461334333, + "subDescription": "At that time I only thought about what I wanted, never wanted what I had", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 192810, + "newUser": 1574, + "star": 188, + "like": 124, + "message": 16, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-15", + "owner": "Zhu Fang You", + "title": "Webpack", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/uMfMFlvUuceEyPpotzlq.png", + "status": "active", + "percent": 58, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png", + "href": "https://ant.design", + "updatedAt": 1599454134333, + "createdAt": 1599454134333, + "subDescription": "It's an inner thing, which they can't reach and can't reach", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 129396, + "newUser": 1837, + "star": 106, + "like": 160, + "message": 13, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-16", + "owner": "Fish sauce", + "title": "Alipay", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/uMfMFlvUuceEyPpotzlq.png", + "status": "exception", + "percent": 77, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "href": "https://ant.design", + "updatedAt": 1599446934333, + "createdAt": 1599446934333, + "subDescription": "Hope is a good thing, maybe the best, good things will not die out", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 101826, + "newUser": 1050, + "star": 124, + "like": 111, + "message": 12, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-17", + "owner": "Le brother", + "title": "Angular", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iZBVOIhGJiAnhplqjvZW.png", + "status": "normal", + "percent": 79, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "href": "https://ant.design", + "updatedAt": 1599439734333, + "createdAt": 1599439734333, + "subDescription": "Life is like a box of chocolates, the results are often unexpected", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 156853, + "newUser": 1826, + "star": 118, + "like": 136, + "message": 19, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Na", + "id": "member3" + } + ] + }, + { + "id": "fake-list-18", + "owner": "Tan Xiaoyi", + "title": "Ant Design", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/iXjVmWVHbCJAyqvDxdtx.png", + "status": "active", + "percent": 77, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "href": "https://ant.design", + "updatedAt": 1599432534333, + "createdAt": 1599432534333, + "subDescription": "There are so many pubs in the town, but she just walked into my pub", + "description": "In the development process of Zhongtai products, different design specifications and implementation methods will appear, but there are often many similar pages and components, and these similar components will be separated into a set of standard specifications.", + "activeUser": 101902, + "newUser": 1352, + "star": 131, + "like": 118, + "message": 12, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + }, + { + "id": "fake-list-19", + "owner": "Zoni", + "title": "Ant Design Pro", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "cover": "https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png", + "status": "exception", + "percent": 75, + "logo": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "href": "https://ant.design", + "updatedAt": 1599425334333, + "createdAt": 1599425334333, + "subDescription": "At that time I only thought about what I wanted, never wanted what I had", + "description": "Different design specifications and implementations in the research and development of the MTD product, but there are often many similar pages and components, which will be detached into a standard specification.", + "activeUser": 125791, + "newUser": 1504, + "star": 174, + "like": 195, + "message": 17, + "content": "Paragraph: Ant.design, the design platform of Ant Financial, seamlessly connects to the ecosystem of Ant Financial with minimal workload, and provides experience solutions that span design and development. Ant.design, the design platform of Ant Financial, uses the smallestWorkload, seamless access to Ant Financial's ecology, providing experience solutions that span design and development.", + "members": [ + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png", + "name": "Qu Lili", + "id": "member1" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png", + "name": "Wang Zhaojun", + "id": "member2" + }, + { + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png", + "name": "Dong Nana", + "id": "member3" + } + ] + } +] \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/menu.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/menu.json new file mode 100644 index 00000000..8bed17b5 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/menu.json @@ -0,0 +1,170 @@ +[ + { + "path": "/dashboard", + "name": "Dashboard", + "key": "dashboard", + "icon": "dashboard", + "children": [ + { + "path": "/", + "name": "Analysis Page", + "key": "dashboard.analysis" + }, + { + "path": "/dashboard/monitor", + "name": "Monitoring Page", + "key": "dashboard.monitor" + }, + { + "path": "/dashboard/workplace", + "name": "Workbench", + "key": "dashboard.workplace" + } + ] + }, + { + "path": "/form", + "name": "Form page", + "key": "form", + "icon": "form", + "children": [ + { + "path": "/form/basic-form", + "name": "Basic Form", + "key": "form.basic-form" + }, + { + "path": "/form/step-form", + "name": "Step Form", + "key": "form.step-form" + }, + { + "path": "/form/advanced-form", + "name": "Advanced Form", + "key": "form.advanced-form" + } + ] + }, + { + "path": "/list", + "name": "List", + "key": "list", + "icon": "table", + "children": [ + { + "path": "/list/search", + "name": "Search List", + "key": "list.search", + "children": [ + { + "path": "/list/search/articles", + "name": "Search List (Article)", + "key": "list.search.articles" + }, + { + "path": "/list/search/projects", + "name": "Search List (Items)", + "key": "list.search.projects" + }, + { + "path": "/list/search/applications", + "name": "Search List (Application)", + "key": "list.search.applications" + } + ] + }, + { + "path": "/list/table-list", + "name": "Inquiry Form", + "key": "list.table-list" + }, + { + "path": "/list/basic-list", + "name": "Basic List", + "key": "list.basic-list" + }, + { + "path": "/list/card-list", + "name": "Card List", + "key": "list.card-list" + } + ] + }, + { + "path": "/profile", + "name": "Profile", + "key": "profile", + "icon": "profile", + "children": [ + { + "path": "/profile/basic", + "name": "Basic Profile", + "key": "profile.basic" + }, + { + "path": "/profile/advanced", + "name": "Advanced Profile", + "key": "profile.advanced" + } + ] + }, + { + "path": "/result", + "name": "Result Pages", + "key": "result", + "icon": "check-circle", + "children": [ + { + "path": "/result/success", + "name": "Success Page", + "key": "result.success" + }, + { + "path": "/result/fail", + "name": "Failed page", + "key": "result.fail" + } + ] + }, + { + "path": "/exception", + "name": "Error Pages", + "key": "exception", + "icon": "exception", + "children": [ + { + "path": "/exception/403", + "name": "403", + "key": "exception.403" + }, + { + "path": "/exception/404", + "name": "404", + "key": "exception.404" + }, + { + "path": "/exception/500", + "name": "500", + "key": "exception.500" + } + ] + }, + { + "path": "/account", + "name": "Account", + "key": "account", + "icon": "user", + "children": [ + { + "path": "/account/center", + "name": "Account Center", + "key": "account.center" + }, + { + "path": "/account/settings", + "name": "Personal settings", + "key": "account.settings" + } + ] + } +] \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notice.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notice.json new file mode 100644 index 00000000..8fd7b4a3 --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notice.json @@ -0,0 +1,62 @@ +[ + { + "id": "xxx1", + "title": "Alipay", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png", + "description": "It's an inner thing, which they can't reach and can't reach", + "updatedAt": "2020-08-26T10:21:19.719Z", + "member": "Scientific Moving Brick Group", + "href": "", + "memberLink": "" + }, + { + "id": "xxx2", + "title": "Angular", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png", + "description": "Hope is a good thing, maybe the best, good things will not die out", + "updatedAt": "2017-07-24T00:00:00.000Z", + "member": "The whole group is Wu Yanzu", + "href": "", + "memberLink": "" + }, + { + "id": "xxx3", + "title": "Ant Design", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png", + "description": "There are so many pubs in the town, but she just walked into my pub", + "updatedAt": "2020-08-26T10:21:19.719Z", + "member": "Second Girl Group", + "href": "", + "memberLink": "" + }, + { + "id": "xxx4", + "title": "Ant Design Pro", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png", + "description": "At that time I only thought about what I wanted, never wanted what I had", + "updatedAt": "2017-07-23T00:00:00.000Z", + "member": "Programmer's Daily", + "href": "", + "memberLink": "" + }, + { + "id": "xxx5", + "title": "Bootstrap", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png", + "description": "Shiver", + "updatedAt": "2017-07-23T00:00:00.000Z", + "member": "Highly Compelling Design Sky Mission", + "href": "", + "memberLink": "" + }, + { + "id": "xxx6", + "title": "React", + "logo": "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png", + "description": "Life is like a box of chocolates, the results are often unexpected", + "updatedAt": "2017-07-23T00:00:00.000Z", + "member": "Lie to you to learn computer", + "href": "", + "memberLink": "" + } +] \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notices.json b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notices.json new file mode 100644 index 00000000..8f8efe3b --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/data/notices.json @@ -0,0 +1,97 @@ +[ + { + "id": "000000001", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png", + "title": "You have received 14 new weekly reports", + "datetime": "2017-08-09", + "type": "notification" + }, + { + "id": "000000002", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png", + "title":"The Qu Nini you recommended has passed the third round of interview", + "datetime": "2017-08-08", + "type": "notification" + }, + { + "id": "000000003", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/kISTdvpyTAhtGxpovNWd.png", + "title": "This template can distinguish multiple notification types", + "datetime": "2017-08-07", + "read": true, + "type": "notification" + }, + { + "id": "000000004", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/GvqBnKhFgObvnSGkDsje.png", + "title": "The icon on the left is used to distinguish different types", + "datetime": "2017-08-07", + "type": "notification" + }, + { + "id": "000000005", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png", + "title": "The content should not exceed two lines, and it will be automatically truncated when exceeded", + "datetime": "2017-08-07", + "type": "notification" + }, + { + "id": "000000006", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg", + "title": "Qu Lili commented on you", + "description": "Description information description information description information", + "datetime": "2017-08-07", + "type": "message", + "clickClose": true + }, + { + "id": "000000007", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg", + "title": "Zhu Fangyou replied to you", + "description": "This template is used to remind who has interacted with you, put the avatar of 'who' on the left", + "datetime": "2017-08-07", + "type": "message", + "clickClose": true + }, + { + "id": "000000008", + "avatar": "https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg", + "title": "Title", + "description": "This template is used to remind who has interacted with you, put the avatar of 'who' on the left", + "datetime": "2017-08-07", + "type": "message", + "clickClose": true + }, + { + "id": "000000009", + "title": "Task Name", + "description": "The task needs to be started before 20:00 on 2017-01-12", + "extra": "has not started", + "status": "todo", + "type": "event" + }, + { + "id": "000000010", + "title": "Emergency third-party code changes", + "description": "Guan Lin is submitted to 2017-01-06, you need to complete the code change task before 2017-01-07", + "extra": "Expiring soon", + "status": "urgent", + "type": "event" + }, + { + "id": "000000011", + "title": "Information Security Exam", + "description": "Assign Zhuer to complete the update and release before 2017-01-09", + "extra": "It took 8 days", + "status": "doing", + "type": "event" + }, + { + "id": "000000012", + "title": "ABCD Version release", + "description": "Guanlin submitted on 2017-01-06, the code change task must be completed before 2017-01-07", + "extra": "processing", + "status": "processing", + "type": "event" + } +] \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/index.html b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/index.html new file mode 100644 index 00000000..e922057d --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/index.html @@ -0,0 +1,209 @@ + + + + + + + + + + + Ant Design Pro Blazor + + + + + + + + + +
+ +
+ logo +
+
+ +
+
+
+ + Ant Design Blazor +
+
+
+ + + + + + + + \ No newline at end of file diff --git a/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/pro_icon.svg b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/pro_icon.svg new file mode 100644 index 00000000..e075b78d --- /dev/null +++ b/aspnet-core/services/src/CompanyName.ProjectName.Blazor.Layout.AntDesignTheme/wwwroot/pro_icon.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file