using Yw.Model;
|
|
namespace Yw.WinFrmUI
|
{
|
public partial class HydroSingleWorkingEvaluationCtrl : DevExpress.XtraEditors.XtraUserControl
|
{
|
public HydroSingleWorkingEvaluationCtrl()
|
{
|
InitializeComponent();
|
this.layoutControl1.SetupLayoutControl();
|
}
|
|
private List<HydroWorkingMonitorEvaluationViewModel> _allEvaluationList = null;//所有评价列表
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData
|
(
|
Yw.Model.HydroModelInfo hydroInfo,
|
List<HydroMonitorVmo> allMonitorList,
|
HydroWorkingVmo working,
|
HydroCalcuResult calcuResult
|
)
|
{
|
var allWorkingMonitorList = JsonHelper.Json2Object<List<HydroWorkingMonitorViewModel>>(working?.WorkingInfo);
|
SetBindingData(hydroInfo, allMonitorList, allWorkingMonitorList, calcuResult);
|
}
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData
|
(
|
Yw.Model.HydroModelInfo hydroInfo,
|
List<HydroMonitorVmo> allMonitorList,
|
List<HydroWorkingMonitorViewModel> allWorkingMonitorList,
|
HydroCalcuResult calcuResult
|
)
|
{
|
var allVisualDict = hydroInfo?.GetVisualDict();
|
var allCalcuResultDict = calcuResult?.GetVisualDict();
|
SetBindingData(allVisualDict, allMonitorList, allWorkingMonitorList, allCalcuResultDict);
|
}
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData
|
(
|
Dictionary<string, HydroVisualInfo> allVisualDict,
|
List<HydroMonitorVmo> allMonitorList,
|
List<HydroWorkingMonitorViewModel> allWorkingMonitorList,
|
Dictionary<string, HydroCalcuVisualResult> allCalcuResultDict
|
)
|
{
|
_allEvaluationList = new List<HydroWorkingMonitorEvaluationViewModel>();
|
if (allVisualDict != null && allVisualDict.Count > 0)
|
{
|
if (allMonitorList != null && allMonitorList.Count > 0)
|
{
|
if (allWorkingMonitorList != null && allWorkingMonitorList.Count > 0)
|
{
|
if (allCalcuResultDict != null && allCalcuResultDict.Count > 0)
|
{
|
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);
|
_allEvaluationList.Add(vm);
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
|
this.hydroTotalEvaluationCtrl1.SetBindingData(_allEvaluationList);
|
var flowList = _allEvaluationList.Where(x => x.PropName == HydroVisualCalcuProp.CalcuQ || x.PropName == HydroVisualCalcuProp.CalcuFlow).ToList();
|
this.hydroFlowItemCtrl1.SetBindingData(flowList);
|
var pressList = _allEvaluationList.Where(x => x.PropName == HydroVisualCalcuProp.CalcuPr || x.PropName == HydroVisualCalcuProp.CalcuPress).ToList();
|
this.hydroPressItemCtrl1.SetBindingData(pressList);
|
this.hydroWorkingMonitorEvaluationListCtrl1.SetBindingData(_allEvaluationList);
|
}
|
|
|
|
|
}
|
}
|