From eabeb23dba205de82d8d64c9fc361d3d7b95588d Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 19 二月 2025 12:50:43 +0800 Subject: [PATCH] 能耗分析整理 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/01-home/01-project/HomeXhsProjectTreeListCtrl.cs | 70 ++++++++++++++++++++++++++--------- 1 files changed, 52 insertions(+), 18 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/01-home/01-project/HomeXhsProjectTreeListCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/01-home/01-project/HomeXhsProjectTreeListCtrl.cs index ad71cb0..c369075 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/01-home/01-project/HomeXhsProjectTreeListCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/01-home/01-project/HomeXhsProjectTreeListCtrl.cs @@ -14,35 +14,70 @@ /// <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 void SetBindingData(List<XhsProjectStdDto> allProjectList) + public async void SetBindingData(List<XhsProjectVmo> allProjectList) { _allBindingList = new List<HomeXhsProjectTreeViewModel>(); - foreach (var item in allProjectList) + if (allProjectList != null) { - var vm = new HomeXhsProjectTreeViewModel(item); - _allBindingList.Add(vm); + foreach (var item in allProjectList) + { + 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; this.treeList1.ForceInitialize(); this.treeList1.ExpandAll(); } + //鏌ユ壘椤圭洰鏄惁瀛樺湪妯″瀷 + private async Task<bool> IsHaveBimFace(long ProjectID) + { + var projectSite = await BLLFactory<HStation.BLL.XhsProjectSite>.Instance.GetDefaultByProjectID(ProjectID); + if (projectSite == null) + { + return false; + } + 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 BLLFactory<Yw.BLL.BimfaceFile>.Instance.GetByID(relation.BimfaceFileID); + if (bimfaceFile == null) + { + return false; + } + return true; + } /// <summary> /// 璁剧疆榛樿 @@ -99,17 +134,6 @@ 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) { @@ -134,5 +158,15 @@ 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); + } } -} +} \ No newline at end of file -- Gitblit v1.9.3