using DevExpress.Utils.Extensions;
|
|
namespace Yw.WinFrmUI
|
{
|
public partial class EditDivisionDlg : DevExpress.XtraEditors.XtraForm
|
{
|
public EditDivisionDlg()
|
{
|
InitializeComponent();
|
this.dataLayoutControl1.SetupLayoutControl();
|
}
|
|
/// <summary>
|
/// 回调事件
|
/// </summary>
|
public event Func<Yw.Vmo.DivisionVmo, object, Task<bool>> ReloadDataEvent;
|
|
/// <summary>
|
/// 验证识别码是否存在事件
|
/// </summary>
|
public event Func<string, long, bool> VerifyTagNameExistEvent;
|
|
private Yw.Vmo.DivisionVmo _model = null;
|
|
/// <summary>
|
/// 绑定
|
/// </summary>
|
public async void SetBindingData(Yw.Vmo.DivisionVmo model)
|
{
|
var list = new List<DivisionViewModel>();
|
_model = model;
|
this.NameTextEdit.EditValue = _model.Name;
|
this.ADCodeTextEdit.EditValue = _model.ADCode;
|
this.TagNameTextEdit.EditValue = _model.TagName;
|
this.DescriptionTextEdit.EditValue = _model.Description;
|
this.TypeImageComboBoxEdit.Properties.AddEnum(typeof(Yw.Model.eDivisionType), false);
|
this.TypeImageComboBoxEdit.EditValue = _model.Type;
|
var allList = await new BLL.Division().GetAll();
|
if (allList != null)
|
{
|
foreach (var item in allList)
|
{
|
list.Add(new DivisionViewModel(item));
|
}
|
}
|
|
list.Remove(list.Find(x => x.ID == _model.ID));
|
treeListLookUpEdit1TreeList.DataSource = list;
|
if (_model.ParentIds != null && _model.ParentIds.Count > 0)
|
{
|
this.textEditParents.EditValue = _model.ParentIds.Last();
|
}
|
}
|
|
//验证
|
private bool Valid()
|
{
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(this.NameTextEdit.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.NameTextEdit, "必填项");
|
return false;
|
}
|
|
var tagName = this.TagNameTextEdit.Text.Trim();
|
if (!string.IsNullOrEmpty(tagName))
|
{
|
if (_model.TagName != tagName)
|
{
|
if (VerifyTagNameExistEvent != null)
|
{
|
if (VerifyTagNameExistEvent(tagName, _model.ID))
|
{
|
this.dxErrorProvider1.SetError(this.TagNameTextEdit, "重复");
|
return false;
|
}
|
}
|
}
|
}
|
|
return true;
|
}
|
|
//确定
|
private async void btnOk_Click(object sender, EventArgs e)
|
{
|
if (_model == null)
|
return;
|
if (!Valid())
|
return;
|
_model.Name = this.NameTextEdit.Text.Trim();
|
_model.Type = (Yw.Model.eDivisionType)this.TypeImageComboBoxEdit.EditValue;
|
_model.ADCode = this.ADCodeTextEdit.Text.Trim();
|
_model.Description = this.DescriptionTextEdit.Text.Trim();
|
_model.TagName = this.TagNameTextEdit.Text.Trim();
|
if (this.ReloadDataEvent == null)
|
return;
|
if (!await this.ReloadDataEvent(_model, this.textEditParents.EditValue))
|
{
|
MessageBoxHelper.ShowError("更新失败!");
|
return;
|
}
|
MessageBoxHelper.ShowSuccess("更新成功!");
|
this.DialogResult = System.Windows.Forms.DialogResult.OK;
|
this.Close();
|
}
|
}
|
}
|