diff --git a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs index 00a54a1b..e12e1230 100644 --- a/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs +++ b/Src/Dlhis.ScheduledTask/TaskAssignment/Services/Implements/AssignmentService.cs @@ -227,6 +227,12 @@ public class AssignmentService : IAssignmentService private async Task> GetDataAsync(DeviceTaskGetRequest request) { + var factories = new List(); + if (request.Factory.IsPresent()) + { + factories = request.Factory.Split(',').ToList(); + } + var data = await CommonHelper.RetryAsync(async () => { var page = await _dbContext.Queryable() @@ -242,7 +248,7 @@ public class AssignmentService : IAssignmentService .WhereIF(request.IsProcess, deviceTask => deviceTask.Status == DeviceTaskStatusEnumType.Process && SqlFunc.DateDiff(DateType.Minute, deviceTask.ModifiedTime, DateTime.Now) > 10) .WhereIF(request.DeviceUniqueNo.IsPresent(), (deviceTask, device) => deviceTask.DeviceUniqueNo == request.DeviceUniqueNo) - .WhereIF(request.Factory.IsPresent(), (deviceTask, device) => deviceTask.TenantId == request.Factory) + .WhereIF(factories.Any(), (deviceTask, device) => factories.Contains(deviceTask.TenantId)) .WhereIF(request.Types.IsPresent(), deviceTask => request.Types.Contains(deviceTask.Type)) .WhereIF(request.Brand.IsPresent(), (deviceTask, device, deviceTemplate) => deviceTemplate.Brand == request.Brand) .Where((deviceTask, device, deviceTemplate, ga, gaLeave, department, gainfoEx, deviceRegistry) =>