namespace Yw.WinFrmUI { /// /// /// public static class HydroInputEnergyScaleHelper { /// /// 获取分类损失比例列表 /// public static List GetAllInputEnergyScaleList ( this Yw.Model.HydroModelInfo hydroInfo, HydroCalcuResult calcuResult, List allEnergyList ) { if (hydroInfo == null) { return default; } var allScaleList = new List(); if (allEnergyList != null && allEnergyList.Count > 0) { var allInputEnergyList = allEnergyList.Where(x => x.EnergyType == EPAnet.eEnergyType.Input).ToList(); var inputEnergyScale = new HydroInputEnergyScaleViewModel() { EnergyName = "初始势能", EnergyValue = allInputEnergyList.Count > 0 ? allInputEnergyList.Sum(x => x.EnergyPower) : 0 }; allScaleList.Add(inputEnergyScale); } if (hydroInfo.Pumps != null && hydroInfo.Pumps.Count > 0) { var allCalcuResultVisualDict = calcuResult?.GetVisualDict(); var inputEnergyScale = new HydroInputEnergyScaleViewModel() { EnergyName = "水泵提升" }; foreach (var pump in hydroInfo.Pumps) { var calcuPumpResult = allCalcuResultVisualDict?.GetValue(pump.Code) as HydroCalcuPumpResult; if (calcuPumpResult != null) { if (calcuPumpResult.CalcuP.HasValue) { inputEnergyScale.EnergyValue += calcuPumpResult.CalcuP.Value * 1000; } } } allScaleList.Add(inputEnergyScale); } return allScaleList; } } }