|
@@ -246,22 +246,19 @@ namespace SAGA.MBI.DataArrange
|
|
|
{
|
|
|
CalcContext context = new CalcContext(newContext.MFloor);
|
|
|
var equips = oldContext.MEquipments.Except(newContext.MEquipments,
|
|
|
- new CommonEqualComparer<MEquipment>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MEquipment>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MEquipments.AddRange(equips);
|
|
|
var equipParts = oldContext.MEquipmentParts.Except(newContext.MEquipmentParts,
|
|
|
- new CommonEqualComparer<MEquipmentPart>((a, b) =>
|
|
|
- {
|
|
|
- return a.BimID == b.BimID;
|
|
|
- }));
|
|
|
+ new CommonEqualComparer<MEquipmentPart>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MEquipmentParts.AddRange(equipParts);
|
|
|
var beacons = oldContext.MBeacons.Except(newContext.MBeacons,
|
|
|
- new CommonEqualComparer<MBeacon>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MBeacon>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MBeacons.AddRange(beacons);
|
|
|
//模型文件替换后,元空间重新上传,之前的不保留
|
|
|
if (isExceptSpace)
|
|
|
{
|
|
|
var spaces = oldContext.MSpaces.Except(newContext.MSpaces,
|
|
|
- new CommonEqualComparer<MISpace>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MISpace>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MSpaces.AddRange(spaces);
|
|
|
}
|
|
|
else
|
|
@@ -271,39 +268,6 @@ namespace SAGA.MBI.DataArrange
|
|
|
|
|
|
return context;
|
|
|
}
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 新旧文件对比过后,需要更新的数据
|
|
|
- /// </summary>
|
|
|
- public static CalcContext GetModifyContext(CalcContext oldContext, CalcContext newContext, bool isExceptSpace = false)
|
|
|
- {
|
|
|
- CalcContext context = new CalcContext(newContext.MFloor);
|
|
|
- var equips = oldContext.MEquipments.Intersect(newContext.MEquipments,
|
|
|
- new CommonEqualComparer<MEquipment>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
- context.MEquipments.AddRange(equips);
|
|
|
- var equipParts = oldContext.MEquipmentParts.Intersect(newContext.MEquipmentParts,
|
|
|
- new CommonEqualComparer<MEquipmentPart>((a, b) =>
|
|
|
- {
|
|
|
- return a.BimID == b.BimID;
|
|
|
- }));
|
|
|
- context.MEquipmentParts.AddRange(equipParts);
|
|
|
- var beacons = oldContext.MBeacons.Intersect(newContext.MBeacons,
|
|
|
- new CommonEqualComparer<MBeacon>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
- context.MBeacons.AddRange(beacons);
|
|
|
- //模型文件替换后,元空间重新上传,之前的不保留
|
|
|
- if (isExceptSpace)
|
|
|
- {
|
|
|
- var spaces = oldContext.MSpaces.Intersect(newContext.MSpaces,
|
|
|
- new CommonEqualComparer<MISpace>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
- context.MSpaces.AddRange(spaces);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- context.MSpaces.AddRange(oldContext.MSpaces);
|
|
|
- }
|
|
|
- return context;
|
|
|
- }
|
|
|
-
|
|
|
/// <summary>
|
|
|
/// 新旧文件对比过后,需要添加的数据
|
|
|
/// </summary>
|
|
@@ -311,22 +275,19 @@ namespace SAGA.MBI.DataArrange
|
|
|
{
|
|
|
CalcContext context = new CalcContext(newContext.MFloor);
|
|
|
var equips = newContext.MEquipments.Except(oldContext.MEquipments,
|
|
|
- new CommonEqualComparer<MEquipment>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MEquipment>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MEquipments.AddRange(equips);
|
|
|
var equipParts = newContext.MEquipmentParts.Except(oldContext.MEquipmentParts,
|
|
|
- new CommonEqualComparer<MEquipmentPart>((a, b) =>
|
|
|
- {
|
|
|
- return a.BimID == b.BimID;
|
|
|
- }));
|
|
|
+ new CommonEqualComparer<MEquipmentPart>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MEquipmentParts.AddRange(equipParts);
|
|
|
var beacons = newContext.MBeacons.Except(oldContext.MBeacons,
|
|
|
- new CommonEqualComparer<MBeacon>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MBeacon>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MBeacons.AddRange(beacons);
|
|
|
//模型文件替换后,元空间重新上传,之前的不保留
|
|
|
if (isExceptSpace)
|
|
|
{
|
|
|
var spaces = newContext.MSpaces.Except(oldContext.MSpaces,
|
|
|
- new CommonEqualComparer<MISpace>((a, b) => { return a.BimID == b.BimID; }));
|
|
|
+ new CommonEqualComparer<MISpace>(DalUploadFloor.IsEqualCloudDuty2LocalDuty));
|
|
|
context.MSpaces.AddRange(spaces);
|
|
|
//处理设备所在空间
|
|
|
var bimids = context.MEquipments.Select(tt => tt.BimID).ToList();
|