namespace Yw.WinFrmUI
{
public partial class SetHydroTankDlg : DevExpress.XtraEditors.XtraForm
{
public SetHydroTankDlg()
{
InitializeComponent();
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
this.layoutControl1.SetupLayoutControl();
this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent;
}
///
/// 返回数据事件
///
public event Action> ReloadDataEvent;
private List _allVisualList = null;//所有构件列表
private HydroChangeHelper _changeHelper = null;//改变辅助类
private HydroPropStatusHelper _propStatusHelper = null;//属性状态辅助类
///
/// 绑定数据
///
public void SetBindingData
(
Yw.Model.HydroTankInfo parter,
HydroChangeHelper changeHelper = null,
HydroPropStatusHelper propStatusHelper = null
)
{
var allParterList = parter == null ? null : new List() { parter };
SetBindingData(allParterList, changeHelper, propStatusHelper);
}
///
/// 绑定数据
///
public void SetBindingData
(
List allParterList,
HydroChangeHelper changeHelper = null,
HydroPropStatusHelper propStatusHelper = null
)
{
_allVisualList = allParterList;
_changeHelper = changeHelper;
_propStatusHelper = propStatusHelper;
if (_allVisualList != null && _allVisualList.Count == 1)
{
var visual = _allVisualList.First();
this.txtPoolElev.EditValue = visual.PoolElev;
this.txtInitLevel.EditValue = visual.InitLevel;
this.txtMinLevel.EditValue = visual.MinLevel;
this.txtMaxLevel.EditValue = visual.MaxLevel;
this.txtDN.EditValue = visual.DN;
this.txtMinVol.EditValue = visual.MinVol;
}
}
//确定
private void GeneralOkAndCancelCtrl1_OkEvent()
{
if (_allVisualList == null || _allVisualList.Count < 1)
{
return;
}
double? poolElev = this.txtPoolElev.EditValue == null ? null : double.Parse(this.txtPoolElev.EditValue.ToString());
double? initLevel = this.txtInitLevel.EditValue == null ? null : double.Parse(this.txtInitLevel.EditValue.ToString());
double? minLevel = this.txtMinLevel.EditValue == null ? null : double.Parse(this.txtMinLevel.EditValue.ToString());
double? maxLevel = this.txtMaxLevel.EditValue == null ? null : double.Parse(this.txtMaxLevel.EditValue.ToString());
double? dn = this.txtDN.EditValue == null ? null : double.Parse(this.txtDN.EditValue.ToString());
double? minVol = this.txtMinVol.EditValue == null ? null : double.Parse(this.txtMinVol.EditValue.ToString());
_allVisualList.ForEach(x =>
{
if (poolElev.HasValue)
{
if (x.PoolElev != poolElev.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.PoolElev), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.PoolElev = poolElev.Value;
}
if (initLevel.HasValue)
{
if (x.InitLevel != initLevel.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.InitLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.InitLevel = initLevel.Value;
}
if (minLevel.HasValue)
{
if (x.MinLevel != minLevel.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.MinLevel = minLevel.Value;
}
if (maxLevel.HasValue)
{
if (x.MaxLevel != maxLevel.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MaxLevel), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.MaxLevel = maxLevel.Value;
}
if (dn.HasValue)
{
if (x.DN != dn.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.DN), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.DN = dn.Value;
}
if (minVol.HasValue)
{
if (x.MinVol != minVol.Value)
{
_changeHelper.Append(x, eChangeType.Update);
_propStatusHelper?.UpdatePropStatus(x.Code, nameof(x.MinVol), Yw.Hydro.ePropStatus.Normal, $"{DateTime.Now.ToStandardString()}通过设置组件修改");
}
x.MinVol = minVol.Value;
}
});
this.ReloadDataEvent?.Invoke(_allVisualList);
this.DialogResult = DialogResult.OK;
this.Close();
}
}
}