From a0a1c23c4d313d7c78b7cc6b7d6a108c3dad04ca Mon Sep 17 00:00:00 2001 From: Serghei Cebotari Date: Fri, 26 Jan 2024 15:50:41 +0300 Subject: Add ML Modifiers with attribute --- .../ThreadTPieceInternal.cs | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 RhSolutions.MLModifiers/DrinkingWaterHeatingFittings/ThreadTPieceInternal.cs (limited to 'RhSolutions.MLModifiers/DrinkingWaterHeatingFittings/ThreadTPieceInternal.cs') diff --git a/RhSolutions.MLModifiers/DrinkingWaterHeatingFittings/ThreadTPieceInternal.cs b/RhSolutions.MLModifiers/DrinkingWaterHeatingFittings/ThreadTPieceInternal.cs new file mode 100644 index 0000000..b57fffc --- /dev/null +++ b/RhSolutions.MLModifiers/DrinkingWaterHeatingFittings/ThreadTPieceInternal.cs @@ -0,0 +1,42 @@ +using System.Text.RegularExpressions; + +namespace RhSolutions.MLModifiers.DrinkingWaterHeatingFittings; + +[MLModifierKey("Тройник RAUTITAN резьбовой внутренний")] +public class ThreadTPieceInternal : DrinkingWaterHeatingFitting +{ + public override bool TryQueryModify(string input, out string output) + { + output = string.Empty; + MatchCollection diametersMatches = _diameter.Matches(input); + if (diametersMatches.Count == 0) + { + return false; + } + string thread = _thread.Match(input).Groups["Thread"].Value; + int[] diameters = diametersMatches.Select(match => int.Parse(match.Groups["Diameter"].Value)).ToArray(); + if (diameters.Length == 1) + { + if (diameters[0] < 25) + { + output = $"Тройник настенный с внутренней резьбой {diameters[0]}-Rp{thread}-{diameters[0]}"; + } + else + { + output = $"Тройник с внутр. резьбой на боков. проходе {diameters[0]}-Rp {thread}-{diameters[0]}"; + } + } + else + { + if (diameters[0] < 25) + { + output = $"Тройник настенный с внутренней резьбой {diameters[0]}-Rp{thread}-{diameters[1]}"; + } + else + { + output = $"Тройник с внутр. резьбой на боков. проходе {diameters[0]}-Rp {thread}-{diameters[1]}"; + } + } + return true; + } +} -- cgit v1.2.3