From 074e4919fdf5f55f4165b5b0416c5fb83d5d6315 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Wed, 13 May 2026 21:33:58 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=9D=83=E9=99=90=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/Implements/AssignmentService.cs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs index 169d89f5..620a56f2 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs @@ -223,13 +223,19 @@ public class AssignmentService : IAssignmentService .FirstAsync(); + + var deviceCodes = await _gainfoPermissionApi.GetPermissionsDeviceCodesAsync(userCode); + + + //通过真实设备号获取对应的虚拟设备号和权限值 var elevatorAcsFloors = await _dbContext.Queryable() - .Where(x => x.RealDeviceUniqueNo == deviceUniqueNo) + .LeftJoin((x, d) => x.VirtualDeviceUniqueNo == d.UniqueNo) + .Where((x, d) => x.RealDeviceUniqueNo == deviceUniqueNo && deviceCodes.Contains(d.Code)) .Select(x => new { x.VirtualDeviceUniqueNo, x.AcsValue }) .ToListAsync(); - + //虚拟设备号列表 var virtualDeviceUniqueNos = elevatorAcsFloors.Select(x => x.VirtualDeviceUniqueNo).ToList(); - + //权限值列表 var floorAcsValues = elevatorAcsFloors.Select(x => x.AcsValue).Distinct().ToList(); var all = await CommonHelper.RetryAsync(async () =>