using DevExpress.XtraEditors;
|
using Yw;
|
using Yw.Untity;
|
|
namespace HStation.WinFrmUI.Assets
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public partial class PackageTreeListCtrl : XtraUserControl
|
{
|
public PackageTreeListCtrl()
|
{
|
InitializeComponent();
|
this.treeList1.InitialDefaultSettings();
|
this.treeList1.SelectImageList = ImageLib.Lib;
|
}
|
|
//聚焦改变事件
|
public event Action<long> ReloadEvent = null;
|
|
private BLL.AssetsPackageSeries _bll = null;
|
|
private List<AssetsPackageSeriesViewModel> _allBindingList = new List<AssetsPackageSeriesViewModel>();
|
|
public async void SetBindingData()
|
{
|
_bll = new BLL.AssetsPackageSeries();
|
var alllist = await _bll.GetAll();
|
if (alllist != null)
|
{
|
foreach (var item in alllist)
|
{
|
_allBindingList.Add(new AssetsPackageSeriesViewModel(item));
|
}
|
}
|
this.treeList1.DataSource = _allBindingList;
|
this.treeList1.RefreshDataSource();
|
}
|
|
//获取系列ID
|
public AssetsPackageSeriesViewModel GetCurrentSeries()
|
{
|
var vm = this.treeList1.GetCurrentViewModel(_allBindingList);
|
if (vm == null)
|
return default;
|
return vm;
|
}
|
|
//添加阀门系列
|
private void BtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var dlg = new AddAssetsPackageSeriesDlg();
|
dlg.ReloadDataEvent += async (rhs, currentId, manufacturerId) =>
|
{
|
if (currentId != null)
|
{
|
var select = await _bll.GetByID(Convert.ToInt64(currentId));
|
rhs.ParentIds = TreeParentIdsHelper.GetChildParentIds(select.ID, select.ParentIds);
|
}
|
var bll = new BLL.AssetsPackageSeries();
|
var id = await bll.Insert(rhs);
|
if (id > 0)
|
{
|
rhs.ID = id;
|
_allBindingList.Add(new AssetsPackageSeriesViewModel(rhs));
|
if (manufacturerId != null)
|
{
|
var mappingVmo = new Vmo.AssetsPackageMfrMappingVmo
|
{
|
ManufacturerID = Convert.ToInt64(manufacturerId),
|
SeriesID = id
|
};
|
await new BLL.AssetsPackageSeriesManufacturerMapping().Insert(mappingVmo);
|
}
|
this.treeList1.RefreshDataSource();
|
return true;
|
}
|
return false;
|
};
|
dlg.ShowDialog();
|
}
|
|
//聚焦切换
|
private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e)
|
{
|
var vm = this.treeList1.GetCurrentViewModel(_allBindingList);
|
if (vm == null)
|
{
|
return;
|
}
|
ReloadEvent.Invoke(vm.ID);
|
}
|
|
//修改
|
private async void barBtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var vm = this.treeList1.GetCurrentViewModel(_allBindingList);
|
if (vm == null)
|
{
|
MessageBoxHelper.ShowWarning("请选择数据行!");
|
return;
|
}
|
var dlg = new EditAssetsPackageSeriesDlg();
|
var AssetsEquipmentSeries = await BLLFactory<BLL.AssetsPackageSeries>.Instance.GetByID(vm.ID);
|
if (AssetsEquipmentSeries == null)
|
return;
|
dlg.SetBindingData(AssetsEquipmentSeries);
|
dlg.ReloadDataEvent += async (rhs, currentId, mapping) =>
|
{
|
if (currentId != null)
|
{
|
var select = await _bll.GetByID(Convert.ToInt64(currentId));
|
rhs.ParentIds = TreeParentIdsHelper.GetChildParentIds(select.ID, select.ParentIds);
|
}
|
if (await BLLFactory<BLL.AssetsPackageSeries>.Instance.Update(rhs))
|
{
|
vm.Reset(rhs);
|
if (mapping != null)
|
{
|
await new BLL.AssetsPackageSeriesManufacturerMapping().Update(mapping);
|
}
|
this.treeList1.RefreshDataSource();
|
return true;
|
}
|
return false;
|
};
|
dlg.ShowDialog();
|
}
|
|
//删除
|
private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
{
|
var currentVm = this.treeList1.GetCurrentViewModel(_allBindingList);
|
if (currentVm == null)
|
{
|
MessageBoxHelper.ShowWarning("请选择数据行!");
|
return;
|
}
|
if (MessageBoxHelper.IsClickOk($"确认删除数据行?", "提示"))
|
return;
|
var groupresult = await _bll.DeleteByID(currentVm.ID);
|
if (groupresult)
|
{
|
_allBindingList.Remove(currentVm);
|
var mapping = await new BLL.AssetsPackageSeriesManufacturerMapping().GetBySeriesID(currentVm.ID);
|
if (mapping != null)
|
{
|
await new BLL.AssetsPackageSeriesManufacturerMapping().DeleteByID(Convert.ToInt64(mapping.ManufacturerID));
|
}
|
this.treeList1.RefreshDataSource();
|
TipFormHelper.ShowSucceed("删除成功!");
|
}
|
else
|
{
|
TipFormHelper.ShowError("删除失败!");
|
return;
|
}
|
}
|
}
|
}
|