namespace IStation.Application { /// /// MeterMonitorList /// [Route("SZJT/Meter/Monitor/List/Mobile")] [ApiDescriptionSettings("SZJT", Name = "仪表监测列表(手机)", Order = 1700)] public class MeterMonitorList_MobileController : IDynamicApiController { /// /// 通过 MeterID 获取 /// [Route("GetByMeterID@V1.0")] [HttpGet] public List GetByMeterID([FromQuery][Required] MeterIDInput input) { var allMappingList = new Yw.Service.EquipmentMonitorMapping().GetByEquipmentID(input.MeterID); if (allMappingList == null || allMappingList.Count < 1) { return default; } var allMonitorIds = allMappingList.Select(x => x.MonitorPointID).Distinct().ToList(); var allMonitorList = new Yw.Service.MonitorPoint().GetExSignalWithSignalTypeByIds(allMonitorIds); allMonitorList = allMonitorList?.Where(x => x.UseStatus == Yw.Model.eUseStatus.Enable).ToList(); allMonitorList = allMonitorList?.Where(x => x.CronType == Yw.Monitor.eCronType.Real).ToList(); if (allMonitorList == null || allMonitorList.Count < 1) { return default; } var service_monitor_record = new Yw.Service.MonitorRealRecord(); var vmList = new List(); foreach (var monitor in allMonitorList) { var signal = monitor.SignalList.First(); var record = service_monitor_record.GetLastRecord(signal.ID); var vm = new MeterMonitorListItemMobileDto(monitor, signal, record); vmList.Add(vm); } return vmList; } } }