DD.WellWorkover.Cloud/AsbCloudWebApi/Controllers/TelemetryInfoController.cs
Степанов Дмитрий 5a8d1e448d Изменение API
1. Добавлен контроллер TelemetryInfoController
2024-08-21 14:53:50 +05:00

50 lines
1.4 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudApp.Data.SAUB;
using AsbCloudApp.Requests;
using AsbCloudApp.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace AsbCloudWebApi.Controllers;
/// <summary>
/// Информация о телеметрии
/// </summary>
[Route("api/[controller]")]
[ApiController]
[Authorize]
public class TelemetryInfoController : ControllerBase
{
private readonly ITelemetryService telemetryService;
public TelemetryInfoController(ITelemetryService telemetryService)
{
this.telemetryService = telemetryService;
}
/// <summary>
/// Получить список информации о телеметрии
/// </summary>
/// <param name="request"></param>
/// <param name="token"></param>
/// <returns></returns>
[HttpGet]
[Permission]
[ProducesResponseType(typeof(IEnumerable<TelemetryInfoDto>), StatusCodes.Status200OK)]
public async Task<IActionResult> GetAsync([FromQuery] TelemetryInfoRequestBase request, CancellationToken token)
{
var idCompany = User.GetCompanyId();
if (!idCompany.HasValue)
return Forbid();
var requestToService = new TelemetryInfoRequest(idCompany.Value, request);
var telemetriesInfo = await telemetryService.GetInfoAsync(requestToService, token);
return Ok(telemetriesInfo);
}
}