fix 过滤正在处理的上传任务设备

This commit is contained in:
2024-02-29 13:43:53 +08:00
parent 942330fd1d
commit 10cc93cf76

View File

@@ -29,16 +29,14 @@ public class CreateGetUploadRecordJob
|| x.Type == DeviceTypeEnumType.Door)
.ToListAsync();
var uniqueNos = devices.Select(x => x.UniqueNo).ToList();
//过滤处理中的任务
uniqueNos = await _dbContext.Queryable<DeviceTaskEntity>()
.Where(x => !uniqueNos.Contains(x.DeviceUniqueNo))
.Where(x => x.Type == DeviceTaskEnumType.UploadRecord)
.Where(x => x.Status == DeviceTaskStatusEnumType.Process || x.Status == DeviceTaskStatusEnumType.Wait)
.Select(x => x.DeviceUniqueNo)
.ToListAsync();
var currentUniqueNos = await _dbContext.Queryable<DeviceTaskEntity>()
.Where(x => x.Type == DeviceTaskEnumType.UploadRecord)
.Where(x => x.Status == DeviceTaskStatusEnumType.Process || x.Status == DeviceTaskStatusEnumType.Wait)
.Select(x => x.DeviceUniqueNo)
.ToListAsync();
var tasks = devices.Where(x => uniqueNos.Contains(x.UniqueNo)).Select(x => new DeviceTaskEntity
var tasks = devices.Where(x => !currentUniqueNos.Contains(x.UniqueNo)).Select(x => new DeviceTaskEntity
{
DeviceUniqueNo = x.UniqueNo,
Status = DeviceTaskStatusEnumType.Wait,