From 1d3d76840e14ea798903518194ae16e0ac141beb Mon Sep 17 00:00:00 2001 From: Eddasol Date: Tue, 10 Dec 2024 10:26:54 +0100 Subject: [PATCH] Use echo inspection target name as tag description --- backend/api/Database/Context/InitDb.cs | 7 +++++++ backend/api/Database/Models/Inspection.cs | 4 ++++ backend/api/Database/Models/MissionTask.cs | 2 ++ backend/api/Services/EchoService.cs | 6 ++++-- backend/api/Services/MissionLoaders/EchoInspection.cs | 5 ++++- 5 files changed, 21 insertions(+), 3 deletions(-) diff --git a/backend/api/Database/Context/InitDb.cs b/backend/api/Database/Context/InitDb.cs index 806155cd7..ba8f01876 100644 --- a/backend/api/Database/Context/InitDb.cs +++ b/backend/api/Database/Context/InitDb.cs @@ -453,6 +453,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCD", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Successful ); @@ -463,6 +464,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDE", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Failed ); @@ -473,6 +475,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDEF", + taskDescription: "Task description", poseId: 2, status: TaskStatus.PartiallySuccessful ); @@ -483,6 +486,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDEFG", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Cancelled ); @@ -493,6 +497,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDEFGH", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Failed ); @@ -503,6 +508,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDEFGHI", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Failed ); @@ -513,6 +519,7 @@ private static List GetMissionTasks() taskOrder: 0, tagLink: url, tagId: "ABCDEFGHIJ", + taskDescription: "Task description", poseId: 2, status: TaskStatus.Failed ); diff --git a/backend/api/Database/Models/Inspection.cs b/backend/api/Database/Models/Inspection.cs index 45b51eaf4..e3d738af1 100644 --- a/backend/api/Database/Models/Inspection.cs +++ b/backend/api/Database/Models/Inspection.cs @@ -20,6 +20,7 @@ public Inspection( InspectionType inspectionType, float? videoDuration, Position inspectionTarget, + string? inspectionTargetName, InspectionStatus status = InspectionStatus.NotStarted, AnalysisType? analysisType = null ) @@ -27,6 +28,7 @@ public Inspection( InspectionType = inspectionType; VideoDuration = videoDuration; InspectionTarget = inspectionTarget; + InspectionTargetName = inspectionTargetName; AnalysisType = analysisType; Status = status; } @@ -65,6 +67,8 @@ public Inspection(Inspection copy, InspectionStatus? inspectionStatus = null, bo [Required] public Position InspectionTarget { get; set; } + public string? InspectionTargetName { get; set; } + [Required] public InspectionStatus Status { diff --git a/backend/api/Database/Models/MissionTask.cs b/backend/api/Database/Models/MissionTask.cs index d78fcdcd7..1864930c6 100644 --- a/backend/api/Database/Models/MissionTask.cs +++ b/backend/api/Database/Models/MissionTask.cs @@ -25,6 +25,7 @@ public MissionTask( Uri? tagLink, string? tagId, int? poseId, + string? taskDescription, TaskStatus status = TaskStatus.NotStarted, MissionTaskType type = MissionTaskType.Inspection) { @@ -33,6 +34,7 @@ public MissionTask( RobotPose = robotPose; PoseId = poseId; TaskOrder = taskOrder; + Description = taskDescription; Status = status; Type = type; if (inspection != null) Inspection = new Inspection(inspection); diff --git a/backend/api/Services/EchoService.cs b/backend/api/Services/EchoService.cs index 65ddb3087..e706618e0 100644 --- a/backend/api/Services/EchoService.cs +++ b/backend/api/Services/EchoService.cs @@ -199,7 +199,7 @@ private static List ProcessPlanItems(List planItems, string i $"https://stid.equinor.com/{installationCode}/tag?tagNo={planItem.Tag}" ), Inspections = planItem.SensorTypes - .Select(sensor => new EchoInspection(sensor, planItem.InspectionPoint.EnuPosition.ToPosition())).Distinct(new EchoInspectionComparer()).ToList() + .Select(sensor => new EchoInspection(sensor, planItem.InspectionPoint.EnuPosition.ToPosition(), planItem.InspectionPoint.Name)).Distinct(new EchoInspectionComparer()).ToList() }; if (tag.Inspections.Count < 1) @@ -275,7 +275,8 @@ public IList MissionTasksFromEchoTag(EchoTag echoTag) .Select(inspection => new Inspection( inspectionType: inspection.InspectionType, videoDuration: inspection.TimeInSeconds, - inspection.InspectionPoint, + inspectionTarget: inspection.InspectionPoint, + inspectionTargetName: inspection.InspectionPointName, status: InspectionStatus.NotStarted)) .ToList(); @@ -292,6 +293,7 @@ public IList MissionTasksFromEchoTag(EchoTag echoTag) robotPose: echoTag.Pose, poseId: echoTag.PoseId, taskOrder: echoTag.PlanOrder, + taskDescription: inspection.InspectionTargetName, status: Database.Models.TaskStatus.NotStarted, type: MissionTaskType.Inspection )); diff --git a/backend/api/Services/MissionLoaders/EchoInspection.cs b/backend/api/Services/MissionLoaders/EchoInspection.cs index 3edb13db6..a320ba805 100644 --- a/backend/api/Services/MissionLoaders/EchoInspection.cs +++ b/backend/api/Services/MissionLoaders/EchoInspection.cs @@ -11,17 +11,20 @@ public EchoInspection() InspectionPoint = new Position(); } - public EchoInspection(SensorType echoSensorType, Position inspectionPoint) + public EchoInspection(SensorType echoSensorType, Position inspectionPoint, string? inspectionPointName) { InspectionType = InspectionTypeFromEchoSensorType(echoSensorType.Key); TimeInSeconds = (float?)echoSensorType.TimeInSeconds; InspectionPoint = inspectionPoint; + InspectionPointName = inspectionPointName != "Stid Coordinate" ? inspectionPointName: null; } public InspectionType InspectionType { get; set; } public Position InspectionPoint { get; set; } + public string? InspectionPointName { get; set; } + public float? TimeInSeconds { get; set; } private static InspectionType InspectionTypeFromEchoSensorType(string sensorType)