diff --git a/src/backend/NetAdmin.AdmServer.Host/settings.json b/src/backend/NetAdmin.AdmServer.Host/settings.json index 542a2b66..44762fdf 100644 --- a/src/backend/NetAdmin.AdmServer.Host/settings.json +++ b/src/backend/NetAdmin.AdmServer.Host/settings.json @@ -8,9 +8,9 @@ "Description": "NetAdmin - 系统组件", }, { - "Group": "Biz", - "Title": "业务服务", - "Description": "NetAdmin - 业务服务", + "Group": "Adm", + "Title": "管理服务", + "Description": "NetAdmin - 管理服务", }, { "Group": "Tpl", diff --git a/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteImmutableEntity.cs b/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteImmutableEntity.cs index 35b9f491..4c730a0e 100644 --- a/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteImmutableEntity.cs +++ b/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteImmutableEntity.cs @@ -19,7 +19,7 @@ public abstract record LiteImmutableEntity : LiteImmutableEntity public abstract record LiteImmutableEntity : EntityBase, IFieldPrimary, IFieldCreatedTime { /// - [Column(ServerTime = DateTimeKind.Utc, CanUpdate = false, Position = -1)] + [Column(ServerTime = DateTimeKind.Local, CanUpdate = false, Position = -1)] [JsonIgnore] public virtual DateTime CreatedTime { get; init; } diff --git a/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteMutableEntity.cs b/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteMutableEntity.cs index 8bdaed84..f8c45272 100644 --- a/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteMutableEntity.cs +++ b/src/backend/NetAdmin.Domain/DbMaps/Dependency/LiteMutableEntity.cs @@ -22,7 +22,7 @@ public abstract record LiteMutableEntity : LiteImmutableEntity, IFieldModi public override T Id { get; init; } /// - [Column(ServerTime = DateTimeKind.Utc, CanInsert = false, Position = -1)] + [Column(ServerTime = DateTimeKind.Local, CanInsert = false, Position = -1)] [JsonIgnore] public virtual DateTime? ModifiedTime { get; init; } } \ No newline at end of file diff --git a/src/backend/NetAdmin.Host/Extensions/ServiceCollectionExtensions.cs b/src/backend/NetAdmin.Host/Extensions/ServiceCollectionExtensions.cs index a1669723..cdd1954b 100644 --- a/src/backend/NetAdmin.Host/Extensions/ServiceCollectionExtensions.cs +++ b/src/backend/NetAdmin.Host/Extensions/ServiceCollectionExtensions.cs @@ -6,6 +6,7 @@ using NetAdmin.Host.Utils; using StackExchange.Redis; using Yitter.IdGenerator; using FreeSqlBuilder = NetAdmin.Infrastructure.Utils.FreeSqlBuilder; + #if DEBUG using Spectre.Console; #endif diff --git a/src/backend/NetAdmin.Host/Utils/SqlAuditor.cs b/src/backend/NetAdmin.Host/Utils/SqlAuditor.cs index 10882051..7af371e7 100644 --- a/src/backend/NetAdmin.Host/Utils/SqlAuditor.cs +++ b/src/backend/NetAdmin.Host/Utils/SqlAuditor.cs @@ -25,7 +25,7 @@ public sealed class SqlAuditor : ISingleton public SqlAuditor(ILogger logger) { // 设置服务器时间偏差 - _timeOffset = DateTime.UtcNow.Subtract(App.GetService().Ado.QuerySingle(() => DateTime.UtcNow)); + _timeOffset = DateTime.Now.Subtract(App.GetService().Ado.QuerySingle(() => DateTime.Now)); logger.Info($"{Ln.数据库服务器时钟偏移} {_timeOffset}"); } diff --git a/src/backend/NetAdmin.Infrastructure/commonSettings.json b/src/backend/NetAdmin.Infrastructure/commonSettings.json index d4131ff2..bc42a27a 100644 --- a/src/backend/NetAdmin.Infrastructure/commonSettings.json +++ b/src/backend/NetAdmin.Infrastructure/commonSettings.json @@ -56,10 +56,10 @@ "RoutePrefix": "swagger", "XmlComments": [ "FreeSql.xml", - "NetAdmin.Application.xml", "NetAdmin.AdmServer.Application.xml", "NetAdmin.AdmServer.Cache.xml", "NetAdmin.AdmServer.Host.xml", + "NetAdmin.Application.xml", "NetAdmin.Cache.xml", "NetAdmin.Domain.xml", "NetAdmin.Host.xml", diff --git a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/JobService.cs b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/JobService.cs index 9966c2a8..d66aaf17 100644 --- a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/JobService.cs +++ b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/JobService.cs @@ -112,7 +112,7 @@ public sealed class JobService(DefaultRepository rpo, IJobRecordService Filters = [ new DynamicFilterInfo { Field = nameof(QueryJobReq.NextExecTime) - , Value = DateTime.UtcNow + , Value = DateTime.Now , Operator = DynamicFilterOperators.LessThan } , new DynamicFilterInfo { @@ -139,7 +139,7 @@ public sealed class JobService(DefaultRepository rpo, IJobRecordService ? null : await UpdateAsync(job.Adapt() with { Status = JobStatues.Running - , LastExecTime = DateTime.UtcNow + , LastExecTime = DateTime.Now }) .ConfigureAwait(false); } @@ -239,7 +239,8 @@ public sealed class JobService(DefaultRepository rpo, IJobRecordService private static DateTime? GetNextExecTime(string cron) { return CronExpression.Parse(cron, CronFormat.IncludeSeconds) - .GetNextOccurrence(DateTime.UtcNow, TimeZoneInfo.Utc); + .GetNextOccurrence(DateTime.UtcNow, TimeZoneInfo.Local) + ?.ToLocalTime(); } private ISelect QueryInternal(QueryReq req) diff --git a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/ToolsService.cs b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/ToolsService.cs index fcbe441c..cd5f547b 100644 --- a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/ToolsService.cs +++ b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/ToolsService.cs @@ -32,7 +32,7 @@ public sealed class ToolsService : ServiceBase, IToolsService /// public Task GetServerUtcTimeAsync() { - return Task.FromResult(DateTime.UtcNow); + return Task.FromResult(DateTime.Now); } /// diff --git a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/VerifyCodeService.cs b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/VerifyCodeService.cs index af50d1f5..bed29e43 100644 --- a/src/backend/NetAdmin.SysComponent.Application/Services/Sys/VerifyCodeService.cs +++ b/src/backend/NetAdmin.SysComponent.Application/Services/Sys/VerifyCodeService.cs @@ -107,7 +107,7 @@ public sealed class VerifyCodeService(DefaultRepository rpo, IEv #if !DEBUG // 有发送记录,且小于1分钟,不允许 - if (lastSent != null && (DateTime.UtcNow - lastSent.CreatedTime).TotalMinutes < 1) { + if (lastSent != null && (DateTime.Now - lastSent.CreatedTime).TotalMinutes < 1) { throw new NetAdminInvalidOperationException(Ln._1分钟内只能发送1次); } #endif @@ -152,7 +152,7 @@ public sealed class VerifyCodeService(DefaultRepository rpo, IEv var lastSent = await GetLastSentAsync(req.DestDevice).ConfigureAwait(false); if (lastSent is not { Status: VerifyCodeStatues.Sent } || req.Code != lastSent.Code || - (DateTime.UtcNow - lastSent.CreatedTime).TotalMinutes > 10) { + (DateTime.Now - lastSent.CreatedTime).TotalMinutes > 10) { return false; } @@ -188,8 +188,11 @@ public sealed class VerifyCodeService(DefaultRepository rpo, IEv private ISelect QueryInternal(QueryReq req) { var ret = Rpo.Select.WhereDynamicFilter(req.DynamicFilter).WhereDynamic(req.Filter); - if (req.Order == Orders.Random) { - return ret.OrderByRandom(); + switch (req.Order) { + case Orders.None: + return ret; + case Orders.Random: + return ret.OrderByRandom(); } ret = ret.OrderByPropertyNameIf(req.Prop?.Length > 0, req.Prop, req.Order == Orders.Ascending);