public static ArticleDto ToDto(this Article model) { var dto = new ArticleDto { ID = model.ID, Name = model.Name, Description = model.Description, Producer = model.Producer, Code = model.Code, Barcode = model.Barcode, RecommendedPrice = model.RecommendedPrice, TypeID = model.TypeID, Type = model.Type?.ToDto(), DeliveryItems = model.DeliveryItems?.Where(di => !di.IsDeleted && !di.Delivery.IsDeleted).Select(i => i.ToDto()) }; dto.MapDetails(model); dto.CanBeDeleted = (model.DeliveryItems?.SelectMany(di => di.Goods).All(g => g.IsSold) ?? false) && !model.IsDeleted; return(dto); }