namespace IStation.Application { /// /// 运行分析 /// [AllowAnonymous] [Route("Web/RunHeat")] [ApiDescriptionSettings("Web", Name = "运行分析", Order = 1)] public class RunHeat_Controller : IDynamicApiController, ITransient { /// /// 通过日期区间获取热力区间列表 /// [Route("GetRectListOfDayRange@V1.0")] [HttpGet] public List GetRectListOfDayRange([FromQuery][Required] QueryEtaAnalyRunHeatRectInput input) { var list = new IStation.Service.EtaMultiRealRecord().GetRunQHETRectByObjectOfDayRange (input.Station, input.Qspace, input.Hspace, input.StartDay, input.EndDay); var vm_list = list?.Select(x => new EtaAnalyRunHeatRectItemDto() { Qmax = x.Qmax, Qmin = x.Qmin, Hmax = x.Hmax, Hmin = x.Hmin, Eavg = x.Eavg, Tsum = x.Tsum }).ToList(); return vm_list; } /// /// 通过日期区间获取热力区间列表(包含坐标信息) /// [Route("GetRectListExOfDayRange@V1.0")] [HttpGet] public EtaAnalyRunHeatRectListDto GetRectListExOfDayRange([FromQuery][Required] QueryEtaAnalyRunHeatRectInput input) { var list = new IStation.Service.EtaMultiRealRecord().GetRunQHETRectListByObjectOfDayRange (input.Station, input.Qspace, input.Hspace, input.StartDay, input.EndDay); var vm = new EtaAnalyRunHeatRectListDto(); vm.Qmax = list.Qmax; vm.Qmin = list.Qmin; vm.Qspace = list.Qspace; vm.Hmax = list.Hmax; vm.Hmin = list.Hmin; vm.Hspace = list.Hspace; vm.Items = list.RectList?.Select(x => new EtaAnalyRunHeatRectItemDto() { Qmax = x.Qmax, Qmin = x.Qmin, Hmax = x.Hmax, Hmin = x.Hmin, Eavg = x.Eavg, Tsum = x.Tsum }).ToList(); return vm; } /// /// 通过日期区间获取热力区间详细列表 /// [Route("GetRectDetailListOfDayRange@V1.0")] [HttpGet] public List GetRectDetailListOfDayRange([FromQuery][Required] QueryEtaAnalyRunHeatRectDetailInput input) { var list = new IStation.Service.EtaMultiRealRecord().GetRunSummaryContentByStationOfQHDayRange (input.Station, input.Qmin, input.Qmax, input.Hmin, input.Hmax, input.StartDay, input.EndDay); if (list == null || list.Count < 1) { return default; } var vm_list = new List(); foreach (var item in list) { var vm = new EtaAnalyRunHeatRectDetailItemDto(); vm.Qavg = Math.Round(item.Qavg, 1); vm.Havg = Math.Round(item.Havg, 2); vm.Pavg = Math.Round(item.Pavg, 1); vm.Eavg = Math.Round(item.Eavg, 1); vm.Tsum = item.Tsum; vm.Count = item.RunningCount; var nameList = new List(); for (int i = 0; i < item.RunningFlag.Count; i++) { nameList.Add(item.RunningFlag[i] + "#"); } vm.Name = string.Join(",", nameList); vm_list.Add(vm); } return vm_list; } } }