using Yw.Model;
|
|
namespace Yw.WinFrmUI
|
{
|
public partial class HydroWorkingEvaluationCtrl : DevExpress.XtraEditors.XtraUserControl
|
{
|
public HydroWorkingEvaluationCtrl()
|
{
|
InitializeComponent();
|
this.layoutControl1.SetupLayoutControl();
|
}
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData
|
(
|
Dictionary<string, HydroVisualInfo> allVisualDict,
|
List<HydroMonitorVmo> allMonitorList,
|
List<HydroWorkingMonitorViewModel> allWorkingMonitorList,
|
Dictionary<string, HydroCalcuVisualResult> allCalcuResultDict
|
)
|
{
|
if (allVisualDict == null || allVisualDict.Count < 1)
|
{
|
return;
|
}
|
if (allMonitorList == null || allMonitorList.Count < 1)
|
{
|
return;
|
}
|
if (allWorkingMonitorList == null || allWorkingMonitorList.Count < 1)
|
{
|
return;
|
}
|
if (allCalcuResultDict == null || allCalcuResultDict.Count < 1)
|
{
|
return;
|
}
|
|
var totalList = new List<HydroWorkingMonitorEvaluationViewModel>();
|
foreach (var monitor in allMonitorList)
|
{
|
if (allVisualDict.ContainsKey(monitor.Relation))
|
{
|
var visual = allVisualDict[monitor.Relation];
|
if (visual != null)
|
{
|
var workingMonitor = allWorkingMonitorList.Find(x => x.Relation == monitor.Relation && x.PropName == monitor.PropName);
|
if (workingMonitor != null)
|
{
|
if (allCalcuResultDict.ContainsKey(monitor.Relation))
|
{
|
var calcuResult = allCalcuResultDict[monitor.Relation];
|
if (calcuResult != null)
|
{
|
var vm = new HydroWorkingMonitorEvaluationViewModel(visual, monitor, workingMonitor, calcuResult);
|
totalList.Add(vm);
|
}
|
}
|
}
|
}
|
}
|
}
|
|
this.hydroTotalEvaluationCtrl1.SetBindingData(totalList);
|
var flowList = totalList.Where(x => x.PropName == HydroVisualCalcuProp.CalcuQ || x.PropName == HydroVisualCalcuProp.CalcuFlow).ToList();
|
this.hydroFlowItemCtrl1.SetBindingData(flowList);
|
var pressList = totalList.Where(x => x.PropName == HydroVisualCalcuProp.CalcuPr || x.PropName == HydroVisualCalcuProp.CalcuPress).ToList();
|
this.hydroPressItemCtrl1.SetBindingData(pressList);
|
this.hydroWorkingMonitorEvaluationListCtrl1.SetBindingData(totalList);
|
}
|
|
}
|
}
|