diff --git a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs index e0a7584a..cb244bca 100644 --- a/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs +++ b/Src/Dlhis.Basic/Device/Services/Implements/DevicePermissionService.cs @@ -478,7 +478,8 @@ public class DevicePermissionService : IDevicePermissionService var devicePermissions = await _dbContext.Queryable().ToListAsync(); var deviceGroups = await _dbContext.Queryable().ToListAsync(); - var deviceRelationships = await _dbContext.Queryable().ToListAsync(); + var deviceGroupCodes = deviceGroups.Select(x => x.Code).ToList(); + var deviceRelationships = await _dbContext.Queryable().Where(x => deviceGroupCodes.Contains(x.GroupCode)).ToListAsync(); var result = GetAssignDeviceCodesInternal(gainfo, gainfoGroups, devicePermissions, deviceGroups, deviceRelationships, deviceRegistries, devices); return result.SelectMany(x => x.Codes).ToList();