Убран параметр TRequest
This commit is contained in:
parent
49c9a6107b
commit
65e2cb0977
@ -17,34 +17,36 @@ public abstract class AbstractChangeLogRepository<TEntity, TChangeLogDto, TDto>
|
||||
}
|
||||
|
||||
public abstract TEntity Convert(TDto entity);
|
||||
public async Task<int> Clear(int idUser, TRequest request, CancellationToken token)
|
||||
public async Task<int> Clear(int idUser,CancellationToken token)
|
||||
{
|
||||
var updateTime = DateTimeOffset.UtcNow;
|
||||
throw new NotImplementedException();
|
||||
|
||||
//todo
|
||||
var query = BuildQuery(request);
|
||||
query = query.Where(e => e.Obsolete == null);
|
||||
//var updateTime = DateTimeOffset.UtcNow;
|
||||
|
||||
var entitiesToDelete = await query.ToArrayAsync(token);
|
||||
////todo
|
||||
//var query = BuildQuery(request);
|
||||
//query = query.Where(e => e.Obsolete == null);
|
||||
|
||||
foreach (var entity in entitiesToDelete)
|
||||
{
|
||||
entity.IdState = IChangeLogAbstract.IdCleared;
|
||||
entity.Obsolete = updateTime;
|
||||
entity.IdEditor = idUser;
|
||||
}
|
||||
//var entitiesToDelete = await query.ToArrayAsync(token);
|
||||
|
||||
var result = await SaveChangesWithExceptionHandling(token);
|
||||
return result;
|
||||
//foreach (var entity in entitiesToDelete)
|
||||
//{
|
||||
// entity.IdState = IChangeLogAbstract.IdCleared;
|
||||
// entity.Obsolete = updateTime;
|
||||
// entity.IdEditor = idUser;
|
||||
//}
|
||||
|
||||
//var result = await SaveChangesWithExceptionHandling(token);
|
||||
//return result;
|
||||
}
|
||||
|
||||
public async Task<int> ClearAndInsertRange(int idUser, TRequest request, IEnumerable<TDto> dtos, CancellationToken token)
|
||||
public async Task<int> ClearAndInsertRange(int idUser, IEnumerable<TDto> dtos, CancellationToken token)
|
||||
{
|
||||
var result = 0;
|
||||
using var transaction = await dbContext.Database.BeginTransactionAsync(token);
|
||||
try
|
||||
{
|
||||
result += await Clear(idUser, request, token);
|
||||
result += await Clear(idUser, token);
|
||||
result += await InsertRangeWithoutTransaction(idUser, dtos, token);
|
||||
|
||||
await transaction.CommitAsync(token);
|
||||
@ -57,12 +59,12 @@ public abstract class AbstractChangeLogRepository<TEntity, TChangeLogDto, TDto>
|
||||
}
|
||||
}
|
||||
|
||||
public Task<IEnumerable<TDto>> GetCurrent(TRequest request, CancellationToken token)
|
||||
public Task<IEnumerable<TDto>> GetCurrent(DateTimeOffset moment, CancellationToken token)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public Task<IEnumerable<DateOnly>> GetDatesChange(TRequest request, CancellationToken token)
|
||||
public Task<IEnumerable<DateOnly>> GetDatesChange(CancellationToken token)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
@ -74,9 +76,7 @@ public abstract class AbstractChangeLogRepository<TEntity, TChangeLogDto, TDto>
|
||||
|
||||
public async Task<int> InsertRange(int idUser, IEnumerable<TDto> dtos, CancellationToken token)
|
||||
{
|
||||
this.dbContext.Set<TEntity>();
|
||||
var db = GetDataBase();
|
||||
using var transaction = db.BeginTransaction();
|
||||
using var transaction = dbContext.Database.BeginTransaction();
|
||||
try
|
||||
{
|
||||
var result = await InsertRangeWithoutTransaction(idUser, dtos, token);
|
||||
@ -107,7 +107,7 @@ public abstract class AbstractChangeLogRepository<TEntity, TChangeLogDto, TDto>
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public Task<IEnumerable<TChangeLogDto>> GetChangeLogForDate(TRequest request, DateOnly? date, CancellationToken token)
|
||||
public Task<IEnumerable<TChangeLogDto>> GetChangeLogForDate(DateTimeOffset? updateFrom, CancellationToken token)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
@ -3,11 +3,12 @@
|
||||
namespace Persistence.Repositories;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Интерфейс для работы с историческими данными
|
||||
/// </summary>
|
||||
/// <typeparam name="TDto"></typeparam>
|
||||
public interface IChangeLogRepository<TDto, TChangeLogDto> : ISyncRepository<TDto>
|
||||
where TDto : class
|
||||
where TChangeLogDto : ChangeLogDto<TDto>
|
||||
{
|
||||
/// <summary>
|
||||
/// Добавление записей
|
||||
@ -40,20 +41,18 @@ public interface IChangeLogRepository<TDto, TChangeLogDto> : ISyncRepository<TDt
|
||||
/// Помечает записи как удаленные
|
||||
/// </summary>
|
||||
/// <param name="idUser">пользователь, который чистит</param>
|
||||
/// <param name="request">Фильтр по свойствам конкретной сущности</param>
|
||||
/// <param name="token"></param>
|
||||
/// <returns></returns>
|
||||
Task<int> Clear(int idUser, TRequest request, CancellationToken token);
|
||||
Task<int> Clear(int idUser, CancellationToken token);
|
||||
|
||||
/// <summary>
|
||||
/// Очистить и добавить новые
|
||||
/// </summary>
|
||||
/// <param name="idUser"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="dtos"></param>
|
||||
/// <param name="token"></param>
|
||||
/// <returns></returns>
|
||||
Task<int> ClearAndInsertRange(int idUser, TRequest request, IEnumerable<TDto> dtos, CancellationToken token);
|
||||
Task<int> ClearAndInsertRange(int idUser, IEnumerable<TDto> dtos, CancellationToken token);
|
||||
|
||||
/// <summary>
|
||||
/// Пометить записи как удаленные
|
||||
@ -70,16 +69,15 @@ public interface IChangeLogRepository<TDto, TChangeLogDto> : ISyncRepository<TDt
|
||||
/// <param name="request"></param>
|
||||
/// <param name="token"></param>
|
||||
/// <returns></returns>
|
||||
Task<IEnumerable<DateOnly>> GetDatesChange(TRequest request, CancellationToken token);
|
||||
Task<IEnumerable<DateOnly>> GetDatesChange(CancellationToken token);
|
||||
|
||||
/// <summary>
|
||||
/// Получение измененных записей за определенную дату
|
||||
/// </summary>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="date">Фильтр по дате. Если null - вернет все записи, без привязки к дате</param>
|
||||
/// <param name="updateFrom"></param>
|
||||
/// <param name="token"></param>
|
||||
/// <returns></returns>
|
||||
Task<IEnumerable<TChangeLogDto>> GetChangeLogForDate(TRequest request, DateOnly? date, CancellationToken token);
|
||||
Task<IEnumerable<TChangeLogDto>> GetChangeLogForDate(DateTimeOffset? updateFrom, CancellationToken token);
|
||||
|
||||
/// <summary>
|
||||
/// Получение текущих сейчас записей по параметрам
|
||||
@ -87,5 +85,5 @@ public interface IChangeLogRepository<TDto, TChangeLogDto> : ISyncRepository<TDt
|
||||
/// <param name="request"></param>
|
||||
/// <param name="token"></param>
|
||||
/// <returns></returns>
|
||||
Task<IEnumerable<TDto>> GetCurrent(TRequest request, CancellationToken token);
|
||||
Task<IEnumerable<TDto>> GetCurrent(DateTimeOffset moment, CancellationToken token);
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
namespace Persistence.Repositories;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Интерфейс по работе с данными
|
||||
/// </summary>
|
||||
/// <typeparam name="TDto"></typeparam>
|
||||
public interface ISyncRepository<TDto>
|
||||
|
@ -1,7 +1,7 @@
|
||||
namespace Persistence.Repositories;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// Интерфейс по работе с временными данными
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
public interface ITimeSeriesDataRepository<TDto> : ISyncRepository<TDto>
|
||||
|
Loading…
Reference in New Issue
Block a user