fix 优化apilog和设备上传log

This commit is contained in:
2024-02-26 16:17:59 +08:00
parent d341f43009
commit 3bf049a51e
13 changed files with 207 additions and 200 deletions

View File

@@ -1,5 +1,4 @@
using Dlhis.Entity.Basic.Entity;
using Dlhis.ScheduledTask.DeviceUploadLog.Request;
using Dlhis.ScheduledTask.DeviceUploadLog.Request;
using Dlhis.ScheduledTask.DeviceUploadLog.Response;
using Kurisu.Core.DataAccess.Dto;
@@ -9,8 +8,6 @@ public interface IDeviceUploadLogService : IScopeDependency
{
Task<Pagination<DeviceUploadLogResponse>> GetPageAsync(DeviceUploadLogPageRequest request);
Task UploadLogAsync(DeviceUploadLogUploadRequest request);
Task UploadLogsAsync(List<DeviceUploadLogUploadRequest> requests);
}

View File

@@ -1,18 +1,12 @@
using System.Configuration;
using System.Linq.Expressions;
using System.Linq.Expressions;
using Dlhis.Entity.Basic.Entity;
using Dlhis.Entity.Device.Entities;
using Dlhis.ScheduledTask.DeviceUploadLog.Request;
using Dlhis.ScheduledTask.DeviceUploadLog.Response;
using Kurisu.AspNetCore.Scope;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.DataAccess.Dto;
using Kurisu.SqlSugar.Attributes;
using Kurisu.SqlSugar.Extensions;
using Kurisu.SqlSugar.Services;
using Microsoft.AspNetCore.DataProtection;
using Microsoft.AspNetCore.Mvc;
using NetTaste;
using SqlSugar;
namespace Dlhis.ScheduledTask.DeviceUploadLog.Services.Implements;
@@ -29,40 +23,34 @@ public class DeviceUploadLogService : IDeviceUploadLogService
public async Task<Pagination<DeviceUploadLogResponse>> GetPageAsync(DeviceUploadLogPageRequest request)
{
var page = await _dbContext.Queryable<DeviceUploadLogEntity>()
.LeftJoin<GainfoEntity>((deviceUp, ga) => deviceUp.UserUniqueNo == ga.No)
.WhereIF(request.SearchDateTimePeriod?.Start.HasValue == true, deviceUp => deviceUp.RaiseDateTime >= request.SearchDateTimePeriod.Start)
.WhereIF(request.SearchDateTimePeriod?.End.HasValue == true, deviceUp => deviceUp.RaiseDateTime <= request.SearchDateTimePeriod.End)
.Select((deviceUp, ga) => new DeviceUploadLogResponse
.Select((deviceUp) => new DeviceUploadLogResponse
{
OriginUserUniqueNo = deviceUp.UserUniqueNo,
DeviceUniqueNo = deviceUp.DeviceUniqueNo,
Id = deviceUp.Id,
RaiseDateTime = deviceUp.RaiseDateTime,
UserNo = ga.No,
UserCode = ga.Code,
UserName = ga.Name,
//UserNo = ga.No,
//UserCode = ga.Code,
//UserName = ga.Name,
})
.ToPageListAsync(request);
var gainfos = await _dbContext.Queryable<GainfoEntity>().ToListAsync();
page.Data.ForEach(item =>
{
_ = int.TryParse(item.OriginUserUniqueNo, out var userId);
var gainfo = gainfos.FirstOrDefault(x => x.No == item.OriginUserUniqueNo || x.Id == userId || x.Code == item.OriginUserUniqueNo);
item.UserNo = gainfo?.No;
item.UserCode = gainfo?.Code;
item.UserName = gainfo?.Name;
});
return page;
}
public async Task UploadLogAsync(DeviceUploadLogUploadRequest request)
{
var device = await _dbContext.Queryable<DeviceEntity>().Where(x => x.UniqueNo == request.DeviceUniqueNo).SingleAsync();
device.ThrowIfNull("设备信息不存在");
var entity = new DeviceUploadLogEntity
{
DeviceUniqueNo = request.DeviceUniqueNo,
// UploadTime = request.UploadTime,
UserUniqueNo = request.UserUniqueNo,
TenantId = device.TenantId,
};
await _dbContext.InsertAsync(entity);
}
public async Task UploadLogsAsync(List<DeviceUploadLogUploadRequest> requests)
{
//判断存在的记录
@@ -105,5 +93,5 @@ public class DeviceUploadLogService : IDeviceUploadLogService
await _dbContext.InsertAsync(records);
}
}