using DevExpress.XtraEditors;
|
using DevExpress.XtraTabbedMdi;
|
|
namespace Yw.WinFrmUI
|
{
|
public partial class HydroHydrantBulkSetListCtrl : DevExpress.XtraEditors.XtraUserControl, IHydroParterBulkSetListCtrl
|
{
|
public HydroHydrantBulkSetListCtrl()
|
{
|
InitializeComponent();
|
this.gridView1.SetNormalView(30);
|
this.gridView1.RegistCustomDrawRowIndicator(40);
|
}
|
|
/// <summary>
|
/// 水力点击事件
|
/// </summary>
|
public event Action<Yw.Model.HydroParterInfo> HydroClickEvent;
|
|
/// <summary>
|
/// 是否拥有水利列表
|
/// </summary>
|
public bool HasHydroList
|
{
|
get { return _allBindingList != null && _allBindingList.Count > 0; }
|
}
|
|
//所有列表
|
private List<HydroHydrantBulkSetViewModel> _allList = null;
|
//所有绑定列表
|
private List<HydroHydrantBulkSetViewModel> _allBindingList = null;
|
|
/// <summary>
|
/// 绑定数据
|
/// </summary>
|
public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo)
|
{
|
_allList = new List<HydroHydrantBulkSetViewModel>();
|
if (hydroInfo != null && hydroInfo.Hydrants != null && hydroInfo.Hydrants.Count > 0)
|
{
|
foreach (var hydrant in hydroInfo.Hydrants)
|
{
|
var vm = new HydroHydrantBulkSetViewModel(hydrant);
|
_allList.Add(vm);
|
}
|
}
|
Search();
|
}
|
|
//查询
|
private void Search()
|
{
|
if (_allList == null || _allList.Count < 1)
|
{
|
return;
|
}
|
var name = this.txtName.Text.Trim();
|
var code = this.txtCode.Text.Trim();
|
var modelType = this.txtModelType.Text.Trim();
|
_allBindingList = _allList;
|
if (!string.IsNullOrEmpty(name))
|
{
|
_allBindingList = _allBindingList.Where(x => !string.IsNullOrEmpty(x.Name) && x.Name.Contains(name)).ToList();
|
}
|
if (!string.IsNullOrEmpty(code))
|
{
|
_allBindingList = _allBindingList.Where(x => !string.IsNullOrEmpty(x.Code) && x.Code.Contains(code)).ToList();
|
}
|
if (!string.IsNullOrEmpty(modelType))
|
{
|
_allBindingList = _allBindingList.Where(x => !string.IsNullOrEmpty(x.ModelType) && x.ModelType.Contains(modelType)).ToList();
|
}
|
this.hydroHydrantBulkSetViewModelBindingSource.DataSource = _allBindingList;
|
this.hydroHydrantBulkSetViewModelBindingSource.ResetBindings(false);
|
}
|
|
//重置
|
private void Reset()
|
{
|
this.txtName.EditValue = null;
|
this.txtCode.EditValue = null;
|
this.txtModelType.EditValue = null;
|
Search();
|
}
|
|
//设置
|
private void Set()
|
{
|
Search();
|
if (_allBindingList == null || _allBindingList.Count < 1)
|
{
|
XtraMessageBox.Show("无可设置连接节点数据");
|
return;
|
}
|
var dlg = new HydroHydrantBulkSetDlg();
|
dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList());
|
dlg.ReloadDataEvent += (list) =>
|
{
|
_allBindingList.ForEach(x =>
|
{
|
x.Elev = x.Vmo.Elev;
|
x.MinorLoss = x.Vmo.MinorLoss;
|
x.Demand = x.Vmo.Demand;
|
});
|
this.hydroHydrantBulkSetViewModelBindingSource.DataSource = _allBindingList;
|
this.hydroHydrantBulkSetViewModelBindingSource.ResetBindings(false);
|
};
|
dlg.ShowDialog();
|
}
|
|
//行点击事件
|
private void gridView1_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
|
{
|
var row = this.gridView1.GetRow(e.RowHandle) as HydroHydrantBulkSetViewModel;
|
if (row == null)
|
{
|
return;
|
}
|
this.HydroClickEvent?.Invoke(row.Vmo);
|
}
|
|
//查询
|
private void btnSearch_Click(object sender, EventArgs e)
|
{
|
Search();
|
}
|
|
//重置
|
private void btnReset_Click(object sender, EventArgs e)
|
{
|
Reset();
|
}
|
|
//设置
|
private void btnSet_Click(object sender, EventArgs e)
|
{
|
Set();
|
}
|
|
|
}
|
}
|