From 6912a6a286ef6f2d62b2a23a9effd740598f7dbe Mon Sep 17 00:00:00 2001 From: Andrejs <54056326+zavor85@users.noreply.github.com> Date: Mon, 9 Feb 2026 20:31:51 +0200 Subject: [PATCH] Refactor DibsCreateRequestService to simplify unit name logic DW9 implementation was using VariantOption. VariantOption is not used for units in DW10 anymore, and code return NullReferenceException, so we will get unit name from Units service instead. --- src/Service/DibsCreateRequestService.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Service/DibsCreateRequestService.cs b/src/Service/DibsCreateRequestService.cs index 9c58efd..f61a1b8 100644 --- a/src/Service/DibsCreateRequestService.cs +++ b/src/Service/DibsCreateRequestService.cs @@ -143,10 +143,11 @@ private LineItem ConvertOrderLine(OrderLine orderLine, ref long linesTotalPIP) string unitName = "pcs"; if (!string.IsNullOrWhiteSpace(orderLine.UnitId)) { - Product product = orderLine.Product; - VariantOption unit = GetStockUnitsSorted(product?.Id, product?.VariantId).FirstOrDefault(variantOption => variantOption.Id.Equals(orderLine.UnitId, StringComparison.OrdinalIgnoreCase)); - if (unit is not null) - unitName = Services.VariantOptions.GetVariantOption(unit.Id)?.GetName(orderLine.Order.LanguageId); + // Product product = orderLine.Product; + // VariantOption unit = GetStockUnitsSorted(product?.Id, product?.VariantId).FirstOrDefault(variantOption => variantOption.Id.Equals(orderLine.UnitId, StringComparison.OrdinalIgnoreCase)); + // if (unit is not null) + // unitName = Services.VariantOptions.GetVariantOption(unit.Id)?.GetName(orderLine.Order.LanguageId); + unitName = Services.Units.GetUnit(orderLine.UnitId)?.GetName(orderLine.Order.LanguageId); } return GetLineItem(orderLine.Id, orderLine.ProductName, orderLine.Quantity, orderLine.Price, orderLine.UnitPrice, unitName, ref linesTotalPIP);