Browse Source

mxg:修复登录与上传异常报错

mengxiangge 6 years ago
parent
commit
005032cf68

+ 9 - 5
MBI/SAGA.MBI/DataArrange/DalModeFileManange.cs

@@ -330,10 +330,14 @@ namespace SAGA.MBI.DataArrange
                     new CommonEqualComparer<MISpace>((a, b) => { return a.BimID == b.BimID; }));
                 context.MSpaces.AddRange(spaces);
                 //处理设备所在空间
-                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => context.MEquipments.Select(tt => tt.BimID).Contains((t)?.MEquipment.BimID)));
-                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => context.MEquipmentParts.Select(tt => tt.BimID).Contains((t)?.MEquipment.BimID)));
-                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => context.MSpaces.Select(tt => tt.BimID).Contains((t)?.MSpace.BimID)));
-                context.RltBeaconinElementSps.AddRange(newContext.RltBeaconinElementSps.Where(t => context.MBeacons.Select(tt => tt.BimID).Contains((t)?.MBeacon.BimID)));
+                var bimids = context.MEquipments.Select(tt => tt.BimID).ToList();
+                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => bimids.Contains((t).MEquipment.BimID)));
+                bimids = context.MEquipmentParts.Select(tt => tt.BimID).ToList();
+                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => bimids.Contains((t).MEquipment.BimID)));
+                bimids = context.MSpaces.Select(tt => tt.BimID).ToList();
+                context.RltEquipInSpaces.AddRange(newContext.RltEquipInSpaces.Where(t => bimids.Contains((t).MSpace.BimID)));
+                bimids = context.MBeacons.Select(tt => tt.BimID).ToList();
+                context.RltBeaconinElementSps.AddRange(newContext.RltBeaconinElementSps.Where(t => bimids.Contains((t).MBeacon.BimID)));
             }
             else
             {
@@ -433,7 +437,7 @@ namespace SAGA.MBI.DataArrange
                     win.ShowDialog();
                 }
                 GenerateLog(bedelContext, beaddContext, bemodifyContext);
-                //Traceloger.Log("执行删除数据操作");
+                Traceloger.Log("执行删除数据操作");
                 ////删除
                 //bedelContext.Del();
                 //Traceloger.Log("执行上传新数据操作");

+ 5 - 3
MBI/SAGA.MBI/DataArrange/DalUploadFloor.cs

@@ -241,7 +241,7 @@ namespace SAGA.MBI.DataArrange
                     //检测到自己加锁 才读取日志
                     if (uploadFloor.MFloor.FloorLock.LockState != MFloorLockState.LockBySelf)
                         continue;
-                    currentFloor = uploadFloor.MFloor.FullPath;
+                    currentFloor = uploadFloor.MFloor.ToString();
                     Document document = null;
                     try
                     {
@@ -320,7 +320,7 @@ namespace SAGA.MBI.DataArrange
             }
             catch (Exception e)
             {
-                MessageShow.Show(e, strMessage: $"楼层 { currentFloor ?? string.Empty} 打开异常或网络异常,请检查后再进行操作!");
+                MessageShow.Show(e, strMessage: $"楼层 { currentFloor ?? string.Empty} 打开异常或网络异常,请检查后再进行操作!\r\n");
                 vm = null;
             }
 
@@ -539,8 +539,10 @@ namespace SAGA.MBI.DataArrange
         {
             //if (mode.Operator == DocumentChangedOperator.None) return;
             var revitId = mode.BimID.GetBIMID();
+            if (revitId.IsNullOrEmpty()) return;
             var fi = context.RevitDoc.GetElement(revitId) as FamilyInstance;
-            Autodesk.Revit.DB.Mechanical.Space space = fi?.Space;
+            if (fi == null) return;
+            Autodesk.Revit.DB.Mechanical.Space space = fi.GetReferenceSpace();
             if (space == null) return;
             //查询有没有Space对象
             string spaceId = space.GetCloudBIMId();

+ 1 - 1
MBI/SAGA.MBI/RequestData/LoginRequest.cs

@@ -49,7 +49,7 @@ namespace SAGA.MBI.RequestData
         /// <returns></returns>
         public static string Login(string phoneNumber, string identifyingCode)
         {
-            string url = MBIConst.GoodHandLocalHost + "business-os/project/person/verifyCode/test"; //";//";//"
+            string url = MBIConst.GoodHandLocalHost + "business-os/project/person/verifyCode";//test"; /test
             JObject idJObject = new JObject();
             idJObject.Add("phone", phoneNumber);
             idJObject.Add("code", identifyingCode);

+ 3 - 4
MBI/SAGA.MBI/RequestData/UpLoadFileRequest.cs

@@ -94,7 +94,7 @@ namespace SAGA.MBI.RequestData
             windown.LabelFloorName = $"正在下载{floorName}层模型文件,请稍后。。。";
             windown.LabelPath = fullPath;
             windown.Count = count;
-            windown.Cur = cur;
+            windown.Cur = cur; 
         }
         /// <summary>
         /// 下载指定文件到指定
@@ -146,8 +146,7 @@ namespace SAGA.MBI.RequestData
             }
             catch (Exception ex)
             {
-                MessageShow.Show(ex,
-                    strMessage: "Revit文件下载失败!");
+                MessageShowBase.Infomation("Revit文件下载失败!\r\n"+ex.StackTrace);
                 result = false;
                 CloseDownloadWin(result,false);
             }
@@ -182,7 +181,7 @@ namespace SAGA.MBI.RequestData
                 windown = null;
             }
             if (hasTip)
-                MessageShowBase.Infomation(issucess ? "Revit文件下载完毕!" : "Revit文件下载失败!");
+                MessageShowBase.Infomation(issucess ? "模型文件下载完毕!" : "模型文件下载失败!");
         }
 
         #endregion

+ 5 - 0
MBI/SAGA.MBI/ToolsData/CorrectLossDuty.cs

@@ -88,11 +88,16 @@ namespace SAGA.MBI.ToolsData
         /// <returns></returns>
         public static Tuple<CalcContext, CalcContext> GetCheckResult(MFloor floor)
         {
+            Log4Net.Debug("start");
             var oldContext = DalCommon.DownLoadCouldData(floor);
+            Log4Net.Debug("download");
             var newContext = ObjectCalc.Calc(floor);
+            Log4Net.Debug("calc");
             //分组
             var beaddContext = DalModeFileManange.GetAddContext(oldContext, newContext, true);
+            Log4Net.Debug("addcontext");
             var bedelContext = (DalModeFileManange.GetDelContext(oldContext, newContext, true));
+            Log4Net.Debug("delcontext");
             RemoveNoBimIdDuty(bedelContext);
             return new Tuple<CalcContext, CalcContext>(beaddContext, bedelContext);
         }

+ 10 - 2
MBI/SAGA.RevitUtils/Extends/DocumentExtend.cs

@@ -634,8 +634,16 @@ namespace SAGA.RevitUtils.Extends
         /// <returns></returns>
         public static Element GetElement(this Document doc, int intId)
         {
-            var id = new ElementId(intId);
-            return doc.GetElement(id);
+            try
+            {
+                var id = new ElementId(intId);
+                return doc.GetElement(id);
+            }
+            catch (Exception e)
+            {
+                
+                return null;
+            }
         }
 
         /// <summary>