namespace Yw.WinFrmUI
{
public partial class SetHydroEvaluationModelDlg : DevExpress.XtraEditors.XtraForm
{
public SetHydroEvaluationModelDlg()
{
InitializeComponent();
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
this.layoutControl1.SetupLayoutControl();
this.selectHydroEvaluationCatalogCtrl1.SelectedCodeChangedEvent += SelectHydroEvaluationCatalogCtrl1_SelectedCodeChangedEvent;
this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent;
}
///
/// 重载数据事件
///
public event Action> ReloadDataEvent;
private long _modelId;//模型id
///
///
///
public async void SetBindingData(long modelId)
{
_modelId = modelId;
var hydroEvaluationList = await BLLFactory.Instance.GetByModelID(_modelId);
if (hydroEvaluationList == null || hydroEvaluationList.Count < 1)
{
var evaluationConfig = Yw.Settings.HydroParasHelper.Hydro.Evaluation;
if (evaluationConfig != null && evaluationConfig.Items != null && evaluationConfig.Items.Count > 0)
{
hydroEvaluationList = new List();
evaluationConfig.Items.ForEach(x =>
{
var vmo = new HydroEvaluationVmo()
{
ModelID = _modelId,
Catalog = x.Catalog,
EvaluateType = x.EvaluateType,
EvaluateLower = x.EvaluateLower,
EvaluateUpper = x.EvaluateUpper,
EvaluateContent = x.EvaluateContent,
SortCode = evaluationConfig.Items.IndexOf(x)
};
hydroEvaluationList.Add(vmo);
});
}
}
this.setHydroEvaluationModelCtrl1.InitialData(hydroEvaluationList);
this.selectHydroEvaluationCatalogCtrl1.InitialData();
}
//选择改变
private void SelectHydroEvaluationCatalogCtrl1_SelectedCodeChangedEvent(string obj)
{
this.setHydroEvaluationModelCtrl1.SetBindingData(_modelId, obj);
}
//确定
private async void GeneralOkAndCancelCtrl1_OkEvent()
{
if (_modelId < 1)
{
return;
}
var evaluationList = this.setHydroEvaluationModelCtrl1.GetEvaluation();
if (evaluationList == null || evaluationList.Count < 1)
{
return;
}
var bol = await BLLFactory.Instance.Save(_modelId, evaluationList);
if (!bol)
{
TipFormHelper.ShowError("保存失败!");
return;
}
var rhs = await BLLFactory.Instance.GetByModelID(_modelId);
this.ReloadDataEvent?.Invoke(rhs);
this.DialogResult = DialogResult.OK;
this.Close();
}
}
}