修复了批处理未加载路径类型,去掉数据库读取的默认值
This commit is contained in:
parent
4069668a2a
commit
5836da25f5
@ -571,10 +571,10 @@ namespace NavisworksTransport
|
||||
TestTime = Convert.ToDateTime(reader["TestTime"]),
|
||||
CollisionCount = Convert.ToInt32(reader["CollisionCount"]),
|
||||
AnimationCollisionCount = Convert.ToInt32(reader["AnimationCollisionCount"]),
|
||||
FrameRate = reader["FrameRate"] != DBNull.Value ? Convert.ToInt32(reader["FrameRate"]) : 0,
|
||||
Duration = reader["Duration"] != DBNull.Value ? Convert.ToDouble(reader["Duration"]) : 0.0,
|
||||
DetectionGap = reader["DetectionGap"] != DBNull.Value ? Convert.ToDouble(reader["DetectionGap"]) : 0.0,
|
||||
AnimatedObjectName = reader["AnimatedObjectName"]?.ToString(),
|
||||
FrameRate = Convert.ToInt32(reader["FrameRate"]),
|
||||
Duration = Convert.ToDouble(reader["Duration"]),
|
||||
DetectionGap = Convert.ToDouble(reader["DetectionGap"]),
|
||||
AnimatedObjectName = reader["AnimatedObjectName"].ToString(),
|
||||
CreatedAt = Convert.ToDateTime(reader["CreatedAt"])
|
||||
});
|
||||
}
|
||||
@ -624,10 +624,10 @@ namespace NavisworksTransport
|
||||
TestTime = Convert.ToDateTime(reader["TestTime"]),
|
||||
CollisionCount = Convert.ToInt32(reader["CollisionCount"]),
|
||||
AnimationCollisionCount = Convert.ToInt32(reader["AnimationCollisionCount"]),
|
||||
FrameRate = reader["FrameRate"] != DBNull.Value ? Convert.ToInt32(reader["FrameRate"]) : 0,
|
||||
Duration = reader["Duration"] != DBNull.Value ? Convert.ToDouble(reader["Duration"]) : 0.0,
|
||||
DetectionGap = reader["DetectionGap"] != DBNull.Value ? Convert.ToDouble(reader["DetectionGap"]) : 0.0,
|
||||
AnimatedObjectName = reader["AnimatedObjectName"]?.ToString(),
|
||||
FrameRate = Convert.ToInt32(reader["FrameRate"]),
|
||||
Duration = Convert.ToDouble(reader["Duration"]),
|
||||
DetectionGap = Convert.ToDouble(reader["DetectionGap"]),
|
||||
AnimatedObjectName = reader["AnimatedObjectName"].ToString(),
|
||||
CreatedAt = Convert.ToDateTime(reader["CreatedAt"])
|
||||
};
|
||||
}
|
||||
@ -691,12 +691,12 @@ namespace NavisworksTransport
|
||||
TestTime = Convert.ToDateTime(reader["TestTime"]),
|
||||
CollisionCount = Convert.ToInt32(reader["CollisionCount"]),
|
||||
AnimationCollisionCount = Convert.ToInt32(reader["AnimationCollisionCount"]),
|
||||
FrameRate = reader["FrameRate"] != DBNull.Value ? Convert.ToInt32(reader["FrameRate"]) : 0,
|
||||
Duration = reader["Duration"] != DBNull.Value ? Convert.ToDouble(reader["Duration"]) : 0.0,
|
||||
DetectionGap = reader["DetectionGap"] != DBNull.Value ? Convert.ToDouble(reader["DetectionGap"]) : 0.0,
|
||||
AnimatedObjectName = reader["AnimatedObjectName"]?.ToString(),
|
||||
FrameRate = Convert.ToInt32(reader["FrameRate"]),
|
||||
Duration = Convert.ToDouble(reader["Duration"]),
|
||||
DetectionGap = Convert.ToDouble(reader["DetectionGap"]),
|
||||
AnimatedObjectName = reader["AnimatedObjectName"].ToString(),
|
||||
CreatedAt = Convert.ToDateTime(reader["CreatedAt"]),
|
||||
ScreenshotPath = reader["ScreenshotPath"] != DBNull.Value ? reader["ScreenshotPath"].ToString() : null
|
||||
ScreenshotPath = reader["ScreenshotPath"].ToString()
|
||||
};
|
||||
}
|
||||
}
|
||||
@ -941,22 +941,23 @@ namespace NavisworksTransport
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
// 🔥 不使用默认值,数据缺失时抛出异常,避免隐藏bug
|
||||
var route = new PathRoute
|
||||
{
|
||||
Id = reader["Id"].ToString(),
|
||||
Name = reader["Name"].ToString(),
|
||||
TotalLength = Convert.ToDouble(reader["TotalLength"]),
|
||||
EstimatedTime = Convert.ToDouble(reader["EstimatedTime"]),
|
||||
TurnRadius = reader.IsDBNull(reader.GetOrdinal("TurnRadius")) ? 0.0 : Convert.ToDouble(reader["TurnRadius"]), // 0.0 表示未设置,实际使用时从配置获取
|
||||
IsCurved = reader.IsDBNull(reader.GetOrdinal("IsCurved")) ? false : Convert.ToInt32(reader["IsCurved"]) == 1,
|
||||
MaxVehicleLength = reader.IsDBNull(reader.GetOrdinal("MaxVehicleLength")) ? 1.0 : Convert.ToDouble(reader["MaxVehicleLength"]),
|
||||
MaxVehicleWidth = reader.IsDBNull(reader.GetOrdinal("MaxVehicleWidth")) ? 1.0 : Convert.ToDouble(reader["MaxVehicleWidth"]),
|
||||
MaxVehicleHeight = reader.IsDBNull(reader.GetOrdinal("MaxVehicleHeight")) ? 2.0 : Convert.ToDouble(reader["MaxVehicleHeight"]),
|
||||
SafetyMargin = reader.IsDBNull(reader.GetOrdinal("SafetyMargin")) ? 0.5 : Convert.ToDouble(reader["SafetyMargin"]),
|
||||
GridSize = reader.IsDBNull(reader.GetOrdinal("GridSize")) ? 0.5 : Convert.ToDouble(reader["GridSize"]),
|
||||
PathType = reader.IsDBNull(reader.GetOrdinal("PathType")) ? PathType.Ground : (PathType)Convert.ToInt32(reader["PathType"]),
|
||||
AerialSubType = reader.IsDBNull(reader.GetOrdinal("AerialSubType")) ? AerialSubType.Rail : (AerialSubType)Convert.ToInt32(reader["AerialSubType"]),
|
||||
LiftHeightMeters = reader.IsDBNull(reader.GetOrdinal("LiftHeightMeters")) ? 0.0 : Convert.ToDouble(reader["LiftHeightMeters"]),
|
||||
TurnRadius = Convert.ToDouble(reader["TurnRadius"]),
|
||||
IsCurved = Convert.ToInt32(reader["IsCurved"]) == 1,
|
||||
MaxVehicleLength = Convert.ToDouble(reader["MaxVehicleLength"]),
|
||||
MaxVehicleWidth = Convert.ToDouble(reader["MaxVehicleWidth"]),
|
||||
MaxVehicleHeight = Convert.ToDouble(reader["MaxVehicleHeight"]),
|
||||
SafetyMargin = Convert.ToDouble(reader["SafetyMargin"]),
|
||||
GridSize = Convert.ToDouble(reader["GridSize"]),
|
||||
PathType = (PathType)Convert.ToInt32(reader["PathType"]),
|
||||
AerialSubType = (AerialSubType)Convert.ToInt32(reader["AerialSubType"]),
|
||||
LiftHeightMeters = Convert.ToDouble(reader["LiftHeightMeters"]),
|
||||
CreatedTime = Convert.ToDateTime(reader["CreatedTime"]),
|
||||
LastModified = Convert.ToDateTime(reader["LastModified"])
|
||||
};
|
||||
@ -1360,7 +1361,9 @@ namespace NavisworksTransport
|
||||
using (var cmd = new SQLiteCommand(_connection))
|
||||
{
|
||||
cmd.CommandText = @"
|
||||
SELECT Id, Name, CreatedTime, LastModified, TotalLength
|
||||
SELECT Id, Name, CreatedTime, LastModified, TotalLength,
|
||||
TurnRadius, IsCurved, MaxVehicleLength, MaxVehicleWidth, MaxVehicleHeight,
|
||||
SafetyMargin, GridSize, PathType, AerialSubType, LiftHeightMeters
|
||||
FROM PathRoutes
|
||||
WHERE Id = @Id";
|
||||
|
||||
@ -1375,7 +1378,17 @@ namespace NavisworksTransport
|
||||
Id = reader["Id"].ToString(),
|
||||
CreatedTime = DateTime.Parse(reader["CreatedTime"].ToString()),
|
||||
LastModified = DateTime.Parse(reader["LastModified"].ToString()),
|
||||
TotalLength = Convert.ToDouble(reader["TotalLength"])
|
||||
TotalLength = Convert.ToDouble(reader["TotalLength"]),
|
||||
TurnRadius = Convert.ToDouble(reader["TurnRadius"]),
|
||||
IsCurved = Convert.ToInt32(reader["IsCurved"]) == 1,
|
||||
MaxVehicleLength = Convert.ToDouble(reader["MaxVehicleLength"]),
|
||||
MaxVehicleWidth = Convert.ToDouble(reader["MaxVehicleWidth"]),
|
||||
MaxVehicleHeight = Convert.ToDouble(reader["MaxVehicleHeight"]),
|
||||
SafetyMargin = Convert.ToDouble(reader["SafetyMargin"]),
|
||||
GridSize = Convert.ToDouble(reader["GridSize"]),
|
||||
PathType = (PathType)Convert.ToInt32(reader["PathType"]),
|
||||
AerialSubType = (AerialSubType)Convert.ToInt32(reader["AerialSubType"]),
|
||||
LiftHeightMeters = Convert.ToDouble(reader["LiftHeightMeters"])
|
||||
};
|
||||
|
||||
// 加载路径点和路径边
|
||||
|
||||
Loading…
Reference in New Issue
Block a user