fix 考勤下发任务记录分页
This commit is contained in:
@@ -7,6 +7,7 @@ using Kurisu.Core.DataAccess.Dto;
|
||||
using Kurisu.SqlSugar.Extensions;
|
||||
using Kurisu.SqlSugar.Services;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Dlhis.ScheduledTask.TaskAssignment.Services.Implements;
|
||||
|
||||
@@ -44,17 +45,18 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
|
||||
/// 考勤任务记录
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<TaskRecordsResponse> GetTaskRecords(TaskRecordsRequest request)
|
||||
public async Task<Pagination<TaskDetailResponse>> GetTaskRecords(TaskRecordsRequest request)
|
||||
|
||||
{
|
||||
//获取启用的功能设备
|
||||
var devices = await _dbContext.Queryable<DeviceEntity>()
|
||||
.Where(x => x.Enable && x.Funcs.Contains(request.type))
|
||||
//.Where(x => x.Enable && x.Funcs.Contains(request.type))
|
||||
.Where(x=>x.UniqueNo == "717840555")
|
||||
.Select(x => x.UniqueNo)
|
||||
.ToListAsync();
|
||||
devices.ThrowIfNull($"{request.type.GetDescription}功能机器为空");
|
||||
|
||||
var tasks = await _dbContext.Queryable<DeviceTaskEntity>()
|
||||
var lst = await _dbContext.Queryable<DeviceTaskEntity>()
|
||||
.LeftJoin<GainfoEntity>((task, ga) => task.UserNo == ga.No)
|
||||
.LeftJoin<DeviceEntity>((task, ga, de) => task.DeviceUniqueNo == de.UniqueNo)
|
||||
.Where(task => task.UserNo == request.GainfoNo)
|
||||
@@ -69,16 +71,19 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
|
||||
IP = de.ConnectionInfo
|
||||
}).ToListAsync();
|
||||
|
||||
var info = await _dbContext.Queryable<GainfoEntity>().Where(x => x.No == request.GainfoNo).FirstAsync();
|
||||
// 分页操作
|
||||
var startIndex = (request.PageIndex - 1) * request.PageSize;
|
||||
var pagedData = lst.Skip(startIndex).Take(request.PageSize).ToList();
|
||||
|
||||
var entity = new TaskRecordsResponse
|
||||
var pagination = new Pagination<TaskDetailResponse>
|
||||
{
|
||||
UserNo = info.No,
|
||||
UserCode = info.Code,
|
||||
Name = info.Name,
|
||||
Tasks = tasks,
|
||||
PageIndex = request.PageIndex,
|
||||
PageSize = request.PageSize,
|
||||
Total = lst.Count, // 使用原始列表的总数进行分页
|
||||
Data = pagedData
|
||||
};
|
||||
return entity;
|
||||
|
||||
return pagination;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user