fix 增加7天时间控制

This commit is contained in:
2025-07-01 10:18:51 +08:00
parent 6b990aa4f3
commit 5057d88b7e
2 changed files with 11 additions and 4 deletions

View File

@@ -241,6 +241,8 @@ public class AssignmentService : IAssignmentService
private async Task<List<TaskDto>> GetDataAsync(DeviceTaskGetRequest request)
{
var limitTime = DateTime.Now.AddDays(-7);
var data = await CommonHelper.RetryAsync(async () =>
{
var rows = await _dbContext.Queryable<DeviceTaskEntity>()
@@ -249,13 +251,16 @@ public class AssignmentService : IAssignmentService
.LeftJoin<GainfoLeaveEntity>((deviceTask, device, ga, gaLeave) => deviceTask.UserNo == gaLeave.No)
.LeftJoin<DepartmentEntity>((deviceTask, device, ga, gaLeave, department) => department.No == ga.DepartmentNo)
.LeftJoin<DeviceRegistryEntity>((deviceTask, device, ga, gaLeave, department, deviceRegistry) => deviceRegistry.DeviceUniqueNo == deviceTask.DeviceUniqueNo)
.Where((deviceTask, device) => device.Enable)
.WhereIF(request.DeviceUniqueNo.IsPresent(), (deviceTask, device) =>
deviceTask.DeviceUniqueNo == request.DeviceUniqueNo &&
deviceTask.CreateTime >= limitTime &&
device.Enable &&
deviceTask.Version < 10
)
.WhereIF(!request.IsProcess, deviceTask => deviceTask.Status == DeviceTaskStatusEnumType.Wait)
.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.Types.IsPresent(), deviceTask => request.Types.Contains(deviceTask.Type))
.Where((deviceTask, device) => deviceTask.Version < 10)
#if !DEBUG
.Where((deviceTask, device, ga, gaLeave, department, deviceRegistry) =>
device.HeartbeatInterval == 0 || SqlFunc.DateAdd(deviceRegistry.LastHeartbeatTime, device.HeartbeatInterval, DateType.Second) > DateTime.Now)

View File

@@ -106,6 +106,8 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
public async Task<Pagination<DeviceTaskAssignmentResponse>> GetPageWarningAsync(DeviceTaskAssignmentRequest request)
{
var limitTime = DateTime.Now.AddDays(-7);
var page = await _dbContext.Queryable<DeviceTaskEntity>()
.LeftJoin<DeviceEntity>((deviceTask, device) => deviceTask.DeviceUniqueNo == device.UniqueNo)
.LeftJoin<GainfoEntity>((deviceTask, device, ga) => deviceTask.UserNo == ga.No)
@@ -119,7 +121,7 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
|| ga.Code == request.Search
|| deviceTask.DeviceUniqueNo == request.Search
)
.Where(deviceTask => deviceTask.Version >= 10)
.Where(deviceTask => deviceTask.Version >= 10 || deviceTask.CreateTime < limitTime)
.OrderBy(deviceTask => deviceTask.ModifiedTime, OrderByType.Desc)
.Select((deviceTask, device, ga, gaLeave, deviceRegistry) => new DeviceTaskAssignmentResponse
{