| | |
| | | { |
| | | InitializeComponent(); |
| | | this.treeList1.InitialDefaultSettings(); |
| | | this.treeList1.BorderStyle = BorderStyles.NoBorder; |
| | | this.layoutControl1.SetupLayoutControl(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 选择项目事件 |
| | | /// </summary> |
| | | public event Action<XhsProjectStdDto> SelectProjectEvent; |
| | | public event Action<XhsProjectVmo> SelectProjectEvent; |
| | | |
| | | /// <summary> |
| | | /// 刷新数据事件 |
| | | /// </summary> |
| | | public event Action RefreshDataEvent; |
| | | |
| | | public event Action<long> JumpDirectEvent; |
| | | |
| | | /// <summary> |
| | | /// 项目导入完成事件 |
| | | /// </summary> |
| | | public event Action<ImportXhsProjectViewModel> ImportProjectCompletedEvent; |
| | | |
| | | private List<HomeXhsProjectTreeViewModel> _allBindingList = null;//当前绑定列表 |
| | | private List<HomeXhsProjectTreeViewModel> _allBindingList = new(); |
| | | |
| | | /// <summary> |
| | | /// 绑定数据 |
| | | /// </summary> |
| | | public async void SetBindingData(List<XhsProjectStdDto> allProjectList) |
| | | public async void SetBindingData(List<XhsProjectVmo> allProjectList) |
| | | { |
| | | _allBindingList = new List<HomeXhsProjectTreeViewModel>(); |
| | | foreach (var item in allProjectList) |
| | | if (allProjectList != null) |
| | | { |
| | | if (await IsHaveBimFace(item.ID)) |
| | | foreach (var item in allProjectList) |
| | | { |
| | | var vm = new HomeXhsProjectTreeViewModel(item, true); |
| | | _allBindingList.Add(vm); |
| | | } |
| | | else |
| | | { |
| | | var vm = new HomeXhsProjectTreeViewModel(item, false); |
| | | _allBindingList.Add(vm); |
| | | if (await IsHaveBimFace(item.ID)) |
| | | { |
| | | var vm = new HomeXhsProjectTreeViewModel(item, true); |
| | | _allBindingList.Add(vm); |
| | | } |
| | | else |
| | | { |
| | | var vm = new HomeXhsProjectTreeViewModel(item, false); |
| | | _allBindingList.Add(vm); |
| | | } |
| | | } |
| | | } |
| | | this.treeList1.DataSource = _allBindingList; |
| | |
| | | //查找项目是否存在模型 |
| | | private async Task<bool> IsHaveBimFace(long ProjectID) |
| | | { |
| | | var projectSite = await new BLL.XhsProjectSiteStd().GetDefaultByProjectID(ProjectID); |
| | | var projectSite = await BLLFactory<HStation.BLL.XhsProjectSite>.Instance.GetDefaultByProjectID(ProjectID); |
| | | if (projectSite == null) |
| | | { |
| | | return false; |
| | | } |
| | | var relation = await new Yw.BLL.BimfaceFileRelationStd() |
| | | var relation = await BLLFactory<Yw.BLL.BimfaceFileRelation>.Instance |
| | | .GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, projectSite.ID, Yw.Bimface.Purpose.Simulation); |
| | | if (relation == null) |
| | | { |
| | | return false; |
| | | } |
| | | var bimfaceFile = await new Yw.BLL.BimfaceFileStd().GetByID(relation.BimfaceFileID); |
| | | var bimfaceFile = await BLLFactory<Yw.BLL.BimfaceFile>.Instance.GetByID(relation.BimfaceFileID); |
| | | if (bimfaceFile == null) |
| | | { |
| | | return false; |
| | |
| | | this.treeList1.OptionsView.ShowTreeLines = this.barCkTreeLine.Checked ? DefaultBoolean.True : DefaultBoolean.False; |
| | | } |
| | | |
| | | //鼠标点击 |
| | | private void treeList1_RowCellClick(object sender, DevExpress.XtraTreeList.RowCellClickEventArgs e) |
| | | { |
| | | //暂时不用 |
| | | //if (e.Button == MouseButtons.Left) |
| | | //{ |
| | | // var vm = this.treeList1.GetDataRecordByNode(e.Node) as HomeXhsProjectTreeViewModel; |
| | | // this.SelectProjectEvent?.Invoke(vm.Project); |
| | | //} |
| | | } |
| | | |
| | | //聚焦节点改变 |
| | | private void treeList1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e) |
| | | { |
| | |
| | | { |
| | | this.RefreshDataEvent?.Invoke(); |
| | | } |
| | | |
| | | //双击事件 |
| | | private void treeList1_DoubleClick(object sender, EventArgs e) |
| | | { |
| | | var vm = this.treeList1.GetCurrentViewModel(_allBindingList); |
| | | if (vm == null) |
| | | { |
| | | return; |
| | | } |
| | | JumpDirectEvent.Invoke(vm.Project.ID); |
| | | } |
| | | } |
| | | } |