namespace HStation.WinFrmUI
|
{
|
public partial class CreateXhsSchemeInfoPage : DevExpress.XtraEditors.XtraUserControl, Yw.WinFrmUI.IWizardPage<CreateXhsSchemeViewModel>
|
{
|
public CreateXhsSchemeInfoPage()
|
{
|
InitializeComponent();
|
}
|
|
/// <summary>
|
/// 页面状态改变事件
|
/// </summary>
|
public event Action PageStateChangedEvent;
|
|
/// <summary>
|
/// 变更类型改变事件
|
/// </summary>
|
public event Action<List<string>> ChangeTypeChangedEvent;
|
|
private CreateXhsSchemeViewModel _vm = null;//操作对象
|
private bool _isInitialize = false;//是否初始化
|
private bool _allow_next = false;//允许下一步
|
|
/// <summary>
|
/// 初始化
|
/// </summary>
|
public async void InitialPage(CreateXhsSchemeViewModel t)
|
{
|
if (_isInitialize)
|
{
|
return;
|
}
|
_vm = t;
|
_isInitialize = true;
|
var allFlagList = await BLLFactory<Yw.BLL.SysFlag>.Instance.GetBySysType(HStation.Xhs.DataType.XhsScheme);
|
if (allFlagList != null&& allFlagList.Any())
|
{
|
this.setFlagsEditCtrl1.SetBindingData(allFlagList.Select(x => x.Name).ToList(), null);
|
}
|
|
this.xhsSchemeChangeTypeCheckedListHorizCtrl1.SetBindingData(t.HydroInfo);
|
this.xhsSchemeChangeTypeCheckedListHorizCtrl1.CheckedChangedEvent += (change_type_list) =>
|
{
|
if (change_type_list == null || !change_type_list.Any())
|
{
|
_allow_next = false;
|
}
|
else
|
{
|
_allow_next = true;
|
}
|
this.ChangeTypeChangedEvent?.Invoke(change_type_list);
|
this.PageStateChangedEvent?.Invoke();
|
};
|
if (t.Scheme == null)
|
{
|
t.Scheme = new XhsSchemeVmo();
|
if (t.AllSchemeList != null && t.AllSchemeList.Count > 0)
|
{
|
t.Scheme.SortCode = t.AllSchemeList.Max(x => x.SortCode) + 1;
|
}
|
}
|
}
|
|
//保存
|
private bool Save()
|
{
|
if (!_isInitialize)
|
{
|
return false;
|
}
|
this.dxErrorProvider1.ClearErrors();
|
if (string.IsNullOrEmpty(this.txtName.Text.Trim()))
|
{
|
this.dxErrorProvider1.SetError(this.txtName, "必填项");
|
return false;
|
}
|
_vm.Scheme.Name = this.txtName.Text.Trim();
|
_vm.Scheme.NO = this.txtNO.Text.Trim();
|
_vm.Scheme.Flags = this.setFlagsEditCtrl1.SelectedFlagList;
|
_vm.Scheme.AllowCustom = this.ckAllowCustom.Checked;
|
_vm.Scheme.ChangeTypes = this.xhsSchemeChangeTypeCheckedListHorizCtrl1.GetCheckedList();
|
_vm.Scheme.Description = this.txtDescription.Text.Trim();
|
return true;
|
}
|
|
/// <summary>
|
/// 允许上一步
|
/// </summary>
|
public bool AllowPrev
|
{
|
get
|
{
|
return false;
|
}
|
}
|
|
/// <summary>
|
/// 允许下一步
|
/// </summary>
|
public bool AllowNext
|
{
|
get
|
{
|
return _allow_next;
|
}
|
}
|
|
/// <summary>
|
/// 允许取消
|
/// </summary>
|
public bool AllowCancel
|
{
|
get
|
{
|
return true;
|
}
|
}
|
|
/// <summary>
|
/// 允许完成
|
/// </summary>
|
public bool AllowComplete
|
{
|
get
|
{
|
if (!_isInitialize)
|
return false;
|
|
return !_allow_next;
|
}
|
|
}
|
|
/// <summary>
|
/// 能否上一步
|
/// </summary>
|
public bool CanPrev()
|
{
|
return false;
|
}
|
|
/// <summary>
|
/// 能否下一步
|
/// </summary>
|
public bool CanNext()
|
{
|
return Save();
|
}
|
|
/// <summary>
|
/// 能否关闭
|
/// </summary>
|
public bool CanCancel()
|
{
|
return true;
|
}
|
|
/// <summary>
|
/// 能否完成
|
/// </summary>
|
public bool CanComplete()
|
{
|
return Save();
|
}
|
|
|
|
|
}
|
}
|