diff --git a/src/blazor/admin/BootstrapAdmin.DataAccess.PetaPoco/Services/DictService.cs b/src/blazor/admin/BootstrapAdmin.DataAccess.PetaPoco/Services/DictService.cs index 74421a41..3fbcbc7c 100644 --- a/src/blazor/admin/BootstrapAdmin.DataAccess.PetaPoco/Services/DictService.cs +++ b/src/blazor/admin/BootstrapAdmin.DataAccess.PetaPoco/Services/DictService.cs @@ -305,4 +305,20 @@ class DictService : IDict } public bool SaveAppOAuthLogin(bool value) => SaveDict(new Dict { Category = "网站设置", Name = "OAuth 认证登录", Code = value ? "1" : "0" }); + + public bool GetAutoLockScreen() + { + var dicts = GetAll(); + return dicts.FirstOrDefault(s => s.Category == "网站设置" && s.Name == "自动锁屏" && s.Define == EnumDictDefine.System)?.Code == "1" ? true : false; + } + + public bool SaveAutoLockScreen(bool value) => SaveDict(new Dict { Category = "网站设置", Name = "自动锁屏", Code = value ? "1" : "0" }); + + public string? GetAutoLockScreenInterval() + { + var dicts = GetAll(); + return dicts.FirstOrDefault(s => s.Category == "网站设置" && s.Name == "自动锁屏时长" && s.Define == EnumDictDefine.System)?.Code; + } + + public bool SaveAutoLockScreenInterval(string value) => SaveDict(new Dict { Category = "网站设置", Name = "自动锁屏时长", Code = value }); } diff --git a/src/blazor/admin/BootstrapAdmin.Web.Core/IDict.cs b/src/blazor/admin/BootstrapAdmin.Web.Core/IDict.cs index 287fe652..523e58c5 100644 --- a/src/blazor/admin/BootstrapAdmin.Web.Core/IDict.cs +++ b/src/blazor/admin/BootstrapAdmin.Web.Core/IDict.cs @@ -240,4 +240,28 @@ public interface IDict /// /// bool SaveAppOAuthLogin(bool value); + + /// + /// 是否开启自动锁屏设置 + /// + /// + bool GetAutoLockScreen(); + + /// + /// 保存自动锁屏设置 + /// + /// + bool SaveAutoLockScreen(bool value); + + /// + /// 获得自动锁屏间隔时间 + /// + /// + string? GetAutoLockScreenInterval(); + + /// + /// 保存自动锁屏间隔时间 + /// + /// + bool SaveAutoLockScreenInterval(string value); } diff --git a/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor b/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor index 7272f1a1..b9a7bc38 100644 --- a/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor +++ b/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor @@ -41,3 +41,8 @@ + +@if (Lock) +{ + +} diff --git a/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor.cs b/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor.cs index 87ad38a9..61f22872 100644 --- a/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor.cs +++ b/src/blazor/admin/BootstrapAdmin.Web/Shared/MainLayout.razor.cs @@ -50,6 +50,10 @@ namespace BootstrapAdmin.Web.Shared private string? UserName { get; set; } + private bool Lock { get; set; } + + private string? LockInterval { get; set; } + [NotNull] private string? Icon { get; set; } @@ -77,6 +81,8 @@ namespace BootstrapAdmin.Web.Shared Footer = DictsService.GetWebFooter(); string GetIcon(string icon) => icon.Contains("://", StringComparison.OrdinalIgnoreCase) ? icon : string.Format("{0}{1}", DictsService.GetIconFolderPath(), icon); + Lock = DictsService.GetAutoLockScreen(); + LockInterval = DictsService.GetAutoLockScreenInterval(); } private Task OnAuthorizing(string url) => SecurityService.AuhorizingNavigation(Context.UserName, url);