Правки по результатам ревью

This commit is contained in:
Roman Efremov 2025-01-27 11:16:24 +05:00
parent f250db8b7f
commit 911508632e
4 changed files with 13 additions and 47 deletions

View File

@ -1,6 +1,8 @@
using DD.Persistence.Models;
using DD.Persistence.Models.Common;
using DD.Persistence.Repositories;
using DD.Persistence.Services.Interfaces;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System.Net;
@ -10,15 +12,16 @@ namespace DD.Persistence.API.Controllers;
/// Хранение наборов данных с отметкой времени.
/// </summary>
[ApiController]
//[Authorize]
[Authorize]
[Route("api/[controller]")]
public class TimestampedValuesController : ControllerBase
{
private readonly ITimestampedValuesService timestampedValuesService;
public TimestampedValuesController(ITimestampedValuesService repository)
private readonly ITimestampedValuesRepository timestampedValuesRepository;
public TimestampedValuesController(ITimestampedValuesService repository, ITimestampedValuesRepository timestampedValuesRepository)
{
this.timestampedValuesService = repository;
this.timestampedValuesRepository = timestampedValuesRepository;
}
/// <summary>
@ -130,7 +133,7 @@ public class TimestampedValuesController : ControllerBase
[HttpGet("{discriminatorId}/count")]
public async Task<ActionResult<int>> Count([FromRoute] Guid discriminatorId, CancellationToken token)
{
var result = await timestampedValuesService.Count(discriminatorId, token);
var result = await timestampedValuesRepository.Count(discriminatorId, token);
return Ok(result);
}
@ -143,7 +146,7 @@ public class TimestampedValuesController : ControllerBase
[HttpGet("{discriminatorId}/datesRange")]
public async Task<ActionResult<DatesRangeDto>> GetDatesRange([FromRoute] Guid discriminatorId, CancellationToken token)
{
var result = await timestampedValuesService.GetDatesRange(discriminatorId, token);
var result = await timestampedValuesRepository.GetDatesRange(discriminatorId, token);
return Ok(result);
}

View File

@ -18,17 +18,12 @@ public class TimestampedValuesRepository : ITimestampedValuesRepository
public async virtual Task<int> AddRange(Guid discriminatorId, IEnumerable<TimestampedValuesDto> dtos, CancellationToken token)
{
var timestampedValuesEntities = new List<TimestampedValues>();
foreach (var dto in dtos)
var timestampedValuesEntities = dtos.Select(dto => new TimestampedValues()
{
var timestampedValuesEntity = new TimestampedValues()
{
DiscriminatorId = discriminatorId,
Timestamp = dto.Timestamp.ToUniversalTime(),
Values = dto.Values.Values.ToArray()
};
timestampedValuesEntities.Add(timestampedValuesEntity);
}
DiscriminatorId = discriminatorId,
Timestamp = dto.Timestamp.ToUniversalTime(),
Values = dto.Values.Values.ToArray()
});
await db.Set<TimestampedValues>().AddRangeAsync(timestampedValuesEntities, token);

View File

@ -17,14 +17,6 @@ public interface ITimestampedValuesService
/// <returns></returns>
Task<int> AddRange(Guid discriminatorId, IEnumerable<TimestampedValuesDto> dtos, CancellationToken token);
/// <summary>
/// Количество записей по указанному набору в БД. Для пагинации
/// </summary>
/// <param name="discriminatorId">Дискриминатор (идентификатор) набора</param>
/// <param name="token"></param>
/// <returns></returns>
Task<int> Count(Guid discriminatorId, CancellationToken token);
/// <summary>
/// Получение данных с фильтрацией для нескольких систем. Значение фильтра null - отключен
/// </summary>
@ -75,12 +67,4 @@ public interface ITimestampedValuesService
/// <param name="token"></param>
/// <returns></returns>
Task<IEnumerable<TimestampedValuesDto>> GetResampledData(Guid discriminatorId, DateTimeOffset timestampBegin, double intervalSec = 600, int approxPointsCount = 1024, CancellationToken token = default);
/// <summary>
/// Получить диапазон дат, для которых есть данные
/// </summary>
/// <param name="discriminatorId"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<DatesRangeDto?> GetDatesRange(Guid discriminatorId, CancellationToken token);
}

View File

@ -102,22 +102,6 @@ public class TimestampedValuesService : ITimestampedValuesService
return dtos;
}
/// <inheritdoc/>
public async Task<int> Count(Guid discriminatorId, CancellationToken token)
{
var result = await timestampedValuesRepository.Count(discriminatorId, token);
return result;
}
/// <inheritdoc/>
public async virtual Task<DatesRangeDto?> GetDatesRange(Guid discriminatorId, CancellationToken token)
{
var result = await timestampedValuesRepository.GetDatesRange(discriminatorId, token);
return result;
}
/// <summary>
/// Преобразовать результат запроса в набор dto
/// </summary>