diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Job/CreateSyncServerDateTimeJob.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Job/CreateSyncServerDateTimeJob.cs index 44a2618c..3729ea1b 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Job/CreateSyncServerDateTimeJob.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Job/CreateSyncServerDateTimeJob.cs @@ -22,10 +22,18 @@ namespace Dlhis.ScheduledTask.TaskAssignment.Job _dbContext.Client.QueryFilter.ClearAndBackup(); try { - var devices = await _dbContext.Queryable().Where(x => x.Enable).ToListAsync(); + var deviceUniqueNos = await _dbContext.Queryable().Where(x => x.Status == DeviceTaskStatusEnumType.Wait) + .Where(x => x.Type == DeviceTaskEnumType.SyncDateTime) + .Select(x => x.DeviceUniqueNo) + .ToListAsync(); + + var devices = await _dbContext.Queryable() + .Where(x => deviceUniqueNos.Contains(x.UniqueNo)) + .Where(x => x.Enable) + .ToListAsync(); + var tasks = devices.Select(x => new DeviceTaskEntity { - DeviceUniqueNo = x.UniqueNo, Status = DeviceTaskStatusEnumType.Wait,