From ee823b8b34abf4faed1b4427940453d8266e9765 Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期六, 14 九月 2024 14:50:07 +0800 Subject: [PATCH] 增加首页地图信息点击事件 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs | 129 +++++++++++++++++++++++------------------- 1 files changed, 71 insertions(+), 58 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs index a4c7fa4..31b51ff 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/01-import/00-core/ImportXhsProjectHelper.cs @@ -1,4 +1,5 @@ 锘縰sing DevExpress.XtraEditors; +using HStation.Vmo; using static DevExpress.XtraEditors.XtraInputBox; using static System.Windows.Forms.VisualStyles.VisualStyleElement.Window; @@ -18,14 +19,16 @@ /// <param name="feedBackMsg">淇℃伅鍙嶉</param> /// <param name="feedBackProgress">杩涘害鍙嶉</param> /// <returns></returns> - public static async Task<bool> Import(ImportXhsProjectViewModel vm, Action<string> feedBackMsg, Action<int, int> feedBackProgress) + public static async Task<bool> Import(ImportXhsProjectViewModel vm, Action<string, Color> feedBackMsg, Action<int, int> feedBackProgress) { var msg = string.Empty; + + var IsContinue = true; #region 绗竴姝� 涓存椂鏂囦欢澶勭悊锛堣繘搴�5%锛� msg = "寮�濮嬪鍏ラ」鐩�..."; - feedBackMsg?.Invoke(msg); + feedBackMsg?.Invoke(msg, Color.Black); //涓存椂鏂囦欢澶硅矾寰� var tempFolder = Path.Combine(Yw.Service.ConfigHelper.DataPath, HStation.Settings.XhsParasHelper.Xhs.DataFolder, _tempFolder); @@ -43,11 +46,11 @@ #region 绗簩姝� 鍒涘缓椤圭洰锛堣繘搴� 10%锛� - feedBackMsg?.Invoke("姝e湪鍒涘缓椤圭洰..."); + feedBackMsg?.Invoke("姝e湪鍒涘缓椤圭洰...", Color.Black); var bllXhsProjectExtensions = new Lazy<BLL.XhsProjectExtensions>(() => new BLL.XhsProjectExtensions()); - var project = new Vmo.Xhs.XhsProjectExtensions(); + var project = new Vmo.XhsProjectExtensionsVmo(); project.NO = vm.NO; project.Name = vm.Name; project.Address = vm.Address; @@ -56,8 +59,8 @@ project.TagName = vm.TagName; project.Description = vm.Description; - project.SiteList = new List<Vmo.Xhs.XhsProjectSite>() { - new Vmo.Xhs.XhsProjectSite(){ + project.SiteList = new List<XhsProjectSiteVmo>() { + new XhsProjectSiteVmo(){ Name=vm.Name, Description=vm.Description } @@ -66,11 +69,11 @@ var projectId = await bllXhsProjectExtensions.Value.Insert(project); if (projectId < 1) { - feedBackMsg?.Invoke("椤圭洰鍒涘缓澶辫触锛侊紒锛�"); + feedBackMsg?.Invoke("椤圭洰鍒涘缓澶辫触锛侊紒锛�", Color.Red); return false; } - feedBackMsg?.Invoke("椤圭洰鍒涘缓鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("椤圭洰鍒涘缓鎴愬姛銆傘�傘��", Color.Green); vm.ProjectID = projectId; @@ -80,11 +83,11 @@ #region 绗笁姝� 璁剧疆鍦板浘浣嶇疆锛堣繘搴� 20%锛� - feedBackMsg?.Invoke("姝e湪璁剧疆鍦板浘浣嶇疆..."); + feedBackMsg?.Invoke("姝e湪璁剧疆鍦板浘浣嶇疆...", Color.Black); if (vm.Location != null) { - var mapInfo = new Yw.Vmo.Map.MapInfo(); + var mapInfo = new Yw.Vmo.MapInfoVmo(); mapInfo.ObjectType = HStation.Xhs.DataType.XhsProject; mapInfo.ObjectID = projectId; mapInfo.ObjectName = project.Name; @@ -96,17 +99,17 @@ var mapInfoId = await new Yw.BLL.MapInfo().Insert(mapInfo); if (mapInfoId < 1) { - feedBackMsg?.Invoke("璁剧疆鍦板浘浣嶇疆澶辫触锛侊紒锛�"); + feedBackMsg?.Invoke("璁剧疆鍦板浘浣嶇疆澶辫触锛侊紒锛�", Color.Red); } else { vm.MapInfoID = mapInfoId; - feedBackMsg?.Invoke("璁剧疆鍦板浘浣嶇疆鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("璁剧疆鍦板浘浣嶇疆鎴愬姛銆傘�傘��", Color.Green); } } else { - feedBackMsg?.Invoke("鏈缃湴鍥句綅缃俊鎭紒锛侊紒"); + feedBackMsg?.Invoke("鏈缃湴鍥句綅缃俊鎭紒锛侊紒", Color.Red); } feedBackProgress?.Invoke(100, 20); @@ -116,23 +119,34 @@ #region 绗洓姝� 鍘嬬缉鏂囦欢瑙f瀽 锛堣繘搴�25%锛� msg = "姝e湪瑙f瀽妯″瀷鏂囦欢..."; - feedBackMsg?.Invoke(msg); + feedBackMsg?.Invoke(msg, Color.Black); var bol = Yw.FileFolderZipHelper.UnZip(vm.ZipFile, tempFolder, null); if (!bol) { - feedBackMsg?.Invoke("妯″瀷鏂囦欢瑙f瀽澶辫触锛侊紒锛�"); - return false; + feedBackMsg?.Invoke("妯″瀷鏂囦欢瑙f瀽澶辫触锛侊紒锛�", Color.Red); + //return false; + } + else + { + IsContinue = false; + } + + if (IsContinue) + { + feedBackMsg?.Invoke("椤圭洰瀵煎叆鎴愬姛銆傘�傘��", Color.Green); + feedBackProgress?.Invoke(100, 100); + return true; } var tempFolderInfo = new DirectoryInfo(tempFolder); var allFileInfoList = tempFolderInfo.GetFiles(); if (allFileInfoList == null || allFileInfoList.Count() < 1) { - feedBackMsg?.Invoke("妯″瀷鏂囦欢鏍煎紡閿欒锛侊紒锛�"); + feedBackMsg?.Invoke("妯″瀷鏂囦欢鏍煎紡閿欒锛侊紒锛�", Color.Red); return false; } - feedBackMsg?.Invoke("妯″瀷鏂囦欢瑙f瀽鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("妯″瀷鏂囦欢瑙f瀽鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 25); @@ -140,25 +154,25 @@ #region 绗簲姝� 瑙f瀽姘村姏缁撴瀯鏂囦欢 锛堣繘搴�30%锛� - feedBackMsg?.Invoke("姝e湪瑙f瀽姘村姏缁撴瀯鏂囦欢..."); + feedBackMsg?.Invoke("姝e湪瑙f瀽姘村姏缁撴瀯鏂囦欢...", Color.Black); var jsonFileInfo = allFileInfoList.Where(x => x.Extension == ".json").FirstOrDefault(); if (jsonFileInfo == null) { - feedBackMsg?.Invoke("姘村姏缁撴瀯鏂囦欢鏍煎紡閿欒锛侊紒锛�"); + feedBackMsg?.Invoke("姘村姏缁撴瀯鏂囦欢鏍煎紡閿欒锛侊紒锛�", Color.Red); return false; } var revitModel = HStation.Service.RevitParseHelper.FromJsonFile(jsonFileInfo.FullName, out msg); if (revitModel == null) { - feedBackMsg?.Invoke($"{msg}锛侊紒锛�"); + feedBackMsg?.Invoke($"{msg}锛侊紒锛�", Color.Red); return false; } var hydroInfo = HStation.Hydro.TransferHelper.FromRevit(revitModel, out msg); if (hydroInfo == null) { - feedBackMsg?.Invoke($"姘村姏缁撴瀯鏂囦欢瑙f瀽澶辫触锛寋msg}锛侊紒锛�"); + feedBackMsg?.Invoke($"姘村姏缁撴瀯鏂囦欢瑙f瀽澶辫触锛寋msg}锛侊紒锛�", Color.Red); return false; } @@ -166,11 +180,11 @@ var hydroId = await bllHydroInfo.Save(hydroInfo); if (hydroId < 1) { - feedBackMsg?.Invoke("姘村姏缁撴瀯淇℃伅淇濆瓨澶辫触锛侊紒锛�"); + feedBackMsg?.Invoke("姘村姏缁撴瀯淇℃伅淇濆瓨澶辫触锛侊紒锛�", Color.Red); return false; } - feedBackMsg?.Invoke("姘村姏缁撴瀯鏂囦欢瑙f瀽鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("姘村姏缁撴瀯鏂囦欢瑙f瀽鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 30); @@ -180,18 +194,17 @@ #region 绗叚姝� 鍏宠仈姘村姏缁撴瀯妯″瀷锛堣繘搴� 40%锛� - var bllXhsProjectSite = new BLL.XhsProjectSiteStd(); - var projectSite = await bllXhsProjectSite.GetDefaultByProjectID(projectId); + var projectSite = await BLLFactory<HStation.BLL.XhsProjectSite>.Instance.GetDefaultByProjectID(projectId); if (projectSite == null) { - feedBackMsg?.Invoke("椤圭洰绔欎俊鎭敊璇�..."); + feedBackMsg?.Invoke("椤圭洰绔欎俊鎭敊璇�...", Color.Red); return false; } var projectSiteId = projectSite.ID; vm.ProjectSiteID = projectSite.ID; - feedBackMsg?.Invoke("姝e湪鍏宠仈姘村姏缁撴瀯妯″瀷..."); + feedBackMsg?.Invoke("姝e湪鍏宠仈姘村姏缁撴瀯妯″瀷...", Color.Black); var hydroRelation = new Yw.Dto.AddHydroModelRelationInput(); hydroRelation.ObjectType = HStation.Xhs.DataType.XhsProjectSite; @@ -205,13 +218,13 @@ var hydroRelationId = await bllHydroRelation.Insert(hydroRelation); if (hydroRelationId < 1) { - feedBackMsg?.Invoke("鍏宠仈姘村姏缁撴瀯妯″瀷澶辫触锛侊紒锛�"); + feedBackMsg?.Invoke("鍏宠仈姘村姏缁撴瀯妯″瀷澶辫触锛侊紒锛�", Color.Red); return false; } vm.HydroRelationID = hydroRelationId; - feedBackMsg?.Invoke("鍏宠仈姘村姏缁撴瀯妯″瀷鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("鍏宠仈姘村姏缁撴瀯妯″瀷鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 40); @@ -219,27 +232,27 @@ #region 绗竷姝� 涓婁紶Revit妯″瀷鏂囦欢锛堣繘搴� 45%锛� - feedBackMsg?.Invoke("姝e湪瑙f瀽Revit妯″瀷鏂囦欢..."); + feedBackMsg?.Invoke("姝e湪瑙f瀽Revit妯″瀷鏂囦欢...", Color.Black); var rvtFileInfo = allFileInfoList.Where(x => x.Extension == ".rvt").FirstOrDefault(); if (rvtFileInfo == null) { - feedBackMsg?.Invoke("Revit妯″瀷鏂囦欢瑙f瀽澶辫触锛侊紒锛�"); - feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��"); + feedBackMsg?.Invoke("Revit妯″瀷鏂囦欢瑙f瀽澶辫触锛侊紒锛�", Color.Red); + feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��", Color.Blue); return true; } - var bimfaceId = await Yw.WinFrmUI.BimfaceHelper.UploadFile(rvtFileInfo.FullName);//涓婁紶 - //var bimfaceId = 10000872887098; //娴嬭瘯鐢ㄤ緥 + //var bimfaceId = await Yw.WinFrmUI.BimfaceHelper.UploadFile(rvtFileInfo.FullName);//涓婁紶 + var bimfaceId = 10000872887098; //娴嬭瘯鐢ㄤ緥 if (bimfaceId < 1) { - feedBackMsg?.Invoke("Revit妯″瀷鏂囦欢涓婁紶澶辫触锛侊紒锛�"); - feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��"); + feedBackMsg?.Invoke("Revit妯″瀷鏂囦欢涓婁紶澶辫触锛侊紒锛�", Color.Red); + feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��", Color.Blue); return true; } vm.BimfaceId = bimfaceId; - feedBackMsg?.Invoke("瑙f瀽Revit妯″瀷鏂囦欢鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("瑙f瀽Revit妯″瀷鏂囦欢鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 45); @@ -247,9 +260,9 @@ #region 绗叓姝� 淇濆瓨Bimface鏂囦欢 锛堣繘搴� 50%锛� - feedBackMsg?.Invoke("姝e湪淇濆瓨Bimface鏂囦欢..."); + feedBackMsg?.Invoke("姝e湪淇濆瓨Bimface鏂囦欢...", Color.Black); - var bimfaceFile = new Yw.Dto.AddBimfaceFileInput(); + var bimfaceFile = new Yw.Vmo.BimfaceFileVmo(); bimfaceFile.BimfaceId = bimfaceId.ToString(); bimfaceFile.Name = vm.Name; bimfaceFile.ModelType = (int)Yw.Bimface.eModelType.File; @@ -262,13 +275,13 @@ var bimfaceFileId = await bllBimfaceFile.Insert(bimfaceFile); if (bimfaceFileId < 1) { - feedBackMsg?.Invoke("Bimface鏂囦欢淇濆瓨澶辫触锛侊紒锛�"); - feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢淇濆瓨澶辫触锛侊紒锛�", Color.Red); + feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��", Color.Blue); return true; } vm.BimfaceFileID = bimfaceFileId; - feedBackMsg?.Invoke("Bimface鏂囦欢淇濆瓨鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢淇濆瓨鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 50); @@ -276,9 +289,9 @@ #region 绗節姝� 鍏宠仈Bimface鏂囦欢锛堣繘搴� 55%锛� - feedBackMsg?.Invoke("姝e湪鍏宠仈Bimface鏂囦欢..."); + feedBackMsg?.Invoke("姝e湪鍏宠仈Bimface鏂囦欢...", Color.Black); - var bimfaceRelation = new Yw.Dto.AddBimfaceFileRelationInput(); + var bimfaceRelation = new Yw.Vmo.BimfaceFileRelationVmo(); bimfaceRelation.ObjectType = HStation.Xhs.DataType.XhsProjectSite; bimfaceRelation.ObjectID = projectSiteId; bimfaceRelation.BimfaceFileID = bimfaceFileId; @@ -289,21 +302,21 @@ var bimfaceRelationId = await bllBimfaceRelation.Insert(bimfaceRelation); if (bimfaceRelationId < 1) { - feedBackMsg?.Invoke("Bimface鏂囦欢鍏宠仈澶辫触锛侊紒锛�"); - feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢鍏宠仈澶辫触锛侊紒锛�", Color.Red); + feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��", Color.Blue); return true; } vm.BimfaceFileRelationID = bimfaceRelationId; - feedBackMsg?.Invoke("Bimface鏂囦欢鍏宠仈鎴愬姛銆傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢鍏宠仈鎴愬姛銆傘�傘��", Color.Green); feedBackProgress?.Invoke(100, 55); #endregion 绗節姝� 鍏宠仈Bimface鏂囦欢锛堣繘搴� 55%锛� #region 绗崄姝� 鍙戣捣bimface杞崲锛堣繘搴� 80%锛� - feedBackMsg?.Invoke("姝e湪杩涜Bimface妯″瀷杞婚噺鍖�..."); - var bimfaceTranslateStatus = await Yw.WinFrmUI.BimfaceHelper.TranslateRvtFile(bimfaceId);//鍙戣捣杞崲 - //var bimfaceTranslateStatus = Yw.BIMFace.eTranslateStatus.Processing;//娴嬭瘯浠g爜 + feedBackMsg?.Invoke("姝e湪杩涜Bimface妯″瀷杞婚噺鍖�...", Color.Black); + //var bimfaceTranslateStatus = await Yw.WinFrmUI.BimfaceHelper.TranslateRvtFile(bimfaceId);//鍙戣捣杞崲 + var bimfaceTranslateStatus = Yw.BIMFace.eTranslateStatus.Processing;//娴嬭瘯浠g爜 feedBackProgress?.Invoke(100, 60); if (bimfaceTranslateStatus != Yw.BIMFace.eTranslateStatus.Success) { @@ -312,17 +325,17 @@ { await Yw.WinFrmUI.BimfaceHelper.WaitFileTranslateStatusUntilSuccess(bimfaceId, 3000); vm.BimfaceConverted = true; - feedBackMsg?.Invoke("Bimface妯″瀷杞婚噺鍖栧畬鎴愩�傘�傘��"); + feedBackMsg?.Invoke("Bimface妯″瀷杞婚噺鍖栧畬鎴愩�傘�傘��", Color.Green); } else { - feedBackMsg?.Invoke("璺宠繃Bimface妯″瀷杞婚噺鍖栫瓑寰呫�傘�傘��"); + feedBackMsg?.Invoke("璺宠繃Bimface妯″瀷杞婚噺鍖栫瓑寰呫�傘�傘��", Color.Black); } } else { vm.BimfaceConverted = true; - feedBackMsg?.Invoke("Bimface妯″瀷杞婚噺鍖栧畬鎴愩�傘�傘��"); + feedBackMsg?.Invoke("Bimface妯″瀷杞婚噺鍖栧畬鎴愩�傘�傘��", Color.Green); } feedBackProgress?.Invoke(100, 80); @@ -331,16 +344,16 @@ #region 绗崄涓�姝� 鏇存柊Bimface鏂囦欢鐘舵�侊紙杩涘害 100%锛� - feedBackMsg?.Invoke("姝e湪鏇存柊Bimface鏂囦欢鐘舵��..."); + feedBackMsg?.Invoke("姝e湪鏇存柊Bimface鏂囦欢鐘舵��...", Color.Black); bol = await bllBimfaceFile.UpdateFileStatus(bimfaceFileId, (int)Yw.Bimface.eFileStatus.ConvertSucceed); if (bol) { - feedBackMsg?.Invoke("Bimface鏂囦欢鐘舵�佹洿鏂版垚鍔熴�傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢鐘舵�佹洿鏂版垚鍔熴�傘�傘��", Color.Green); } else { - feedBackMsg?.Invoke("Bimface鏂囦欢鐘舵�佹洿鏂板け璐ワ紒锛侊紒"); - feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��"); + feedBackMsg?.Invoke("Bimface鏂囦欢鐘舵�佹洿鏂板け璐ワ紒锛侊紒", Color.Red); + feedBackMsg?.Invoke("椤圭洰瀵煎叆缁撴潫銆傘�傘��", Color.Black); return true; } -- Gitblit v1.9.3