From 432a6fb79db6c57c34b3f761de513c956597ced2 Mon Sep 17 00:00:00 2001 From: Serghei Cebotari Date: Fri, 13 Oct 2023 21:59:07 +0300 Subject: Add bend former for drinking water pipes --- .../DrinkingWaterHeatingFittings/BendFormerHeating.cs | 19 ++++++++++++++++++- .../ProductQueryModifierFactory.cs | 4 +++- 2 files changed, 21 insertions(+), 2 deletions(-) (limited to 'RhSolutions.QueryModifiers') diff --git a/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs b/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs index 9d17519..b20b76e 100644 --- a/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs +++ b/RhSolutions.QueryModifiers/DrinkingWaterHeatingFittings/BendFormerHeating.cs @@ -2,7 +2,7 @@ public class BendFormerHeating : DrinkingWaterHeatingFitting { - protected override string _title => "Фиксатор поворота без колец"; + protected override string _title => "Фиксатор поворота"; protected override string? BuildRhSolutionsName(string query) { var diameterMatch = _diameter.Match(query); @@ -20,3 +20,20 @@ public class BendFormerHeating : DrinkingWaterHeatingFitting return $"{_title} {diameter}/{angle}°"; } } + +public class BendFormerDrinking : DrinkingWaterHeatingFitting +{ + protected override string _title => "Фиксатор поворота с кольцами"; + protected override string? BuildRhSolutionsName(string query) + { + var diameterMatch = _diameter.Match(query); + if (!diameterMatch.Success) + { + return null; + } + string diameter = diameterMatch.Groups["Diameter"].Value; + var angleMatch = _angle.Match(query); + string angle = angleMatch.Success ? angleMatch.Groups["Angle"].Value : "90"; + return $"{_title} {angle}° {diameter}"; + } +} diff --git a/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs index c3252ff..f3d1485 100644 --- a/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs +++ b/RhSolutions.QueryModifiers/ProductQueryModifierFactory.cs @@ -33,8 +33,10 @@ public class ProductQueryModifierFactory return new Coupling(); case "Угольник RAUTITAN": return new ElbowModifier(); - case "Фиксатор поворота без колец": + case "Фиксатор поворота отопление": return new BendFormerHeating(); + case "Фиксатор поворота водоснабжение": + return new BendFormerDrinking(); case "Flex": return new FlexPipe(); case "Pink": -- cgit v1.2.3