| | |
| | | using DevExpress.Utils; |
| | | using NetTaste; |
| | | using DevExpress.CodeParser; |
| | | using DevExpress.Utils; |
| | | using DevExpress.XtraTreeList; |
| | | using HStation.WinFrmUI.Xhs; |
| | | using System.Data; |
| | | |
| | | namespace HStation.WinFrmUI |
| | | { |
| | |
| | | InitializeComponent(); |
| | | this.treeList1.InitialMultiColSettings(); |
| | | this.PageTitle.Caption = "项目管理"; |
| | | this.PageTitle.HeaderSvgImage = this.svgImg32[0]; |
| | | this.PageTitle.SvgImageSize = new Size(24, 24); |
| | | } |
| | | |
| | | private List<XhsProjectMgrViewModel> _allProjectList = null; |
| | | |
| | | private BLL.XhsProjectExtensions _bll = null; |
| | | |
| | | /// <summary> |
| | | /// 初始化数据源 |
| | |
| | | public override async void InitialDataSource() |
| | | { |
| | | base.InitialDataSource(); |
| | | this.SetBindingData(); |
| | | } |
| | | |
| | | var allProjectList = await new BLL.XhsProject().GetAll(); |
| | | private async void SetBindingData() |
| | | { |
| | | _bll = new BLL.XhsProjectExtensions(); |
| | | var allProjectList = await _bll.GetAll(); |
| | | _allProjectList = new List<XhsProjectMgrViewModel>(); |
| | | if (allProjectList != null && allProjectList.Count > 0) |
| | | { |
| | | 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模型 |
| | | private async void barBtnViewBimface_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | var vm = this.treeList1.GetCurrentViewModel(_allProjectList); |
| | | var vm = GetCurrentViewModel(); |
| | | if (vm == null) |
| | | { |
| | | return; |
| | | } |
| | | var guid = new PageGuid() |
| | | { |
| | | Modular = "Bimface", |
| | | Modular = Yw.WinFrmUI.PageModular.Bimface, |
| | | MoudingType = Yw.WinFrmUI.Page.eMoudingType.Tab, |
| | | Function = "BimfaceView", |
| | | TagName = vm.ID.ToString() |
| | | Function = Yw.WinFrmUI.PageFunction.ViewBimface3d, |
| | | TagName = $"{vm.ID}" |
| | | }; |
| | | |
| | | if (!IsExistPage(guid, true)) |
| | |
| | | //刷新 |
| | | private void barBtnRefresh_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | this.RefreshData(); |
| | | this.SetBindingData(); |
| | | } |
| | | |
| | | #region 当前 |
| | | |
| | | //获取当前 |
| | | private XhsProjectMgrViewModel GetCurrentViewModel() |
| | | { |
| | | if (_allProjectList == null) |
| | | { |
| | | Yw.WinFrmUI.MessageBoxHelper.ShowError("数据初始化错误!"); |
| | | return null; |
| | | } |
| | | if (_allProjectList == null) |
| | | { |
| | | Yw.WinFrmUI.MessageBoxHelper.ShowInfo("无数据"); |
| | | return null; |
| | | } |
| | | var vm = this.treeList1.GetCurrentViewModel(_allProjectList); |
| | | if (vm == null) |
| | | { |
| | | Yw.WinFrmUI.MessageBoxHelper.ShowInfo("请选择数据行!"); |
| | | return null; |
| | | } |
| | | return vm; |
| | | } |
| | | |
| | | #endregion 当前 |
| | | |
| | | #region 基础操作 |
| | | |
| | | //添加 |
| | | private void barBtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | var dlg = new AddProjectDlg(); |
| | | dlg.ReloadDataEvent += async (rhs, mapinfo) => |
| | | { |
| | | var bll = new BLL.XhsProjectExtensions(); |
| | | var id = await bll.Insert(rhs); |
| | | if (id > 0) |
| | | { |
| | | rhs.ID = id; |
| | | var vmo = await _bll.GetByID(id); |
| | | _allProjectList.Add(new XhsProjectMgrViewModel(vmo, false)); |
| | | this.xhsProjectMgrViewModelBindingSource.ResetBindings(false); |
| | | if (mapinfo != null) |
| | | { |
| | | mapinfo.ObjectID = id; |
| | | mapinfo.ObjectName = rhs.Name; |
| | | var mapinfoid = await new Yw.BLL.MapInfo().Insert(mapinfo); |
| | | if (mapinfoid < 0) |
| | | { |
| | | TipFormHelper.ShowError("地图信息添加错误"); |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | return false; |
| | | }; |
| | | dlg.ShowDialog(); |
| | | } |
| | | |
| | | //编辑 |
| | | private void barBtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | var currentVm = this.GetCurrentViewModel(); |
| | | var dlg = new EditProjectDlg(); |
| | | dlg.SetBindingData(currentVm.ID); |
| | | dlg.ReloadDataEvent += async (rhs, mapinfo) => |
| | | { |
| | | if (await _bll.Update(rhs)) |
| | | { |
| | | currentVm.Reset(rhs); |
| | | this.xhsProjectMgrViewModelBindingSource.ResetBindings(false); |
| | | if (mapinfo != null) |
| | | { |
| | | // mapinfo.ObjectID = id; |
| | | mapinfo.ObjectName = rhs.Name; |
| | | var bol = await new Yw.BLL.MapInfo().Update(mapinfo); |
| | | if (!bol) |
| | | { |
| | | TipFormHelper.ShowError("地图信息编辑错误"); |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | return false; |
| | | }; |
| | | dlg.ShowDialog(); |
| | | } |
| | | |
| | | //删除 |
| | | private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | var currentVm = GetCurrentViewModel(); |
| | | if (currentVm == null) |
| | | { |
| | | MessageBoxHelper.ShowWarning("请选择数据行!"); |
| | | return; |
| | | } |
| | | if (MessageBoxHelper.IsClickOk($"确认删除数据行?", "提示")) |
| | | return; |
| | | var groupresult = await _bll.DeleteByID(currentVm.ID); |
| | | if (groupresult) |
| | | { |
| | | _allProjectList.Remove(currentVm); |
| | | this.xhsProjectMgrViewModelBindingSource.ResetBindings(false); |
| | | TipFormHelper.ShowSucceed("删除成功!"); |
| | | } |
| | | else |
| | | { |
| | | TipFormHelper.ShowSucceed("删除失败!"); |
| | | return; |
| | | } |
| | | } |
| | | |
| | | //详细信息 |
| | | private void barBtnInfo_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) |
| | | { |
| | | } |
| | | |
| | | #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); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |