fix 根据权限查询

This commit is contained in:
2024-03-07 00:31:27 +08:00
parent 20aa1b0815
commit a0505a1a93
9 changed files with 78 additions and 13 deletions

View File

@@ -3,6 +3,7 @@ using Dlhis.Entity.Device.Entities;
using Dlhis.Entity.Device.Enums;
using Dlhis.ScheduledTask.TaskAssignment.Request;
using Dlhis.ScheduledTask.TaskAssignment.Response;
using Dlhis.Sys.Api;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
using Kurisu.SqlSugar.Extensions;
@@ -14,10 +15,12 @@ namespace Dlhis.ScheduledTask.TaskAssignment.Services.Implements;
public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
{
private readonly IDbContext _dbContext;
private readonly ITenantApi _tenantApi;
public DeviceTaskAssignmentService(IDbContext dbContext)
public DeviceTaskAssignmentService(IDbContext dbContext, ITenantApi tenantApi)
{
_dbContext = dbContext;
_tenantApi = tenantApi;
}
public async Task<Pagination<DeviceTaskAssignmentResponse>> GetPageAsync(DeviceTaskAssignmentRequest request)
@@ -27,6 +30,7 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
.WhereIF(!request.Search.IsEmpty(), (deviceTask, ga) => deviceTask.UserNo == request.Search || ga.Name.Contains(request.Search))
.WhereIF(request.Type.HasValue, deviceTask => deviceTask.Type == request.Type)
.WhereIF(request.Status.HasValue, deviceTask => deviceTask.Status == request.Status)
.Where(deviceTask => 1 == 1)
.OrderBy(deviceTask => deviceTask.CreateTime, OrderByType.Desc)
.Select((deviceTask, ga) => new DeviceTaskAssignmentResponse
{
@@ -40,10 +44,27 @@ public class DeviceTaskAssignmentService : IDeviceTaskAssignmentService
UserCode = ga.Code,
Type = deviceTask.Type,
CreateTime = deviceTask.CreateTime,
LastUpdateTime = deviceTask.ModifiedTime
LastUpdateTime = deviceTask.ModifiedTime,
TenantId = deviceTask.TenantId,
})
.ToPageListAsync(request);
try
{
var tenantResult = await _tenantApi.GetTenantsInternalAsync();
var tenants = tenantResult.Data;
page.Data.ForEach(item =>
{
item.TenantName = tenants.FirstOrDefault(x => x.Code == item.TenantId)?.Name;
});
}
catch (Exception)
{
}
return page;
}