diff --git a/src/backend/NetAdmin/NetAdmin.Application/Services/RepositoryService.cs b/src/backend/NetAdmin/NetAdmin.Application/Services/RepositoryService.cs index e9aa66e8..ec261972 100644 --- a/src/backend/NetAdmin/NetAdmin.Application/Services/RepositoryService.cs +++ b/src/backend/NetAdmin/NetAdmin.Application/Services/RepositoryService.cs @@ -2,6 +2,7 @@ using CsvHelper; using Microsoft.Net.Http.Headers; using NetAdmin.Application.Repositories; using NetAdmin.Domain; +using NetAdmin.Domain.Contexts; using NetAdmin.Domain.DbMaps.Dependency; using NetAdmin.Domain.DbMaps.Dependency.Fields; using NetAdmin.Domain.Dto.Dependency; @@ -53,9 +54,7 @@ public abstract class RepositoryService(BasicReposit { var select = selector(query).WithNoLockNoWait().Take(Numbers.MAX_LIMIT_EXPORT); - object list = listExp == null - ? await select.ToListAsync().ConfigureAwait(false) - : await select.ToListAsync(listExp).ConfigureAwait(false); + object list = listExp == null ? await select.ToListAsync().ConfigureAwait(false) : await select.ToListAsync(listExp).ConfigureAwait(false); return await GetExportFileStreamAsync(fileName, list).ConfigureAwait(false); } @@ -135,6 +134,25 @@ public abstract class RepositoryService(BasicReposit return new FileStreamResult(stream, Chars.FLG_HTTP_HEADER_VALUE_APPLICATION_OCTET_STREAM); } + private static Dictionary IncludeToDictionary(TEntity entity, List includeFields) + { + var ret = includeFields!.ToDictionary( + x => x, x => typeof(TEntity).GetProperty(x, BindingFlags.Public | BindingFlags.Instance)!.GetValue(entity)); + if (entity is not IFieldModifiedUser) { + return ret; + } + + var userInfo = App.GetService(); + if (userInfo == null) { + return ret; + } + + ret.Add(nameof(IFieldModifiedUser.ModifiedUserId), userInfo.Id); + ret.Add(nameof(IFieldModifiedUser.ModifiedUserName), userInfo.UserName); + + return ret; + } + private IUpdate BuildUpdate(TEntity entity, List includeFields, List excludeFields, bool ignoreVersion) { IUpdate updateExp; @@ -145,9 +163,7 @@ public abstract class RepositoryService(BasicReposit } } else { - updateExp = Rpo.UpdateDiy.SetDto(includeFields!.ToDictionary( - x => x - , x => typeof(TEntity).GetProperty(x, BindingFlags.Public | BindingFlags.Instance)!.GetValue(entity))); + updateExp = Rpo.UpdateDiy.SetDto(IncludeToDictionary(entity, includeFields)); if (!ignoreVersion && entity is IFieldVersion ver) { updateExp = updateExp.Where($"{nameof(IFieldVersion.Version)} = {ver.Version}"); } diff --git a/src/backend/NetAdmin/NetAdmin.Domain/DbMaps/Dependency/MutableEntity.cs b/src/backend/NetAdmin/NetAdmin.Domain/DbMaps/Dependency/MutableEntity.cs index 81120cc3..7c76efed 100644 --- a/src/backend/NetAdmin/NetAdmin.Domain/DbMaps/Dependency/MutableEntity.cs +++ b/src/backend/NetAdmin/NetAdmin.Domain/DbMaps/Dependency/MutableEntity.cs @@ -47,7 +47,7 @@ public abstract record MutableEntity : LiteMutableEntity, IFieldCreatedUse [Column(CanInsert = false, Position = -1)] [CsvIgnore] [JsonIgnore] - public long? ModifiedUserId { get; init; } + public virtual long? ModifiedUserId { get; init; } /// /// 修改者用户名 @@ -55,5 +55,5 @@ public abstract record MutableEntity : LiteMutableEntity, IFieldCreatedUse [Column(DbType = Chars.FLG_DB_FIELD_TYPE_VARCHAR_31, CanInsert = false, Position = -1)] [CsvIgnore] [JsonIgnore] - public string ModifiedUserName { get; init; } + public virtual string ModifiedUserName { get; init; } } \ No newline at end of file diff --git a/src/backend/NetAdmin/NetAdmin.Host/Middlewares/SafetyShopHostMiddleware.cs b/src/backend/NetAdmin/NetAdmin.Host/Middlewares/SafetyShopHostMiddleware.cs index dc0a0ff6..3c26ca8f 100644 --- a/src/backend/NetAdmin/NetAdmin.Host/Middlewares/SafetyShopHostMiddleware.cs +++ b/src/backend/NetAdmin/NetAdmin.Host/Middlewares/SafetyShopHostMiddleware.cs @@ -27,9 +27,11 @@ public sealed class SafetyShopHostMiddleware(RequestDelegate next) public static void OnStopping() { Stop(); + #if !DEBUG while (Interlocked.Read(ref _connections) > 0) { Thread.Sleep(10); } + #endif } /// diff --git a/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj b/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj index ea6d9675..0dc79045 100644 --- a/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj +++ b/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj @@ -3,8 +3,8 @@ - - + + diff --git a/src/frontend/admin/src/components/scStatistic/index.vue b/src/frontend/admin/src/components/scStatistic/index.vue index 73106c3b..328bf618 100644 --- a/src/frontend/admin/src/components/scStatistic/index.vue +++ b/src/frontend/admin/src/components/scStatistic/index.vue @@ -60,7 +60,7 @@ export default { .sc-statistic-title { font-size: 0.9rem; color: var(--el-color-info); - margin-bottom: 1rem; + margin-bottom: 0.5rem; display: flex; align-items: center; } diff --git a/src/frontend/admin/src/views/sys/job/all/index.vue b/src/frontend/admin/src/views/sys/job/all/index.vue index 6713930f..6f39be83 100644 --- a/src/frontend/admin/src/views/sys/job/all/index.vue +++ b/src/frontend/admin/src/views/sys/job/all/index.vue @@ -48,7 +48,6 @@ } }) ?? []), ], - w100p: true, }, ]" :label-width="10" diff --git a/src/frontend/admin/src/views/sys/job/record/index.vue b/src/frontend/admin/src/views/sys/job/record/index.vue index 2e3b87c3..c3918616 100644 --- a/src/frontend/admin/src/views/sys/job/record/index.vue +++ b/src/frontend/admin/src/views/sys/job/record/index.vue @@ -30,7 +30,6 @@ } }) ?? []), ], - w100p: true, }, ]" :label-width="9" diff --git a/src/frontend/admin/src/views/sys/log/login/index.vue b/src/frontend/admin/src/views/sys/log/login/index.vue index 03372908..6c7eecc8 100644 --- a/src/frontend/admin/src/views/sys/log/login/index.vue +++ b/src/frontend/admin/src/views/sys/log/login/index.vue @@ -35,7 +35,6 @@ } }) ?? []), ], - w100p: true, }, { title: $t('登录用户名'), @@ -50,7 +49,6 @@ } }) ?? []), ], - w100p: true, }, { title: $t('客户端IP地址'), @@ -65,7 +63,6 @@ } }) ?? []), ], - w100p: true, }, ]" :label-width="10" diff --git a/src/frontend/admin/src/views/sys/log/operation/index.vue b/src/frontend/admin/src/views/sys/log/operation/index.vue index 38c48e26..4d3f2497 100644 --- a/src/frontend/admin/src/views/sys/log/operation/index.vue +++ b/src/frontend/admin/src/views/sys/log/operation/index.vue @@ -34,7 +34,6 @@ } }) ?? []), ], - w100p: true, }, { title: $t('请求服务'), @@ -51,7 +50,6 @@ } }) ?? []), ], - w100p: true, }, ]" :label-width="10" diff --git a/src/frontend/admin/src/views/sys/role/index.vue b/src/frontend/admin/src/views/sys/role/index.vue index f70cd178..6647fa78 100644 --- a/src/frontend/admin/src/views/sys/role/index.vue +++ b/src/frontend/admin/src/views/sys/role/index.vue @@ -68,7 +68,6 @@ } }), ], - w100p: true, }, ]" :label-width="15"