using RhSolutions.MLModifiers.DrinkingWaterHeatingFittings; using RhSolutions.MLModifiers.DrinkingWaterHeatingPipes; namespace RhSolutions.Api.Tests; public class ProductQueryModifierFactory { public IProductMLModifier GetModifier(string productTypeName) { switch (productTypeName) { case "Монтажная гильза": return new Sleeve(); case "Желоб": return new SupportingClip(); case "Тройник RAUTITAN": return new TPiece(); case "Тройник RAUTITAN резьбовой наружный": return new ThreadTPieceExternal(); case "Тройник RAUTITAN резьбовой внутренний": return new ThreadTPieceInternal(); case "Переходник на наружную резьбу": return new AdapterExternal(); case "Переходник на внутреннюю резьбу": return new AdapterInternal(); case "Переходник с накидной гайкой": return new AdapterScrewcap(); case "Угольник с наружной резьбой": return new ThreadElbowExternal(); case "Угольник с внутренней резьбой": return new ThreadElbowInternal(); case "Угольник настенный наружный": return new ThreadElbowWallExternal(); case "Угольник настенный внутренний": return new ThreadElbowWallInternal(); case "Проточный настенный угольник": return new ThreadElbowDoubleWallInternal(); case "Угольник с накидной гайкой": return new ScrewcapElbow(); case "Муфта соединительная": return new Coupling(); case "Угольник RAUTITAN": return new Elbow(); case "Фиксатор поворота отопление": return new BendFormerHeating(); case "Фиксатор поворота водоснабжение": return new BendFormerSanitary(); case "Трубка Г-образная": return new ConnectionBend(); case "Трубка Т-образная": return new ConnectionTee(); case "Резьбозажимное flex": return new EuroconeFlex(); case "Резьбозажимное stabil": return new EuroconeStabil(); case "Переходник на евроконус": return new EuroconeAdapter(); case "Резьбозажимное для трубки": return new EuroconeConnectionBend(); case "Ниппель": return new Nippel(); case "Заглушка труб RAUTITAN": return new DummyPlug(); case "Flex": return new FlexPipe(); case "Pink": return new PinkPipe(); case "Stabil": return new StabilPipe(); case "Black": return new BlackPipe(); default: return new BypassQueryModifier(); } } }