using DevExpress.XtraEditors;
|
using System;
|
using System.Windows.Forms;
|
|
namespace IStation.WinFrmUI.Basic
|
{
|
public partial class EditPumpCurveInfoDlg : XtraForm
|
{
|
public EditPumpCurveInfoDlg()
|
{
|
InitializeComponent();
|
this.IconOptions.Icon = WinFrmUI.Properties.Resources.App;
|
this.dataLayoutControl1.SetupLayoutControl();
|
}
|
|
/// <summary>
|
/// 回调事件
|
/// </summary>
|
public event Func<Model.PumpCurve, bool> ReloadDataEvent;
|
|
private Model.PumpCurve _model = null;//当前操作对象
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData(Model.PumpCurve rhs)
|
{
|
_model = new Model.PumpCurve(rhs);
|
this.txtID.EditValue = _model.ID;
|
this.txtCurveCode.EditValue = _model.CurveCode;
|
this.DescriptionMemoEdit.EditValue = _model.Description;
|
|
this.imgCmbCurveSourceFrom.Properties.AddEnum(typeof(Model.eCurveSourceFrom), false);
|
this.imgCmbCurveSourceFrom.EditValue = _model.SourceFrom;
|
|
this.imgCmbCurveCreateMethod.Properties.AddEnum(typeof(Model.eCurveCreateMethod), false);
|
this.imgCmbCurveCreateMethod.EditValue = _model.CreateMethod;
|
|
var curveInfo = _model.CurveInfo;
|
this.imgCmbQhCurveFitType.Properties.AddEnum(typeof(Model.eCurveFitType), false);
|
this.imgCmbQhCurveFitType.EditValue = curveInfo?.CurveQH?.FitType;
|
|
this.imgCmbQeCurveFitType.Properties.AddEnum(typeof(Model.eCurveFitType), false);
|
this.imgCmbQeCurveFitType.EditValue = curveInfo?.CurveQE?.FitType;
|
|
this.imgCmbQpCurveFitType.Properties.AddEnum(typeof(Model.eCurveFitType), false);
|
this.imgCmbQpCurveFitType.EditValue = curveInfo?.CurveQP?.FitType;
|
|
this.imgCmbReliabilityStatus.Properties.AddEnum(typeof(Model.PumpCurve.eReliabilityStatus), false);
|
this.imgCmbReliabilityStatus.EditValue = _model.ReliabilityStatus;
|
|
}
|
|
//验证
|
private bool Valid()
|
{
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(this.txtCurveCode.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.txtCurveCode, "必填项");
|
return false;
|
}
|
return true;
|
}
|
|
//确定
|
private void btnOk_Click(object sender, EventArgs e)
|
{
|
if (!Valid())
|
return;
|
_model.CurveCode = this.txtCurveCode.Text.Trim();
|
_model.Description = this.DescriptionMemoEdit.Text.Trim();
|
|
_model.SourceFrom = (Model.eCurveSourceFrom)this.imgCmbCurveSourceFrom.EditValue;
|
_model.CreateMethod = (Model.eCurveCreateMethod)this.imgCmbCurveCreateMethod.EditValue;
|
|
var fitTypeQh = (Model.eCurveFitType)this.imgCmbQhCurveFitType.EditValue;
|
var fitPointsQh = _model.CurveInfo.CurveQH.DefinePoints;
|
if (fitPointsQh == null)
|
fitPointsQh = _model.CurveInfo.CurveQH.GetFitPoints();
|
|
var fitTypeQp = (Model.eCurveFitType)this.imgCmbQpCurveFitType.EditValue;
|
var fitPointsQp = _model.CurveInfo.CurveQP.DefinePoints;
|
if (fitPointsQp == null)
|
fitPointsQp = _model.CurveInfo.CurveQP.GetFitPoints();
|
|
|
var fitTypeQe = (Model.eCurveFitType)this.imgCmbQeCurveFitType.EditValue;
|
var fitPointsQe = _model.CurveInfo.CurveQE.DefinePoints;
|
if (fitPointsQe == null)
|
fitPointsQe = _model.CurveInfo.CurveQE.GetFitPoints();
|
|
|
_model.CurveInfo.CurveQH = Model.FitCurveHelper.BuildCurveExpress(fitPointsQh, fitTypeQh);
|
_model.CurveInfo.CurveQE = Model.FitCurveHelper.BuildCurveExpress(fitPointsQe, fitTypeQe);
|
_model.CurveInfo.CurveQP = Model.FitCurveHelper.BuildCurveExpress(fitPointsQp, fitTypeQp);
|
_model.ReliabilityStatus = (Model.PumpCurve.eReliabilityStatus)this.imgCmbReliabilityStatus.EditValue;
|
|
var result = this.ReloadDataEvent?.Invoke(_model);
|
if (result == null || !result.Value)
|
{
|
XtraMessageBox.Show("更新失败!");
|
return;
|
}
|
XtraMessageBox.Show("更新成功!");
|
this.DialogResult = DialogResult.OK;
|
this.Close();
|
}
|
|
}
|
}
|