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 } }