duheng
2024-09-23 651d1f87d2e0e26021c20f3667e1db7b1349b478
WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/02-asset-mgr/XhsSchemeAssetMgrPage.cs
@@ -1,12 +1,40 @@
namespace HStation.WinFrmUI
using DevExpress.CodeParser;
using DevExpress.XtraEditors;
using HStation.WinFrmUI.Xhs;
using Yw.EPAnet;
namespace HStation.WinFrmUI
{
    public partial class XhsSchemeAssetMgrPage : DocumentPage
    {
        public XhsSchemeAssetMgrPage()
        {
            InitializeComponent();
            InitializeComponent();
            this.xhsProjectAssetsBimfaceCtrl1.ClickParterEvent += XhsProjectAssetsBimfaceCtrl1_ClickParterEvent;
        }
        private long _projectId;
        private Yw.Model.HydroModelInfo _hydro = null;
        /// <summary>
        ///
        /// </summary>
        public async Task SetBindingData(long projectId)
        {
            _projectId = projectId;
            var projectSite = await BLLFactory<HStation.BLL.XhsProjectSite>.Instance.GetDefaultByProjectID(projectId);
            if (projectSite == null)
            {
                return;
            }
            var hydroRelation = await new Yw.BLL.HydroModelRelation().GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, projectSite.ID, HStation.Xhs.Purpose.Simulation);
            if (hydroRelation == null)
            {
                return;
            }
            _hydro = await new Yw.BLL.HydroModelInfo().GetByID(hydroRelation.ModelID);
            this.xhsProjectAssetsPropertyCtrl1.SetBindingData(_hydro);
        }
        /// <summary>
        /// 初始化数据
@@ -14,6 +42,83 @@
        public override void InitialDataSource()
        {
            base.InitialDataSource();
            this.xhsProjectAssetsBimfaceCtrl1.SetBindingData(_projectId);
        }
        //bimface 构件点击
        private void XhsProjectAssetsBimfaceCtrl1_ClickParterEvent(string objectId)
        {
            if (_hydro == null)
            {
                return;
            }
            this.xhsProjectAssetsPropertyCtrl1.SetPropertyViewModel(objectId);
        }
        private void barBtnCheck_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (_hydro == null)
            {
                return;
            }
            var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro);
            var result = netWork.Check();
            XtraMessageBox.Show(JsonHelper.Object2FormatJson(result));
        }
        private void barBtnCalcu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (_hydro == null)
            {
                return;
            }
            var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro);
            var list = netWork.Calcu();
            XtraMessageBox.Show(JsonHelper.Object2FormatJson(list));
        }
        //临时---选择泵型号
        private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //  var dlg = new AssetsAutoMatchingMainDlg();
            //     dlg.SetMatching();
            //    dlg.ShowDialog();
        }
        private async void barButtonItem2_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (_hydro == null)
            {
                return;
            }
            var pumps = _hydro.Pumps;
            var ids = pumps.Select(x => x.Code).Distinct().ToList();
            await this.xhsProjectAssetsBimfaceCtrl1.TranslucentComponents(ids);
        }
        private async void barButtonItem3_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (_hydro == null)
            {
                return;
            }
            var pumps = _hydro.Pumps;
            var ids = pumps.Select(x => x.Code).Distinct().ToList();
            await this.xhsProjectAssetsBimfaceCtrl1.OpaqueComponents(ids);
        }
        private async void barButtonItem4_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            await this.xhsProjectAssetsBimfaceCtrl1.ShowAllComponents();
        }
        //自动匹配
        private void barBtnAutoMatch_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            /*  var dlg = new AssetsAutoMatchingMainDlg();
              dlg.SetMatching();
              dlg.ShowDialog();
  */
        }
    }
}
}