|
@@ -54,6 +54,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
|
|
|
{
|
|
|
bool unitResult = true;
|
|
|
var ccategories = DataCheckRule.GetCodeCheckCategories();
|
|
|
+ var list = new List<FamilyNameCheckResult>();
|
|
|
foreach (SagaSignCheckResult signResult in RBase.Results)
|
|
|
{
|
|
|
var document = signResult.RDocument;
|
|
@@ -78,7 +79,7 @@ namespace SAGA.MBI.ToolsData.ModeCheck
|
|
|
result.RBase = signResult;
|
|
|
//由于数量太多,只显示族名称
|
|
|
result.Id = "-";
|
|
|
- Results.Add(result);
|
|
|
+ list.Add(result);
|
|
|
//foreach (var tempElem in subElements)
|
|
|
//{
|
|
|
// var tempResult = result?.Clone();
|
|
@@ -96,6 +97,8 @@ namespace SAGA.MBI.ToolsData.ModeCheck
|
|
|
|
|
|
}
|
|
|
}
|
|
|
+ //按族名称,对楼层进行合并显示
|
|
|
+ GroupByFamilyName(list);
|
|
|
return Results.All(t => t.IsRight);
|
|
|
}
|
|
|
/// <summary>
|
|
@@ -131,6 +134,26 @@ namespace SAGA.MBI.ToolsData.ModeCheck
|
|
|
}
|
|
|
return result;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ private void GroupByFamilyName(List<FamilyNameCheckResult> modes)
|
|
|
+ {
|
|
|
+ var groupByFamilyName = modes.GroupBy(t => t.FamilyName);
|
|
|
+ foreach (IGrouping<string, FamilyNameCheckResult> grouping in groupByFamilyName)
|
|
|
+ {
|
|
|
+ var item = grouping.ToList().FirstOrDefault();
|
|
|
+ if (item == null) continue;
|
|
|
+
|
|
|
+ FamilyNameCheckResult mode = new FamilyNameCheckResult();
|
|
|
+ mode.FamilyName = grouping.Key;
|
|
|
+ mode.Type = item.Type;
|
|
|
+ mode.IsRight = item.IsRight;
|
|
|
+ if (!mode.IsRight)
|
|
|
+ mode.RMessage =
|
|
|
+ $"使用到该设备族的楼层:{string.Join("、", grouping.Select(t => ((SagaSignCheckResult) t.RBase).RFloorName).ToArray())}";
|
|
|
+ Results.Add(mode);
|
|
|
+ }
|
|
|
+ }
|
|
|
//[DataCheckProcessAspect]
|
|
|
public override void Export()
|
|
|
{
|
|
@@ -163,7 +186,8 @@ namespace SAGA.MBI.ToolsData.ModeCheck
|
|
|
SagaSignCheckResult rbase = result.RBase as SagaSignCheckResult;
|
|
|
if (rbase == null)
|
|
|
continue;
|
|
|
- if (result.IsRight) continue;
|
|
|
+ //全部显示
|
|
|
+ //if (result.IsRight) continue;
|
|
|
index++;
|
|
|
IRow rowN = sheet.CreateRow(index);
|
|
|
DataCheckNPOIStyle style = result.IsRight ? DataCheckNPOIStyle.Content : DataCheckNPOIStyle.Error;
|