From 59833ddbf47ed028462e1b089b46bf7c6f7518e3 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期二, 05 八月 2025 18:31:38 +0800 Subject: [PATCH] feat:字典开发 --- FlexJobApi.Core/Utils/DbUtils/DbUtils.cs | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs index a1465c0..ecaf344 100644 --- a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs +++ b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs @@ -51,12 +51,11 @@ /// </summary> /// <typeparam name="TEntity"></typeparam> /// <typeparam name="TRequest"></typeparam> - /// <param name="rep"></param> /// <param name="request"></param> /// <param name="checkExist"></param> /// <param name="cancellationToken"></param> /// <returns></returns> - public static async Task<Guid> SaveData<TEntity, TRequest>(this TRequest request, Func<TEntity, TRequest, bool> checkExist = null, CancellationToken cancellationToken = default) + public static async Task<Guid> SaveData<TEntity, TRequest>(this TRequest request, Func<IQueryable<TEntity>, TEntity, TRequest, bool> checkExist = null, CancellationToken cancellationToken = default) where TEntity : CommonEntity, new() where TRequest : SaveDataCommand, new() { @@ -67,7 +66,7 @@ { var entity = await rep.AsQueryable().FirstOrDefaultAsync(it => it.Id == request.Id, cancellationToken); if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, $"璇summary ?? "淇℃伅"}"); - if (checkExist != null && checkExist(entity, request)) throw Oops.Oh(EnumErrorCodeType.s405, $"璇summary ?? "淇℃伅"}"); + if (checkExist != null && checkExist(rep.AsQueryable().AsNoTracking(), entity, request)) throw Oops.Oh(EnumErrorCodeType.s405, $"璇summary ?? "淇℃伅"}"); request.Adapt(entity); await rep.UpdateAsync(entity); return entity.Id; @@ -75,7 +74,7 @@ else { var entity = new TEntity(); - if (checkExist != null && checkExist(entity, request)) throw Oops.Oh(EnumErrorCodeType.s405, $"璇summary ?? "淇℃伅"}"); + if (checkExist != null && checkExist(rep.AsQueryable().AsNoTracking(), entity, request)) throw Oops.Oh(EnumErrorCodeType.s405, $"璇summary ?? "淇℃伅"}"); request.Adapt(entity); await rep.InsertAsync(entity); return entity.Id; -- Gitblit v1.9.1