using DevExpress.XtraEditors;
|
|
namespace Yw.WinFrmUI
|
{
|
public partial class PartitionMgr : DocumentPage
|
{
|
public PartitionMgr()
|
{
|
InitializeComponent();
|
this.PageTitle.Caption = "分区";
|
this.gridView1.SetNormalView();
|
this.gridView1.RegistCustomDrawRowIndicator(50);
|
}
|
|
private List<PartViewModel> _allbindingList = new List<PartViewModel>();
|
private BLL.Part _Bll = new BLL.Part();
|
|
//初始化
|
public override void InitialDataSource()
|
{
|
SetBindingData();
|
}
|
|
private async void SetBindingData()
|
{
|
var bll = new BLL.Part();
|
var all = await bll.GetAll();
|
if (all != null)
|
{
|
foreach (var item in all)
|
{
|
_allbindingList.Add(new PartViewModel(item));
|
}
|
}
|
_allbindingList = _allbindingList.OrderBy(sort => sort.SortCode).ToList();
|
this.partViewModelBindingSource.DataSource = _allbindingList;
|
this.partViewModelBindingSource.ResetBindings(false);
|
}
|
|
//添加
|
private void barBtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var dlg = new AddPartDlg();
|
dlg.ReloadEvent += async (rhs) =>
|
{
|
rhs.SortCode = _allbindingList.Count == 0 ? 1 : _allbindingList.Max(x => x.SortCode) + 1;
|
var id = await _Bll.Insert(rhs);
|
if (id > 0)
|
{
|
rhs.ID = id;
|
_allbindingList.Add(new PartViewModel(rhs));
|
this.partViewModelBindingSource.ResetBindings(false);
|
return true;
|
}
|
return false;
|
};
|
dlg.ShowDialog();
|
}
|
|
//编辑
|
private async void barBtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var vm = this.gridView1.GetCurrentViewModel(_allbindingList);
|
if (vm == null)
|
{
|
MessageBox.Show("请选择数据行!");
|
return;
|
}
|
var dlg = new EditPartDlg();
|
var model = await _Bll.GetByID(vm.ID);
|
if (model == null)
|
return;
|
dlg.SetbindingData(model);
|
dlg.ReloadData += async (rhs) =>
|
{
|
vm.Reset(rhs);
|
if (await _Bll.Update(rhs))
|
{
|
return true;
|
}
|
return false;
|
};
|
dlg.ShowDialog();
|
}
|
|
//排序码
|
private void barBtnSortCode_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
/* var vm = this.gridView1.GetCurrentViewModel(_allbindingList);
|
if (vm == null) { XtraMessageBox.Show("请选择数据行!"); }
|
var dlg = new SetSortCodeDlg();
|
dlg.SetBindingData(vm.SortCode);
|
dlg.ReloadDataEvent += (SortCode) =>
|
{
|
vm.SortCode = SortCode;
|
if (_Bll.Update(vm))
|
{
|
return true;
|
}
|
return false;
|
};
|
dlg.ShowDialog();*/
|
}
|
|
//删除
|
private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var vm = this.gridView1.GetCurrentViewModel(_allbindingList);
|
if (vm == null)
|
{
|
XtraMessageBox.Show("请选择数据行!");
|
return;
|
}
|
if (XtraMessageBox.Show($"确认删除数据行?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) != DialogResult.OK)
|
return;
|
if (await _Bll.DeleteByID(vm.ID))
|
{
|
XtraMessageBox.Show("删除成功!");
|
_allbindingList.Remove(vm);
|
this.partViewModelBindingSource.ResetBindings(false);
|
}
|
else XtraMessageBox.Show($"删除失败!");
|
}
|
|
//检索
|
private void barBtnSearch_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
if (this.gridView1.IsFindPanelVisible)
|
this.gridView1.HideFindPanel();
|
else
|
this.gridView1.ShowFindPanel();
|
}
|
}
|
}
|