diff --git a/Admin.NET/Admin.NET.Core/Proxy/IProxyManager.cs b/Admin.NET/Admin.NET.Core/Proxy/IProxyManager.cs deleted file mode 100644 index 15fd0555..00000000 --- a/Admin.NET/Admin.NET.Core/Proxy/IProxyManager.cs +++ /dev/null @@ -1,31 +0,0 @@ -// // Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 -// // -// // 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。 -// // -// // 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任! -// -// using System.Net; -// -// namespace Admin.NET.Core; -// -// /// -// /// 代理管理器接口 -// /// -// public interface IProxyManager -// { -// /// -// /// 获取当前代理 -// /// -// WebProxy GetCurrentProxy(); -// -// /// -// /// 刷新代理 -// /// -// Task RefreshProxiesAsync(); -// -// /// -// /// 获取所有代理 -// /// -// /// -// List GetAllProxies(); -// } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Proxy/ProxyManager.cs b/Admin.NET/Admin.NET.Core/Proxy/ProxyManager.cs deleted file mode 100644 index 25f79fa1..00000000 --- a/Admin.NET/Admin.NET.Core/Proxy/ProxyManager.cs +++ /dev/null @@ -1,106 +0,0 @@ -// // Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 -// // -// // 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。 -// // -// // 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任! -// -// using System.Net; -// -// namespace Admin.NET.Core; -// -// /// -// /// 代理管理器 -// /// -// public class ProxyManager : IProxyManager, IDisposable, ITransient -// { -// private List _proxies = new(); -// -// private readonly HttpRemotesOptions _options; -// private readonly object _lock = new(); -// private readonly Timer _refreshTimer; -// private int _currentIndex = 0; -// -// public ProxyManager(IOptions options) -// { -// _options = options.Value; -// -// // 启动后立即加载一次 -// RefreshProxiesAsync().Wait(); -// -// // 每 24 小时刷新一次(可改为每天固定时间) -// _refreshTimer = new Timer(async _ => await RefreshProxiesAsync(), -// null, TimeSpan.FromHours(24), TimeSpan.FromHours(24)); -// } -// -// public async Task RefreshProxiesAsync() -// { -// try -// { -// var newProxies = await FetchProxiesFromRemoteAsync(); -// if (newProxies != null && newProxies.Any()) -// { -// lock (_lock) -// { -// _proxies = newProxies -// .Select(p => new WebProxy(_options.Proxy.Address) -// { -// Credentials = !string.IsNullOrEmpty(_options.Proxy.Account) -// ? new NetworkCredential(_options.Proxy.Account, _options.Proxy.Password) -// : null -// }) -// .ToList(); -// _currentIndex = 0; // 重置索引 -// } -// Console.WriteLine($"✅ 代理列表已刷新,共 {_proxies.Count} 个代理"); -// } -// } -// catch (Exception ex) -// { -// Console.WriteLine($"❌ 刷新代理列表失败: {ex.Message}"); -// } -// } -// -// private async Task> FetchProxiesFromRemoteAsync() -// { -// // 示例:从远程 API 获取代理 -// using var client = new HttpClient(); -// var response = await client.GetAsync("https://your-proxy-api.com/daily"); -// if (response.IsSuccessStatusCode) -// { -// var json = await response.Content.ReadAsStringAsync(); -// return JsonSerializer.Deserialize>(json, -// new JsonSerializerOptions { PropertyNameCaseInsensitive = true }); -// } -// -// // 可替换为数据库、文件、Redis 等来源 -// return new List -// { -// new() { Address = "http://proxy1:8080", Username = "user", Password = "pass" }, -// new() { Address = "http://proxy2:8080" }, -// }; -// } -// -// public WebProxy GetCurrentProxy() -// { -// lock (_lock) -// { -// if (!_proxies.Any()) return null; -// var proxy = _proxies[_currentIndex % _proxies.Count]; -// _currentIndex = (_currentIndex + 1) % _proxies.Count; -// return proxy; -// } -// } -// -// public List GetAllProxies() -// { -// lock (_lock) -// { -// return new List(_proxies); -// } -// } -// -// public void Dispose() -// { -// _refreshTimer?.Dispose(); -// } -// } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/Common/SysCommonService.cs b/Admin.NET/Admin.NET.Core/Service/Common/SysCommonService.cs index da13eb7e..5650c010 100644 --- a/Admin.NET/Admin.NET.Core/Service/Common/SysCommonService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Common/SysCommonService.cs @@ -179,7 +179,7 @@ public class SysCommonService : IDynamicApiController, ITransient { if (item.Children is { Count: > 0 }) queue.EnqueueRange(item.Children); else apiList.Add(item.Route); - item = queue.Count > 0 ? queue.Dequeue() : null; + item = queue.Count > 0 ? queue.Dequeue() : null; } return apiList; } diff --git a/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs b/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs index ec436def..b5f84a23 100644 --- a/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs @@ -395,7 +395,6 @@ public class SysRoleService : IDynamicApiController, ITransient //return roleApis.Union(roleButtons).ToList(); } - /// /// 获取用户接口集合 /// @@ -415,7 +414,7 @@ public class SysRoleService : IDynamicApiController, ITransient { if (item.Children is { Count: > 0 }) queue.EnqueueRange(item.Children); else apiList.Add(item.Route); - item = queue.Count > 0 ? queue.Dequeue() : null; + item = queue.Count > 0 ? queue.Dequeue() : null; } } else diff --git a/Admin.NET/Admin.NET.Core/Utils/LazyHelper.cs b/Admin.NET/Admin.NET.Core/Utils/LazyHelper.cs index 0c9ec2d5..d6fb725a 100644 --- a/Admin.NET/Admin.NET.Core/Utils/LazyHelper.cs +++ b/Admin.NET/Admin.NET.Core/Utils/LazyHelper.cs @@ -1,4 +1,4 @@ -// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 +// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 // // 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。 // diff --git a/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs b/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs index fba8c9be..47f50c3b 100644 --- a/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs +++ b/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs @@ -6,7 +6,6 @@ using Admin.NET.Core; using Admin.NET.Core.Service; -using Furion; using Furion.Authorization; using Furion.DataEncryption; using Microsoft.AspNetCore.Authorization; diff --git a/Web/package.json b/Web/package.json index 42b42ffd..71456b2c 100644 --- a/Web/package.json +++ b/Web/package.json @@ -2,7 +2,7 @@ "name": "admin.net.pro", "type": "module", "version": "2.4.33", - "lastBuildTime": "2025.08.31", + "lastBuildTime": "2025.09.01", "description": "Admin.NET 站在巨人肩膀上的 .NET 通用权限开发框架", "author": "zuohuaijun", "license": "MIT", @@ -81,8 +81,8 @@ "vue-router": "^4.5.1", "vue-signature-pad": "^3.0.2", "vue3-tree-org": "^4.2.2", - "vxe-pc-ui": "^4.9.10", - "vxe-table": "^4.16.2", + "vxe-pc-ui": "^4.9.11", + "vxe-table": "^4.16.3", "xe-utils": "^3.7.8", "xlsx-js-style": "^1.2.0" },