using Microsoft.AspNetCore.Mvc;
using System.Net;
using System.Net.Http.Headers;
using Microsoft.Extensions.Hosting.Internal;
using Microsoft.AspNetCore.Http.Extensions;
using IStation.Untity;
using Furion.DynamicApiController;
using System.ComponentModel.DataAnnotations;
using Mapster;
namespace IStation.Application
{
///
/// EtaMultiRealRecord
///
[Route("Eta/EtaMultiRealRecord")]
[ApiDescriptionSettings("Eta", Name = "能效(多)实时记录", Order = 990)]
public class EtaMultiRealRecord_Controller : IDynamicApiController
{
private readonly Service.EtaMultiRealRecord _service = new Service.EtaMultiRealRecord();
#region Last
///
/// 获取最近一条记录
///
[Route("GetLastRecord@V1.0")]
[HttpGet]
public EtaMultiRealRecordDto GetLastRecord([FromQuery][Required] ObjectUnderCorpInput input)
{
var model = _service.GetLastRecord(input.CorpID, input.ObjectType, input.ObjectID);
return model?.Adapt();
}
///
/// 获取最近一条记录列表
///
[Route("GetLastRecordList@V1.0")]
[HttpGet]
public List GetLastRecordList([FromQuery][Required] ObjectIdsUnderCorpInput input)
{
var list = _service.GetLastRecord(input.CorpID, input.ObjectType, LongListHelper.ToList(input.ObjectIds));
return list?.Select(x => x.Adapt()).ToList();
}
///
/// 获取最近一条正常记录
///
[Route("GetLastNormalRecord@V1.0")]
[HttpGet]
public EtaMultiRealRecordDto GetLastNormalRecord([FromQuery][Required] ObjectUnderCorpInput input)
{
var model = _service.GetLastNormalRecord(input.CorpID, input.ObjectType, input.ObjectID);
return model?.Adapt();
}
#endregion
#region Normal Content
///
/// 通过 StationID 获取某日的正常内容记录
///
[Route("GetNormalContentByStationIDOfDay@V1.0")]
[HttpGet]
public List GetNormalContentByStationIDOfDay([FromQuery][Required]StationIDUnderCorpOfDayInput input)
{
var list = _service.GetByObjectOfDay(input.CorpID,ObjectType.Station,input.StationID,input.Day);
list = list?.Where(x => x.AnalyStatus == Model.Eta.eAnalyStatus.Normal).ToList();
var vmList = list?.Select(x => new EtaMultiRealRecordNormalContentDto(x)).ToList();
return vmList;
}
#endregion
}
}