duheng
2024-08-21 6c88a90d2330a27c0052a22538f6ebd6200faae7
WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs
@@ -1,6 +1,8 @@
using DevExpress.CodeParser;
using DevExpress.Utils;
using DevExpress.XtraTreeList;
using HStation.WinFrmUI.Xhs;
using System.Data;
namespace HStation.WinFrmUI
{
@@ -25,6 +27,11 @@
        public override async void InitialDataSource()
        {
            base.InitialDataSource();
            this.SetBindingData();
        }
        private async void SetBindingData()
        {
            _bll = new BLL.XhsProjectExtensions();
            var allProjectList = await _bll.GetAll();
            _allProjectList = new List<XhsProjectMgrViewModel>();
@@ -32,16 +39,41 @@
            {
                foreach (var project in allProjectList)
                {
                    var vm = new XhsProjectMgrViewModel(project);
                    _allProjectList.Add(vm);
                    if (await IsHaveBimFace(project.ID))
                    {
                        var vm = new XhsProjectMgrViewModel(project, true);
                        _allProjectList.Add(vm);
                    }
                    else
                    {
                        var vm = new XhsProjectMgrViewModel(project, false);
                        _allProjectList.Add(vm);
                    }
                }
            }
            this.xhsProjectMgrViewModelBindingSource.DataSource = _allProjectList;
        }
        //发布
        private void barBtnPublish_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        //查找项目是否存在模型
        private async Task<bool> IsHaveBimFace(long ProjectID)
        {
            var projectSite = await new BLL.XhsProjectSiteStd().GetDefaultByProjectID(ProjectID);
            if (projectSite == null)
            {
                return false;
            }
            var relation = await new Yw.BLL.BimfaceFileRelationStd()
               .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);
            if (bimfaceFile == null)
            {
                return false;
            }
            return true;
        }
        //查看bimface模型
@@ -97,7 +129,7 @@
        //刷新
        private void barBtnRefresh_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            this.RefreshData();
            this.SetBindingData();
        }
        #region 当前
@@ -140,7 +172,7 @@
                {
                    rhs.ID = id;
                    var vmo = await _bll.GetByID(id);
                    _allProjectList.Add(new XhsProjectMgrViewModel(vmo));
                    _allProjectList.Add(new XhsProjectMgrViewModel(vmo, false));
                    this.xhsProjectMgrViewModelBindingSource.ResetBindings(false);
                    if (mapinfo != null)
                    {
@@ -178,7 +210,7 @@
                        var bol = await new Yw.BLL.MapInfo().Update(mapinfo);
                        if (!bol)
                        {
                            TipFormHelper.ShowError("地图信息添加错误");
                            TipFormHelper.ShowError("地图信息编辑错误");
                        }
                    }
                    return true;
@@ -219,5 +251,42 @@
        }
        #endregion 基础操作
        private void treeList1_CustomDrawRow(object sender, DevExpress.XtraTreeList.CustomDrawRowEventArgs e)
        {
            var a = repositoryItemButtonEdit1.ReadOnly = true;
        }
        private async void treeList1_RowCellClick(object sender, RowCellClickEventArgs e)
        {
            if (_allProjectList == null || _allProjectList.Count < 1)
                return;
            var vm = GetCurrentViewModel();
            if (vm == null)
            {
                return;
            }
            if (e.Column != this.ColViewBimface)
                return;
            if (!vm.IsHaveBimface)
            {
                TipFormHelper.ShowWarn("请先上传文件再进行操作!");
                return;
            }
            var guid = new PageGuid()
            {
                Modular = Yw.WinFrmUI.PageModular.Bimface,
                MoudingType = Yw.WinFrmUI.Page.eMoudingType.Tab,
                Function = Yw.WinFrmUI.PageFunction.ViewBimface3d,
                TagName = $"{vm.ID}"
            };
            if (!IsExistPage(guid, true))
            {
                var page = new ViewXhsProjectBimfacePage();
                await page.SetBindingData(vm.ID);
                CreatePage(page, guid);
            }
        }
    }
}