internal OrderItemModel(OrderItem orderItem, IReadOnlyList <ExtendedOrderItemRecipientModel> recipients) { CatalogueItemId = orderItem.CatalogueItem.Id.ToString(); CataloguePriceType = orderItem.CataloguePriceType.ToString(); CatalogueItemType = orderItem.CatalogueItem.CatalogueItemType.ToString(); CatalogueItemName = orderItem.CatalogueItem.Name; ProvisioningType = orderItem.ProvisioningType.ToString(); ItemUnitDescription = orderItem.PricingUnit.Description; TimeUnitDescription = orderItem.PriceTimeUnit?.Description(); QuantityPeriodDescription = orderItem.EstimationPeriod?.Description(); Price = orderItem.Price; CostPerYear = orderItem.CalculateTotalCostPerYear(); ServiceRecipients = recipients; }