From ab38e4f6313bb3e053f7a26535f865da6829dae9 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期四, 11 九月 2025 15:53:03 +0800 Subject: [PATCH] - --- FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs | 27 +++++++++++++++++++-------- 1 files changed, 19 insertions(+), 8 deletions(-) diff --git a/FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs b/FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs index 949cc7d..c94930f 100644 --- a/FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs +++ b/FlexJobApi.UserServer.Application/ElectronSign/Queries/ElectronSignSettingQueryHandler.cs @@ -32,19 +32,30 @@ public async Task<List<GetEnabledElectronSignSettingsQueryResultItem>> Handle(GetEnabledElectronSignSettingsQuery request, CancellationToken cancellationToken) { var logier = JwtUtils.GetCurrentLogier(); - var q = rep.AsQueryable().AsNoTracking() - .Where(it => !it.IsDisabled); + var q = rep.AsQueryable().AsNoTracking(); + if (request.All != true) + { + q = q.Where(it => !it.IsDisabled); + } if (logier.Type == EnumUserType.Enterprise) { - var accesses = await repEnterpriseElectronSignSetting.AsQueryable() - .Where(it => it.EnterpriseId == logier.EnterpriseId) - .Select(it => it.ElectronSignAccess) - .ToListAsync(); - q = q.Where(it => accesses.Contains(it.Access)); + request.EnterpriseId = logier.EnterpriseId; } - return q + var models = await q .ProjectToType<GetEnabledElectronSignSettingsQueryResultItem>() .ToListAsync(); + if (request.EnterpriseId.HasValue) + { + var accesses = await repEnterpriseElectronSignSetting.AsQueryable() + .Where(it => it.EnterpriseId == request.EnterpriseId) + .Select(it => it.ElectronSignAccess) + .ToListAsync(); + foreach (var model in models) + { + model.IsDisabled = !accesses.Contains(model.Access); + } + } + return models; } } } -- Gitblit v1.9.1