forked from ddrilling/AsbCloudServer
Расширение метода контроллера данных телеметрии. Теперь через него можно получать архив.
This commit is contained in:
parent
42cc4d491f
commit
6de9e7116e
@ -28,15 +28,20 @@ namespace AsbCloudWebApi.Controllers
|
||||
/// Возвращает данные САУБ по скважине.
|
||||
/// По умолчанию за последние 10 минут.
|
||||
/// </summary>
|
||||
/// <param name="wellId"></param>
|
||||
/// <param name=""></param>
|
||||
/// <param name="wellId">id скважины</param>
|
||||
/// <param name="begin">дата начала выборки. По умолчанию: текущее время - intervalSec</param>
|
||||
/// <param name="intervalSec">интервал времени даты начала выборки, секунды</param>
|
||||
/// <param name="approxPointsCount">желаемое количество точек. Если в выборке точек будет больше, то выборка будет прорежена.</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet]
|
||||
[Route("{wellId}/data")]
|
||||
[ProducesResponseType(typeof(IEnumerable<DataSaubBaseDto>), (int)System.Net.HttpStatusCode.OK)]
|
||||
public IActionResult Get(int wellId)
|
||||
public IActionResult Get(int wellId, DateTime begin = default, int intervalSec = 600, int approxPointsCount = 1024)
|
||||
{
|
||||
return Ok(telemetryDataService.Get(wellId));
|
||||
if(begin == default)
|
||||
begin = DateTime.Now.AddSeconds(-intervalSec);
|
||||
var content = telemetryDataService.Get(wellId, begin, intervalSec, approxPointsCount);
|
||||
return Ok(content);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
15
AsbCloudWebApi/TODO.md
Normal file
15
AsbCloudWebApi/TODO.md
Normal file
@ -0,0 +1,15 @@
|
||||
* Планируемые к выполнению задачи *
|
||||
|
||||
- синхронизация справочника сообщений
|
||||
- синхронизация сообщений
|
||||
- архив телеметрии передавать с САУБ как таблицу (планируемое снижение до 79% до gzip).
|
||||
- синхронизация архива телеметрии
|
||||
|
||||
|
||||
|
||||
- доделать секционирование.
|
||||
- редуцирование архива телеметрии по принципу второй производной. Если вторая производная ~0, то промежуточные значения можно удалить.
|
||||
- редуцирование выборки в контроллере. слишком большую выборку попробовать уменьшать оконными функиями, сохранять экстремумы и ближайшие к ним значения.
|
||||
|
||||
|
||||
* Выполненные задачи *
|
Loading…
Reference in New Issue
Block a user