test 数据迁移
This commit is contained in:
@@ -75,6 +75,15 @@ public class DeviceUploadLogsController : ControllerBase
|
||||
await _deviceUploadLogService.QiaoqiaoGaoshiqingAsync(request);
|
||||
}
|
||||
|
||||
[AllowAnonymous]
|
||||
[HttpPost("test2")]
|
||||
[IgnoreTenant]
|
||||
[Transactional]
|
||||
public async Task Test()
|
||||
{
|
||||
await _deviceUploadLogService.Test();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取设备记录读取的配置
|
||||
/// </summary>
|
||||
|
||||
@@ -33,6 +33,7 @@ public interface IDeviceUploadLogService : IScopeDependency
|
||||
|
||||
Task QiaoqiaoGaoshiqingAsync(DeviceUploadLogSecretAddRequest request);
|
||||
|
||||
Task Test();
|
||||
|
||||
/// <summary>
|
||||
/// 获取设备记录获取的开始-结束时间
|
||||
|
||||
@@ -370,6 +370,15 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
||||
});
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task Test()
|
||||
{
|
||||
var data = await _dbContext.Queryable<DeviceUploadLogEntity>().OrderBy(x => x.Id).SingleAsync();
|
||||
var tableName = "deviceuploadlog_20250107";
|
||||
await _dbContext.Client.Insertable(data).AS(tableName).ExecuteCommandAsync();
|
||||
await _dbContext.DeleteReallyAsync(data);
|
||||
}
|
||||
|
||||
public async Task<DateTimePeriod> GetDeviceUploadRecordSettingAsync(string deviceNo)
|
||||
{
|
||||
var start = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
||||
@@ -427,7 +436,7 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
||||
|
||||
public async Task<Pagination<DeviceUploadLogResponse>> GetPageAsync(DeviceUploadLogPageRequest request)
|
||||
{
|
||||
DeviceUploadLogTypeEnumType? type = request.Type switch
|
||||
var type = request.Type switch
|
||||
{
|
||||
DeviceTypeEnumType.Attendance => DeviceUploadLogTypeEnumType.Attendance,
|
||||
DeviceTypeEnumType.Door => DeviceUploadLogTypeEnumType.Door,
|
||||
@@ -441,13 +450,25 @@ public class DeviceUploadLogService : IDeviceUploadLogService
|
||||
userTypes.Add(GainfoUserTypeEnumType.SecurityWhite);
|
||||
}
|
||||
|
||||
var r = await _dbContext.Queryable<DeviceUploadLogEntity>()
|
||||
var dayBefore60 = DateTime.Today.AddDays(-60);
|
||||
if (request.SearchDateTimePeriod.Start <= dayBefore60 && request.SearchDateTimePeriod.End > dayBefore60)
|
||||
{
|
||||
throw new UserFriendlyException("请勿跨归档数据查询");
|
||||
}
|
||||
|
||||
var isArchivedSearch = request.SearchDateTimePeriod.End <= dayBefore60;
|
||||
|
||||
|
||||
var table = isArchivedSearch
|
||||
? _dbContext.Queryable<DeviceUploadLogEntity>().AS("deviceuploadlog_20250107")
|
||||
: _dbContext.Queryable<DeviceUploadLogEntity>();
|
||||
|
||||
var r = await table
|
||||
.LeftJoin<DeviceEntity>((x, device) => x.DeviceUniqueNo == device.UniqueNo)
|
||||
.LeftJoin<GainfoEntity>((x, device, ga) => x.UserUniqueNo == ga.Code)
|
||||
.LeftJoin<OutsourceEntity>((x, device, ga, os) => x.UserUniqueNo == os.Code)
|
||||
.LeftJoin<GainfoEntity>((x, device, ga, os, gaSap) => gaSap.Code == os.SapCode)
|
||||
.WhereIF(request.SearchDateTimePeriod.HasValue(), x => x.RaiseDateTime >= request.SearchDateTimePeriod.Start
|
||||
&& x.RaiseDateTime <= request.SearchDateTimePeriod.End)
|
||||
.Where(x => x.RaiseDateTime >= request.SearchDateTimePeriod.Start && x.RaiseDateTime <= request.SearchDateTimePeriod.End)
|
||||
.Where((x, device) => x.Type == type && !SqlFunc.IsNullOrEmpty(x.UserType) && userTypes.Contains(x.UserType))
|
||||
.WhereIF(request.Sync.HasValue, x => x.Sync == request.Sync)
|
||||
.WhereIF(request.Search.IsPresent() && userTypes.Contains(GainfoUserTypeEnumType.Outsource), (x, device, ga, os) =>
|
||||
|
||||
Reference in New Issue
Block a user