namespace Yw.WinFrmUI
|
{
|
public partial class AddHydroSceneDlg : DevExpress.XtraEditors.XtraForm
|
{
|
public AddHydroSceneDlg()
|
{
|
InitializeComponent();
|
this.layoutControl1.SetupLayoutControl();
|
}
|
|
/// <summary>
|
/// 重载数据事件
|
/// </summary>
|
public event Action<long> ReloadDataEvent;
|
|
private Lazy<Yw.BLL.SysFlagStd> _bllFlag = new(() => new Yw.BLL.SysFlagStd());//标签bll
|
private Lazy<Yw.BLL.HydroScene> _bllScene = new(() => new Yw.BLL.HydroScene());//场景bll
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public async void SetBindingData()
|
{
|
var allFlagList = await _bllFlag.Value.GetFlagListBySysType(Yw.Hydro.DataType.HydroScene);
|
this.setFlagsEditCtrl1.SetBindingData(allFlagList, null);
|
}
|
|
//验证
|
private async Task<bool> Valid()
|
{
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(this.txtName.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.txtName, "必填项");
|
return false;
|
}
|
var code = this.txtCode.Text.Trim();
|
if (string.IsNullOrEmpty(code))
|
{
|
this.dxErrorProvider1.SetError(this.txtCode, "必填项");
|
return false;
|
}
|
if (await _bllScene.Value.IsExistCode(code))
|
{
|
this.dxErrorProvider1.SetError(this.txtCode, "编码已存在");
|
return false;
|
}
|
var tagName = this.txtTagName.Text.Trim();
|
if (!string.IsNullOrEmpty(tagName))
|
{
|
if (await _bllScene.Value.IsExistTagName(tagName))
|
{
|
this.dxErrorProvider1.SetError(this.txtTagName, "标志已存在");
|
return false;
|
}
|
}
|
return true;
|
}
|
|
//确定
|
private async void btnOk_Click(object sender, EventArgs e)
|
{
|
if (!await Valid())
|
{
|
return;
|
}
|
var model = new Yw.Dto.AddHydroSceneInput();
|
model.Name = this.txtName.Text.Trim();
|
model.Code = this.txtCode.Text.Trim();
|
model.Flags = this.setFlagsEditCtrl1.SelectedFlagList;
|
model.TagName = this.txtTagName.Text.Trim();
|
model.Description = this.txtDescription.Text.Trim();
|
|
var id = await _bllScene.Value.Insert(model);
|
if (id < 1)
|
{
|
MessageBoxHelper.ShowWarning("添加失败!");
|
return;
|
}
|
|
this.ReloadDataEvent?.Invoke(id);
|
this.DialogResult = DialogResult.OK;
|
this.Close();
|
|
}
|
}
|
}
|