From 9a0d3fb74c7cabf482d036a7997514b62fc763a5 Mon Sep 17 00:00:00 2001 From: Arthur Bassi Date: Mon, 7 Sep 2026 12:02:23 -0300 Subject: [PATCH] fix(work-orders): copy persisted severity onto GET detail EOF --- .../Implementation/WorkOrderDetailService.cs | 1 + .../WorkOrderPhase6Tests.cs | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/SeaHaven.Services/Implementation/WorkOrderDetailService.cs b/SeaHaven.Services/Implementation/WorkOrderDetailService.cs index 7f4d132..641c26e 100644 --- a/SeaHaven.Services/Implementation/WorkOrderDetailService.cs +++ b/SeaHaven.Services/Implementation/WorkOrderDetailService.cs @@ -130,6 +130,7 @@ namespace SeaHaven.Services.Implementation ExtraServices = ParseExtraServices(extended?.ExtraServices) ?? row.ExtraServices, DocStatus = row.DocStatus, FlagColor = row.FlagColor, + Severity = row.Severity, PrimaryDispatchId = row.PrimaryDispatchId, RowVersion = row.RowVersion, DispatchRowVersion = row.DispatchRowVersion, diff --git a/SeaHavenIndustries.Tests/WorkOrderPhase6Tests.cs b/SeaHavenIndustries.Tests/WorkOrderPhase6Tests.cs index 7e6a254..1ee9a4f 100644 --- a/SeaHavenIndustries.Tests/WorkOrderPhase6Tests.cs +++ b/SeaHavenIndustries.Tests/WorkOrderPhase6Tests.cs @@ -216,6 +216,29 @@ public class WorkOrderDetailServiceTests Assert.Equal(1500m, detail.Info.UpliftSummary.Amount); } + [Fact] + public async Task GetDetail_SurfacesSeverityFromBoardRow() + { + var (context, service) = CreateSut(); + context.workOrders.Add(new WorkOrder + { + Id = 1, + InternalWONumber = "10000000001", + LifecycleStatus = LifecycleStatus.Scheduled, + WorkOrderType = WorkOrderType.Emergency, + Severity = "2", + ScheduledDate = DateTime.UtcNow.AddDays(1), + SiteCode = "BK5", + RowVersion = new byte[] { 1, 0, 0, 0, 0, 0, 0, 1 } + }); + await context.SaveChangesAsync(); + + var detail = await service.GetDetailAsync(1, WorkOrderAccountTestHelpers.OrgWideAdmin()); + + Assert.NotNull(detail); + Assert.Equal(2, detail!.Info.Severity); + } + [Fact] public async Task GetDetail_InactivePrimaryDispatch_OmitsVendorAndMapsStatus() {