Drop useless method

This commit is contained in:
Фролов 2021-10-12 11:26:41 +05:00
parent 91c85c8fdc
commit 638d8eb3da
3 changed files with 2 additions and 49 deletions

View File

@ -10,7 +10,6 @@ namespace AsbCloudApp.Services
Task<Dictionary<int, string>> GetCategoriesAsync(CancellationToken token);
Task<MeasureDto> GetLastAsync(int idWell, int idCategory, CancellationToken token);
Task<IEnumerable<MeasureDto>> GetHisoryAsync(int idWell, CancellationToken token);
Task<IEnumerable<MeasureDto>> GetAllLastAsync(int idWell, CancellationToken token);
Task<int> InsertAsync(int idWell, MeasureDto data, CancellationToken token);
Task<int> UpdateAsync(int idWell, MeasureDto data, CancellationToken token);
Task<int> MarkAsDeleteAsync(int idWell, int idData, CancellationToken token);

View File

@ -47,42 +47,6 @@ namespace AsbCloudInfrastructure.Services
return dtos;
}
public async Task<IEnumerable<MeasureDto>> GetAllLastAsync(int idWell, CancellationToken token)
{
var categories = await cacheCategories.WhereAsync(token).ConfigureAwait(false);
if (!categories.Any())
return default;
var queries = categories.Select(c => db.Measures.Include(m => m.Category)
.Where(m => m.IdWell == idWell && m.IdCategory == c.Id && !m.IsDeleted)
.OrderByDescending(m => m.Timestamp)
.Take(1)
);
var qi = queries.GetEnumerator();
qi.MoveNext();
var query = qi.Current;
while (qi.MoveNext())
query = query.Union(qi.Current);
//var query = db.Measures
// .Where(e => e.IdWell == idWell)
// .GroupBy(e => e.IdCategory)
// .Select(g => g.Where(e => e.Timestamp == g.Max(m => m.Timestamp)).First());
//var query = db.Measures
// .Where(m => m.IdWell == idWell && m.Timestamp == db.Measures
// .Where(subm => subm.IdWell == m.IdWell && subm.IdCategory == m.IdCategory).Max(subm => subm.Timestamp));
var entities = await query
.AsNoTracking()
.ToListAsync(token)
.ConfigureAwait(false);
var dtos = entities.Adapt<MeasureDto, Measure>((d, s) => d.CategoryName = s.Category?.Name);
return dtos;
}
public async Task<IEnumerable<MeasureDto>> GetHisoryAsync(int idWell, CancellationToken token)
{
var query = db.Measures.Include(m => m.Category)
@ -105,6 +69,7 @@ namespace AsbCloudInfrastructure.Services
if (data.Data is null)
throw new ArgumentException("data.data is not optional", nameof(data));
var entity = data.Adapt<Measure>();
entity.IdWell = idWell;
db.Measures.Add(entity);
return db.SaveChangesAsync(token);
}
@ -122,10 +87,10 @@ namespace AsbCloudInfrastructure.Services
.Where(m => m.Id == data.Id && !m.IsDeleted)
.FirstOrDefaultAsync(token)
.ConfigureAwait(false);
if (entity is null)
throw new ArgumentException("id doesn't exist", nameof(data));
entity.IdWell = idWell;
entity.Timestamp = data.Timestamp;
entity.Data = data.Data;

View File

@ -32,17 +32,6 @@ namespace AsbCloudWebApi.Controllers
return Ok(result);
}
[HttpGet]
[Route("lastAll")]
public async Task<IActionResult> GetAllLastAsync([FromRoute] int idWell, CancellationToken token = default)
{
if (!await CanUserAccessToWellAsync(idWell, token).ConfigureAwait(false))
return Forbid();
var result = await measureService.GetAllLastAsync(idWell, token).ConfigureAwait(false);
return Ok(result);
}
[HttpGet]
[Route("last/{idCategory}")]
public async Task<IActionResult> GetLastAsync([FromRoute] int idWell, [FromRoute] int idCategory, CancellationToken token = default)