diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/DeviceTaskAssignmentService.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/DeviceTaskAssignmentService.cs index 4a9ddd27..fd92c962 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/DeviceTaskAssignmentService.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/DeviceTaskAssignmentService.cs @@ -44,7 +44,7 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService ) .WhereIF(request.UserNo.IsPresent(), deviceTask => deviceTask.UserNo == request.UserNo) .Where(deviceTask => deviceTask.TenantId == request.Factory) - .WhereIF(request.Type.HasValue, deviceTask => deviceTask.DeviceType == request.Type) + .WhereIF(request.Type.HasValue, (deviceTask, device) => deviceTask.DeviceType == request.Type && device.Enable) //过滤未启用的设备任务 .WhereIF(request.TaskTypes.IsPresent(), deviceTask => request.TaskTypes.Contains(deviceTask.Type)) .WhereIF(request.Status.IsPresent(), deviceTask => request.Status.Contains(deviceTask.Status)) .WhereIF(!request.Search.IsEmpty(), (deviceTask, device, ga, gaLeave) => @@ -189,9 +189,9 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService .ToListAsync(); await _dbContext.Client.Deleteable() - .Where(x=> request.Ids.Contains(x.Id)) + .Where(x => request.Ids.Contains(x.Id)) .ExecuteCommandAsync(); - + tasks.ForEach(x => { x.Status = DeviceTaskStatusEnumType.Wait;