Pārlūkot izejas kodu

mxg:完善《管网及相关设备检查》检查方法

mengxiangge 6 gadi atpakaļ
vecāks
revīzija
ad2a4b098b

BIN
MBI/MBIResource/DataCheck/垃圾数据检查结果输出-模版.xlsx


BIN
MBI/MBIResource/DataCheck/模型检查结果输出格式-模版.xlsx


+ 7 - 6
MBI/SAGA.DotNetUtils/NPOI/NPOIHelper.cs

@@ -352,19 +352,20 @@ namespace SAGA.DotNetUtils.NPOI
             PropertyInfo[] PropertyList = t.GetProperties();
             foreach (PropertyInfo item in PropertyList)
             {
-                var index = item.GetCustomAttribute<CellIndexAttribute>()?.Index ?? 0;
+                var index = item.GetCustomAttribute<CellIndexAttribute>()?.Index;
                 string value = "";
-                if (index != 0)
+                //有cellindex标记的才赋值
+                if (index !=null)
                 {
-                    value = row.GetCell(index)?.StringCellValue;
+                    int i = (int) index;
+                    value = row.GetCell(i)?.StringCellValue;
                     //如果读取到的值为null,则判断是否为合并单元格,读取合并单元格的值
                     if (value.IsNullOrEmpty())
                     {
-                        value = row.GetDataCell(index)?.StringCellValue;
+                        value = row.GetDataCell(i)?.StringCellValue;
                     }
+                    item.SetValue(model, value);
                 }
-
-                item.SetValue(model, value);
             }
             return model;
         }

+ 1 - 1
MBI/SAGA.MBI/ToolsData/ModeCheck/DataCheckRule.cs

@@ -116,7 +116,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
     /// <summary>
     /// 参考-管网与相关设备
     /// </summary>
-    [SheetInfo(SheetName = "参考-管网相关设备", RowStartIndex = 3)]
+    [SheetInfo(SheetName = "参考-管网相关设备", RowStartIndex = 3)]
     public class DCR_SystemReferEquip
     {
         [CellIndex(4)]

+ 21 - 19
MBI/SAGA.MBI/ToolsData/ModeCheck/EquipReferSystemCheck.cs

@@ -24,7 +24,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
     {
         public EquipReferSystemCheck()
         {
-            Name = "管网及相关设备检查";
+            Name = "管网及相关设备检查 ";
             RSPecificationSheet.Add("参考-管网及相关设备");
         }
         [DataCheckProcessAspect]
@@ -97,12 +97,11 @@ namespace SAGA.MBI.ToolsData.ModeCheck
 
             var tuple = CheckConType(fi, referSystems);
             result.IsRight = !tuple.Item2.Any();
-            result.ConnectorsName += string.Join("、", tuple.Item1.ToArray());
+            result.PassConnectorsName += string.Join("、", tuple.Item1.ToArray());
+            result.UnPassConnectorsName += string.Join("、", tuple.Item2.ToArray());
             if (!result.IsRight)
             {
-                result.RMessage = $"连接件所连接的管道系统与规范不一致,包含错误的管道系统:";
-                
-                result.RMessage+= string.Join("、", tuple.Item2.ToArray());
+                result.RMessage = $"连接件所连接的管道系统与规范不一致,请检查";
             }
             return result;
         }
@@ -113,7 +112,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
         /// <returns></returns>
         private List<string> GetReferSystems(string code)
         {
-            var item = m_EquipReferSystems.First(t => t.EquipName == code)?.Systems ?? new List<string>();
+            var item = m_EquipReferSystems.FirstOrDefault(t => t.EquipName == code)?.Systems ?? new List<string>();
 
             return item;
         }
@@ -125,7 +124,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
         /// <param name="domain"></param>
         private Tuple<List<string>,List<string>> CheckConType(FamilyInstance fi, List<string> referSystems)
         {
-            List<string> allList=new List<string>();
+            List<string> passList=new List<string>();
             List<string> unpassList=new List<string>();
 
             var connectors = fi.GetAllConnectors();
@@ -141,8 +140,10 @@ namespace SAGA.MBI.ToolsData.ModeCheck
                     {
                         unpassList.Add(mepSystem.Name);
                     }
-
-                    allList.Add(mepSystem.Name);
+                    else
+                    {
+                        passList.Add(mepSystem.Name);
+                    }
                 }
                 catch (Exception e)
                 {
@@ -150,7 +151,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
                 }
             }
 
-            return new Tuple<List<string>, List<string>>(allList, unpassList);
+            return new Tuple<List<string>, List<string>>(passList, unpassList);
         }
         
 
@@ -181,16 +182,17 @@ namespace SAGA.MBI.ToolsData.ModeCheck
                     index++;
                     IRow rowN = sheet.CreateRow(index);
                     DataCheckNPOIStyle style = result.IsRight ? DataCheckNPOIStyle.Content : DataCheckNPOIStyle.Error;
-
-                    rowN.AddCell(0, rbase.RFloorName, style);
-                    rowN.AddCell(1, rbase.RFileName, style);
-                    rowN.AddCell(2, rbase.RPath, style);
-                    rowN.AddCell(3, result.FamilyName, style);
-                    rowN.AddCell(4, result.Id, style);
-                    rowN.AddCell(5, result.ConnectorsName, style);
+                    int i = 0;
+                    rowN.AddCell(i++, rbase.RFloorName, style);
+                    rowN.AddCell(i++, rbase.RFileName, style);
+                    rowN.AddCell(i++, rbase.RPath, style);
+                    rowN.AddCell(i++, result.FamilyName, style);
+                    rowN.AddCell(i++, result.Id, style);
+                    rowN.AddCell(i++, result.PassConnectorsName, style);
+                    rowN.AddCell(i++, result.UnPassConnectorsName, style);
                     string rowN4 = result.IsRight ? "通过" : "不通过";
-                    rowN.AddCell(6, rowN4, style);
-                    rowN.AddCell(7, result.RMessage, style);
+                    rowN.AddCell(i++, rowN4, style);
+                    rowN.AddCell(i++, result.RMessage, style);
                 }
                 #endregion
 

+ 8 - 1
MBI/SAGA.MBI/ToolsData/ModeCheck/EquipReferSystemCheckResult.cs

@@ -21,7 +21,14 @@ namespace SAGA.MBI.ToolsData.ModeCheck
         public string FamilyName { get; set; }
 
         public string Id { get; set; }
-        public string ConnectorsName { get; set; }
+        /// <summary>
+        /// 通过的连接件系统名称
+        /// </summary>
+        public string PassConnectorsName { get; set; }
+        /// <summary>
+        /// 不通过的连接件系统名称
+        /// </summary>
+        public string UnPassConnectorsName { get; set; }
         public override void Export()
         {
             base.Export();