namespace Yw.WinFrmUI
{
public partial class SetHydroGradingTreeDlg : DevExpress.XtraBars.Ribbon.RibbonForm
{
public SetHydroGradingTreeDlg()
{
InitializeComponent();
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
this.layoutControl1.SetupLayoutControl();
this.selectHydroGradingPropTreeCtrl1.SelectedPropChangedEvent += SelectHydroGradingPropTreeCtrl1_SelectedPropChangedEvent;
}
///
/// 重载数据事件
///
public event Action> ReloadDataEvent;
///
/// 应用数据事件
/// 第一个参数为 catalog
/// 第二个参数为 propname
/// 第三个参数为 是否应用成功
///
public event Action ApplyDataEvent;
//模型信息
private Yw.Model.HydroModelInfo _hydroInfo;
//所有颜色分级
private List _allGradingList = null;
//当前属性
private HydroGradingPropTreeViewModel _currentProp = null;
///
/// 绑定数据
///
public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List allGradingList)
{
_hydroInfo = hydroInfo;
_allGradingList = allGradingList;
this.setHydroGradingModelCtrl1.InitialData(allGradingList);
this.selectHydroGradingPropTreeCtrl1.InitialData();
}
//属性改变
private void SelectHydroGradingPropTreeCtrl1_SelectedPropChangedEvent(HydroGradingPropTreeViewModel obj)
{
if (_hydroInfo == null)
{
return;
}
_currentProp = obj;
this.setHydroGradingModelCtrl1.SetBindingData(_hydroInfo.ID, obj.Catalog, obj.PropName);
}
//保存
private async Task Save()
{
if (_hydroInfo == null)
{
return default;
}
var gradingList = this.setHydroGradingModelCtrl1.GetGrading();
var bol = await BLLFactory.Instance.Save(_hydroInfo.ID, gradingList);
if (bol)
{
_allGradingList = await BLLFactory.Instance.GetByModelID(_hydroInfo.ID);
this.setHydroGradingModelCtrl1.InitialData(_allGradingList);
this.setHydroGradingModelCtrl1.ResetBindingData();
this.ReloadDataEvent?.Invoke(_allGradingList);
return true;
}
return false;
}
//保存
private async void btnSave_Click(object sender, EventArgs e)
{
if (!await Save())
{
TipFormHelper.ShowError("保存失败");
return;
}
TipFormHelper.ShowSucceed("保存成功");
this.DialogResult = DialogResult.OK;
this.Close();
}
//应用
private async void btnApply_Click(object sender, EventArgs e)
{
if (_currentProp == null)
{
return;
}
if (_currentProp.Type == 0)
{
TipFormHelper.ShowWarn("请选择属性");
return;
}
if (!await Save())
{
TipFormHelper.ShowError("保存失败");
return;
}
if (this.ApplyDataEvent != null)
{
this.ApplyDataEvent.Invoke(_currentProp.Catalog, _currentProp.PropName);
TipFormHelper.ShowSucceed("应用成功");
}
}
}
}