From 61bf7e67e0e68eb2deeb89159b43b7c850156fd8 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Fri, 18 Apr 2025 10:08:14 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=8F=90=E9=86=92=E5=8E=82=E5=8C=BA?= =?UTF-8?q?=E4=B8=8D=E5=8C=B9=E9=85=8D=E7=9A=84=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WorkGrids/Services/Implements/WorkGridService.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs index 6c05e6a8..d816a3b9 100644 --- a/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs +++ b/Src/Dlhis.Basic/WorkGrids/Services/Implements/WorkGridService.cs @@ -76,11 +76,21 @@ public class WorkGridService : IWorkGridService /// public async Task SaveAsync(List requests) { + var factory = _currentUser.GetStringTenantId(); + var insertGrids = new List(); var updateGrids = new List(); var leaderUserCodes = requests.Select(x => x.LeaderUserCode).Distinct().ToList(); - var existsUserCodes = await _dbContext.Queryable().Where(x => leaderUserCodes.Contains(x.Code)).Select(x => x.Code).ToListAsync(); + var existsUserInfos = await _dbContext.Queryable() + .Where(x => leaderUserCodes.Contains(x.Code)) + .Select(x => new { x.Code, x.Factory }) + .ToListAsync(); + + var excludeCodes = existsUserInfos.Where(x => x.Factory != factory).Select(x => x.Code).ToList(); + excludeCodes.ThrowIfExists($"工号:{excludeCodes.Join(",")}不属于当前厂区"); + + var existsUserCodes = existsUserInfos.Select(x => x.Code).ToList(); var notExistsUserCodes = leaderUserCodes.Except(existsUserCodes).ToList(); notExistsUserCodes.ThrowIfExists($"工号:{notExistsUserCodes.Join(",")}不存在");